/*
 * Samostatná animace fotonů Solatube.
 * Soubor nemá žádné závislosti na CSS webu ani na WordPressu.
 */
.solatube-photon-stage {
  position: relative !important;
  display: inline-block;
  max-width: 100%;
  line-height: 0;
  isolation: isolate;
}

.solatube-photon-stage > img {
  position: relative;
  z-index: 1;
  display: block;
  max-width: 100%;
  height: auto;
}

.solatube-photon-animation {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.solatube-photon-sun {
  animation: solatubePhotonSun 4.36s ease-in-out infinite;
}

.solatube-photon-guide {
  fill: none;
  stroke: #ffe6b0;
  stroke-width: .55;
  opacity: .1;
}

.solatube-photon-spark {
  fill: none;
  stroke: #fff3d6;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 2.5 3 2.5 3 2.5 6 2.5 3 2.5 3 2.5 6 2.5 3 2.5 3 2.5 115;
  animation: solatubePhotonFlow 4.36s linear infinite;
}

.solatube-photon-trail {
  fill: none;
  stroke: #ffdc92;
  stroke-width: 5.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 2.5 3 2.5 3 2.5 6 2.5 3 2.5 3 2.5 6 2.5 3 2.5 3 2.5 115;
  opacity: .45;
  animation: solatubePhotonTrail 4.36s linear infinite;
}

.solatube-photon-bloom {
  transform-box: fill-box;
  transform-origin: center;
  opacity: .08;
  animation: solatubePhotonBloom 4.36s ease-in-out infinite;
}

@keyframes solatubePhotonSun {
  0%, 100% { opacity: .82; }
  50% { opacity: 1; }
}

@keyframes solatubePhotonFlow {
  from { stroke-dashoffset: 52.5; }
  to { stroke-dashoffset: -115; }
}

@keyframes solatubePhotonTrail {
  from { stroke-dashoffset: 55.7; }
  to { stroke-dashoffset: -111.8; }
}

@keyframes solatubePhotonBloom {
  0%, 56% { opacity: .08; transform: scale(.78); }
  86% { opacity: .95; transform: scale(1.1); }
  100% { opacity: .1; transform: scale(.92); }
}

/* Volitelné ruční vypnutí: data-solatube-motion="off" na obrázku. */
.solatube-photon-stage[data-solatube-motion="off"] .solatube-photon-sun,
.solatube-photon-stage[data-solatube-motion="off"] .solatube-photon-spark,
.solatube-photon-stage[data-solatube-motion="off"] .solatube-photon-trail,
.solatube-photon-stage[data-solatube-motion="off"] .solatube-photon-bloom {
  animation: none;
}

.solatube-photon-stage[data-solatube-motion="off"] .solatube-photon-spark,
.solatube-photon-stage[data-solatube-motion="off"] .solatube-photon-trail {
  opacity: 0;
}
