/* ============================================================
   SK Velké Přítočno — vizuál webu · modrobílá (světlé téma)
   ============================================================ */
:root{
  --wrap-pad:22px;
  --bg:#f5f8ff; --bg-2:#ffffff; --card:#ffffff;
  --ink:#0e1e4e; --ink-2:#33406b; --mut:#66739c; --mut-2:#8a94b8;
  --navy-0:#04091c; --navy-1:#071233; --navy-2:#0b1c48; --navy-3:#10265f;
  --royal:#1e43c8; --royal-2:#3d63f5; --royal-3:#7c97ff;
  --ice:#eaf0ff;
  --grass:#1f8a4c; --gold:#d9a72e; --gold-2:#e8bc52; --loss:#d64550; --draw:#7285b8;
  --line:#dfe6f5; --line-2:#c7d3f2;
  --rad:18px; --rad-s:12px;
  --shadow:0 16px 40px -14px rgba(14,30,78,.18);
  --shadow-s:0 8px 24px -12px rgba(14,30,78,.14);
  --head-h:74px; --bn-h:64px;
  --grad-royal:linear-gradient(135deg,#1e43c8 0%,#3d63f5 55%,#5f7ffb 100%);
  --grad-gold:linear-gradient(120deg,#c99a2e,#e8bc52 45%,#f6d789);
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth; scroll-padding-top:calc(var(--head-h) + 10px)}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:16px/1.62 "Instrument Sans",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overflow-x:clip;
}
img{max-width:100%; display:block}
a{color:var(--royal)}
:focus-visible{outline:2.5px solid var(--royal-2); outline-offset:3px; border-radius:6px}
::selection{background:var(--royal-2); color:#fff}
html{scrollbar-color:#c3d0f0 #e9eefc}
::-webkit-scrollbar{width:11px; height:11px}
::-webkit-scrollbar-track{background:#e9eefc}
::-webkit-scrollbar-thumb{background:#c3d0f0; border-radius:8px; border:2px solid #e9eefc}
::-webkit-scrollbar-thumb:hover{background:var(--royal-2)}

h1,h2,h3{font-family:"Archivo",sans-serif; font-variation-settings:"wdth" 112; line-height:1.08; margin:0 0 .42em; letter-spacing:.2px; text-wrap:balance; color:var(--ink)}
h2{font-size:clamp(27px,3.6vw,40px); font-weight:850}
h3{font-size:19px; font-weight:750}
.wrap{max-width:1180px; margin:0 auto; padding:0 var(--wrap-pad)}
.sr-only{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
.skip{position:absolute; left:-999px; top:8px; background:var(--royal); color:#fff; padding:9px 15px; border-radius:9px; z-index:120; font-weight:700; text-decoration:none}
.skip:focus{left:8px}
.scroll-progress{position:fixed; left:0; top:0; height:3px; width:0; z-index:110;
  background:var(--grad-royal); box-shadow:0 0 10px rgba(61,99,245,.5); pointer-events:none}

/* ---------- tlačítka ---------- */
.btn{position:relative; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font:750 15px/1 "Archivo",sans-serif; letter-spacing:.4px; padding:14px 22px; border-radius:999px;
  text-decoration:none; border:1.5px solid transparent; cursor:pointer;
  transition:transform .16s,box-shadow .16s,border-color .16s,background .16s,color .16s}
.btn::after{content:""; position:absolute; inset:0; background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.3) 50%,transparent 70%);
  transform:translateX(-130%); transition:transform .5s}
.btn:hover{transform:translateY(-2px)}
.btn:hover::after{transform:translateX(130%)}
.btn:active{transform:translateY(0)}
.btn-royal{background:var(--grad-royal); color:#fff; box-shadow:0 12px 28px -8px rgba(30,67,200,.5)}
.btn-light{background:var(--grad-royal); color:#fff; box-shadow:0 12px 28px -8px rgba(30,67,200,.5)}
.btn-ghost{background:#fff; color:var(--ink); border-color:var(--line-2)}
.btn-ghost:hover{border-color:var(--royal-2); color:var(--royal)}
.btn-ghost.dark{background:transparent; color:var(--ink); border-color:var(--line-2)}
.btn-danger{background:var(--loss); color:#fff}
.btn.sm{padding:10px 15px; font-size:13.5px}
.hero .btn-ghost, .team-hero .btn-ghost{background:rgba(255,255,255,.12); color:#fff; border-color:rgba(255,255,255,.45); backdrop-filter:blur(4px)}
.hero .btn-ghost:hover{border-color:#fff; color:#fff}

/* ---------- hlavička ---------- */
.site-head{position:sticky; top:0; z-index:60; height:var(--head-h);
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid transparent; transition:border-color .25s,background .25s,box-shadow .25s}
.site-head.scrolled{border-bottom-color:var(--line); background:rgba(255,255,255,.97); box-shadow:0 8px 24px -18px rgba(14,30,78,.25)}
.head-in{display:flex; align-items:center; gap:18px; height:100%}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--ink); margin-right:auto; min-width:0}
.brand-crest{width:46px; height:46px; border-radius:50%; overflow:hidden; background:#fff; display:grid; place-items:center;
  border:2px solid #fff; box-shadow:0 4px 14px rgba(14,30,78,.22); flex:none}
.brand-crest img{width:100%; height:100%; object-fit:cover}
.brand-crest.big{width:76px; height:76px; border-width:3px}
.brand-txt{display:flex; flex-direction:column; line-height:1.14; min-width:0}
.brand-txt strong{font-family:"Archivo"; font-weight:850; font-size:17px; letter-spacing:.3px; white-space:nowrap; color:var(--ink)}
.brand-txt small{color:var(--mut); font-size:11.5px; letter-spacing:.6px}
.nav{display:flex; align-items:center; gap:4px}
.nav a{color:var(--ink); text-decoration:none; font:620 14.5px "Instrument Sans"; padding:9px 14px; border-radius:999px; transition:background .15s,color .15s; white-space:nowrap}
.nav a:hover{background:#eaf0ff; color:var(--royal)}
.nav a.on{background:#e4ecff; color:var(--royal); box-shadow:inset 0 0 0 1px var(--line-2)}
.nav .ext{opacity:.55; font-size:12px}
.nav-cta{background:var(--grad-royal); color:#fff!important; box-shadow:0 8px 20px -6px rgba(30,67,200,.45); transition:background .15s,box-shadow .15s,transform .15s}
.nav a.nav-cta:hover{background:linear-gradient(135deg,#16339e,#2f54e3 55%,#4a6bf8); color:#fff; transform:translateY(-1.5px); box-shadow:0 12px 26px -6px rgba(30,67,200,.6)}
.nav a.nav-cta:active{transform:translateY(0)}

/* rozbalovací menu Týmy — podstránka každého týmu */
.nav-group{position:relative; display:flex; align-items:center}
.nav-group>a{padding-right:9px}
.sub-toggle{border:0; background:transparent; cursor:pointer; color:var(--ink); width:27px; height:34px; display:grid; place-items:center; border-radius:9px; margin-left:-5px; transition:background .15s,color .15s}
.sub-toggle svg{width:12px; height:12px; transition:transform .18s}
.sub-toggle:hover{background:#eaf0ff; color:var(--royal)}
.nav-group:hover .sub-toggle svg,.nav-group:focus-within .sub-toggle svg,.nav-group.open .sub-toggle svg{transform:rotate(180deg)}
.sub{position:absolute; top:calc(100% + 10px); left:50%; transform:translateX(-50%) translateY(7px); min-width:232px;
  background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); padding:8px;
  display:flex; flex-direction:column; gap:2px; opacity:0; visibility:hidden; transition:opacity .16s,transform .16s,visibility .16s; z-index:70}
.sub::before{content:""; position:absolute; top:-12px; left:0; right:0; height:12px}
.nav-group:hover .sub,.nav-group:focus-within .sub,.nav-group.open .sub{opacity:1; visibility:visible; transform:translateX(-50%) translateY(0)}
.sub a{display:flex; align-items:center; gap:10px; padding:10px 13px; border-radius:11px; font-size:14px}
.sub a::before{content:""; width:9px; height:9px; border-radius:50%; background:var(--team,var(--royal)); flex:none; box-shadow:0 0 0 2px #fff,0 0 0 3px var(--line)}
.burger{display:none; width:46px; height:46px; border:0; background:transparent; cursor:pointer; flex-direction:column; justify-content:center; align-items:center; gap:5.5px; padding:10px; border-radius:12px}
.burger span{display:block; width:22px; height:2.5px; background:var(--ink); border-radius:2px; transition:transform .28s,opacity .2s}

/* ---------- hero (foto + královská modrá, ne černá) ---------- */
.hero{position:relative; overflow:hidden; padding:clamp(64px,9vw,120px) 0 clamp(96px,11vw,150px); color:#fff; background:var(--royal)}
.hero::before{content:""; position:absolute; inset:0; z-index:0;
  background:var(--hero-img) center/cover no-repeat, var(--hero-fallback, var(--hero-img)) center/cover no-repeat;
  filter:brightness(1.16) saturate(1.08)}
.hero::after{content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    linear-gradient(100deg,rgba(8,22,62,.84) 0%,rgba(11,30,86,.58) 30%,rgba(20,48,150,.2) 56%,rgba(30,67,200,.04) 76%,rgba(30,67,200,0) 100%),
    linear-gradient(180deg,transparent calc(100% - 110px),var(--bg))}
.hero-in{position:relative; z-index:2}
.hero-eyebrow{font-family:"Archivo",sans-serif; font-weight:600; font-size:.83rem; text-transform:uppercase; letter-spacing:.28em; color:var(--gold-2); margin:0 0 26px}
.hero-title{color:#fff; font-size:clamp(2.6rem,7vw,5rem); font-weight:900; font-variation-settings:"wdth" 118; text-transform:uppercase}
.hero-sub{max-width:560px; color:var(--ice); font-size:1.1rem}
.hero-links{margin-top:34px; display:flex; gap:14px; align-items:center; flex-wrap:wrap}
.hero-links span{color:rgba(255,255,255,.4)}
.hero-links a{color:#fff; text-decoration:none; font-family:"Archivo",sans-serif; font-weight:600; text-transform:uppercase; font-size:.85rem; letter-spacing:.08em; border-bottom:2px solid rgba(255,255,255,.4); padding-bottom:2px; transition:border-color .15s,color .15s}
.hero-links a:hover{border-bottom-color:var(--gold-2); color:var(--gold-2)}

/* ---------- scoreboard — bílá karta na modrém heru ---------- */
.scoreboard{position:relative; overflow:hidden; max-width:880px;
  background:#fff; color:var(--ink);
  border:1px solid rgba(255,255,255,.6); border-radius:24px; box-shadow:0 26px 60px -18px rgba(4,12,40,.5); padding:26px 30px 28px}
.scoreboard::before{content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--grad-royal)}
.sb-meta{display:flex; gap:14px; flex-wrap:wrap; align-items:center; color:var(--mut); font-size:14px; margin-bottom:20px}
.sb-tag{background:var(--grad-gold); color:#241a04; font:850 11.5px "Archivo"; letter-spacing:1.8px; text-transform:uppercase; padding:6px 12px; border-radius:999px}
.sb-venue{margin-left:auto}
.sb-board{display:grid; grid-template-columns:1fr auto 1fr; gap:18px; align-items:center}
.sb-team{display:flex; flex-direction:column; align-items:center; gap:11px; text-align:center}
.sb-team strong{font:850 clamp(17px,2.2vw,23px) "Archivo"; font-variation-settings:"wdth" 108; color:var(--ink)}
.sb-team.us strong{color:var(--royal)}
.sb-crest{position:relative; width:78px; height:78px; border-radius:50%; background:#fff; display:grid; place-items:center; overflow:hidden;
  border:3px solid #fff; box-shadow:0 8px 22px rgba(14,30,78,.25)}
.sb-team.us .sb-crest{box-shadow:0 0 0 4px rgba(61,99,245,.28), 0 8px 22px rgba(14,30,78,.25)}
.sb-crest img{width:100%; height:100%; object-fit:cover}
.sb-crest-letter{font:900 32px "Archivo"; color:var(--navy-2)}
.sb-mid{display:flex; flex-direction:column; align-items:center; gap:11px; min-width:216px}
.sb-vs{font:900 13.5px "Archivo"; letter-spacing:3.5px; color:var(--royal-2)}
.sb-count{display:flex; gap:8px}
.sb-count span{background:#eef3fe; border:1px solid var(--line); border-radius:13px; padding:10px 10px; min-width:58px; display:flex; flex-direction:column; align-items:center}
.sb-count b{font:850 23px/1 "Archivo"; font-variant-numeric:tabular-nums; color:var(--ink)}
.sb-count small{color:var(--mut); font-size:10px; letter-spacing:1.4px; text-transform:uppercase; margin-top:4px}
.sb-count.small span{min-width:47px; padding:8px 8px}
.sb-count.small b{font-size:18px}
.sb-score{display:flex; align-items:center; gap:12px; font:900 46px/1 "Archivo"; font-variant-numeric:tabular-nums; color:var(--ink)}
.sb-score span{color:var(--royal-2)}
.sb-status{font:750 12.5px "Archivo"; letter-spacing:1.8px; text-transform:uppercase; color:var(--gold)}
#scoreboard.live .sb-status{color:var(--grass)}
#scoreboard.live .sb-status::before{content:""; display:inline-block; width:8px; height:8px; border-radius:50%; background:#22c55e; margin-right:8px; animation:pulse 1.4s infinite}
@keyframes pulse{0%,100%{opacity:1; transform:scale(1)} 50%{opacity:.45; transform:scale(.8)}}
.sb-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:24px}
.scoreboard .btn-ghost{background:#fff; color:var(--ink); border-color:var(--line-2)}
.scoreboard .btn-ghost:hover{border-color:var(--royal-2); color:var(--royal)}
.sb-twins{display:contents}

/* filtr tabule podle týmů (výchozí Muži A) */
.sb-filter{display:flex; gap:8px; flex-wrap:wrap; max-width:880px; margin:0 0 15px}
.sb-filter a{--team:#fff; display:inline-flex; align-items:center; gap:8px; color:#fff; text-decoration:none;
  font:650 13px "Instrument Sans"; padding:8px 14px; border-radius:999px; border:1px solid rgba(255,255,255,.42);
  background:rgba(255,255,255,.1); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
  transition:background .15s,border-color .15s,color .15s,transform .12s,box-shadow .15s}
.sb-filter a::before{content:""; width:8px; height:8px; border-radius:50%; background:var(--team); box-shadow:0 0 0 2px rgba(255,255,255,.3); flex:none}
.sb-filter a:hover{border-color:#fff; background:rgba(255,255,255,.18); transform:translateY(-1px)}
.sb-filter a.on{background:#fff; color:var(--navy-2); border-color:#fff; font-weight:750; box-shadow:0 10px 26px -10px rgba(4,12,40,.55)}
.sb-filter a.on::before{box-shadow:0 0 0 2px var(--ice)}

/* ---------- ticker — modrá klubová stuha ---------- */
.ticker{position:relative; overflow:hidden; background:var(--grad-royal); padding:11px 0}
.ticker::before,.ticker::after{content:""; position:absolute; top:0; bottom:0; width:70px; z-index:2; pointer-events:none}
.ticker::before{left:0; background:linear-gradient(90deg,#1e43c8,transparent)}
.ticker::after{right:0; background:linear-gradient(-90deg,#5f7ffb,transparent)}
.ticker-track{display:flex; gap:44px; width:max-content; animation:ticker 38s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-item{display:inline-flex; align-items:center; gap:9px; white-space:nowrap; color:#eaf0ff; font-size:14px}
.ticker-item i{font-style:normal}
.ticker-item b{color:var(--gold-2); font:750 11.5px "Archivo"; letter-spacing:1.4px; text-transform:uppercase}
.ticker-item em{font-style:normal; color:#fff; font-weight:700; opacity:.75}
@keyframes ticker{to{transform:translateX(-50%)}}

/* ---------- sekce ---------- */
.sect{padding:78px 0; position:relative}
.sect-head{display:flex; align-items:baseline; justify-content:space-between; gap:18px; flex-wrap:wrap; margin-bottom:30px}
.sect-note{color:var(--mut); margin:0; font-size:14.5px}
.sect-note.demo{color:#a97a12}
.sect-note.demo::before{content:"◦ "}
.sect-tools{display:flex; align-items:center; gap:16px; flex-wrap:wrap}
.more{color:var(--royal); text-decoration:none; font-weight:750; font-size:14.5px; transition:color .15s}
.more:hover{color:var(--navy-2)}

/* výsledky */
.results{background:#fff}
.res-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.res-card{background:var(--card); border:1px solid var(--line); border-radius:var(--rad);
  padding:17px 17px 14px; position:relative; overflow:hidden; box-shadow:var(--shadow-s); transition:transform .2s,border-color .2s,box-shadow .2s}
.res-card:hover{transform:translateY(-4px); border-color:var(--line-2); box-shadow:var(--shadow)}
.res-card::before{content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--draw)}
.res-card.is-w::before{background:linear-gradient(180deg,#34d379,var(--grass))}
.res-card.is-l::before{background:linear-gradient(180deg,#f87181,var(--loss))}
.res-card header{display:flex; justify-content:space-between; gap:10px; color:var(--mut); font-size:12.5px; margin-bottom:11px}
.res-team{font-weight:750; color:var(--royal)}
.res-row{display:flex; justify-content:space-between; gap:10px; padding:3px 0; font-size:15.5px; color:var(--ink-2)}
.res-row b{font:850 18px "Archivo"; font-variant-numeric:tabular-nums; color:var(--ink)}
.res-row.us{color:var(--ink); font-weight:750}
.res-card footer{margin-top:11px; padding-top:10px; border-top:1px dashed var(--line); color:var(--mut); font-size:12.5px}

/* tabulka */
.table-scroll{overflow:auto; -webkit-overflow-scrolling:touch; border-radius:var(--rad); border:1px solid var(--line);
  background:
    linear-gradient(90deg,#fff 34%,rgba(255,255,255,0)) left/52px 100% no-repeat local,
    linear-gradient(-90deg,#fff 34%,rgba(255,255,255,0)) right/52px 100% no-repeat local,
    radial-gradient(16px 62% at left center,rgba(14,30,78,.24),transparent) left/20px 100% no-repeat scroll,
    radial-gradient(16px 62% at right center,rgba(14,30,78,.24),transparent) right/20px 100% no-repeat scroll,
    #fff;
  box-shadow:var(--shadow-s)}
.standings{width:100%; border-collapse:collapse; min-width:640px; font-size:15px}
.standings th{font:750 11.5px "Archivo"; letter-spacing:1.6px; text-transform:uppercase; color:var(--mut); text-align:left; padding:14px 15px; border-bottom:1px solid var(--line); position:sticky; top:0; background:#fff}
.standings td{padding:11.5px 15px; border-bottom:1px solid #edf1fb; color:var(--ink-2)}
.standings tbody tr{transition:background .12s}
.standings tbody tr:last-child td{border-bottom:0}
.standings tbody tr:hover{background:#f3f7ff}
.standings .tr{text-align:right}
.standings .pos{color:var(--mut); width:46px; font-variant-numeric:tabular-nums}
.standings .club{font-weight:640; display:flex; align-items:center; gap:10px; color:var(--ink)}
.mini-crest{width:23px; height:23px; border-radius:50%; background:#fff; object-fit:cover; flex:none; border:1px solid var(--line)}
.standings .pts{font:850 16.5px "Archivo"; color:var(--ink)}
.standings .w{color:var(--grass)}.standings .d{color:var(--draw)}.standings .l{color:var(--loss)}
.standings tr.us{background:linear-gradient(90deg,#1e43c8,#3d63f5)}
.standings tr.us td{border-bottom-color:transparent; color:#eaf0ff}
.standings tr.us .club{color:#fff; font-weight:850}
.standings tr.us .pos{color:#c8d5ff}
.standings tr.us .w,.standings tr.us .d,.standings tr.us .l{color:#eaf0ff}
.standings tr.us .pts{color:var(--gold-2)}

/* forma */
.form-chips{display:inline-flex; align-items:center; gap:5px; color:var(--mut); font-size:13.5px}
.form-chips i{font:850 11px/1 "Archivo"; font-style:normal; width:23px; height:23px; border-radius:50%; display:grid; place-items:center; color:#fff}
.chip-w{background:var(--grass)} .chip-d{background:#7285b8} .chip-l{background:var(--loss)}
.form-line{margin:16px 0 4px; color:var(--mut)}

/* týmy */
.team-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:15px}
.team-card{position:relative; overflow:hidden; background:var(--card); border:1px solid var(--line); border-radius:var(--rad);
  padding:22px 16px 18px; text-decoration:none; color:var(--ink); box-shadow:var(--shadow-s);
  display:flex; flex-direction:column; align-items:center; gap:9px; text-align:center;
  transition:transform .2s,border-color .2s,box-shadow .2s}
.team-card::before{content:""; position:absolute; inset:0 0 auto; height:3px; background:var(--grad-royal); opacity:0; transition:opacity .2s}
.team-card:hover{transform:translateY(-5px); border-color:var(--line-2); box-shadow:var(--shadow)}
.team-card:hover::before{opacity:1}
.team-crest{width:60px; height:60px; border-radius:50%; overflow:hidden; background:#fff; border:2px solid #fff; box-shadow:0 6px 16px rgba(14,30,78,.2)}
.team-crest img{width:100%; height:100%; object-fit:cover}
.team-name{font:850 16.5px "Archivo"; color:var(--ink)}
.team-cat{color:var(--mut); font-size:12.5px; line-height:1.35}
.team-next{margin-top:auto; font-size:12px; color:var(--royal); font-weight:650; border-top:1px dashed var(--line); padding-top:10px; width:100%}

/* nástěnka na úvodu */
.board{background:#fff}
.board-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.post-card{background:var(--card); border:1px solid var(--line); border-radius:var(--rad); overflow:hidden; display:flex; flex-direction:column; box-shadow:var(--shadow-s); transition:transform .2s,border-color .2s,box-shadow .2s}
.post-card:hover{transform:translateY(-4px); border-color:var(--line-2); box-shadow:var(--shadow)}
/* celá fotka bez ořezu v jednotném rámu — rozmazaná fotka vyplní okraje */
.post-img{position:relative; display:block; aspect-ratio:4/3; overflow:hidden; background:#eef3fe}
.post-img::before{content:""; position:absolute; inset:0; background:var(--pimg) center/cover no-repeat;
  filter:blur(22px) saturate(1.15) brightness(1.05); transform:scale(1.25)}
.post-img::after{content:""; position:absolute; inset:0; background:rgba(255,255,255,.16)}
.post-img img{position:relative; z-index:1; width:100%; height:100%; object-fit:contain; padding:10px;
  filter:drop-shadow(0 10px 22px rgba(14,30,78,.2)); transition:transform .35s}
.post-card:hover .post-img img{transform:scale(1.03)}
.post-img.noimg{display:grid; place-items:center;
  background:radial-gradient(340px 220px at 50% 30%,#ffffff,#e2ebff 70%,#d5e2ff)}
.post-img.noimg::before,.post-img.noimg::after{display:none}
.post-img.noimg img{width:96px; height:96px; padding:0; object-fit:cover; border-radius:50%;
  border:3px solid #fff; box-shadow:0 12px 28px rgba(14,30,78,.22); filter:none}
.post-body{padding:17px 19px 19px; display:flex; flex-direction:column; gap:8px; flex:1}
.pin{color:#a97a12; font:750 11.5px "Archivo"; letter-spacing:1.2px; text-transform:uppercase}
.post-body h3{margin:0}
.post-body p{margin:0; color:var(--ink-2); font-size:14.5px}
.post-date{margin-top:auto; color:var(--mut); font-size:13px; padding-top:8px}
.post-date a{font-weight:750}

/* dědictví 1930 — klubová modrá */
.heritage{position:relative; overflow:hidden; text-align:center; padding:96px 0; color:#fff;
  background:
    radial-gradient(700px 340px at 50% 118%, rgba(232,188,82,.2), transparent 65%),
    linear-gradient(160deg,#0d2260,#1e43c8)}
.big-year{position:absolute; inset:0; display:grid; place-items:center; font:900 clamp(170px,32vw,400px)/1 "Archivo";
  font-variation-settings:"wdth" 120; color:transparent; -webkit-text-stroke:2px rgba(255,255,255,.14); pointer-events:none; user-select:none}
.heritage-in{position:relative; z-index:2; max-width:700px; margin:0 auto}
.heritage h2{color:#fff}
.heritage-in p{color:#d4defb; font-size:17px}
.stat-row{display:flex; justify-content:center; gap:38px; margin-top:34px; flex-wrap:wrap}
.stat{display:flex; flex-direction:column; align-items:center}
.stat b{font:900 clamp(36px,5vw,54px)/1 "Archivo"; background:var(--grad-gold); -webkit-background-clip:text; background-clip:text; color:transparent; font-variant-numeric:tabular-nums}
.stat small{color:#c8d5ff; font-size:12.5px; letter-spacing:1.4px; text-transform:uppercase; margin-top:7px}

/* galerie */
.gal-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:13px}
.gal-grid.album{margin-bottom:46px}
.gal-item{position:relative; border-radius:var(--rad-s); overflow:hidden; aspect-ratio:4/3; background:#eef3fe; text-decoration:none; border:1px solid var(--line); box-shadow:var(--shadow-s); transition:transform .2s,box-shadow .2s}
.gal-item:hover{transform:translateY(-3px); box-shadow:var(--shadow)}
.gal-item.wide{grid-column:span 2; grid-row:span 2; aspect-ratio:auto}
.gal-item img{width:100%; height:100%; object-fit:cover; transition:transform .35s}
.gal-item:hover img{transform:scale(1.06)}
.gal-item::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 58%,rgba(7,18,51,.6))}
.gal-item span{position:absolute; left:12px; bottom:11px; z-index:2; color:#fff; font:650 12.5px "Instrument Sans"; letter-spacing:.3px; text-shadow:0 2px 8px rgba(0,0,0,.55)}

/* partneři a odkazy */
.partner-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:15px}
.partner{background:#fff; border:1px solid var(--line); border-radius:var(--rad-s); padding:22px 20px; display:grid; place-items:center; min-height:108px; box-shadow:var(--shadow-s); transition:transform .2s,box-shadow .2s; position:relative; overflow:hidden}
.partner::after{content:""; position:absolute; inset:auto 0 0; height:3px; background:var(--grad-royal); transform:scaleX(0); transition:transform .22s; transform-origin:left}
.partner:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
.partner:hover::after{transform:scaleX(1)}
.partner img{max-height:62px; width:auto; object-fit:contain}
.linkrow{background:#fff}
.link-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px}
.link-card{display:flex; align-items:center; gap:14px; background:var(--card); border:1px solid var(--line); border-radius:var(--rad-s);
  padding:15px 17px; color:var(--ink); text-decoration:none; font-weight:640; box-shadow:var(--shadow-s); transition:border-color .18s,transform .18s,box-shadow .18s}
.link-card:hover{border-color:var(--line-2); transform:translateY(-3px); box-shadow:var(--shadow); color:var(--royal)}
.link-card img{width:48px; height:48px; object-fit:contain; background:#fff; border:1px solid var(--line); border-radius:10px; padding:5px; flex:none}

/* kontakt */
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center}
.c-addr{font-size:17px; margin:14px 0 4px; color:var(--ink-2)}
.c-mail{font:850 clamp(21px,2.7vw,28px) "Archivo"; color:var(--royal); text-decoration:none; display:inline-block; margin-bottom:12px; transition:color .15s}
.c-mail:hover{color:var(--navy-2)}
.c-note{color:var(--mut); font-size:14.5px; margin-bottom:24px; line-height:1.8}
.map{border-radius:var(--rad); overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow)}
.map iframe{width:100%; height:350px; border:0; display:block}

/* patička — klubová modrá */
.site-foot{background:linear-gradient(180deg,#0d2260,#081537); color:var(--ice); position:relative}
.foot-lines{height:4px; background:linear-gradient(90deg,var(--royal),var(--royal-2) 45%,var(--gold-2))}
.foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:32px; padding:54px 22px 36px}
.foot-name{font:850 19px "Archivo"; margin:15px 0 2px; color:#fff}
.foot-since{color:#9fb0dc; font-size:13px; margin:0 0 13px}
.foot-addr{color:#c2cdf0; font-size:14px; line-height:1.75}
.foot-addr a{color:#fff}
.foot-h{font:750 12px "Archivo"; letter-spacing:1.8px; text-transform:uppercase; color:#9fb0dc; margin:0 0 13px}
.foot-grid a{display:block; color:#eaf0ff; text-decoration:none; padding:4.5px 0; font-size:14.5px; width:fit-content; transition:color .15s}
.foot-grid a:hover{color:var(--gold-2)}
.foot-base{display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; padding:16px 22px 24px; color:#9fb0dc; font-size:13px; border-top:1px solid rgba(234,240,255,.12)}

/* ---------- tým — hero + obsah ---------- */
.team-hero{position:relative; overflow:hidden; padding:clamp(48px,7vw,84px) 0 clamp(56px,7vw,80px);
  background:linear-gradient(180deg,#fff,#edf2fd); border-bottom:1px solid var(--line)}
.team-hero.small{padding:clamp(44px,6vw,72px) 0 clamp(48px,6vw,64px)}
.team-hero h1{font-size:clamp(35px,5.2vw,56px); font-weight:900; font-variation-settings:"wdth" 118; text-transform:uppercase; color:var(--ink)}
.team-hero .hero-eyebrow{color:var(--royal); margin-bottom:14px}
.team-hero-cat{color:var(--mut); font-size:16.5px; max-width:660px}
.team-coaches{margin-top:10px; color:var(--mut); font-size:14.5px}
.team-coaches b{color:var(--ink); font-weight:640}
.team-coaches a{color:inherit; text-decoration:none; border-bottom:1px solid var(--line); white-space:nowrap; font-variant-numeric:tabular-nums}
.team-coaches a:hover{color:var(--royal); border-bottom-color:var(--royal)}
.coach-list{list-style:none; margin:0; padding:0}
.coach-list li{display:flex; flex-wrap:wrap; gap:6px 14px; align-items:baseline; padding:11px 0; border-bottom:1px solid #edf1fb}
.coach-list li:last-child{border-bottom:0}
.coach-team{flex:0 0 168px; font:750 12px "Archivo"; letter-spacing:1.2px; text-transform:uppercase; text-decoration:none; color:var(--team,var(--royal))}
.coach-team:hover{text-decoration:underline}
.coach-names{color:var(--ink-2)}
.coach-names b{color:var(--ink); font-weight:640}
.coach-names a{color:inherit; text-decoration:none; border-bottom:1px solid var(--line); white-space:nowrap; font-variant-numeric:tabular-nums}
.coach-names a:hover{color:var(--royal); border-bottom-color:var(--royal)}
@media (max-width:560px){
  .coach-list li{flex-direction:column; gap:3px}
  .coach-team{flex:none}
}
.team-switch{display:flex; gap:8px; flex-wrap:wrap; margin-top:24px}
.team-switch a{color:var(--ink); text-decoration:none; font:640 13.5px "Instrument Sans"; padding:9px 15px; border-radius:999px; border:1px solid var(--line-2); background:#fff; transition:border-color .15s,background .15s,color .15s}
.team-switch a:hover{border-color:var(--royal-2); color:var(--royal)}
.team-switch a.on{background:var(--grad-royal); border-color:transparent; color:#fff; font-weight:750; box-shadow:0 8px 20px -8px rgba(30,67,200,.5)}
.team-body{padding-top:46px}
.next-strip{position:relative; overflow:hidden; display:flex; align-items:center; gap:20px; flex-wrap:wrap;
  background:#fff; border:1px solid var(--line);
  border-radius:var(--rad); padding:19px 22px; margin-bottom:28px; box-shadow:var(--shadow-s)}
.next-strip::before{content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--grad-royal)}
.ns-info{display:flex; flex-direction:column; gap:3px}
.ns-info strong{font:850 18px "Archivo"; color:var(--ink)}
.ns-vs{color:var(--royal-2); font-size:14px; padding:0 4px}
.ns-info span{color:var(--mut); font-size:13.5px}
.ns-right{margin-left:auto; display:flex; align-items:center; gap:14px; flex-wrap:wrap}
.fix-h{font-size:24px; margin:36px 0 14px}
.fix-tools{display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-top:36px}
.fix-tools .fix-h{margin:0}
.chips{display:flex; gap:8px; flex-wrap:wrap}
.chip{border:1px solid var(--line-2); background:#fff; color:var(--ink); font:640 13px "Instrument Sans";
  min-height:38px; padding:8px 16px; border-radius:999px; cursor:pointer; transition:background .15s,border-color .15s,transform .12s,color .15s}
.chip:hover{border-color:var(--royal-2); color:var(--royal); transform:translateY(-1px)}
.chip.on{background:var(--grad-royal); border-color:transparent; color:#fff; font-weight:750; box-shadow:0 6px 16px -6px rgba(30,67,200,.5)}
.fix-list{display:flex; flex-direction:column; gap:10px}
.fix{display:grid; grid-template-columns:235px 1fr auto; gap:14px; align-items:center;
  background:#fff; border:1px solid var(--line); border-radius:var(--rad-s); padding:14px 17px; box-shadow:var(--shadow-s);
  transition:border-color .15s,transform .15s}
.fix:hover{border-color:var(--line-2); transform:translateX(3px)}
.fix-date{color:var(--mut); font-size:14px}
.fix-teams{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
.fix-teams b{font-weight:620; color:var(--ink-2)}
.fix-teams b.us{font-weight:850; color:var(--royal)}
.fix-teams i{font-style:normal; color:var(--royal-2); font-size:13px}
.fix-teams .score{font:850 16px "Archivo"; color:var(--ink); background:#eef3fe; border:1px solid var(--line); padding:4px 11px; border-radius:9px}
.fix-meta{color:var(--mut); font-size:13px; text-align:right; display:flex; align-items:center; gap:9px; justify-content:flex-end}
.fix .ics{text-decoration:none; font-size:16px; opacity:.8; transition:opacity .15s,transform .15s; padding:4px}
.fix .ics:hover{opacity:1; transform:scale(1.15)}
.fix.done{opacity:.97}
.badge-o{display:inline-grid; place-items:center; width:25px; height:25px; border-radius:50%; font:850 11.5px "Archivo"; color:#fff; background:var(--draw)}
.fix.is-w .badge-o{background:var(--grass)} .fix.is-l .badge-o{background:var(--loss)}
.table-scroll.light{margin-bottom:8px}
.facr-links{margin-top:32px; color:var(--mut); font-size:14px}
.empty{color:var(--mut); background:#fff; border:1px dashed var(--line-2); border-radius:var(--rad); padding:28px; text-align:center}

/* nástěnka — plná */
.search-box{display:block; max-width:500px; margin-top:22px; position:relative}
.search-box::before{content:"⌕"; position:absolute; left:18px; top:50%; transform:translateY(-52%); font-size:20px; color:var(--mut-2); pointer-events:none}
.search-box input{width:100%; background:#fff; border:1px solid var(--line-2); color:var(--ink);
  border-radius:999px; padding:14px 20px 14px 46px; font:500 16px "Instrument Sans"; outline:none; box-shadow:var(--shadow-s); transition:border-color .15s,box-shadow .15s}
.search-box input:focus{border-color:var(--royal-2); box-shadow:0 0 0 4px rgba(61,99,245,.14)}
.search-box input::placeholder{color:var(--mut-2)}
.board-full{max-width:840px}
.post-full{background:#fff; border:1px solid var(--line); border-radius:var(--rad); padding:27px 29px; margin-bottom:20px; box-shadow:var(--shadow-s)}
.post-full header{display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:8px}
.post-full h2{font-size:23px; margin:0; flex:1; padding:0}
.post-full .post-date{font-size:13px; padding:0}
.copy-link{border:0; background:transparent; cursor:pointer; font-size:16px; opacity:.55; transition:opacity .15s,transform .15s; padding:6px}
.copy-link:hover{opacity:1; transform:scale(1.12)}
.post-text p{color:var(--ink-2); margin:.55em 0}
.post-text a{word-break:break-all}
/* fotky v příspěvku — celé, velké a v jednotných dlaždicích (rozmazaná fotka vyplní okraje) */
.post-imgs{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; margin:17px 0 8px}
.post-imgs a{position:relative; display:block; width:100%; max-width:460px; aspect-ratio:3/4; border-radius:14px; overflow:hidden;
  border:1px solid var(--line); background:#eef3fe; box-shadow:var(--shadow-s); transition:transform .18s,border-color .18s,box-shadow .18s}
.post-imgs a::before{content:""; position:absolute; inset:0; background:var(--pimg) center/cover no-repeat;
  filter:blur(20px) saturate(1.15) brightness(1.05); transform:scale(1.25)}
.post-imgs a::after{content:""; position:absolute; inset:0; background:rgba(255,255,255,.14)}
.post-imgs a:hover{transform:translateY(-3px); border-color:var(--royal-3); box-shadow:var(--shadow)}
.post-imgs img{position:relative; z-index:1; width:100%; height:100%; object-fit:contain; padding:9px;
  filter:drop-shadow(0 8px 18px rgba(14,30,78,.18))}

/* ---------- lightbox ---------- */
.lightbox{position:fixed; inset:0; z-index:100; background:rgba(7,15,40,.93); display:grid; place-items:center; padding:30px; backdrop-filter:blur(6px)}
.lightbox figure{margin:0; max-width:min(1080px,94vw)}
.lightbox img{max-width:100%; max-height:78vh; border-radius:14px; box-shadow:0 30px 80px rgba(0,0,0,.5); margin:0 auto}
.lb-cap{text-align:center; color:#c2cdf0; margin-top:13px; font-size:14px}
.lb-close,.lb-prev,.lb-next{position:fixed; border:1px solid rgba(255,255,255,.2); background:rgba(20,40,100,.8); color:#fff; cursor:pointer;
  width:50px; height:50px; border-radius:50%; font-size:26px; line-height:1; display:grid; place-items:center; transition:background .15s,transform .12s; z-index:2}
.lb-close:hover,.lb-prev:hover,.lb-next:hover{background:var(--royal); transform:scale(1.06)}
.lb-close{top:calc(16px + env(safe-area-inset-top)); right:18px}
.lb-prev{left:14px; top:50%; transform:translateY(-50%)}
.lb-next{right:14px; top:50%; transform:translateY(-50%)}
.lb-prev:hover{transform:translateY(-50%) scale(1.06)}
.lb-next:hover{transform:translateY(-50%) scale(1.06)}
.lb-count{position:fixed; right:24px; bottom:calc(18px + env(safe-area-inset-bottom)); color:#c2cdf0; font:750 13px "Archivo"; letter-spacing:1.2px}

/* ---------- fab + toast + spodní lišta ---------- */
.fab{position:fixed; right:18px; bottom:calc(18px + env(safe-area-inset-bottom)); z-index:70; width:50px; height:50px; border-radius:50%; border:1px solid var(--line-2);
  background:#fff; color:var(--ink); font-size:20px; cursor:pointer; box-shadow:var(--shadow); transition:background .15s,transform .15s,color .15s}
.fab:hover{background:var(--royal); color:#fff; transform:translateY(-3px)}
.toast{position:fixed; left:50%; bottom:calc(28px + env(safe-area-inset-bottom)); transform:translateX(-50%) translateY(12px); z-index:105;
  background:var(--grad-royal); color:#fff; font:650 14px "Instrument Sans"; padding:12px 22px; border-radius:999px;
  box-shadow:var(--shadow); opacity:0; transition:opacity .2s,transform .2s; pointer-events:none; max-width:92vw; text-align:center}
.toast.show{opacity:1; transform:translateX(-50%) translateY(0)}

.bottom-nav{display:none}
@media (max-width:900px){
  .bottom-nav{position:fixed; left:0; right:0; bottom:0; z-index:80; display:grid; grid-template-columns:repeat(5,1fr);
    background:rgba(255,255,255,.95); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    border-top:1px solid var(--line); box-shadow:0 -10px 30px -18px rgba(14,30,78,.3); padding:8px 6px calc(8px + env(safe-area-inset-bottom))}
  .bottom-nav a{display:flex; flex-direction:column; align-items:center; gap:4px; padding:6px 4px; text-decoration:none;
    color:var(--mut); font:640 11px "Instrument Sans"; letter-spacing:.3px; border-radius:12px; position:relative; transition:color .15s}
  .bottom-nav svg{width:22px; height:22px}
  .bottom-nav a.on{color:var(--royal)}
  .bottom-nav a.on::after{content:""; position:absolute; top:2px; right:calc(50% - 17px); width:5px; height:5px; border-radius:50%; background:var(--gold-2)}
  .bottom-nav a:active{background:#eaf0ff}
  body{padding-bottom:calc(var(--bn-h) + env(safe-area-inset-bottom))}
  .fab{bottom:calc(var(--bn-h) + 14px + env(safe-area-inset-bottom))}
  .toast{bottom:calc(var(--bn-h) + 20px + env(safe-area-inset-bottom))}
  .site-foot{padding-bottom:6px}
}

/* ---------- animace ---------- */
body.js .reveal{opacity:0; transform:translateY(18px); transition:opacity .6s cubic-bezier(.2,.7,.3,1),transform .6s cubic-bezier(.2,.7,.3,1)}
body.js .reveal.in{opacity:1; transform:none}
body.js .res-grid>.reveal:nth-child(2),body.js .team-grid>.reveal:nth-child(2),body.js .board-grid>.reveal:nth-child(2),body.js .gal-grid>.reveal:nth-child(2),body.js .link-grid>.reveal:nth-child(2),body.js .partner-grid>.reveal:nth-child(2){transition-delay:.07s}
body.js .res-grid>.reveal:nth-child(3),body.js .team-grid>.reveal:nth-child(3),body.js .board-grid>.reveal:nth-child(3),body.js .gal-grid>.reveal:nth-child(3),body.js .link-grid>.reveal:nth-child(3),body.js .partner-grid>.reveal:nth-child(3){transition-delay:.14s}
body.js .res-grid>.reveal:nth-child(4),body.js .team-grid>.reveal:nth-child(4),body.js .gal-grid>.reveal:nth-child(4),body.js .partner-grid>.reveal:nth-child(4){transition-delay:.21s}
body.js .team-grid>.reveal:nth-child(5),body.js .gal-grid>.reveal:nth-child(5){transition-delay:.28s}
body.js .gal-grid>.reveal:nth-child(6),body.js .partner-grid>.reveal:nth-child(6){transition-delay:.3s}

/* ============================================================
   ADMINISTRACE
   ============================================================ */
body.admin{background:#eef1f9; color:#15234b; font-size:15.5px}
body.admin h1{font-size:30px; color:var(--navy-1)}
body.admin h3{color:var(--navy-1); display:flex; align-items:baseline; gap:8px; flex-wrap:wrap}
body.admin h3 small{font:500 13px "Instrument Sans"; color:#66739c}
.a-login{min-height:100vh; display:grid; place-items:center; background:
  radial-gradient(800px 400px at 80% -10%, rgba(61,99,245,.35), transparent 60%),
  linear-gradient(160deg,var(--navy-3),var(--navy-0)); padding:20px}
.a-login-card{background:#fff; border-radius:22px; padding:40px 38px; width:min(430px,94vw); text-align:center; box-shadow:var(--shadow)}
.a-login-card h1{font-size:24px; color:var(--navy-1); margin:16px 0 20px}
.a-login-card .brand-crest.big{margin:0 auto}
.a-login-card form{display:flex; flex-direction:column; gap:14px; text-align:left}
.a-shell{display:grid; grid-template-columns:236px 1fr; min-height:100vh}
.a-side{background:linear-gradient(180deg,var(--navy-1),var(--navy-0)); color:var(--ice); padding:24px 16px; display:flex; flex-direction:column; gap:22px; position:sticky; top:0; height:100vh}
.a-brand{display:flex; align-items:center; gap:11px; color:var(--ice); text-decoration:none; font:850 16px/1.2 "Archivo"}
.a-brand small{font:500 11px "Instrument Sans"; color:var(--mut); letter-spacing:.6px}
.a-side nav{display:flex; flex-direction:column; gap:3px}
.a-side nav a{color:var(--ice); text-decoration:none; padding:11px 14px; border-radius:11px; font-weight:640; font-size:14.5px; transition:background .13s}
.a-side nav a:hover{background:rgba(124,151,255,.14)}
.a-side nav a.on{background:var(--grad-royal); box-shadow:0 8px 20px -8px rgba(30,67,200,.6)}
.a-out-form{margin-top:auto}
.a-out{width:100%; background:transparent; border:1px solid var(--line); color:var(--mut); border-radius:11px; padding:11px; cursor:pointer; font:640 13.5px "Instrument Sans"; transition:color .13s,border-color .13s}
.a-out:hover{color:var(--ice); border-color:var(--line-2)}
.a-main{padding:36px 40px 64px; max-width:1080px}
.a-msg{background:#e5ecff; border:1px solid #b9c9f5; color:#1c2f6e; border-radius:12px; padding:13px 17px; font-weight:640}
.a-note{background:#fff; border:1px solid #dfe4f2; border-left:4px solid var(--gold); border-radius:11px; padding:13px 17px; color:#4a5578; font-size:14px; line-height:1.65}
.a-card{background:#fff; border:1px solid #dfe4f2; border-radius:17px; padding:23px 25px; margin:18px 0; box-shadow:0 8px 22px rgba(21,35,75,.06)}
.a-card form{display:flex; flex-direction:column; gap:13px}
.a-card label{display:flex; flex-direction:column; gap:6px; font:640 13.5px "Instrument Sans"; color:#3c4a78}
.a-card label small{color:#8a94b8; font-weight:500}
.a-card input,.a-card textarea,.a-card select{border:1.5px solid #ccd4ea; border-radius:11px; padding:12px 14px; font:500 16px "Instrument Sans"; color:#15234b; background:#fbfcff; outline:none; transition:border-color .15s,box-shadow .15s; width:100%}
.a-card input:focus,.a-card textarea:focus,.a-card select:focus{border-color:var(--royal-2); box-shadow:0 0 0 4px rgba(61,99,245,.13)}
.a-card textarea{resize:vertical; min-height:100px}
.a-row{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:13px}
.a-check{flex-direction:row!important; align-items:center; gap:10px!important}
.a-check input{width:19px; height:19px}
.a-actions{display:flex; gap:10px; align-items:center; flex-wrap:wrap}
.a-h2{margin:36px 0 14px; font-size:21px; color:var(--navy-1)}
.a-list{display:flex; flex-direction:column; gap:10px}
.a-item{display:flex; align-items:center; gap:14px; background:#fff; border:1px solid #dfe4f2; border-radius:15px; padding:12px 15px; transition:box-shadow .15s}
.a-item:hover{box-shadow:0 8px 20px rgba(21,35,75,.08)}
.a-thumb{width:58px; height:58px; border-radius:11px; object-fit:cover; background:#eef1f9; flex:none}
.a-thumb.none{display:grid; place-items:center; font-size:22px}
.a-item-info{display:flex; flex-direction:column; gap:2px; min-width:0}
.a-item-info strong{font-size:15px; color:var(--navy-1); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.a-item-info small{color:#8a94b8; font-size:12.5px}
.a-item-actions{margin-left:auto; display:flex; gap:8px; align-items:center; flex:none}
.a-imgs{border:1.5px dashed #ccd4ea; border-radius:13px; padding:12px; display:flex; gap:10px; flex-wrap:wrap}
.a-imgs legend{font:640 12.5px "Instrument Sans"; color:#66739c; padding:0 6px}
.a-img{position:relative}
.a-img img{width:76px; height:76px; object-fit:cover; border-radius:10px}
.a-img input{position:absolute; right:5px; top:5px; width:19px; height:19px}
.a-gal{display:grid; grid-template-columns:repeat(auto-fill,minmax(152px,1fr)); gap:12px}
.a-gal-item{position:relative; background:#fff; border:1px solid #dfe4f2; border-radius:13px; padding:8px; display:flex; flex-direction:column; gap:6px}
.a-gal-item img{width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:9px}
.a-gal-item small{color:#66739c; font-size:12px; line-height:1.35}
.a-gal-item form{position:absolute; top:13px; right:13px}
.a-log{display:flex; flex-direction:column; gap:6px; font-size:13.5px}
.a-log-row{display:grid; grid-template-columns:132px 155px 1fr; gap:10px; background:#fff; border:1px solid #dfe4f2; border-radius:11px; padding:9px 13px; color:#3c4a78}
.a-log-row.ok{border-left:4px solid var(--grass)}
.a-log-row.err{border-left:4px solid var(--loss)}
.a-sync{margin-top:12px}
.dz{position:relative; border:2px dashed #b9c4e8; border-radius:15px; background:#f7f9ff; padding:20px; text-align:center; cursor:pointer; transition:border-color .15s,background .15s; display:block}
.dz.drag{border-color:var(--royal-2); background:#eaf1ff}
.dz input{position:absolute; width:1px; height:1px; opacity:0}
.dz-in{color:#4a5578; font-size:14px; display:block; line-height:1.7}
.dz-in b{color:var(--navy-1)}
.dz-in small{color:#8a94b8}
.dz-list{display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin-top:10px}
.dz-list img{width:66px; height:66px; object-fit:cover; border-radius:9px; border:1px solid #dfe4f2}
.dz-list em{align-self:center; color:#66739c; font-size:13px; font-weight:640; font-style:normal}

/* ---------- responsivita ---------- */
@media (max-width:1023px){
  .res-grid{grid-template-columns:repeat(2,1fr)}
  .team-grid{grid-template-columns:repeat(3,1fr)}
  .partner-grid{grid-template-columns:repeat(3,1fr)}
  .board-grid,.link-grid{grid-template-columns:repeat(2,1fr)}
  .gal-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  :root{--head-h:66px}
  .burger{display:flex}
  .nav{position:fixed; inset:var(--head-h) 0 auto 0; background:#fff; border-bottom:1px solid var(--line);
    border-radius:0 0 20px 20px;
    flex-direction:column; align-items:stretch; padding:16px 20px 22px; gap:6px; display:none; box-shadow:var(--shadow);
    max-height:calc(100dvh - var(--head-h)); overflow:auto; overscroll-behavior:contain}
  body.nav-open .nav{display:flex}
  body.nav-open::before{content:""; position:fixed; inset:0; z-index:59;
    background:rgba(7,18,51,.45); -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px)}
  .nav-group{flex-direction:column; align-items:stretch}
  .nav-group>a{padding-right:15px}
  .sub-toggle{display:none}
  .sub{position:static; transform:none; opacity:1; visibility:visible; min-width:0;
    background:transparent; border:0; border-left:2px solid var(--line); border-radius:0; box-shadow:none;
    margin:2px 0 4px 6px; padding:2px 0 2px 12px; gap:2px}
  .sub::before{display:none}
  .nav .sub a{font-size:15px; padding:11px 14px}
  body.nav-open{overflow:hidden}
  body.nav-open .burger span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.nav-open .burger span:nth-child(2){opacity:0}
  body.nav-open .burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .nav a{padding:14px 15px; font-size:16px}
  .contact-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr; padding-top:44px}
  .a-shell{grid-template-columns:1fr}
  .a-side{position:static; height:auto; flex-direction:row; flex-wrap:wrap; align-items:center; gap:14px}
  .a-side nav{flex-direction:row; flex-wrap:wrap}
  .a-out-form{margin:0 0 0 auto; width:auto}
  .a-main{padding:26px 20px 54px}
  .sect{padding:62px 0}
  .heritage{padding:78px 0}
}
@media (max-width:820px){
  .hero::after{background:
    linear-gradient(180deg,rgba(8,22,62,.84) 0%,rgba(11,30,86,.5) 55%,rgba(20,48,150,.22) 100%),
    linear-gradient(180deg,transparent calc(100% - 90px),var(--bg))}
  .sb-board{grid-template-columns:1fr; gap:15px}
  .sb-mid{order:-1}
  .sb-team{flex-direction:row; justify-content:center; gap:12px}
  .sb-crest{width:52px; height:52px}
  .fix{grid-template-columns:1fr; gap:7px}
  .fix-meta{text-align:left; justify-content:flex-start}
  .ns-right{margin-left:0}
  .ticker-item{font-size:13px}
}
@media (max-width:640px){
  .sb-filter,.team-switch{flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch;
    scrollbar-width:none; scroll-snap-type:x proximity;
    margin-inline:calc(-1 * var(--wrap-pad)); padding-inline:var(--wrap-pad);
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 var(--wrap-pad),#000 calc(100% - 30px),transparent);
    mask-image:linear-gradient(90deg,transparent,#000 var(--wrap-pad),#000 calc(100% - 30px),transparent)}
  .sb-filter::-webkit-scrollbar,.team-switch::-webkit-scrollbar{display:none}
  .sb-filter a,.team-switch a{flex:none; scroll-snap-align:start; white-space:nowrap}
  .sb-meta{gap:6px 14px}
  .sb-venue{margin-left:0}
  /* Nástěnka · E-shop · Registrace FAČR — na telefonu jako jemná tlačítka místo podtržených odkazů s tečkami */
  .hero-links{margin-top:26px; gap:9px}
  .hero-links span{display:none}
  .hero-links a{flex:1 1 auto; text-align:center; min-height:44px; display:inline-flex; align-items:center; justify-content:center;
    padding:10px 15px; border:1px solid rgba(255,255,255,.35); border-radius:999px; background:rgba(255,255,255,.09);
    font-size:.78rem; letter-spacing:.05em; transition:background .15s,border-color .15s,color .15s}
  .hero-links a:hover,.hero-links a:active{border-color:var(--gold-2); color:var(--gold-2); background:rgba(255,255,255,.14)}
  /* Tabulka na telefonu jednodušší než na PC: jen Zápasy, Skóre a Body — vejde se celá bez posouvání */
  .standings{min-width:0; font-size:14px}
  .standings th:nth-child(4),.standings th:nth-child(5),.standings th:nth-child(6),
  .standings td:nth-child(4),.standings td:nth-child(5),.standings td:nth-child(6){display:none}
  .standings th,.standings td{padding:10px 9px}
  .standings .pos{width:32px}
  .standings .club{gap:7px}
  .standings .pts{font-size:15.5px}
}
@media (max-width:560px){
  .res-grid,.board-grid,.link-grid{grid-template-columns:1fr}
  .team-grid,.gal-grid{grid-template-columns:repeat(2,1fr)}
  .partner-grid{grid-template-columns:repeat(2,1fr); gap:11px}
  .gal-item.wide{grid-column:span 2; grid-row:span 1; aspect-ratio:16/9}
  .sect{padding:52px 0}
  .scoreboard{padding:20px 16px 22px; border-radius:20px}
  .sb-count{gap:6px}
  .sb-count span{min-width:50px; padding:8px 7px}
  .sb-count b{font-size:19px}
  .sb-score{font-size:38px}
  .sb-actions .btn{flex:1 1 auto}
  .foot-grid{grid-template-columns:1fr; gap:26px}
  .a-log-row{grid-template-columns:1fr; gap:2px}
  .post-full{padding:21px 18px}
  .post-imgs a{width:calc(50% - 5px)}
  .next-strip{padding:16px 16px}
  .heritage{padding:64px 0}
  .stat-row{gap:26px}
  h2{font-size:25px}
  .team-switch a{padding:10px 14px; font-size:14px}
}
@media (max-width:420px){
  :root{--wrap-pad:16px}
  .brand-txt small{display:none}
  .team-grid{grid-template-columns:1fr}
  .sb-count span{min-width:46px}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important; transition:none!important}
  html{scroll-behavior:auto}
  body.js .reveal{opacity:1; transform:none}
  .ticker-track{animation:none!important; flex-wrap:wrap; width:auto}
}

@media print{
  .site-head,.site-foot,.fab,.hero-links,.sb-actions,.sb-filter,.burger,.chips,.copy-link,.search-box,.ticker,.bottom-nav,.scroll-progress{display:none!important}
  body{background:#fff; color:#000; padding-bottom:0}
  .hero,.team-hero,.heritage{background:#fff!important; color:#000; padding:20px 0}
  .hero *,.team-hero *,.heritage *{color:#000!important}
  .standings tr.us{background:#dfe8ff}
  .standings tr.us td,.standings tr.us .club{color:#000!important}
}

/* ============================================================
   v2 — barvy týmů, čekající výsledky, dvojutkání, admin výsledků
   ============================================================ */
.team-card{--team:var(--royal)}
.team-card::before{opacity:1; background:var(--team)}
.team-card:hover::before{height:5px}
.team-next{color:var(--team)}
.team-hero{--team:var(--royal)}
.team-hero .hero-eyebrow{color:var(--team)}
.team-hero h1{border-left:6px solid var(--team); padding-left:18px; margin-left:-24px}
.team-switch a{--team:var(--royal); position:relative}
.team-switch a::before{content:""; width:9px; height:9px; border-radius:50%; background:var(--team); display:inline-block; margin-right:8px; vertical-align:1px}
.team-switch a.on{background:var(--team); box-shadow:0 8px 20px -8px var(--team)}
.team-switch a.on::before{background:#fff}
.team-body .next-strip::before{background:var(--team,var(--grad-royal))}
.team-body .fix-teams b.us{color:var(--team)}
.team-body .standings tr.us{background:var(--team)}
.ns-more{color:var(--ink-2)!important; font-size:13px!important}
.ns-more b{color:var(--ink)}
.team-note{color:var(--mut); background:#fff; border:1px dashed var(--line-2); border-radius:var(--rad-s); padding:14px 18px; margin:26px 0 8px; font-size:14.5px}
.fix.twin{border-top-left-radius:4px; border-top-right-radius:4px; margin-top:-6px}
.fix.twin .fix-date em{font-style:normal; color:var(--mut-2); font-size:13px}
.fix.done.noscore .fix-teams b{color:var(--ink)}
.fix.done.noscore .fix-teams b.us{color:var(--team,var(--royal))}
.fix-meta a.ext{color:var(--royal); font-weight:650; text-decoration:none; white-space:nowrap}
.fix-meta a.ext:hover{text-decoration:underline}
.table-upd{margin:-18px 0 16px}
.res-card .res-team{color:var(--royal)}

/* administrace — zápasy */
.a-tabs{display:flex; gap:8px; flex-wrap:wrap; margin:0 0 16px}
.a-tabs a{--team:var(--royal); text-decoration:none; color:#2b3a6a; background:#fff; border:1px solid #dfe4f2; padding:9px 14px; border-radius:999px; font:640 13.5px "Instrument Sans"; display:inline-flex; align-items:center; gap:8px}
.a-tabs a::before{content:""; width:9px; height:9px; border-radius:50%; background:var(--team)}
.a-tabs a.on{background:var(--team); color:#fff; border-color:transparent}
.a-tabs a.on::before{background:#fff}
.a-res{display:flex; flex-direction:column; gap:6px}
.a-res-row{display:grid; grid-template-columns:150px 1fr 118px 1fr auto; gap:10px; align-items:center; padding:8px 10px; border:1px solid #eef1f8; border-radius:11px; background:#fbfcff}
.a-res-row.result{background:#f2fbf5; border-color:#c9ead4}
.a-res-date{display:flex; flex-direction:column; font:640 13px "Instrument Sans"; color:#2b3a6a}
.a-res-date small{color:#8a94b8; font-weight:500; font-size:11.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.a-res-team{font-size:14px; color:#33406b; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.a-res-team.us{font-weight:800; color:var(--navy-1)}
.a-res-team:nth-of-type(2){text-align:right}
.a-res-score{display:flex; align-items:center; gap:4px; justify-content:center}
.a-res-score b{color:#8a94b8}
.a-card .a-res-score input{width:48px; padding:7px 4px; text-align:center; font-weight:750; border-radius:8px}
.a-res-act{display:flex; gap:6px}
.a-res-act .btn.sm{padding:6px 10px; font-size:14px; line-height:1}
.a-inline{display:inline-flex}
.a-card form.a-inline{flex-direction:row}
.a-details summary{cursor:pointer; color:#2b3a6a; font:640 14.5px "Instrument Sans"; padding:6px 0}
.a-details summary small{color:#8a94b8; font-weight:500}
.a-details[open] summary{margin-bottom:12px}
details.a-card summary{list-style-position:inside}
.a-standings{min-width:520px; font-size:14px}
.a-standings td,.a-standings th{padding:8px 12px}
.a-standings tr.us{background:var(--navy-1)}
.a-log-row{grid-template-columns:132px 1fr}
@media (max-width:760px){
  .a-main,.a-card,.a-res,.a-res-form{min-width:0}
  .a-res-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-areas:"date date" "home away" "score act"; gap:8px}
  .a-res-row>*{min-width:0}
  .a-res-team{white-space:normal; line-height:1.3}
  .a-res-date{grid-area:date; flex-direction:row; gap:8px; align-items:baseline}
  .a-res-team:nth-of-type(2){grid-area:home; text-align:left}
  .a-res-team:nth-of-type(4){grid-area:away; text-align:right}
  .a-res-score{grid-area:score; justify-content:flex-start}
  .a-res-act{grid-area:act; justify-content:flex-end}
  .team-hero h1{margin-left:0; padding-left:14px; border-left-width:5px}
}

/* galerie — rozbalování dlouhých alb */
.gal-expand{text-align:center; margin:-26px 0 46px}
.gal-item[hidden]{display:none}
.gal-link{margin:34px 0 0; color:var(--mut); font-size:14.5px; text-align:center}
.gal-link a{color:var(--royal); font-weight:700; text-decoration:none}
.gal-link a:hover{text-decoration:underline}
