/* Inkubator UW: lightbox galerii */
.iuw-lightbox-open { overflow: hidden; }

.iuw-lightbox {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: rgb(14 26 41 / 97%);
  color: var(--color-on-brand);
  font-family: Montserrat, system-ui, sans-serif;
}

.iuw-lightbox::backdrop { background: rgb(14 26 41 / 94%); }

.iuw-lightbox__stage {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  padding: 72px 88px 64px;
  box-sizing: border-box;
}

.iuw-lightbox__figure { margin: 0; display: grid; gap: 12px; justify-items: center; }

.iuw-lightbox__img {
  display: block;
  max-width: min(100%, 1600px);
  max-height: calc(100dvh - 160px);
  width: auto;
  height: auto;
  object-fit: contain;
  opacity: 0;
  transform: scale(0.985);
  transition: opacity 260ms cubic-bezier(0.16, 1, 0.3, 1), transform 320ms cubic-bezier(0.16, 1, 0.3, 1);
}

.iuw-lightbox.is-ready .iuw-lightbox__img { opacity: 1; transform: none; }
.iuw-lightbox.is-static .iuw-lightbox__img { transition: none; transform: none; }

.iuw-lightbox__caption { max-width: 70ch; font-size: 15px; line-height: 1.5; text-align: center; color: rgb(255 255 255 / 82%); }

.iuw-lightbox__counter {
  position: absolute;
  top: 24px;
  left: 28px;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  color: rgb(255 255 255 / 82%);
}

.iuw-lightbox__btn {
  position: absolute;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 2px;
  background: rgb(255 255 255 / 10%);
  color: var(--color-on-brand);
  cursor: pointer;
  transition: background-color 160ms ease;
}

.iuw-lightbox__btn:hover { background: var(--palette-flame); }
.iuw-lightbox__btn:focus-visible { outline: 2px solid var(--palette-yellow); outline-offset: 3px; }
.iuw-lightbox__btn[hidden] { display: none; }

.iuw-lightbox__close { top: 16px; right: 16px; }
.iuw-lightbox__prev { left: 20px; top: 50%; transform: translateY(-50%); }
.iuw-lightbox__next { right: 20px; top: 50%; transform: translateY(-50%); }

a[href$=".webp"] img,
a[href$=".jpg"] img,
a[href$=".jpeg"] img,
a[href$=".png"] img { cursor: zoom-in; }

@media (max-width: 767px) {
  .iuw-lightbox__stage { padding: 64px 12px 88px; }
  .iuw-lightbox__img { max-height: calc(100dvh - 170px); }
  .iuw-lightbox__prev,
  .iuw-lightbox__next { top: auto; bottom: 20px; transform: none; }
  .iuw-lightbox__prev { left: calc(50% - 56px); }
  .iuw-lightbox__next { right: calc(50% - 56px); }
}
