/* ================================================================
   Noční zápas — galerie zápasů
   Stejné tokeny jako homepage (assets/personal.css). Fotky vždy
   v původním poměru stran, nic se neořízne.
   ================================================================ */
html{background:#06080d;color-scheme:dark}
body.photo-subpage{
  --night:#06080d;--night-2:#0b0f17;--text:#eceff4;--muted:#8a93a3;--light:#e8f1ff;
  --line:#38bdf8;--line-dim:rgba(56,189,248,.3);--line-glow:rgba(56,189,248,.45);--rule:rgba(236,239,244,.1);
  --mono:ui-monospace,SFMono-Regular,'Cascadia Mono','Segoe UI Mono',Consolas,monospace;
  margin:0;min-height:100vh;background:var(--night);color:var(--text);
  font-family:Geist,system-ui,-apple-system,sans-serif;line-height:1.55;
  -webkit-font-smoothing:antialiased
}
.photo-subpage *{box-sizing:border-box}
.photo-subpage a{color:inherit;text-decoration:none}
.photo-subpage :focus-visible{outline:2px solid var(--line);outline-offset:4px}

.photo-subpage .skip-link{position:absolute;left:-9999px;top:8px;background:var(--line);color:#04121c;padding:8px 12px;z-index:10001}
.photo-subpage .skip-link:focus{left:8px}

.photo-subpage .gallery-page{width:min(1320px,calc(100% - 80px));margin:0 auto;padding:48px 0 80px}

/* ---- Hlavička galerie: pomezní čára s rohovým obloukem --------- */
.photo-subpage .gallery-hero{position:relative;padding:36px 0 32px;border-bottom:1px solid var(--rule)}
.photo-subpage .gallery-hero::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:var(--line-dim);box-shadow:0 0 8px rgba(56,189,248,.18)
}
.photo-subpage .gallery-hero::after{
  content:'';position:absolute;top:0;left:0;width:18px;height:18px;
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  border-bottom-right-radius:100%;filter:drop-shadow(0 0 3px var(--line-glow))
}
.photo-subpage .gallery-kicker{
  display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--line)
}
.photo-subpage .gallery-title{
  font-size:clamp(26px,3vw,42px);font-weight:550;letter-spacing:-.03em;line-height:1.15;
  margin:16px 0 12px;text-wrap:balance
}
.photo-subpage .gallery-copy{font-size:14px;color:var(--muted);margin:0;max-width:44em}
.photo-subpage .gallery-meta{
  display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:18px;
  font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--muted)
}
.photo-subpage .gallery-actions{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:24px}
.photo-subpage .gallery-link{
  display:inline-flex;align-items:center;font-size:12px;font-weight:500;padding-bottom:4px;
  border-bottom:1px solid var(--line-dim);transition:color .15s,border-color .15s
}
.photo-subpage .gallery-link:hover{color:var(--line);border-bottom-color:var(--line)}
.photo-subpage .gallery-link.primary{
  padding:10px 18px;border:1px solid var(--line-dim);color:var(--light);
  font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase
}
.photo-subpage .gallery-link.primary:hover{border-color:var(--line);box-shadow:0 0 16px rgba(56,189,248,.25)}

/* ---- Mřížka: sloupce, fotky v přirozeném poměru ---------------- */
.photo-subpage .gallery-grid{columns:3 300px;column-gap:20px;margin-top:40px}
.photo-subpage .gallery-card{
  display:block;width:100%;margin:0 0 20px;padding:0;border:0;background:none;color:inherit;
  text-align:left;cursor:zoom-in;break-inside:avoid
}
.photo-subpage .gallery-card img{display:block;width:100%;height:auto;transition:filter .3s}
.photo-subpage .gallery-card:hover img{filter:brightness(1.08)}
.photo-subpage .gallery-card span{
  display:block;padding-top:8px;font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--muted)
}
.photo-subpage .gallery-card:hover span{color:var(--line)}

/* ---- Lightbox -------------------------------------------------- */
.photo-subpage .lightbox{
  display:none;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center;
  padding:2rem;background:rgba(3,4,7,.96)
}
.photo-subpage .lightbox.active{display:flex}
.photo-subpage .lightbox img{max-width:92%;max-height:90vh;width:auto;height:auto;object-fit:contain}
.photo-subpage #lightboxPrev,.photo-subpage #lightboxNext{border:1px solid var(--rule)}
.photo-subpage #lightboxPrev:hover,.photo-subpage #lightboxNext:hover{border-color:var(--line)}

@media(max-width:700px){
  .photo-subpage .gallery-page{width:calc(100% - 32px);padding:28px 0 56px}
  .photo-subpage .gallery-grid{columns:1}
  .photo-subpage .lightbox{padding:.5rem}
  .photo-subpage #lightboxControls{bottom:1rem}
}
@media(prefers-reduced-motion:reduce){.photo-subpage *{transition:none!important}}
