/* Lightbox — საერთოა საიტისა და ადმინისთვის (js/gallery.js) */
:root { --lb-gold: #d1b06a; --lb-navy: #0f1d38; --lb-serif: "Noto Serif Georgian", Georgia, serif; }
/* =====================================================================
   Lightbox — ფოტო / ვიდეო გადიდება
   ===================================================================== */
body.lb-open { overflow: hidden; }
.lb { position: fixed; inset: 0; z-index: 1000; background: #0b0b0c; color: #fff; display: flex; flex-direction: column; visibility: hidden; opacity: 0; transition: opacity .25s, visibility 0s .25s; }
.lb.is-open { visibility: visible; opacity: 1; transition: opacity .25s; }
.lb__top { position: absolute; left: 0; right: 0; top: 0; z-index: 5; display: flex; align-items: center; gap: 8px; padding: 14px 18px; }
.lb__count { font-size: 13px; letter-spacing: .06em; color: rgba(255,255,255,.75); margin-right: auto; font-variant-numeric: tabular-nums; }
.lb__actions { display: flex; gap: 8px; }
.lb__btn { width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,.1); color: #fff; display: inline-flex; align-items: center; justify-content: center; transition: background .2s; border: 1px solid rgba(255,255,255,.12); }
.lb__btn .ico { width: 18px; height: 18px; }
.lb__btn:hover { background: rgba(255,255,255,.22); }
.lb__btn--text { width: auto; padding: 0 16px 0 12px; gap: 8px; border-radius: 21px; font-size: 13px; }
.lb__btn--text .ico { width: 15px; height: 15px; }
.lb__btn--danger:hover { background: rgba(201,75,75,.6); }
.lb.is-video .lb__zoom { display: none; }
.lb:not(.is-video) .lb__full { display: none; }
.lb__nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 5; width: 50px; height: 50px; border-radius: 50%; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.14); color: #fff; display: inline-flex; align-items: center; justify-content: center; transition: background .2s, opacity .2s; }
.lb__nav .ico { width: 20px; height: 20px; }
.lb__nav:hover { background: rgba(255,255,255,.22); }
.lb__nav:disabled { opacity: .25; pointer-events: none; }
.lb__nav--prev { left: 20px; }
.lb__nav--next { right: 20px; }
.lb__stage { flex: 1; min-height: 0; display: flex; align-items: center; justify-content: center; padding: 70px 80px 12px; overflow: auto; touch-action: pan-y; }
.lb__fig { display: flex; flex-direction: column; align-items: center; gap: 14px; max-width: 100%; max-height: 100%; }
.lb__media { display: flex; align-items: center; justify-content: center; max-width: 100%; }
.lb__media img { max-width: min(100%, 1400px); max-height: calc(100vh - 230px); width: auto; height: auto; object-fit: contain; border-radius: 6px; box-shadow: 0 30px 80px rgba(0,0,0,.6); animation: lbIn .3s cubic-bezier(.2,.7,.2,1); cursor: zoom-in; }
.lb__media video { max-width: min(100%, 1400px); max-height: calc(100vh - 230px); width: min(100%, 1400px); background: #000; border-radius: 6px; box-shadow: 0 30px 80px rgba(0,0,0,.6); animation: lbIn .3s cubic-bezier(.2,.7,.2,1); outline: 0; }
.lb--single .lb__media img, .lb--single .lb__media video { max-height: calc(100vh - 140px); }
.lb.is-zoomed .lb__stage { align-items: flex-start; cursor: zoom-out; }
.lb.is-zoomed .lb__media img { max-width: none; max-height: none; width: auto; cursor: zoom-out; }
.lb.is-zoomed .lb__cap, .lb.is-zoomed .lb__thumbs, .lb.is-zoomed .lb__nav { display: none; }
.lb__cap { font-family: var(--lb-serif); font-size: 17px; letter-spacing: .01em; color: rgba(255,255,255,.9); text-align: center; max-width: 900px; line-height: 1.5; }
.lb__cap[hidden] { display: none; }
.lb__thumbs { flex: 0 0 auto; display: flex; gap: 8px; justify-content: safe center; overflow-x: auto; padding: 12px 18px 16px; scrollbar-width: none; }
.lb__thumbs::-webkit-scrollbar { display: none; }
.lb--single .lb__thumbs { display: none; }
.lb__thumb { position: relative; flex: 0 0 auto; width: 68px; height: 50px; border-radius: 5px; overflow: hidden; border: 2px solid transparent; opacity: .55; transition: opacity .2s, border-color .2s, transform .2s; background: #1c1c1e; }
.lb__thumb img { width: 100%; height: 100%; object-fit: cover; }
.lb__thumb:hover { opacity: .9; }
.lb__thumb.is-active { opacity: 1; border-color: var(--lb-gold); transform: translateY(-2px); }
.lb__thumb-empty { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: rgba(255,255,255,.4); }
.lb__thumb-empty .ico { width: 18px; height: 18px; }
.lb__thumb-play { position: absolute; left: 50%; top: 50%; width: 18px; height: 18px; margin: -9px 0 0 -9px; border-radius: 50%; background: rgba(255,255,255,.9); color: var(--lb-navy); display: inline-flex; align-items: center; justify-content: center; }
.lb__thumb-play .ico { width: 9px; height: 9px; margin-left: 1px; }
@keyframes lbIn { from { opacity: 0; transform: scale(.96); } to { opacity: 1; transform: none; } }
@media (max-width: 768px) {
  .lb__top { padding: 10px 12px; }
  .lb__btn { width: 40px; height: 40px; }
  .lb__btn--text span { display: none; }
  .lb__btn--text { width: 40px; padding: 0; }
  .lb__stage { padding: 62px 12px 8px; }
  .lb__media img, .lb__media video { max-height: calc(100vh - 220px); border-radius: 8px; }
  .lb__media video { width: 100%; }
  .lb__cap { font-size: 15px; }
  /* ისრები ქვემოთ — თითით მოსახერხებლად; სქროლითაც ირთვება */
  .lb__nav { top: auto; bottom: 88px; transform: none; width: 44px; height: 44px; }
  .lb__nav--prev { left: 16px; }
  .lb__nav--next { right: 16px; }
  .lb__thumbs { padding: 8px 12px 12px; }
  .lb__thumb { width: 56px; height: 42px; }
}

