/* Zápasy: zdieľané CSS naprieč všetkými témami — rovnaký princíp ako nav-shared.css.
   Používa root-ove kanonické názvy premenných; každý variant, ktorého natívne názvy
   sa líšia, si ich v :root aliasuje: --surface,--ink,--ink2,--muted,--belasa,--ground,
   --wash,--line,--line2,--onvivid,--font-display,--font-mono,--font-body. */
.zoznam-zapasov{display:flex;flex-direction:column;gap:1px;background:var(--line);
 border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:22px 0 60px}
.dva-stlpce .zoznam-zapasov,.zap-layout .zoznam-zapasov{margin:0}
.zoznam-zapasov.podla-sezon{background:transparent;border:none;border-radius:0;overflow:visible;gap:22px}
.zz-sezona-blok{display:flex;flex-direction:column;gap:1px;background:var(--line);
 border:1px solid var(--line);border-radius:10px;overflow:hidden}
.zz{background:var(--surface);display:grid;grid-template-columns:1fr auto;gap:16px;
 align-items:center;padding:13px 16px;cursor:pointer;transition:.12s}
.zz:hover{background:var(--wash)}
.zz.vybrany{background:var(--wash);box-shadow:inset 3px 0 0 var(--belasa)}

/* --zap-list-w: šírka ľavého stĺpca (zoznam zápasov/sezóny) na desktope — zdieľaná
   premenná, nech taby (.zap-taby) vždy sedia na presne rovnakú šírku ako stĺpec pod
   nimi, aj keby sa táto hodnota niekedy zmenila. */
:root{--zap-list-w:380px}
.zap-layout{display:grid;grid-template-columns:var(--zap-list-w) 1fr;gap:10px;align-items:start;margin:0 0 60px}
@media (max-width:760px){.zap-layout{grid-template-columns:1fr}}
.zap-detail{background:var(--surface);border:1px solid var(--line);border-radius:10px;
 padding:20px 22px;min-height:220px}
@media (min-width:761px){.zap-detail{position:sticky;top:152px}}
/* Mobilný "modal" nad detailom zápasu: .zd-otvoreny sa pridáva/uberá z <body>
   vo vyberZapas()/zavriZapDetail() v zapasy-shared.js (kresliZapasy() ju pri každom
   prekreslení zápasov zase zhodí, nech nezostane "zaseknutá" pri prepnutí tabu/filtra) —
   iba pod 760px (rovnaký zlom ako rozpad .zap-layout na 1 stĺpec vyššie). Cieľ je na
   <body>, nie na .zap-layout, lebo .zap-hlavicka (taby/filtre/hľadanie) je jej súrodenec,
   nie potomok — potrebujeme skryť aj ju, nielen zoznam. */
.zap-detail-nazad{display:none}
@media (max-width:760px){
  body.zd-otvoreny .zap-hlavicka{display:none}
  body.zd-otvoreny .zoznam-zapasov{display:none}
  /* top sa nedáva sem, ale nastavuje inline vo vyberZapas() (zapasy-shared.js) na
     skutočnú výšku .lepive (nav + pás nadchádzajúceho zápasu) — tá sa líši medzi
     témami (BA Heart/Official majú vyššiu hlavičku ako root/Modern/History), takže
     pevné číslo tu by na časti tém nesedelo. .lepive ostáva viditeľná, všetko pod
     ňou (taby/filtre/zoznam) sa schová a .zap-detail vyplní zvyšok obrazovky. */
  body.zd-otvoreny .zap-detail{position:fixed;right:0;bottom:0;left:0;
   z-index:39;overflow-y:auto;border-radius:0;border:none;padding:16px 16px 40px}
  body.zd-otvoreny .zap-detail-nazad{display:flex}
}
.zap-detail-nazad{align-items:center;gap:8px;background:var(--wash);border:none;color:var(--belasa);
 font-family:var(--font-body);font-weight:700;font-size:14px;cursor:pointer;
 padding:9px 16px;margin:0 0 16px;border-radius:20px}
.zap-detail-nazad:active{background:var(--line)}
.zap-detail-nazad .zdn-sipka{font-size:17px;line-height:1}
.zd-hlava{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
 margin-bottom:16px;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.09em;
 text-transform:uppercase;color:var(--belasa)}
.zd-datum{color:var(--muted);font-weight:600}
.zd-timy{display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 0 6px;
 text-align:center}
.zd-tim{font-family:var(--font-display);font-size:18px;letter-spacing:.02em;flex:1;color:var(--ink)}
.zd-tim.zd-nas{font-weight:700}
.zd-vs{font-family:var(--font-display);font-size:24px;color:var(--belasa);font-variant-numeric:tabular-nums}
.zap-detail .chysta{margin:18px 0 0;padding:22px 20px}
.zz-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.zz-datum{font-family:var(--font-mono);font-size:12px;color:var(--muted);
 font-variant-numeric:tabular-nums}
.zz-tim{font-size:15px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;
 white-space:nowrap}
.zz-tim.zz-nas{font-weight:800}
.zz-sut{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.09em;
 text-transform:uppercase;color:var(--belasa);margin-top:2px}
.sut-logo{height:14px;width:auto;vertical-align:-2px;margin-right:5px}
.zz-vysl{font-family:var(--font-display);font-size:20px;font-variant-numeric:tabular-nums;
 color:var(--ink)}
.zz-vysl.zz-vyhra,.zd-vs.zz-vyhra{color:#16a34a}
.zz-vysl.zz-remiza,.zd-vs.zz-remiza{color:var(--muted)}
.zz-vysl.zz-prehra,.zd-vs.zz-prehra{color:#dc2626}
.zz-vykop{font-family:var(--font-mono);font-size:13.5px;font-weight:700;color:var(--belasa);
 font-variant-numeric:tabular-nums}
.zz-vykop-blok{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.zz-vykop-datum{font-family:var(--font-mono);font-size:12px;color:var(--muted);
 font-variant-numeric:tabular-nums}
.zz-vykop-den{font-family:var(--font-mono);font-size:11px;color:var(--muted);text-transform:capitalize}
.zz-vykop-cas{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--belasa);
 font-variant-numeric:tabular-nums}

.zap-hlavicka{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0;padding:10px 0;
 position:sticky;top:90px;z-index:30;background:var(--ground)}
/* Šírka presne ako .zoznam-zapasov pod ňou (--zap-list-w, viď .zap-layout) — na mobile
   (pod 760px, rovnaký zlom ako .zap-layout) stĺpec zaberá celú šírku, tak aj taby. */
.zap-taby{display:flex;flex-wrap:wrap;gap:3px;background:var(--surface);border:1px solid var(--line);
 border-radius:9px;padding:4px;width:var(--zap-list-w);margin:0}
@media (max-width:760px){.zap-taby{width:100%}}
.zap-tab{background:transparent;border:none;color:var(--ink2);font-family:var(--font-body);font-weight:600;
 font-size:13.5px;padding:8px 16px;border-radius:6px;cursor:pointer;display:flex;align-items:center;
 justify-content:center;gap:7px;white-space:nowrap;flex:1}
.zap-tab.active{background:var(--belasa);color:var(--onvivid)}
.zap-count{font-size:11px;opacity:.85;background:var(--ground);padding:1px 7px;border-radius:10px}
.zap-tab.active .zap-count{background:rgba(255,255,255,.25)}

.zap-oddel{width:1px;align-self:stretch;background:var(--line);flex:0 0 auto}
@media (max-width:900px){.zap-oddel{display:none}}

.zap-filtre{display:flex;flex-wrap:wrap;gap:10px;margin:0;align-items:stretch;flex:1;min-width:260px;
 background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:4px}
.zap-filtre select{background:transparent;color:var(--ink);border:none;
 border-radius:6px;padding:8px 10px;font-family:var(--font-body);font-size:13px;font-weight:600;
 cursor:pointer;flex:1;min-width:118px}
.zap-filtre select:hover{background:var(--ground)}

.zap-super-wrap{flex:1;min-width:200px;background:var(--surface);border:1px solid var(--line);
 border-radius:9px;padding:4px}
.zap-super-box{width:100%;position:relative;display:flex;flex-direction:column;gap:6px;
 justify-content:center}
.zap-super-box input[type=text]{background:transparent;color:var(--ink);border:none;
 border-radius:6px;padding:8px 12px;font-family:var(--font-body);font-size:13px;width:100%;box-sizing:border-box}
.zap-super-box.ma-akcie input[type=text]{padding-right:140px}
.zap-super-box:focus-within,.zap-super-box.otvoreny{background:var(--ground);border-radius:6px}
.zap-super-box input[type=text]::placeholder{color:var(--muted)}
.zap-super-akcie{display:flex;align-items:center;gap:8px;position:absolute;right:10px;top:50%;
 transform:translateY(-50%)}
.zap-super-x{background:none;border:none;color:var(--muted);cursor:pointer;font-size:16px;
 line-height:1;padding:2px 4px;border-radius:4px}
.zap-super-x:hover{color:var(--ink);background:var(--line)}
.zap-super-pocet{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;
 color:var(--belasa);white-space:nowrap}
.zap-super-pocet button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:15px;
 line-height:1;padding:0 2px}
.zap-super-pocet button:hover{color:var(--ink)}
.zap-super-list{display:none;max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:7px;
 background:var(--surface);position:absolute;top:100%;left:0;right:0;margin-top:4px;z-index:20;
 box-shadow:0 10px 26px rgba(0,0,0,.18)}
.zap-super-box.otvoreny .zap-super-list{display:block}
.zap-super-item{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:13px;color:var(--ink);
 cursor:pointer;border-bottom:1px solid var(--line2)}
.zap-super-item:last-child{border-bottom:none}
.zap-super-item:hover{background:var(--ground)}
.zap-super-item input{cursor:pointer;flex:none}
.zap-super-ciara{height:1px;background:var(--line);margin:2px 0}
.zap-super-hint{margin:0;padding:10px;font-size:12px;color:var(--muted);text-align:center}
.zz-skupina{background:var(--ground);padding:9px 16px;font-family:var(--font-mono);font-size:10.5px;
 font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.zz-sezona{background:var(--belasa);color:var(--onvivid);padding:10px 16px;font-family:var(--font-display);
 font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
