/* p360-lightbox — paylasilan macOS "Quick Look" tarzi gorsel onizleyici.
   Tum modullerde kullanilir: thumbnail'a tiklayinca tam ekran kaydirmali galeri acilir.
   API: P360.lightbox.ac(items, index) veya delegasyon: [data-lb-src][data-lb-grup]. */

.p360-lb {
  position: fixed; inset: 0; z-index: var(--z-toast);
  display: flex; flex-direction: column;
  background: var(--map-veil-outer);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  opacity: 0; pointer-events: none; transition: opacity var(--hiz-normal);
}
.p360-lb.acik { opacity: 1; pointer-events: auto; }

.p360-lb-bar {
  display: flex; align-items: center; gap: var(--bosluk-3);
  padding: var(--bosluk-3) var(--bosluk-4); color: #fff;
}
.p360-lb-ad { font: 500 13px/1.3 var(--font); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p360-lb-say { font: 600 12px/1 var(--font); opacity: 0.7; font-variant-numeric: tabular-nums; }
.p360-lb-bar .bosluk { flex: 1; }
.p360-lb-btn {
  width: 38px; height: 38px; border: 0; border-radius: var(--koselik-pill);
  background: rgba(255, 255, 255, 0.14); color: #fff; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center; font-size: 16px;
  transition: background var(--hiz-hizli);
}
.p360-lb-btn:hover { background: rgba(255, 255, 255, 0.28); }

.p360-lb-sahne { flex: 1; min-height: 0; position: relative; display: flex; align-items: center; justify-content: center; padding: 0 var(--bosluk-5); }
.p360-lb-resim { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: var(--koselik-md); box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5); }
.p360-lb-ok {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 48px; height: 48px; border: 0; border-radius: var(--koselik-pill);
  background: rgba(255, 255, 255, 0.14); color: #fff; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center; font-size: 20px;
  transition: background var(--hiz-hizli);
}
.p360-lb-ok:hover { background: rgba(255, 255, 255, 0.3); }
.p360-lb-ok.geri { left: var(--bosluk-3); }
.p360-lb-ok.ileri { right: var(--bosluk-3); }
.p360-lb-ok[disabled] { opacity: 0.25; cursor: default; }

.p360-lb-serit {
  display: flex; gap: var(--bosluk-2); padding: var(--bosluk-3) var(--bosluk-4);
  overflow-x: auto; justify-content: center;
}
.p360-lb-serit-oge {
  width: 56px; height: 56px; flex-shrink: 0; border-radius: var(--koselik-sm);
  overflow: hidden; cursor: pointer; border: 2px solid transparent; opacity: 0.6;
  transition: opacity var(--hiz-hizli), border-color var(--hiz-hizli);
  background: rgba(255, 255, 255, 0.08);
}
.p360-lb-serit-oge img { width: 100%; height: 100%; object-fit: cover; }
.p360-lb-serit-oge:hover { opacity: 0.9; }
.p360-lb-serit-oge.aktif { opacity: 1; border-color: #fff; }

/* ── Foto galerisi (detay ekranlarinda; lightbox'i tetikler) ── */
.p360-foto-galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); gap: var(--bosluk-2); }
.p360-foto-kart {
  position: relative; aspect-ratio: 1; border-radius: var(--koselik-md); overflow: hidden;
  border: 1px solid var(--border); background: var(--gray-surface); cursor: pointer; padding: 0;
  display: flex; align-items: center; justify-content: center; color: var(--muted);
}
.p360-foto-kart img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--hiz-normal); }
.p360-foto-kart:hover img { transform: scale(1.05); }
.p360-foto-kart .pdf { display: flex; flex-direction: column; align-items: center; gap: 4px; font: 500 9px/1.1 var(--font); padding: 4px; text-align: center; }
.p360-foto-kart .pdf i { font-size: 22px; color: var(--red); }

