/* Lightbox fotiek, hodnoty z Elementor lightbox.min.css a dialog.min.css
   (verzia na origináli) a zmerané na otvorenom lightboxe pri 1440 a 390. */

.lightbox {
  --lb-ui: hsla(0, 0%, 93%, 0.9);        /* Elementor: --lightbox-ui-color */
  --lb-ui-hover: #fff;
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.8);  /* dialog-type-lightbox */
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  user-select: none;
}
.lightbox.je-otvoreny { display: block; }

/* Odkaz okolo náhľadu nesmie meniť rozloženie galérie */
a[data-lightbox] { display: block; }
.lightbox-otvoreny { overflow: hidden; }

/* Otvorenie: Elementor „zoomIn" 0,3 s */
.lightbox.je-otvoreny .lightbox__sprava { animation: lightbox-zoom 0.3s both; }
@keyframes lightbox-zoom {
  from { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  50% { opacity: 1; }
}

.lightbox__sprava { position: relative; height: 100%; }

.lightbox button {
  padding: 0;
  border: 0;
  background: none;
  color: var(--lb-ui);
  fill: var(--lb-ui);
  cursor: pointer;
  transition: all 0.3s;
}
.lightbox button:hover { color: var(--lb-ui-hover); fill: var(--lb-ui-hover); }
.lightbox svg { display: block; fill: currentColor; }

/* Krížik: vpravo 0,75em, zhora 13 px, odsadenie 0,25em, ikona 20 px */
.lightbox__zavriet {
  position: absolute;
  top: 0;
  right: 15px;
  z-index: 12;
  display: flex;
  margin-top: 13px;
  padding: 5px !important;
}
.lightbox__zavriet svg { width: 20px; height: 20px; }

/* Hlavička: počítadlo vľavo, ikony vpravo (celá obrazovka, zoom, zdieľanie),
   vpravo miesto 2,6em pre krížik */
.lightbox__hlavicka {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  width: 100%;
  padding: 15px 52px 15px 20px;
  font-size: 20px;
  color: var(--lb-ui);
  transition: 0.3s;
}

.lightbox__ikona { margin: 0 7px !important; padding: 5px !important; }
.lightbox__ikona svg { width: 20px; height: 20px; }
.lightbox__ikona .je-alternativna,
.lightbox__ikona[aria-checked="true"] .je-zakladna { display: none; }
.lightbox__ikona[aria-checked="true"] .je-alternativna { display: block; }

.lightbox__pocitadlo {
  margin-right: auto;
  font-size: 15px;
  line-height: 22.5px;
  color: #fff;
}

/* Pás fotiek, každá položka na celé okno, medzera 100 ako Swiper v origináli */
.lightbox__pas {
  display: flex;
  gap: 100px;
  height: 100%;
  will-change: transform;
  touch-action: pan-y;
}

.lightbox__polozka {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 70px;
}

.lightbox__foto {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  border-radius: 2px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s;
  -webkit-user-drag: none;
}

/* Šípky: pás 15 % šírky cez celú výšku, ikona 25 px */
.lightbox__sipka {
  position: absolute;
  top: 0;
  z-index: 9;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 15%;
  height: 100%;
}
.lightbox__sipka svg { width: 25px; height: 25px; }
.lightbox__sipka--predosla { left: 0; }
.lightbox__sipka--dalsia { right: 0; }
.lightbox.je-jedna .lightbox__sipka { display: none !important; }

/* Pätička s názvom fotky */
.lightbox__paticka {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  padding: 15px 20px;
  color: var(--lb-ui);
  text-align: center;
  transition: 0.3s;
}
.lightbox__titulok { font-size: 16px; font-weight: 700; line-height: 24px; }

/* Priblíženie: šípky zmiznú, hlavička a pätička dostanú podklad */
.lightbox.je-zoom .lightbox__hlavicka,
.lightbox.je-zoom .lightbox__paticka { background-color: rgba(0, 0, 0, 0.5); }
.lightbox.je-zoom .lightbox__sipka { opacity: 0; pointer-events: none; }
.lightbox.je-zoom .lightbox__foto { cursor: grab; }

/* Zdieľanie: tmavá vrstva a biela karta s odkazmi */
.lightbox__zdielanie {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  overflow: hidden;
  background-color: transparent;
  transition: background-color 0.4s;
}
.lightbox.je-zdielanie .lightbox__zdielanie {
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: default;
}
.lightbox__odkazy {
  position: absolute;
  top: 3em;
  right: 2.8em;
  min-width: 200px;
  padding: 14px 20px;
  border-radius: 3px;
  background-color: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  opacity: 0;
  transform: scale(0);
  transform-origin: 90% 10%;
  transition: all 0.25s 0.1s;
}
.lightbox.je-zdielanie .lightbox__odkazy { opacity: 1; transform: scale(1); }
.lightbox__odkazy::before {
  content: '';
  position: absolute;
  top: 1px;
  right: 0.5em;
  display: block;
  border: 0.45em solid transparent;
  border-bottom-color: #fff;
  transform: translateY(-100%) scaleX(0.7);
}
.lightbox__odkazy a {
  display: flex;
  align-items: center;
  font-size: 12px;
  line-height: 2.5;
  color: #3f444b;
  text-align: start;
}
.lightbox__odkazy a:hover { color: #000; text-decoration: none; }
.lightbox__odkazy svg { width: 1.25em; height: 1.25em; margin-right: 0.75em; }
.lightbox__fb { fill: #3b5998 !important; }
.lightbox__tw { fill: #1da1f2 !important; }
.lightbox__pin { fill: #bd081c !important; }
.lightbox__dl { fill: #9da5ae !important; }

@media (max-width: 767px) {
  .lightbox__polozka { padding: 70px 0; }
  .lightbox__sipka { width: 20%; }
  .lightbox__sipka--predosla { justify-content: flex-start; }
  .lightbox__sipka--dalsia { justify-content: flex-end; }
}

@media (prefers-reduced-motion: reduce) {
  .lightbox.je-otvoreny .lightbox__sprava { animation: none; }
}
