/* THE photo lightbox (public/shared/lightbox.js): the card page's photo grid
   and the organiser's guest-photo Freigabe. */
.lightbox {
  position: fixed; inset: 0; z-index: 1000; display: none;
  align-items: center; justify-content: center;
  background: rgba(12, 6, 9, 0.93);
}
.lightbox.on { display: flex; }
body.lightbox-open { overflow: hidden; }
.lightbox-stage {
  position: absolute; inset: 0; display: flex;
  align-items: center; justify-content: center;
}
.lightbox-img {
  max-width: 96vw; max-height: 92vh; object-fit: contain;
  border-radius: 6px; box-shadow: 0 20px 60px rgba(0,0,0,0.6);
}
.lightbox-video { background: #000; }
.lightbox-btn {
  position: absolute; z-index: 2; display: flex; align-items: center; justify-content: center;
  width: 46px; height: 46px; border-radius: 50%; border: none; cursor: pointer;
  background: rgba(255,255,255,0.14); color: #fff; font-size: 28px; line-height: 1;
  text-decoration: none; -webkit-tap-highlight-color: transparent;
}
.lightbox-btn:hover { background: rgba(255,255,255,0.28); }
.lightbox-close { top: 14px; right: 14px; }
.lightbox-download { top: 14px; right: 72px; font-size: 22px; }
.lightbox-prev { left: 10px; top: 50%; transform: translateY(-50%); }
.lightbox-next { right: 10px; top: 50%; transform: translateY(-50%); }
@media print { .lightbox { display: none !important; } }
