
:root{--g:#5cb52a;--dg:#1f6b2d;--ink:#171b18;--muted:#6d756f;--line:#dce5da;--soft:#f4f7f3;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:#fff}.container{width:min(1180px,calc(100% - 36px));margin:auto}
.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font-size:18px;font-weight:800}.brand img{width:42px;height:42px;object-fit:contain}.brand b{color:var(--g)}
nav{display:flex;align-items:center;gap:25px}nav a{text-decoration:none;color:#2f3631;font-size:14px;font-weight:650}nav a:hover{color:var(--dg)}.admin-link{border:1px solid var(--line);padding:9px 13px;border-radius:10px}.menu{display:none;border:0;background:transparent;font-size:25px}
.hero{padding:80px 0 68px;background:linear-gradient(135deg,#fff 0%,#fff 55%,#eef7ea 100%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:65px;align-items:center}.eyebrow,.section-title span{font-size:12px;font-weight:850;letter-spacing:.12em;color:var(--dg)}h1{font-size:64px;line-height:.98;margin:15px 0 20px;letter-spacing:-.045em}h1 span{color:var(--g)}.hero p{font-size:19px;line-height:1.6;color:var(--muted);max-width:700px}.hero-actions{display:flex;gap:12px;margin-top:30px}.btn{padding:13px 18px;border-radius:10px;text-decoration:none;font-weight:750;font-size:14px}.primary{background:var(--dg);color:white}.ghost{border:1px solid var(--line);color:var(--ink);background:#fff}
.hero-card{background:#17241a;color:white;border-radius:22px;padding:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;box-shadow:0 22px 60px rgba(31,107,45,.18)}.hero-card-head{grid-column:1/-1;display:flex;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12);font-size:13px}.hero-card-head span{color:#aebbad}.metric{padding:18px 4px 4px}.metric strong{display:block;font-size:32px;color:#7bd144}.metric span{font-size:12px;color:#c8d0c9}
.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:-28px;position:relative}.quick-card{background:white;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 10px 30px rgba(26,50,29,.06)}.quick-card>span{font-size:12px;font-weight:850;color:var(--g)}.quick-card h3{margin:8px 0 7px}.quick-card p{color:var(--muted);font-size:14px;line-height:1.55}.quick-card a{color:var(--dg);font-weight:800;text-decoration:none;font-size:13px}
.section{padding:78px 0}.muted{background:var(--soft)}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px;gap:20px}.section-title h2{font-size:36px;letter-spacing:-.03em;margin:5px 0 0}.section-title select{padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:700}.status{letter-spacing:0!important;background:#e9f4e5;padding:8px 11px;border-radius:999px}
.fixtures{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.fixture{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:16px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#fff}.fixture-time{font-weight:850}.fixture-field{font-size:12px;color:var(--muted)}.fixture-teams{font-weight:700}.fixture-teams span{color:#9aa29b;padding:0 6px}.note{font-size:12px;color:var(--muted);margin-top:15px}
.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:15px}.standings{width:100%;border-collapse:collapse;min-width:650px}.standings th,.standings td{padding:14px 16px;border-bottom:1px solid #edf1ec;text-align:center;font-size:14px}.standings th{background:#f8faf7;font-size:12px;color:#6f786f;text-transform:uppercase}.standings th:nth-child(2),.standings td:nth-child(2){text-align:left}.team-cell{font-weight:750}.pos{width:32px;font-weight:850;color:var(--dg)}
.teams-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.team-card{border:1px solid var(--line);border-radius:15px;padding:19px;background:#fff;min-height:120px;display:flex;flex-direction:column;justify-content:space-between}.team-badge{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eaf4e6;color:var(--dg);font-weight:900}.team-card b{font-size:14px}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;min-height:190px}.stat-panel h3{margin-top:0}.empty{color:var(--muted);font-size:14px;line-height:1.6;border-top:1px solid var(--line);padding-top:16px}
.docs{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.doc{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink)}.doc:hover{border-color:#a4c999;background:#f8fbf7}.doc span{color:var(--muted);font-size:12px}.disabled{opacity:.55}
footer{background:#142017;color:#dce4dc;padding:34px 0}.footer-grid{display:grid;grid-template-columns:1fr 1.5fr .5fr;align-items:center;gap:20px;font-size:13px}.footer-brand{color:white}.footer-right{text-align:right}
@media(max-width:850px){nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:18px;flex-direction:column;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu{display:block}.hero{padding-top:52px}.hero-grid{grid-template-columns:1fr}.hero-card{max-width:560px}h1{font-size:48px}.quick{grid-template-columns:1fr;margin-top:18px}.fixtures{grid-template-columns:1fr}.teams-grid{grid-template-columns:repeat(2,1fr)}.stats-grid,.docs{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-right{text-align:left}}
@media(max-width:520px){.container{width:min(100% - 24px,1180px)}.nav{height:66px}.brand img{width:36px;height:36px}h1{font-size:41px}.hero p{font-size:16px}.hero-actions{flex-direction:column;align-items:stretch}.btn{text-align:center}.hero-card{grid-template-columns:1fr 1fr 1fr;padding:17px}.metric strong{font-size:25px}.section{padding:58px 0}.section-title{align-items:start;flex-direction:column}.section-title h2{font-size:30px}.fixture{grid-template-columns:56px 1fr}.fixture-field{display:none}.teams-grid{grid-template-columns:1fr 1fr}.doc{align-items:flex-start;flex-direction:column}}


/* ===== FAMK V2 additions ===== */
.compact-hero{padding-top:64px;padding-bottom:62px}
.score-strip{padding:34px 0 42px;background:#17241a;color:#fff}
.score-strip-head,.dash-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}
.score-strip-head h2,.dash-head h2{margin:4px 0 0;font-size:28px;letter-spacing:-.025em}
.score-strip-head a,.dash-head a{color:#7bd144;text-decoration:none;font-size:13px;font-weight:800}
.top-fixtures{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.top-fixture{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);border-radius:14px;padding:15px;text-decoration:none;color:#fff;transition:.18s ease}
.top-fixture:hover{background:rgba(255,255,255,.1);transform:translateY(-1px)}
.top-fixture-meta{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin-bottom:14px}.top-fixture-meta span{color:#b8c1ba}
.top-fixture-teams{display:grid;gap:5px;font-size:14px;font-weight:750}.top-fixture-teams em{font-size:10px;color:#7bd144;font-style:normal;text-transform:uppercase}
.dashboard{display:grid;grid-template-columns:1.4fr .6fr;gap:18px;padding-top:34px;padding-bottom:10px}
.dash-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:24px}.dash-card.main{min-width:0}
.mini-table{border-top:1px solid var(--line)}.mini-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;padding:11px 0;border-bottom:1px solid #edf1ec;text-decoration:none;color:var(--ink);font-size:14px}
.mini-pos{font-weight:900;color:var(--dg)}.mini-name{display:flex;align-items:center;gap:10px;font-weight:750}.mini-badge{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eaf4e6;color:var(--dg);font-style:normal;font-size:10px;font-weight:900}
.leader-empty{display:flex;flex-direction:column;gap:8px;padding:18px 0;color:var(--muted);line-height:1.5}.leader-empty strong{color:var(--ink)}
.fixture-meta{min-width:64px}.fixture-detail{font-size:12px;font-weight:800;color:var(--dg);text-decoration:none}.team-link{color:var(--ink);text-decoration:none}.team-link:hover{color:var(--dg)}
.team-cell a{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.team-card{text-decoration:none;color:var(--ink);transition:.18s ease}.team-card:hover{border-color:#a4c999;transform:translateY(-2px);box-shadow:0 10px 25px rgba(26,50,29,.07)}
.team-card>div:last-child{display:flex;flex-direction:column;gap:5px}.team-card span{font-size:11px;color:var(--dg);font-weight:750}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.news-card{border:1px solid var(--line);border-radius:16px;padding:22px;background:#fff}.news-card time{font-size:11px;color:var(--dg);font-weight:850;letter-spacing:.06em}.news-card h3{margin:9px 0 8px;font-size:20px}.news-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.doc div{display:flex;flex-direction:column;gap:4px}.doc strong{color:var(--dg);font-size:12px}
footer a{color:#dce4dc}
.back-link{color:var(--dg);text-decoration:none;font-size:13px;font-weight:800}
.detail-page{min-height:75vh}.team-hero,.match-hero{background:linear-gradient(135deg,#fff,#eef7ea);border-bottom:1px solid var(--line);padding:52px 0}.team-hero-inner{display:flex;align-items:center;gap:22px}.team-big-badge{width:86px;height:86px;border-radius:50%;background:#17241a;color:#7bd144;display:grid;place-items:center;font-size:26px;font-weight:950}.team-hero h1{font-size:50px;margin:8px 0 6px}.team-hero p{margin:0;color:var(--muted)}
.detail-grid{display:grid;grid-template-columns:1.45fr .55fr;gap:22px}.side-panel{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff;height:max-content}.side-panel h2{margin:5px 0 10px}.detail-copy{color:var(--muted);line-height:1.65}
.match-card-big{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:26px;margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}.match-team{display:flex;align-items:center;gap:18px}.match-team:last-child{justify-content:flex-end;text-align:right}.match-team h2{font-size:28px;margin:0}.match-center{text-align:center}.match-center strong{display:block;font-size:28px;color:var(--g)}.match-center span{display:block;color:var(--muted);font-size:12px;margin-top:5px}

@media(max-width:950px){
  .top-fixtures{grid-template-columns:repeat(2,1fr)}
  .dashboard,.detail-grid{grid-template-columns:1fr}
  .news-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .compact-hero{padding-top:46px}
  .score-strip{padding:28px 0 34px}
  .top-fixtures{grid-template-columns:1fr}
  .dashboard{grid-template-columns:1fr;padding-top:18px}
  .news-grid{grid-template-columns:1fr}
  .fixture{grid-template-columns:60px 1fr auto;padding:15px}
  .fixture-detail{font-size:0}.fixture-detail:after{content:'›';font-size:22px}
  .team-hero{padding:34px 0}.team-hero-inner{align-items:flex-start}.team-big-badge{width:66px;height:66px;font-size:21px;flex:0 0 auto}.team-hero h1{font-size:35px}
  .match-card-big{grid-template-columns:1fr;gap:18px;text-align:center}.match-team,.match-team:last-child{justify-content:center;text-align:center;flex-direction:column}.match-center{order:2}.match-team:last-child{order:3}
}

.score{color:var(--dg);font-size:18px;padding:0 7px}
.roster-row,.event-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.roster-row small{color:var(--muted)}


/* ===== Player roster cards ===== */
.player-card{display:flex;align-items:center;gap:13px;padding:12px 0;border-bottom:1px solid var(--line)}
.player-card:last-child{border-bottom:0}
.player-photo-wrap{width:54px;height:54px;flex:0 0 54px}
.player-photo{width:54px;height:54px;border-radius:50%;object-fit:cover;object-position:center top;background:var(--soft);border:1px solid var(--line)}
.player-photo-empty{display:grid;place-items:center;color:var(--dg);font-weight:900;font-size:14px;background:#eaf4e6}
.player-info{min-width:0;display:flex;flex-direction:column;gap:3px}
.player-info strong{font-size:14px;line-height:1.25}
.player-info span{font-size:11px;color:var(--muted)}
@media(max-width:950px){.side-panel{max-width:none}.side-panel #roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}}
@media(max-width:600px){.side-panel #roster{grid-template-columns:1fr}.player-photo-wrap,.player-photo{width:58px;height:58px;flex-basis:58px}}

/* V4.3 - datum zápasu */
.fixture-date{font-size:.78rem;font-weight:800;color:#176c42;margin-bottom:2px;white-space:nowrap}.top-fixture-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.top-fixture-meta>span:first-child{font-weight:800;color:#176c42}.top-fixture-meta b{font-size:1rem}

/* V4.4 - střelci a asistence */
.event-list{display:grid;gap:9px;margin-top:10px}.match-event-goal{display:grid;grid-template-columns:52px 1fr;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.match-event-goal:last-child{border-bottom:0}.event-minute{font-weight:900;color:var(--dg);text-align:center}.match-event-goal strong{display:block;font-size:15px}.match-event-goal span{display:block;margin-top:3px;color:var(--muted);font-size:12px}
