/* ============================================================
   assets/gallery-lightbox.css
   Minimal click-to-enlarge overlay for the Gallery / Images content
   component. Scoped entirely to its own classes -- no interaction with
   any other component's styling (eBook/Flipbook, Audio, Video,
   Download, References are all untouched).
   ============================================================ */
.gallery-lightbox-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.85);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:9999;
  padding:24px;
}
.gallery-lightbox-overlay[hidden]{
  display:none;
}
.gallery-lightbox-image{
  max-width:90vw;
  max-height:90vh;
  width:auto;
  height:auto;
  border-radius:8px;
  box-shadow:0 8px 40px rgba(0,0,0,0.5);
  background:#fff;
}
.gallery-lightbox-close{
  position:fixed;
  top:20px;
  right:24px;
  width:44px;
  height:44px;
  border-radius:50%;
  border:2px solid #fff;
  background:rgba(0,0,0,0.4);
  color:#fff;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease, transform .15s ease;
}
.gallery-lightbox-close:hover{
  background:rgba(0,0,0,0.7);
  transform:scale(1.06);
}
.gallery-lightbox-close:focus-visible{
  outline:3px solid #fff;
  outline-offset:2px;
}

.gallery-lightbox-nav{
  position:fixed;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:50%;
  border:2px solid #fff;
  background:rgba(0,0,0,0.4);
  color:#fff;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease, transform .15s ease, opacity .15s ease;
}
.gallery-lightbox-nav:hover:not(:disabled){
  background:rgba(0,0,0,0.7);
}
.gallery-lightbox-nav:focus-visible{
  outline:3px solid #fff;
  outline-offset:2px;
}
.gallery-lightbox-nav:disabled{
  opacity:0.3;
  cursor:default;
}
.gallery-lightbox-prev{
  left:16px;
}
.gallery-lightbox-next{
  right:16px;
}

.gallery-lightbox-counter{
  position:fixed;
  bottom:20px;
  left:50%;
  transform:translateX(-50%);
  background:rgba(0,0,0,0.5);
  color:#fff;
  font-family:'Space Grotesk', sans-serif;
  font-size:14px;
  padding:6px 16px;
  border-radius:999px;
}

@media (max-width:700px){
  .gallery-lightbox-nav{
    width:40px;
    height:40px;
    font-size:18px;
  }
  .gallery-lightbox-prev{
    left:8px;
  }
  .gallery-lightbox-next{
    right:8px;
  }
  .gallery-lightbox-counter{
    bottom:12px;
    font-size:12px;
    padding:4px 12px;
  }
}

@media (max-width:700px){
  .gallery-lightbox-overlay{
    padding:12px;
  }
  .gallery-lightbox-close{
    top:12px;
    right:12px;
    width:38px;
    height:38px;
    font-size:22px;
  }
}
