/* FACR WEB 5.0 — premium club design
   Visual-only layer over the stable data/application code. */
:root{
  --v5-bg:#020913;--v5-bg2:#061321;--v5-panel:#071827;--v5-panel2:#0b2235;
  --v5-red:#ff263d;--v5-red2:#d9112d;--v5-blue:#365aff;--v5-green:#15a865;
  --v5-white:#f8fbff;--v5-muted:#8fa4b5;--v5-line:rgba(132,171,204,.20);
  --v5-light:#f4f7fa;--v5-ink:#06111d;--v5-shadow:0 22px 60px rgba(0,0,0,.26);
  --v5-radius:14px;--v5-max:1440px;
}
html{background:var(--v5-bg);scroll-behavior:smooth}
body{background:var(--v5-bg);color:var(--v5-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.wrap{width:min(var(--v5-max),calc(100% - 64px));margin-inline:auto}
.hidden{display:none!important}

/* top utility + header */
.utility-bar{min-height:32px;background:#01060c!important;border:0!important;color:#8ca0b2!important;position:relative}
.utility-bar:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--v5-red) 0 48%,var(--v5-blue) 48% 100%);opacity:.95}
.utility-inner{min-height:32px;display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}
.utility-center{font-size:.69rem;letter-spacing:.04em;color:#bac8d3;text-align:center;position:relative;padding:0 18px}
.utility-center:after{content:"";position:absolute;left:18%;right:18%;bottom:-8px;height:2px;background:var(--v5-red);box-shadow:55px 0 0 var(--v5-blue)}
.utility-right{justify-self:end}.utility-left{justify-self:start}
.live-pip{background:#19c978!important;box-shadow:0 0 0 4px rgba(25,201,120,.12)!important}
.site-header{position:sticky!important;top:0!important;z-index:100;background:rgba(3,13,23,.96)!important;border:0!important;box-shadow:0 14px 34px rgba(0,0,0,.24)!important;backdrop-filter:blur(18px)}
.site-header:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(255,255,255,.08)!important}
.header-main{min-height:86px;gap:26px}
.brand{gap:14px}.brand-logo{width:66px!important;height:66px!important;filter:drop-shadow(0 7px 16px rgba(0,0,0,.25))}
.brand-copy strong{font-size:1.32rem!important;letter-spacing:-.025em!important;line-height:1.02;max-width:520px}.brand-copy small{font-size:.60rem!important;letter-spacing:.20em!important;color:#8297a8!important;margin-top:6px!important}
.main-nav{margin-left:auto!important;gap:6px!important}.main-nav>a,.nav-group>summary{color:#e8eef3!important;padding:12px 13px!important;border-radius:9px!important;font-size:.75rem!important;letter-spacing:.01em;font-weight:900!important;text-transform:uppercase}
.main-nav>a:hover,.nav-group>summary:hover,.main-nav>a.active,.nav-group.active>summary{background:rgba(255,255,255,.06)!important;color:#fff!important}
.main-nav>a.active:after,.nav-group.active>summary:after{background:linear-gradient(90deg,var(--v5-red) 0 55%,var(--v5-blue) 55%)!important;height:3px!important;border-radius:99px!important}
.nav-dropdown{background:#071522!important;border:1px solid rgba(140,177,207,.18)!important;border-radius:12px!important;box-shadow:0 25px 55px rgba(0,0,0,.42)!important;padding:8px!important;min-width:210px!important}
.nav-dropdown a{color:#d9e4ec!important;border-radius:8px!important;padding:10px 12px!important;font-size:.76rem!important}.nav-dropdown a:hover{background:rgba(255,38,61,.12)!important;color:#fff!important}
.header-program{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:9px;background:linear-gradient(135deg,var(--v5-red),#ee1733);color:#fff;font-size:.72rem;font-weight:950;text-transform:uppercase;box-shadow:0 9px 24px rgba(255,38,61,.22);white-space:nowrap}.header-program:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(255,38,61,.30)}

/* homepage / hero */
#view-home{background:linear-gradient(180deg,#020a14 0,#04111d 66%,#06101a 100%);color:#fff;overflow:hidden}
.hero-v5{position:relative;isolation:isolate;min-height:500px;background:linear-gradient(108deg,#030b14 0%,#061626 46%,#071a2d 72%,#101a4b 100%)!important;overflow:hidden;border-bottom:0!important}
.hero-v5:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 66% 35%,rgba(255,38,61,.18),transparent 26%),radial-gradient(circle at 94% 46%,rgba(54,90,255,.22),transparent 34%),linear-gradient(90deg,rgba(1,6,12,.96) 0%,rgba(2,10,18,.86) 45%,rgba(2,10,18,.38) 100%);z-index:-2}
.hero-v5:after{content:"";position:absolute;right:-6%;top:-14%;width:58%;height:128%;background:radial-gradient(ellipse at center,rgba(255,38,61,.10),transparent 48%),repeating-radial-gradient(circle at 58% 50%,rgba(106,137,255,.12) 0 1px,transparent 1px 42px);opacity:.72;z-index:-1}
.hero-v5-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(90deg,#000,transparent 85%);z-index:-1}
.hero-v5-glow{position:absolute;border-radius:50%;filter:blur(60px);opacity:.36;z-index:-1}.hero-v5-glow-red{width:420px;height:420px;background:#bf102b;right:17%;top:-210px}.hero-v5-glow-blue{width:390px;height:390px;background:#263fbb;right:-140px;bottom:-230px}
.hero-inner{min-height:500px!important;grid-template-columns:minmax(0,1.16fr) minmax(350px,.84fr)!important;gap:70px!important;align-items:center!important}
.hero-copy{padding:56px 0 74px!important;position:relative;z-index:3}.hero-copy .eyebrow{color:var(--v5-red)!important;font-size:.72rem!important;letter-spacing:.24em!important;font-weight:950!important;margin-bottom:13px;text-transform:uppercase}.hero-copy h1{font-size:clamp(3.65rem,5.7vw,6.25rem)!important;line-height:.86!important;max-width:830px!important;margin:0 0 18px!important;letter-spacing:-.070em!important;text-transform:uppercase;color:#fff!important}.hero-copy h1 span{color:#fff;position:relative}.hero-copy h1 span:after{content:"";position:absolute;left:0;right:2%;bottom:-6px;height:5px;background:linear-gradient(90deg,var(--v5-blue) 0 42%,var(--v5-red) 42%);border-radius:999px;opacity:.95}
.hero-tagline{font-size:1.24rem!important;color:#d9e4ec!important;font-weight:650!important;margin:23px 0 8px!important}.hero-copy p{font-size:.9rem!important;color:#8fa4b5!important;max-width:620px!important}.hero-actions{margin-top:24px!important;gap:12px!important}.hero-actions .button{min-height:48px!important;border-radius:9px!important;padding:0 18px!important;font-size:.72rem!important;letter-spacing:.02em!important}.button-primary{background:linear-gradient(135deg,var(--v5-red),#ec1732)!important;box-shadow:0 12px 28px rgba(255,38,61,.25)!important}.button-ghost{border:1px solid rgba(91,126,255,.72)!important;background:rgba(3,13,23,.34)!important;color:#fff!important}.button-ghost:hover{background:rgba(54,90,255,.15)!important;color:#fff!important}.sync-line{margin-top:18px!important;color:#7f94a5!important;font-size:.69rem!important}.hero-side{display:flex!important;align-items:center!important;justify-content:flex-end!important;padding:30px 0!important;min-height:420px;position:relative}.hero-identity{display:flex;align-items:center;justify-content:flex-end;gap:26px;width:100%}.hero-crest{position:relative!important;right:auto!important;top:auto!important;width:285px!important;height:285px!important;opacity:1!important;filter:none!important;display:grid!important;place-items:center!important}.hero-crest:before{content:"";position:absolute;inset:-30px;border-radius:50%;border:1px solid rgba(101,135,255,.23);box-shadow:0 0 0 34px rgba(54,90,255,.035),0 0 90px rgba(54,90,255,.16)}.hero-crest img{position:relative;z-index:2;width:86%!important;height:86%!important;object-fit:contain!important;filter:drop-shadow(0 20px 38px rgba(0,0,0,.35))}.crest-halo{position:absolute!important;inset:7%!important;border-radius:50%!important;background:radial-gradient(circle,rgba(255,255,255,.07),transparent 68%)!important;border:0!important}.hero-tradition{display:flex;flex-direction:column;align-items:flex-start;gap:5px;border-left:2px solid var(--v5-red);padding-left:17px;text-transform:uppercase}.hero-tradition span{font-size:.64rem;letter-spacing:.28em;color:#a5b6c3;font-weight:850}.hero-tradition strong{font-size:.92rem;letter-spacing:.23em;color:#fff}.hero-tradition b{font-size:.68rem;letter-spacing:.18em;color:#6682ff}.hero-match-spotlight{display:none!important}

/* Results service + match cards */
.home-sport{position:relative!important;z-index:8!important;margin-top:-34px!important;display:grid!important;grid-template-columns:1fr 1fr 1.06fr!important;gap:14px!important;padding-bottom:0!important}.home-team-switch{grid-column:1/-1!important;min-height:58px!important;border-radius:11px!important;background:rgba(3,12,21,.96)!important;border:1px solid rgba(93,135,171,.34)!important;box-shadow:0 16px 36px rgba(0,0,0,.30)!important;padding:6px 8px 6px 210px!important;display:flex!important;gap:4px!important;align-items:center!important;overflow-x:auto!important;position:relative}.home-team-switch:before{content:"VÝSLEDKOVÝ SERVIS"!important;display:flex!important;align-items:center;position:absolute;left:20px;top:0;bottom:0;color:#f2f7fb!important;font-size:.70rem!important;letter-spacing:.08em!important;font-weight:950!important}.home-team-button{min-height:42px!important;padding:0 15px!important;border:0!important;border-radius:8px!important;color:#aabac7!important;background:transparent!important;font-size:.72rem!important;font-weight:850!important;white-space:nowrap}.home-team-button:hover{background:rgba(255,255,255,.055)!important;color:#fff!important}.home-team-button.active{background:linear-gradient(135deg,var(--v5-red),#f7354b)!important;color:#fff!important;box-shadow:inset -4px 0 0 var(--v5-blue),0 7px 18px rgba(255,38,61,.22)!important}
.sport-feature-card{position:relative!important;background:linear-gradient(160deg,#061624 0%,#0a2133 100%)!important;border:1px solid rgba(101,145,180,.25)!important;border-radius:12px!important;box-shadow:0 18px 46px rgba(0,0,0,.24)!important;overflow:hidden!important}.sport-feature-card:before{height:3px!important;background:linear-gradient(90deg,var(--v5-red) 0 48%,var(--v5-blue) 48% 100%)!important}.sport-feature-card:after{content:"";position:absolute;inset:52px 0 0;background:radial-gradient(circle at 86% 85%,rgba(54,90,255,.12),transparent 30%),linear-gradient(180deg,transparent,rgba(0,0,0,.12));pointer-events:none}.sport-card-top{height:52px!important;padding:0 16px!important;background:rgba(2,10,18,.28)!important;border-bottom:1px solid rgba(131,166,193,.16)!important;font-size:.70rem!important;letter-spacing:.015em!important}.sport-card-top>span:first-child{display:flex;align-items:center;gap:8px}.sport-icon{font-style:normal;color:var(--v5-red);font-size:.95rem}.sport-icon-blue{color:var(--v5-blue)}.sport-card-top a{color:#b7c6d1!important;font-size:.64rem!important}.status-chip{border-radius:6px!important;padding:6px 9px!important;background:var(--v5-blue)!important;font-size:.56rem!important;letter-spacing:.03em!important}.status-chip.is-win,.status-chip.status-finished{background:#13975b!important}.status-chip.is-loss{background:#a91d31!important}.status-chip.is-draw{background:#986c12!important}
.sport-feature-card .match-large{min-height:240px!important;padding:18px 17px 20px!important;position:relative;z-index:2}.match-large-link{display:block;color:inherit}.match-meta{text-align:left!important;color:#9db0bf!important;font-size:.67rem!important;margin-bottom:23px!important;text-transform:uppercase!important;letter-spacing:.02em}.match-vs{grid-template-columns:1fr 92px 1fr!important;gap:14px!important}.club-side img,.club-side .logo-placeholder{width:68px!important;height:68px!important;object-fit:contain!important;margin-inline:auto!important}.club-side .club-name{font-size:.76rem!important;margin-top:10px!important;font-weight:900!important;color:#fff!important}.score{font-size:2.35rem!important;color:#fff!important}.score.pending{font-size:1.9rem!important;color:#b7c7d3!important}.match-bottom{font-size:.65rem!important;color:#89a0b2!important;margin-top:18px!important}.sport-feature-card .mini-table{padding:10px 13px 14px!important;position:relative;z-index:2}.mini-row{grid-template-columns:24px 28px 1fr 38px!important;min-height:31px!important;padding:6px 5px!important;border-bottom:1px solid rgba(134,166,190,.13)!important;font-size:.69rem!important}.mini-row img,.mini-row .logo-placeholder{width:23px!important;height:23px!important;object-fit:contain!important}.mini-row.own{background:linear-gradient(90deg,rgba(255,38,61,.22),rgba(54,90,255,.12))!important;border-left:3px solid var(--v5-red)!important}

/* Home lower content */
.home-quick-grid{grid-template-columns:1.28fr .72fr!important;gap:14px!important;padding-top:16px!important}.home-upcoming-panel{background:#fff!important;border:0!important;border-radius:12px!important;box-shadow:var(--v5-shadow)!important;padding:18px 18px 12px!important;position:relative;overflow:hidden}.home-upcoming-panel:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,var(--v5-red) 0 50%,var(--v5-blue) 50% 100%)}.compact-heading{margin-bottom:7px!important}.compact-heading h2{font-size:1.7rem!important;color:#07111f!important}.section-kicker{color:var(--v5-red)!important;font-size:.62rem!important;letter-spacing:.20em!important}.text-link{color:var(--v5-blue)!important;font-size:.66rem!important;text-transform:uppercase!important;letter-spacing:.03em!important;font-weight:950!important}.light-fixtures .fixture{min-height:52px!important;grid-template-columns:72px 1fr 74px!important;padding:8px 3px!important;border-bottom:1px solid #e6ecf0!important}.light-fixtures .fixture-date{font-size:.66rem!important;color:#122231!important;font-weight:950!important;text-transform:uppercase}.light-fixtures .fixture-teams{font-size:.73rem!important;line-height:1.25!important}.light-fixtures .fixture-time{font-size:.72rem!important;color:#07111f!important}.home-club-stats{background:linear-gradient(150deg,#061523,#0a1f31)!important;border:1px solid rgba(99,139,169,.22)!important;border-radius:12px!important;box-shadow:var(--v5-shadow)!important;padding:0!important;overflow:hidden}.section-mini-title{height:46px;display:flex;align-items:center;padding:0 16px;border-bottom:1px solid rgba(132,164,188,.16);color:#e8f0f5;font-size:.68rem;font-weight:950;letter-spacing:.03em}.club-stat-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;height:calc(100% - 46px)!important;gap:0!important}.club-stat{min-height:150px!important;border-radius:0!important;border:0!important;border-right:1px solid rgba(132,164,188,.13)!important;background:transparent!important;color:#fff!important;padding:18px!important;justify-content:flex-end!important}.club-stat:last-child{border-right:0!important}.club-stat b{font-size:2.15rem!important;color:#fff!important}.club-stat strong{font-size:.69rem!important;text-transform:uppercase!important;letter-spacing:.025em}.club-stat small{margin-top:4px;color:#879cad;font-size:.62rem;line-height:1.35}.stat-mark{color:var(--v5-red);font-size:1rem;letter-spacing:-.12em;margin-bottom:auto}.stat-mark-blue{color:var(--v5-blue)}

#view-home .section{padding-top:30px!important}.home-news-section,.home-teams-section,.home-results-section{position:relative}.home-news-section .section-heading h2,.home-teams-section .section-heading h2,.home-results-section .section-heading h2{color:#fff!important}.home-news-section .section-heading,.home-teams-section .section-heading,.home-results-section .section-heading{margin-bottom:12px!important}.news-grid{gap:14px!important}.news-card{border-radius:12px!important;box-shadow:0 14px 38px rgba(0,0,0,.17)!important;border:1px solid rgba(114,146,169,.15)!important}.home-news-section .news-card{background:#fff!important;color:#07111f!important}.home-news-section .empty{background:rgba(255,255,255,.04)!important;color:#91a5b5!important;border-color:rgba(255,255,255,.12)!important}

/* compact seven-team shelf on homepage */
#homeTeams.team-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:10px!important}.home-teams-section .team-card.team-card-club{min-height:155px!important;background:linear-gradient(150deg,#061524,#0a2031)!important;border:1px solid rgba(101,144,174,.23)!important;border-radius:10px!important;box-shadow:0 12px 30px rgba(0,0,0,.19)!important;color:#fff!important}.home-teams-section .team-card.team-card-club:before{width:3px!important}.home-teams-section .team-card-top{min-height:73px!important;padding:14px 12px 3px 15px!important}.home-teams-section .team-card.team-card-club .team-code{font-size:2.15rem!important;color:#fff!important}.home-teams-section .team-code-block small{font-size:.50rem!important;margin-top:6px!important}.home-teams-section .team-card-club-logo{width:50px!important;height:50px!important;flex-basis:50px!important}.home-teams-section .team-card-club-logo img.team-card-logo,.home-teams-section .team-card-club-logo .logo-placeholder.team-card-logo{width:48px!important;height:48px!important}.home-teams-section .team-card-copy{padding:4px 14px 0!important}.home-teams-section .team-card-copy h3{font-size:.78rem!important;color:#eaf1f6!important;margin-bottom:3px!important}.home-teams-section .team-card-copy p{display:none!important}.home-teams-section .team-card-detail{margin:10px 14px 0!important;padding-top:8px!important;border-color:rgba(255,255,255,.08)!important;color:#aebdca!important;font-size:.52rem!important}.home-teams-section .team-card-detail b{color:var(--v5-red)!important}.home-teams-section .team-card.team-card-club:hover{border-color:rgba(255,38,61,.55)!important;transform:translateY(-3px)!important}.home-teams-section .team-card.team-card-club:hover .team-code{color:#fff!important}

.home-results-section{padding-bottom:38px}.home-results-section .match-row{background:rgba(255,255,255,.045)!important;border:1px solid rgba(114,147,171,.18)!important;color:#eef4f8!important;box-shadow:none!important}.home-results-section .match-row:hover{background:rgba(255,255,255,.07)!important;border-color:rgba(255,38,61,.35)!important}.home-results-section .match-row-date,.home-results-section .match-row-comp{color:#8da1b1!important}.home-results-section .match-row-team{color:#edf4f8!important}.home-results-section .match-row-score{color:#fff!important}

/* Internal pages: same identity, clean content */
.view:not(#view-home){background:var(--v5-light);min-height:65vh}.page-hero{position:relative;background:linear-gradient(115deg,#03101d,#08213a 70%,#0d1947)!important;border-bottom:3px solid transparent!important;padding:44px 0 38px!important;overflow:hidden}.page-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--v5-red) 0 47%,var(--v5-blue) 47% 100%)}.page-hero:before{content:"";position:absolute;right:-100px;top:-180px;width:440px;height:440px;border-radius:50%;border:1px solid rgba(93,125,255,.12);box-shadow:0 0 0 55px rgba(54,90,255,.025),0 0 0 110px rgba(255,38,61,.018)}.page-hero h1{font-size:clamp(2.3rem,4.2vw,4rem)!important;letter-spacing:-.055em!important}.page-hero p{color:#9eb1c0!important}.page-body{padding:28px 0 52px!important}.content-card{border-radius:12px!important;border:1px solid #dce4ea!important;box-shadow:0 16px 40px rgba(6,22,35,.08)!important}.content-card-title{background:linear-gradient(90deg,#061523,#0a2031)!important;border-bottom:2px solid var(--v5-red)!important;padding:15px 18px!important}.filter-button{border-radius:8px!important;border-color:#d5dfe6!important;font-size:.70rem!important}.filter-button.active{background:#071625!important;border-color:#071625!important;box-shadow:inset 0 -3px 0 var(--v5-red)!important}.player-stat-card{background:linear-gradient(145deg,#061523,#0b2133)!important;border-radius:11px!important}.player-profile-card{border-radius:14px!important}.full-table tr.own{background:linear-gradient(90deg,rgba(255,38,61,.10),rgba(54,90,255,.08))!important}.table-team img{width:30px!important;height:30px!important}

/* Team directory cards */
#allTeams.team-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}.team-card.team-card-club{border-radius:12px!important;box-shadow:0 14px 34px rgba(5,20,34,.09)!important}.team-card.team-card-club .team-code{font-size:clamp(3.6rem,5vw,5.2rem)!important}.team-card-club-logo{width:88px!important;height:88px!important;flex-basis:88px!important}.team-card-club-logo img.team-card-logo,.team-card-club-logo .logo-placeholder.team-card-logo{width:82px!important;height:82px!important}

/* Footer */
.site-footer{margin-top:0!important;background:#010813!important;border-top:0!important;position:relative}.site-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--v5-red) 0 48%,var(--v5-blue) 48% 100%)}.footer-main{min-height:120px!important}.footer-brand img{width:58px!important;height:58px!important}.footer-brand strong{font-size:.82rem!important;letter-spacing:.01em}.footer-links a{font-size:.66rem!important;color:#b2c0cb!important}.footer-status{color:#778d9e!important;font-size:.65rem!important}

/* responsive */
@media(max-width:1260px){.header-program{display:none}#homeTeams.team-grid{grid-template-columns:repeat(4,1fr)!important}.hero-inner{grid-template-columns:minmax(0,1fr) 320px!important;gap:30px!important}.hero-crest{width:235px!important;height:235px!important}.hero-tradition{display:none}.club-stat-grid{grid-template-columns:1fr 1fr 1fr!important}}
@media(max-width:980px){.utility-center{display:none}.utility-inner{grid-template-columns:1fr 1fr}.utility-right{justify-self:end}.wrap{width:calc(100% - 30px)}.hero-inner{grid-template-columns:1fr!important;min-height:455px!important}.hero-copy{padding:48px 0 62px!important}.hero-side{display:none!important}.hero-copy h1{font-size:clamp(3rem,10vw,5rem)!important}.home-sport{grid-template-columns:1fr 1fr!important;margin-top:-24px!important}.home-team-switch{padding-left:170px!important}.home-team-switch:before{left:14px!important;font-size:.61rem!important}.table-feature-card{grid-column:1/-1}.home-quick-grid{grid-template-columns:1fr!important}.home-club-stats{min-height:170px}.main-nav{top:100%!important}.header-main{min-height:72px!important}.brand-logo{width:52px!important;height:52px!important}.brand-copy strong{font-size:1rem!important}#allTeams.team-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:700px){body{padding-bottom:67px!important}.utility-bar{display:none!important}.site-header{top:0!important}.wrap{width:calc(100% - 20px)}.hero-v5{min-height:430px!important}.hero-inner{min-height:430px!important}.hero-copy{padding:39px 0 48px!important}.hero-copy h1{font-size:clamp(2.65rem,14vw,4.2rem)!important;line-height:.90!important}.hero-tagline{font-size:1rem!important}.hero-copy p{font-size:.76rem!important}.hero-actions .button{flex:1;min-width:0!important;padding:0 12px!important;font-size:.62rem!important}.home-sport{grid-template-columns:1fr!important;margin-top:-18px!important;gap:10px!important}.home-team-switch{grid-column:1!important;min-height:50px!important;padding:5px!important}.home-team-switch:before{display:none!important}.home-team-button{min-height:38px!important;padding:0 13px!important}.sport-feature-card .match-large{min-height:210px!important}.table-feature-card{grid-column:1}.home-quick-grid{padding-top:10px!important}.club-stat-grid{grid-template-columns:1fr 1fr!important}.club-stat{min-height:120px!important}.club-stat:last-child{grid-column:1/-1}.home-news-section,.home-teams-section,.home-results-section{padding-top:24px!important}#homeTeams.team-grid{grid-template-columns:repeat(2,1fr)!important}#allTeams.team-grid{grid-template-columns:1fr!important}.home-teams-section .team-card.team-card-club{min-height:145px!important}.section-heading h2{font-size:1.65rem!important}.light-fixtures .fixture{grid-template-columns:62px 1fr 58px!important}.match-row{border-radius:10px!important}.page-hero{padding:34px 0 28px!important}.mobile-dock{background:rgba(2,10,18,.97)!important;border-color:rgba(255,255,255,.10)!important}.mobile-dock a.active{box-shadow:inset 0 3px 0 var(--v5-red)!important}}


/* 5.0.1 HOTFIX — layout guard */
@media (min-width: 901px){
  .hero-v5,
  .hero-v5 .hero-inner{
    min-height: 500px !important;
  }
  .hero-v5 .hero-copy{
    padding-top: 52px !important;
    padding-bottom: 74px !important;
  }
  .home-sport{
    margin-top: -34px !important;
  }
}


/* 5.1 PRO POLISH -------------------------------------------------------- */
:root{--v51-red:#ff263d;--v51-blue:#365aff;--v51-cyan:#58a7ff}
.cta-arrow{font-size:1rem;line-height:1;transition:transform .16s ease}.button:hover .cta-arrow,.header-program:hover .cta-arrow{transform:translateX(3px)}

.hero-v5{min-height:472px!important;background:#03101c!important}
.hero-v5 .hero-inner{min-height:472px!important}
.hero-photo{position:absolute;inset:0;z-index:-4;background-position:center 42%;background-size:cover;opacity:0;transform:scale(1.02);filter:saturate(.9) contrast(1.05);transition:opacity .3s ease}
.brand-jestrabi .hero-photo{background-image:url('/assets/brand/hero-jestrabi.jpg');opacity:.72}
.hero-v5:before{z-index:-2!important;background:linear-gradient(90deg,rgba(1,7,13,.97) 0%,rgba(2,10,18,.90) 35%,rgba(2,10,18,.48) 62%,rgba(2,9,17,.76) 100%),radial-gradient(circle at 80% 30%,rgba(255,38,61,.18),transparent 28%),radial-gradient(circle at 95% 72%,rgba(54,90,255,.21),transparent 33%)!important}
.brand-jestrabi .hero-v5:before{background:linear-gradient(90deg,rgba(1,7,13,.98) 0%,rgba(2,10,18,.91) 29%,rgba(2,10,18,.38) 58%,rgba(2,9,17,.76) 100%),linear-gradient(0deg,rgba(2,9,17,.66),rgba(2,9,17,.14) 60%,rgba(2,9,17,.20))!important}
.hero-v5:after{right:-3%!important;top:-18%!important;width:53%!important;height:138%!important;opacity:.48!important}
.brand-jestrabi .hero-v5:after{opacity:.26!important}
.hero-v5-grid{opacity:.46}
.brand-jestrabi .hero-v5-grid{opacity:.15}
.hero-copy{padding:48px 0 69px!important}
.hero-copy h1{max-width:760px!important;font-size:clamp(3.45rem,5.35vw,5.75rem)!important;line-height:.88!important}
.hero-copy h1 span:after{height:4px!important;right:10%!important}
.hero-tagline{font-size:1.18rem!important;letter-spacing:-.02em}
.hero-copy p{font-size:.82rem!important}
.hero-actions .button{font-weight:900!important;letter-spacing:.025em!important;padding:0 20px!important}
.hero-side{min-height:390px!important}
.hero-crest{width:260px!important;height:260px!important}
.hero-crest:before{inset:-20px!important;box-shadow:0 0 0 28px rgba(54,90,255,.025),0 0 72px rgba(54,90,255,.12)!important}
.brand-jestrabi .hero-crest{width:235px!important;height:235px!important}
.brand-jestrabi .hero-crest:before{background:rgba(3,12,21,.26);backdrop-filter:blur(5px)}

.home-team-switch{min-height:56px!important;padding-left:192px!important;border-radius:10px!important;border-color:rgba(113,155,188,.30)!important;background:rgba(2,10,18,.98)!important}
.home-team-switch:before{left:18px!important;letter-spacing:.11em!important;color:#f5f8fa!important}
.home-team-button{font-size:.69rem!important;padding:0 14px!important}
.home-team-button.active{background:var(--v51-red)!important;box-shadow:inset -4px 0 0 var(--v51-blue),0 8px 18px rgba(255,38,61,.20)!important}

.sport-feature-card{position:relative;overflow:hidden;border-radius:12px!important;border-color:rgba(111,153,184,.24)!important;background:linear-gradient(160deg,#061421 0%,#081b2b 66%,#0a2033 100%)!important;box-shadow:0 18px 38px rgba(0,0,0,.23)!important}
.sport-feature-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.025),transparent 28%),radial-gradient(circle at 90% 110%,rgba(54,90,255,.10),transparent 38%)}
.sport-feature-card:after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--v51-red) 0 52%,var(--v51-blue) 52% 100%)}
.next-match-card:after{background:linear-gradient(90deg,var(--v51-blue),#7a5cff)}
.table-feature-card:after{background:linear-gradient(90deg,var(--v51-red),var(--v51-blue))}
.sport-card-top{position:relative;z-index:2;min-height:48px!important;background:rgba(0,0,0,.13)!important;padding:0 15px!important}
.sport-card-top>span:first-child{position:relative;padding-left:12px;font-size:.70rem!important;letter-spacing:.025em!important}
.sport-card-top>span:first-child:before{content:"";position:absolute;left:0;top:50%;width:5px;height:5px;border-radius:50%;background:var(--v51-red);transform:translateY(-50%)}
.next-match-card .sport-card-top>span:first-child:before{background:var(--v51-blue)}
.table-feature-card .sport-card-top>span:first-child:before{background:#d8e0e8}
.sport-feature-card .match-large{position:relative;z-index:2;min-height:228px!important;padding:18px 18px 20px!important}
.sport-feature-card .club-side img{width:68px!important;height:68px!important}
.sport-feature-card .score{font-size:2.35rem!important}
.sport-feature-card .club-name{font-size:.80rem!important;margin-top:8px!important}
.sport-feature-card .match-meta{font-size:.67rem!important;letter-spacing:.02em!important}
.sport-feature-card .match-bottom{font-size:.65rem!important;color:#8096a8!important}

.home-quick-grid{gap:14px!important;padding-top:16px!important}
.home-upcoming-panel{border-radius:12px!important;padding:18px!important;box-shadow:0 18px 42px rgba(0,0,0,.14)!important}
.home-upcoming-panel:before{height:3px!important}
.light-fixtures .fixture{min-height:48px!important;padding:7px 0!important}
.light-fixtures .fixture-date{font-weight:950!important;font-size:.68rem!important;color:#07111f!important;text-transform:uppercase}
.light-fixtures .fixture-teams{font-size:.72rem!important}
.light-fixtures .fixture-time{font-size:.72rem!important}

.home-club-stats{background:linear-gradient(145deg,#061421,#0a2032)!important;border:1px solid rgba(108,149,179,.23)!important;border-radius:12px!important;padding:0!important;overflow:hidden!important;box-shadow:0 18px 42px rgba(0,0,0,.18)!important}
.section-mini-title{padding:14px 16px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;color:#fff!important;font-size:.70rem!important;letter-spacing:.06em!important;font-weight:900!important}
.club-stat-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:0!important;height:auto!important}
.club-stat{position:relative;min-height:138px!important;padding:18px 15px!important;border-radius:0!important;border:0!important;border-right:1px solid rgba(132,164,188,.12)!important;background:transparent!important;color:#fff!important;justify-content:flex-end!important}
.club-stat:last-child{border-right:0!important}
.club-stat:before{content:"";position:absolute;left:15px;top:15px;width:26px;height:3px;border-radius:3px;background:var(--v51-red)}
.club-stat:nth-child(2):before{background:var(--v51-blue)}
.club-stat:nth-child(3):before{background:linear-gradient(90deg,var(--v51-red),var(--v51-blue))}
.club-stat b{font-size:2.15rem!important;color:#fff!important;line-height:1!important}
.club-stat strong{font-size:.68rem!important;text-transform:uppercase!important;letter-spacing:.025em!important}
.club-stat small{margin-top:5px!important;color:#7f95a6!important;font-size:.60rem!important;line-height:1.35!important}

@media(max-width:980px){.hero-v5,.hero-v5 .hero-inner{min-height:445px!important}.hero-copy{padding:44px 0 58px!important}.home-team-switch{padding-left:164px!important}.home-team-switch:before{left:13px!important}}
@media(max-width:700px){.hero-photo{display:none}.hero-v5,.hero-v5 .hero-inner{min-height:410px!important}.hero-copy{padding:35px 0 45px!important}.hero-copy h1{font-size:clamp(2.55rem,13vw,4rem)!important}.home-team-switch{padding:5px!important}.club-stat-grid{grid-template-columns:1fr!important}.club-stat{min-height:100px!important;border-right:0!important;border-bottom:1px solid rgba(132,164,188,.12)!important}.club-stat:last-child{border-bottom:0!important}}

/* 5.2 CINEMATIC HOMEPAGE ------------------------------------------------ */
/* Generic football photography is used for test/unknown clubs. The dedicated
   Jestřabí Lhota background still takes over once the production club is active. */
.hero-photo{
  background-image:url('/assets/brand/hero-generic.jpg');
  background-position:center 44%;
  background-size:cover;
  opacity:.58!important;
  filter:saturate(.82) contrast(1.08) brightness(.78)!important;
}
.brand-jestrabi .hero-photo{
  background-image:url('/assets/brand/hero-jestrabi.jpg');
  background-position:center 42%;
  opacity:.76!important;
  filter:saturate(.92) contrast(1.08) brightness(.78)!important;
}
.hero-v5:before{
  background:
    linear-gradient(90deg,rgba(1,7,13,.97) 0%,rgba(2,10,18,.92) 31%,rgba(2,10,18,.55) 57%,rgba(2,9,17,.79) 100%),
    linear-gradient(0deg,rgba(2,8,15,.78),rgba(2,8,15,.08) 62%,rgba(2,8,15,.26))!important;
}
.hero-v5:after{opacity:.24!important}
.hero-v5-grid{opacity:.14!important}
.hero-copy h1{text-shadow:0 5px 28px rgba(0,0,0,.36)!important}
.hero-tagline,.hero-copy p{text-shadow:0 2px 12px rgba(0,0,0,.40)!important}
.hero-side{align-items:center!important}
.hero-identity{
  padding:22px 22px 18px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(3,13,23,.43),rgba(7,20,35,.16))!important;
  backdrop-filter:blur(5px)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.22)!important;
}
.hero-crest{width:235px!important;height:235px!important}
.hero-tradition{padding-left:14px!important}

/* Sport cards: more depth, less "admin dashboard". */
.sport-feature-card{
  overflow:hidden!important;
  background:linear-gradient(155deg,#061522 0%,#0a1e30 70%,#0b2440 100%)!important;
}
.sport-feature-card:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:52%;
  background:
    linear-gradient(0deg,rgba(3,10,17,.40),transparent 65%),
    radial-gradient(ellipse at 50% 115%,rgba(54,90,255,.16),transparent 58%);
  pointer-events:none;
}
.last-result-card:after{background:linear-gradient(0deg,rgba(3,10,17,.38),transparent 65%),radial-gradient(ellipse at 22% 115%,rgba(255,38,61,.13),transparent 58%)!important}
.sport-feature-card>*{position:relative;z-index:2}
.sport-card-top{background:rgba(0,0,0,.12)!important}
.home-sport .club-side img,.home-sport .club-side .logo-placeholder{width:64px!important;height:64px!important}
.home-sport .score{font-size:2.35rem!important}
.home-sport .club-name{font-size:.76rem!important}

/* Program and stats become one deliberate composition. */
.home-quick-grid{gap:16px!important;padding-top:18px!important}
.home-upcoming-panel{padding:20px 20px 13px!important}
.light-fixtures .fixture{min-height:58px!important}
.home-club-stats{
  background:
    radial-gradient(circle at 88% 20%,rgba(54,90,255,.14),transparent 34%),
    radial-gradient(circle at 8% 95%,rgba(255,38,61,.10),transparent 38%),
    linear-gradient(145deg,#05131f,#091e30)!important;
}
.section-mini-title{height:50px!important}
.club-stat{min-height:150px!important;padding:22px 17px 18px!important}
.club-stat:before{width:34px!important;height:4px!important;border-radius:99px!important}
.club-stat b{font-size:2.45rem!important;letter-spacing:-.055em!important}
.club-stat strong{font-size:.72rem!important}
.club-stat small{max-width:125px!important;color:#8da1b1!important}

/* If there are no editorial news items, the whole empty homepage section is
   hidden by JS so the team section follows the sport overview immediately. */
#homeNewsSection.hidden{display:none!important}
.home-teams-section{padding-top:34px!important}
.home-results-section{padding-top:34px!important}

@media(max-width:980px){
  .hero-photo{opacity:.43!important;background-position:64% 45%!important}
  .hero-v5:before{background:linear-gradient(90deg,rgba(1,7,13,.97),rgba(2,10,18,.80))!important}
}
@media(max-width:700px){
  .hero-photo{display:block!important;opacity:.30!important;background-position:68% 42%!important}
  .sport-feature-card:after{height:42%}
  .home-sport .club-side img,.home-sport .club-side .logo-placeholder{width:58px!important;height:58px!important}
}


/* 5.3 BALANCED PROPORTIONS --------------------------------------------- */
/* Homepage: less poster, more premium club website. */
@media (min-width: 1100px){
  .hero-v5,
  .hero-v5 .hero-inner{
    min-height: 455px!important;
  }

  .hero-copy{
    padding:42px 0 62px!important;
    align-self:center!important;
  }

  .hero-copy h1{
    max-width:690px!important;
    font-size:clamp(3.55rem,4.85vw,5rem)!important;
    line-height:.88!important;
    letter-spacing:-.055em!important;
  }

  .hero-copy .eyebrow{
    margin-bottom:15px!important;
  }

  .hero-tagline{
    margin-top:14px!important;
    font-size:1.05rem!important;
  }

  .hero-copy p{
    margin-top:8px!important;
    font-size:.82rem!important;
  }

  .hero-actions{
    margin-top:21px!important;
  }

  .sync-line{
    margin-top:17px!important;
  }

  .hero-side{
    min-height:330px!important;
  }

  .hero-identity{
    width:min(430px,100%)!important;
    min-height:276px!important;
    padding:17px 22px!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,rgba(3,13,23,.28),rgba(7,20,35,.10))!important;
    border-color:rgba(255,255,255,.08)!important;
    box-shadow:0 20px 50px rgba(0,0,0,.15)!important;
  }

  .hero-crest{
    width:205px!important;
    height:205px!important;
  }

  .brand-jestrabi .hero-crest{
    width:210px!important;
    height:210px!important;
  }

  .hero-tradition{
    min-width:105px!important;
    padding-left:12px!important;
  }

  .home-sport{
    margin-top:-29px!important;
  }
}

/* Let the photo read on the right, while preserving strong text contrast. */
.hero-photo{
  opacity:.67!important;
  filter:saturate(.90) contrast(1.08) brightness(.82)!important;
}
.hero-v5:before{
  background:
    linear-gradient(90deg,
      rgba(1,7,13,.98) 0%,
      rgba(2,10,18,.91) 28%,
      rgba(2,10,18,.69) 49%,
      rgba(2,10,18,.43) 70%,
      rgba(2,9,17,.63) 100%
    ),
    linear-gradient(0deg,rgba(2,8,15,.72),rgba(2,8,15,.03) 62%,rgba(2,8,15,.18))!important;
}

/* Result service should feel like part of the hero, not another dashboard row. */
.home-team-switch{
  min-height:52px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
.home-team-button{
  min-height:40px!important;
}

/* Match overview: slightly denser, larger readable content. */
.sport-feature-card .match-large{
  min-height:205px!important;
  padding:16px 18px 18px!important;
}
.home-sport .club-side img,
.home-sport .club-side .logo-placeholder{
  width:61px!important;
  height:61px!important;
}
.home-sport .score{
  font-size:2.25rem!important;
}
.sport-card-top{
  min-height:46px!important;
}
.sport-card-top>span:first-child,
.sport-card-top>a{
  font-size:.72rem!important;
}

/* Keep the next sections visually connected to the sports overview. */
.home-quick-grid{
  padding-top:15px!important;
}
.home-upcoming-panel,
.home-club-stats{
  border-radius:11px!important;
}
.home-upcoming-panel{
  padding:18px 19px 12px!important;
}
.club-stat{
  min-height:132px!important;
}
.club-stat b{
  font-size:2.25rem!important;
}

/* Desktop header – a little more presence without becoming bulky. */
@media (min-width: 1100px){
  .header-main{
    min-height:82px!important;
  }
  .brand-logo{
    width:56px!important;
    height:56px!important;
  }
  .brand-copy strong{
    font-size:1.18rem!important;
  }
}

/* Tablet */
@media (min-width:701px) and (max-width:1099px){
  .hero-v5,
  .hero-v5 .hero-inner{
    min-height:430px!important;
  }
  .hero-copy{
    padding:38px 0 54px!important;
  }
  .hero-copy h1{
    font-size:clamp(3rem,7vw,4.35rem)!important;
  }
  .hero-crest{
    width:190px!important;
    height:190px!important;
  }
}

/* Mobile: sport first, minimal hero height. */
@media (max-width:700px){
  .hero-v5,
  .hero-v5 .hero-inner{
    min-height:365px!important;
  }
  .hero-copy{
    padding:29px 0 40px!important;
  }
  .hero-copy h1{
    font-size:clamp(2.45rem,12vw,3.65rem)!important;
  }
  .hero-tagline{
    font-size:.95rem!important;
  }
  .home-sport{
    margin-top:-18px!important;
  }
}


/* 5.4 — COPY HIERARCHY CLEANUP ----------------------------------------- */
/* One message = one place. No repeated slogan/status text. */
.utility-inner{
  grid-template-columns:1fr auto!important;
}
.utility-right{
  justify-self:end!important;
}
.utility-right a{
  color:#d7e1e9!important;
  font-size:.66rem!important;
  font-weight:850!important;
  text-decoration:none!important;
}
.utility-right a:hover{color:#fff!important}

/* Hero eyebrow is now a short club value, not a second copy of the club name. */
#heroClubName{
  max-width:max-content;
}

/* The crest stands on its own; the duplicated TRADICE / TÝM / BUDOUCNOST block is gone. */
.hero-identity{
  justify-content:center!important;
}
.hero-side{
  justify-content:center!important;
}
.hero-crest{
  margin-inline:auto!important;
}

/* Header CTA is intentionally shorter than the hero CTA. */
.header-program{
  min-width:108px!important;
  justify-content:center!important;
}

@media(max-width:980px){
  .utility-inner{grid-template-columns:1fr auto!important}
}


/* 5.5 — CLEAN HERO / NO DUPLICATE COPY -------------------------------- */
.hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}
#heroClubName{
  margin:0 0 16px!important;
  color:var(--jl-red,#ff263d)!important;
  font-size:.72rem!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.19em!important;
  text-transform:uppercase!important;
}
.hero-copy h1{
  margin:0!important;
}
.hero-copy #heroSubline{
  margin:17px 0 0!important;
  color:#b8c5d1!important;
  font-size:.87rem!important;
  line-height:1.35!important;
  font-weight:650!important;
}
.hero-actions{
  margin-top:24px!important;
}
.hero-identity{
  min-height:250px!important;
}

/* Status belongs to the global utility bar, never twice on the homepage. */
.view-home-premium .sync-line{
  display:none!important;
}

@media(min-width:1100px){
  .hero-v5,
  .hero-v5 .hero-inner{
    min-height:420px!important;
  }
  .hero-copy{
    padding-top:38px!important;
    padding-bottom:55px!important;
  }
  .hero-copy h1{
    font-size:clamp(3.35rem,4.55vw,4.7rem)!important;
  }
  .hero-side{
    min-height:292px!important;
  }
  .hero-crest{
    width:190px!important;
    height:190px!important;
  }
  .home-sport{
    margin-top:-25px!important;
  }
}
@media(max-width:700px){
  #heroClubName{
    font-size:.64rem!important;
    letter-spacing:.15em!important;
  }
  .hero-copy #heroSubline{
    margin-top:13px!important;
  }
}


/* =====================================================================
   6.0 — PROFESSIONAL TEAM DETAIL
   ===================================================================== */
#view-team{
  background:#f2f5f8;
}
#view-team .team-pro-hero{
  padding:28px 0 34px!important;
  background:
    radial-gradient(circle at 83% 38%,rgba(54,90,255,.17),transparent 28%),
    radial-gradient(circle at 96% 20%,rgba(255,38,61,.15),transparent 28%),
    linear-gradient(118deg,#020b13 0%,#061523 48%,#0a1c32 100%)!important;
}
#view-team .team-pro-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg,#000,transparent 88%);
  pointer-events:none;
}
.team-pro-hero-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:42px;
  align-items:center;
  min-height:270px;
}
.team-pro-heading .section-kicker{
  margin-bottom:14px;
}
.team-pro-title-line{
  display:flex;
  align-items:center;
  gap:24px;
}
.team-pro-code{
  flex:0 0 auto;
  min-width:110px;
  color:#fff;
  font-size:clamp(5.5rem,8vw,8.7rem);
  line-height:.72;
  font-weight:1000;
  letter-spacing:-.10em;
  text-transform:uppercase;
  text-shadow:0 15px 45px rgba(0,0,0,.34);
}
.team-pro-title-line h1{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(2.8rem,4.5vw,4.8rem)!important;
  line-height:.92!important;
}
.team-pro-title-line p{
  margin:11px 0 0!important;
  color:#aebdca!important;
  font-size:.92rem!important;
}
.team-competition-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}
.team-competition-chips a{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  color:#cbd6df;
  background:rgba(255,255,255,.045);
  font-size:.68rem;
  font-weight:800;
}
.team-competition-chips a.primary{
  border-color:rgba(255,38,61,.52);
  background:rgba(255,38,61,.09);
  color:#fff;
}
.team-competition-chips small{
  color:#7890a3;
  font-size:.60rem;
}
.team-hero-identity{
  position:relative;
  min-height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(1,8,15,.68),rgba(9,26,44,.45));
  overflow:hidden;
}
.team-hero-identity:before,
.team-hero-identity:after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(70,104,255,.15);
}
.team-hero-identity:before{
  width:250px;height:250px;
}
.team-hero-identity:after{
  width:185px;height:185px;
  box-shadow:0 0 0 35px rgba(255,38,61,.025);
}
.team-hero-crest{
  position:relative;
  z-index:2;
  width:128px;height:128px;
  display:grid;
  place-items:center;
}
.team-hero-crest img,
.team-hero-crest .logo-placeholder{
  width:118px!important;
  height:118px!important;
  object-fit:contain;
}
.team-hero-crest img{
  filter:drop-shadow(0 14px 25px rgba(0,0,0,.38));
}
.team-hero-meta{
  position:relative;
  z-index:2;
  min-width:116px;
  padding-left:17px;
  border-left:2px solid var(--v5-red,#ff263d);
}
.team-hero-meta span{
  display:block;
  color:#8ca0b0;
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.18em;
}
.team-hero-meta strong{
  display:block;
  margin:5px 0 8px;
  color:#fff;
  font-size:1.05rem;
}
.team-hero-meta small{
  display:block;
  max-width:130px;
  color:#718799;
  font-size:.60rem;
  line-height:1.35;
}

.team-pro-body{
  padding-top:22px!important;
}
.team-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.team-summary-card{
  position:relative;
  min-height:118px;
  padding:17px 18px;
  overflow:hidden;
  border:1px solid #d9e2e9;
  border-radius:12px;
  background:#fff;
  box-shadow:0 10px 28px rgba(6,22,35,.055);
}
.team-summary-card:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--v5-red,#ff263d),var(--v5-blue,#365aff));
}
.team-summary-card>span{
  display:block;
  color:#7b8c99;
  font-size:.60rem;
  font-weight:950;
  letter-spacing:.14em;
}
.team-summary-card>strong{
  display:block;
  margin-top:8px;
  color:#07111f;
  font-size:2.25rem;
  line-height:1;
  letter-spacing:-.05em;
}
.team-summary-card>small{
  display:block;
  margin-top:8px;
  color:#8997a2;
  font-size:.65rem;
}
.team-form-card{
  background:linear-gradient(145deg,#061523,#0b2234);
  border-color:#17334a;
}
.team-form-card>span,
.team-form-card>small{color:#8fa5b5}
.team-form{
  display:flex;
  gap:7px;
  margin:11px 0 2px;
}
.team-form b{
  width:31px;height:31px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  font-size:.70rem;
}
.team-form b.win{background:#15a66a}
.team-form b.loss{background:#e33c4f}
.team-form b.draw{background:#7a8792}
.team-form em{color:#fff;font-size:1.5rem;font-style:normal}

.team-featured-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:18px;
}
.team-feature-card{
  overflow:hidden;
  border:1px solid #18344a;
  border-radius:13px;
  background:
    radial-gradient(circle at 90% 100%,rgba(54,90,255,.14),transparent 32%),
    linear-gradient(145deg,#061523,#0a2031);
  box-shadow:0 14px 34px rgba(3,18,31,.13);
}
.team-feature-head{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 16px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#fff;
  font-size:.70rem;
  font-weight:950;
  letter-spacing:.035em;
}
.team-feature-head strong{
  min-height:25px;
  display:grid;
  place-items:center;
  padding:0 9px;
  border-radius:6px;
  color:#fff;
  background:#667580;
  font-size:.55rem;
  letter-spacing:.06em;
}
.team-feature-head strong.win{background:#14a86c}
.team-feature-head strong.loss{background:#df3b4f}
.team-feature-head strong.draw{background:#6d7b87}
.team-feature-head strong.next{background:#365aff}
#view-team .team-feature-card .match-large{
  min-height:225px;
  padding:18px;
}
#view-team .team-feature-card .match-large img,
#view-team .team-feature-card .match-large .logo-placeholder{
  width:76px!important;
  height:76px!important;
}
#view-team .team-feature-card .score{
  font-size:2.7rem!important;
}

.team-content-layout{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);
  gap:16px;
  align-items:start;
}
.team-main-column{
  display:grid;
  gap:16px;
}
.team-side-column{
  position:sticky;
  top:100px;
}
.team-section-card{
  overflow:hidden;
}
.team-section-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}
.team-section-title a,
.team-section-title small{
  color:#9db0be;
  font-size:.60rem;
  font-weight:800;
  text-transform:none;
  letter-spacing:.02em;
}
.team-section-title a:hover{
  color:#fff;
}
.team-match-list{
  padding:10px!important;
}
#view-team .team-match-list .match-row{
  margin-bottom:7px;
  border-radius:9px;
}
#view-team .team-table-wrap{
  overflow:auto;
}
#view-team .full-table{
  margin:0;
}
#view-team .full-table th{
  position:sticky;
  top:0;
  background:#f5f8fa;
}
#view-team .full-table tr.own{
  box-shadow:inset 4px 0 0 var(--v5-red,#ff263d);
}

.team-roster-card{
  overflow:hidden;
}
.team-roster-grid{
  display:grid;
  gap:0;
}
.team-roster-player{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-height:76px;
  padding:9px 13px;
  border-bottom:1px solid #e5eaee;
  transition:background .16s ease,transform .16s ease;
}
.team-roster-player:last-child{
  border-bottom:0;
}
.team-roster-player:hover{
  background:#f4f7f9;
}
.team-roster-photo{
  width:52px;height:52px;
  overflow:hidden;
  border-radius:10px;
  background:#e9eef2;
}
.team-roster-photo img,
.team-roster-photo .player-photo-placeholder{
  width:52px!important;
  height:52px!important;
  object-fit:cover;
}
.team-roster-copy{
  min-width:0;
}
.team-roster-copy strong{
  display:block;
  overflow:hidden;
  color:#07111f;
  font-size:.78rem;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.team-roster-copy span{
  display:block;
  margin-top:5px;
  color:#8c9aa5;
  font-size:.58rem;
  font-weight:750;
}
.team-roster-player:hover .team-roster-copy span{
  color:var(--v5-red,#ff263d);
}

@media(max-width:1050px){
  .team-pro-hero-grid{
    grid-template-columns:minmax(0,1fr) 280px;
  }
  .team-pro-code{
    font-size:6rem;
  }
  .team-summary-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .team-content-layout{
    grid-template-columns:1fr;
  }
  .team-side-column{
    position:static;
  }
  .team-roster-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .team-roster-player:nth-child(odd){
    border-right:1px solid #e5eaee;
  }
}

@media(max-width:700px){
  #view-team .team-pro-hero{
    padding:22px 0 28px!important;
  }
  .team-pro-hero-grid{
    display:block;
    min-height:0;
  }
  .team-pro-title-line{
    gap:15px;
  }
  .team-pro-code{
    min-width:72px;
    font-size:4.2rem;
  }
  .team-pro-title-line h1{
    font-size:2.35rem!important;
  }
  .team-pro-title-line p{
    font-size:.76rem!important;
  }
  .team-hero-identity{
    display:none;
  }
  .team-competition-chips{
    margin-top:17px;
    flex-wrap:nowrap;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .team-competition-chips::-webkit-scrollbar{display:none}
  .team-competition-chips a{
    flex:0 0 auto;
  }
  .team-summary-grid{
    grid-template-columns:1fr 1fr;
  }
  .team-summary-card{
    min-height:105px;
    padding:14px;
  }
  .team-summary-card>strong{
    font-size:1.8rem;
  }
  .team-featured-grid{
    grid-template-columns:1fr;
  }
  #view-team .team-feature-card .match-large{
    min-height:205px;
  }
  .team-roster-grid{
    grid-template-columns:1fr;
  }
  .team-roster-player:nth-child(odd){
    border-right:0;
  }
  #view-team .full-table{
    min-width:680px;
  }
}


/* =====================================================================
   6.1 — HOMEPAGE FINAL POLISH
   Implements the agreed final six-point homepage review.
   ===================================================================== */

/* 1. Header: +10–15 % visual presence on desktop. */
@media (min-width:1100px){
  .header-main{
    min-height:90px!important;
  }
  .brand{
    gap:15px!important;
  }
  .brand-logo{
    width:64px!important;
    height:64px!important;
  }
  .brand-copy strong{
    font-size:1.34rem!important;
    line-height:1.02!important;
    max-width:560px!important;
  }
  .brand-copy small{
    font-size:.62rem!important;
  }
}

/* 2. Result service active team intentionally stays strong.
   No structural change to match cards. */
.home-team-button.active{
  box-shadow:
    inset -4px 0 0 var(--v5-blue,#365aff),
    0 7px 18px rgba(255,38,61,.18)!important;
}

/* 4. Homepage team strip: all seven teams.
   At full desktop width it is one row; on narrower desktop/tablet it becomes
   a clean horizontal strip instead of dropping teams from the homepage. */
@media (min-width:1200px){
  #homeTeams.team-grid{
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
  }
}
@media (min-width:701px) and (max-width:1199px){
  #homeTeams.team-grid{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    padding-bottom:5px!important;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
  }
  #homeTeams.team-grid>.team-card{
    flex:0 0 170px!important;
    min-width:170px!important;
    scroll-snap-align:start;
  }
}

/* 5. Last results: stronger date/score, fewer secondary details. */
.home-results-section .match-list{
  gap:8px!important;
}
.home-results-section .match-row{
  grid-template-columns:148px minmax(0,1fr)!important;
  min-height:74px!important;
  padding:12px 15px!important;
  gap:16px!important;
}
.home-results-section .match-row-date{
  color:#b5c4cf!important;
  font-size:.77rem!important;
  line-height:1.32!important;
  font-weight:850!important;
}
.home-results-section .match-row-date strong{
  display:inline-block;
  margin-top:3px;
  color:#fff!important;
  font-size:.90rem!important;
  font-weight:950!important;
}
.home-results-section .match-row-main{
  grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr)!important;
  gap:14px!important;
}
.home-results-section .match-row-team{
  font-size:.86rem!important;
  font-weight:900!important;
}
.home-results-section .match-row-team img,
.home-results-section .match-row-team .logo-placeholder{
  width:38px!important;
  height:38px!important;
}
.home-results-section .match-row-score{
  color:#fff!important;
  font-size:1.22rem!important;
  font-weight:1000!important;
  letter-spacing:-.035em!important;
}
.home-results-section .match-row-comp{
  display:none!important;
}

/* 6. Footer: more deliberate closing block. */
.site-footer{
  margin-top:18px!important;
}
.footer-main{
  min-height:146px!important;
  padding:22px 0!important;
}
.footer-brand{
  gap:14px!important;
}
.footer-brand img{
  width:66px!important;
  height:66px!important;
}
.footer-brand strong{
  font-size:.92rem!important;
  line-height:1.15!important;
}
.footer-brand small{
  margin-top:5px!important;
  font-size:.68rem!important;
}
.footer-links{
  gap:18px!important;
}
.footer-links a{
  font-size:.72rem!important;
}
.footer-status{
  font-size:.68rem!important;
  line-height:1.5!important;
}
.footer-status a{
  font-size:.66rem!important;
}

/* Mobile remains compact but the result hierarchy is still stronger. */
@media(max-width:700px){
  #homeTeams.team-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    overflow:visible!important;
  }
  .home-results-section .match-row{
    grid-template-columns:1fr!important;
    min-height:0!important;
    padding:12px!important;
  }
  .home-results-section .match-row-date{
    font-size:.70rem!important;
  }
  .home-results-section .match-row-date strong{
    font-size:.80rem!important;
  }
  .home-results-section .match-row-main{
    grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr)!important;
  }
  .home-results-section .match-row-score{
    font-size:1.08rem!important;
  }
  .footer-main{
    min-height:auto!important;
    padding:30px 0!important;
  }
  .footer-brand img{
    width:58px!important;
    height:58px!important;
  }
}


/* =====================================================================
   6.2 — PROFESSIONAL MATCH DETAIL
   ===================================================================== */
#view-match{
  background:#f1f4f7;
}
#view-match .match-pro-hero{
  min-height:auto!important;
  padding:24px 0 28px!important;
  background:
    radial-gradient(circle at 85% 25%,rgba(54,90,255,.13),transparent 27%),
    radial-gradient(circle at 96% 60%,rgba(255,38,61,.11),transparent 30%),
    linear-gradient(115deg,#020a12,#071725 58%,#0b1d31)!important;
}
#view-match .match-pro-hero h1{
  margin:8px 0 5px!important;
  color:#fff!important;
  font-size:clamp(2rem,3.6vw,3.5rem)!important;
  line-height:.95!important;
}
#view-match .match-pro-hero p{
  color:#a9bac7!important;
}
.match-pro-body{
  padding-top:22px!important;
}
.match-pro-scorecard{
  position:relative;
  overflow:hidden;
  padding:0 24px 24px;
  border:1px solid #17354d;
  border-radius:18px;
  color:#fff;
  background:
    radial-gradient(circle at 13% 100%,rgba(255,38,61,.13),transparent 26%),
    radial-gradient(circle at 88% 100%,rgba(54,90,255,.16),transparent 29%),
    linear-gradient(140deg,#030c15,#071827 52%,#0b2133);
  box-shadow:0 24px 55px rgba(3,18,31,.18);
}
.match-pro-scorecard:before{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:3px;
  background:linear-gradient(90deg,var(--v5-red,#ff263d) 0 50%,var(--v5-blue,#365aff) 50%);
}
.match-pro-topline{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-bottom:1px solid rgba(255,255,255,.085);
}
.match-pro-topline>div{
  display:flex;
  align-items:baseline;
  gap:10px;
}
.match-pro-topline span{
  font-size:.70rem;
  font-weight:950;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.match-pro-topline small{
  color:#758b9c;
  font-size:.62rem;
}
.match-status-badge{
  min-height:28px;
  display:grid;
  place-items:center;
  padding:0 10px;
  border-radius:7px;
  background:#667782;
  color:#fff;
  font-size:.57rem;
  font-weight:950;
  letter-spacing:.055em;
}
.match-status-badge.win{background:#13a66a}
.match-status-badge.loss{background:#dd3b50}
.match-status-badge.draw{background:#707e89}
.match-status-badge.next{background:#365aff}
.match-status-badge.played{background:#178b70}
.match-pro-datetime{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin-top:22px;
  color:#9fb1bf;
}
.match-pro-datetime strong{
  color:#cbd6df;
  font-size:.75rem;
  text-transform:uppercase;
}
.match-pro-datetime span{
  padding-left:10px;
  border-left:1px solid rgba(255,255,255,.17);
  color:#fff;
  font-size:.85rem;
  font-weight:950;
}
.match-pro-score{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(130px,.42fr) minmax(0,1fr);
  gap:26px;
  align-items:center;
  max-width:940px;
  margin:24px auto 10px;
}
.match-pro-club{
  display:grid;
  justify-items:center;
  text-align:center;
}
.match-pro-logo{
  width:128px;
  height:128px;
  display:grid;
  place-items:center;
}
.match-pro-logo img,
.match-pro-logo .logo-placeholder{
  width:118px!important;
  height:118px!important;
  object-fit:contain;
}
.match-pro-logo img{
  filter:drop-shadow(0 14px 24px rgba(0,0,0,.32));
}
.match-pro-club>strong{
  max-width:250px;
  margin-top:9px;
  font-size:1.05rem;
  line-height:1.18;
}
.match-pro-result{
  text-align:center;
}
.match-pro-result>span{
  display:block;
  font-size:clamp(3rem,6vw,5.4rem);
  line-height:.92;
  font-weight:1000;
  letter-spacing:-.07em;
  white-space:nowrap;
}
.match-pro-result>small{
  display:block;
  margin-top:12px;
  color:#8fa3b2;
  font-size:.66rem;
  font-weight:800;
}
.match-pro-actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:24px;
}
.match-pro-action{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  color:#dce6ec;
  background:rgba(255,255,255,.045);
  font-size:.65rem;
  font-weight:900;
}
.match-pro-action:hover{
  border-color:rgba(54,90,255,.65);
  background:rgba(54,90,255,.10);
}
.match-pro-action.primary{
  border-color:rgba(255,38,61,.62);
  background:var(--v5-red,#ff263d);
  color:#fff;
}
.match-pro-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(290px,.62fr);
  gap:16px;
  align-items:start;
  margin-top:18px;
}
.match-pro-main{
  display:grid;
  gap:16px;
}
.match-pro-side{
  display:grid;
  gap:16px;
}
.match-pro-section{
  overflow:hidden;
}
.match-pro-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}
.match-pro-title small{
  color:#8496a4;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:none;
}

/* Timeline */
.match-timeline{
  padding:8px 15px 14px;
}
.match-timeline-row{
  display:grid;
  grid-template-columns:50px 82px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-height:58px;
  border-bottom:1px solid #e6ebef;
}
.match-timeline-row:last-child{
  border-bottom:0;
}
.match-event-minute{
  color:#07111f;
  font-size:.92rem;
  font-weight:1000;
  text-align:center;
}
.match-event-type{
  min-height:25px;
  display:grid;
  place-items:center;
  padding:0 7px;
  border-radius:6px;
  color:#fff;
  background:#71818c;
  font-size:.54rem;
  font-weight:950;
  text-align:center;
}
.match-event-type.goal{background:#12a66a}
.match-event-type.yellow{background:#e7b520;color:#211a00}
.match-event-type.red{background:#df3d50}
.match-event-type.sub{background:#365aff}
.match-event-copy strong{
  display:block;
  color:#07111f;
  font-size:.78rem;
}
.match-event-copy small{
  display:block;
  margin-top:3px;
  color:#8a99a4;
  font-size:.58rem;
}

/* Own club roster */
.match-roster{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.match-roster-player{
  min-height:76px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:11px;
  align-items:center;
  padding:9px 13px;
  border-right:1px solid #e5eaee;
  border-bottom:1px solid #e5eaee;
  color:inherit;
}
.match-roster-player:nth-child(even){border-right:0}
.match-roster-player:hover{background:#f4f7f9}
.match-roster-photo{
  width:50px;height:50px;
  overflow:hidden;
  border-radius:9px;
  background:#e9eef2;
}
.match-roster-photo img,
.match-roster-photo .player-photo-placeholder{
  width:50px!important;
  height:50px!important;
  object-fit:cover;
}
.match-roster-copy strong{
  display:block;
  color:#07111f;
  font-size:.75rem;
}
.match-roster-copy>div{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin-top:5px;
}
.match-player-chip{
  min-height:19px;
  display:inline-flex;
  align-items:center;
  padding:0 6px;
  border-radius:5px;
  background:#edf1f4;
  color:#6e7e89;
  font-size:.50rem;
  font-weight:900;
}
.match-player-chip.goal{background:#e7f7f0;color:#08794a}
.match-player-chip.yellow{background:#fff5cb;color:#8a6500}
.match-player-chip.red{background:#fde9ec;color:#b82036}
.match-player-chip.minutes{background:#edf2ff;color:#365aff}

/* Facts */
.match-pro-facts{
  display:grid;
}
.match-pro-facts>div{
  padding:13px 15px;
  border-bottom:1px solid #e6ebef;
}
.match-pro-facts>div:last-child{border-bottom:0}
.match-pro-facts span{
  display:block;
  color:#8a99a4;
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.match-pro-facts strong{
  display:block;
  margin-top:5px;
  color:#07111f;
  font-size:.75rem;
  line-height:1.45;
}
.match-note-card p{
  margin:0;
  padding:15px;
  color:#5e6f7b;
  font-size:.72rem;
  line-height:1.55;
}
.match-pro-empty{
  min-height:100px;
  display:grid;
  place-items:center;
}

/* Existing old detail styles must not leak into v6.2. */
#view-match .match-detail-card,
#view-match .match-detail-grid{
  display:none!important;
}

@media(max-width:900px){
  .match-pro-layout{
    grid-template-columns:1fr;
  }
  .match-pro-side{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:700px){
  #view-match .match-pro-hero{
    padding:20px 0 23px!important;
  }
  .match-pro-scorecard{
    padding:0 13px 18px;
    border-radius:13px;
  }
  .match-pro-topline{
    min-height:48px;
  }
  .match-pro-topline small{
    display:none;
  }
  .match-pro-datetime{
    margin-top:16px;
  }
  .match-pro-score{
    grid-template-columns:minmax(0,1fr) 86px minmax(0,1fr);
    gap:8px;
    margin-top:18px;
  }
  .match-pro-logo{
    width:72px;height:72px;
  }
  .match-pro-logo img,
  .match-pro-logo .logo-placeholder{
    width:68px!important;
    height:68px!important;
  }
  .match-pro-club>strong{
    font-size:.72rem;
  }
  .match-pro-result>span{
    font-size:2.15rem;
  }
  .match-pro-result>small{
    font-size:.54rem;
  }
  .match-pro-actions{
    justify-content:stretch;
  }
  .match-pro-action{
    flex:1 1 calc(50% - 4px);
    justify-content:center;
    text-align:center;
  }
  .match-pro-side{
    grid-template-columns:1fr;
  }
  .match-roster{
    grid-template-columns:1fr;
  }
  .match-roster-player{
    border-right:0;
  }
  .match-timeline-row{
    grid-template-columns:42px 70px minmax(0,1fr);
    gap:8px;
  }
}


/* 6.2.2 — MATCH DETAIL POLISH */
.match-pro-side{
  align-content:start!important;
}
.match-info-card{
  align-self:start!important;
}
.match-pro-facts>div{
  padding:11px 14px!important;
}
.match-pro-facts strong{
  font-size:.79rem!important;
}
.match-player-chip{
  min-height:21px!important;
  padding:0 7px!important;
  font-size:.53rem!important;
}
.match-player-chip.goal{
  box-shadow:inset 0 0 0 1px rgba(18,166,106,.22);
}
.match-player-chip.yellow{
  box-shadow:inset 0 0 0 1px rgba(231,181,32,.28);
}
.match-player-chip.red{
  box-shadow:inset 0 0 0 1px rgba(223,61,80,.22);
}
.match-roster-copy strong{
  font-size:.78rem!important;
}
.match-roster-player{
  min-height:79px!important;
}


/* =====================================================================
   6.3 — PROFESSIONAL PLAYER PROFILE
   ===================================================================== */
#view-player{
  background:#f1f4f7;
}
#view-player .player-pro-pagehero{
  min-height:auto!important;
  padding:20px 0 23px!important;
  background:
    radial-gradient(circle at 88% 30%,rgba(54,90,255,.12),transparent 30%),
    linear-gradient(116deg,#020a12,#071725 62%,#0a1d30)!important;
}
.player-pro-body{
  padding-top:22px!important;
}
.player-pro-identity{
  position:relative;
  display:grid;
  grid-template-columns:210px minmax(0,1fr) 300px;
  gap:28px;
  align-items:center;
  min-height:248px;
  padding:22px 26px;
  overflow:hidden;
  border:1px solid #d7e0e7;
  border-radius:17px;
  background:
    radial-gradient(circle at 95% 30%,rgba(54,90,255,.09),transparent 30%),
    linear-gradient(145deg,#fff,#f8fafb);
  box-shadow:0 17px 42px rgba(5,21,35,.075);
}
.player-pro-identity:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:5px;
  background:linear-gradient(180deg,var(--v5-red,#ff263d) 0 52%,var(--v5-blue,#365aff) 52%);
}
.player-pro-photo{
  width:184px;
  height:206px;
  overflow:hidden;
  border-radius:15px;
  background:linear-gradient(145deg,#e5ebef,#f2f5f7);
  box-shadow:0 13px 30px rgba(6,22,35,.13);
}
.player-pro-photo img,
.player-pro-photo .player-photo-placeholder,
.player-pro-photo .player-pro-photo-img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.player-pro-photo .player-photo-placeholder{
  font-size:2.6rem;
}
.player-pro-copy{
  min-width:0;
}
.player-pro-copy .section-kicker{
  margin-bottom:10px;
}
.player-pro-copy h2{
  margin:0;
  color:#07111f;
  font-size:clamp(2.5rem,4.5vw,4.25rem);
  line-height:.92;
  letter-spacing:-.055em;
}
.player-pro-copy p{
  margin:13px 0 0;
  color:#6f808d;
  font-size:.83rem;
}
.player-pro-teamchips{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:18px;
}
.player-pro-teamchips a,
.player-pro-teamchips>span{
  min-height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border:1px solid #d8e0e6;
  border-radius:999px;
  color:#07111f;
  background:#fff;
  font-size:.63rem;
  font-weight:900;
}
.player-pro-teamchips a:hover{
  border-color:var(--v5-red,#ff263d);
  color:var(--v5-red,#ff263d);
}
.player-pro-club{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-height:170px;
  padding:15px;
  border-left:1px solid #e0e6eb;
}
.player-pro-clubcrest{
  width:96px;height:96px;
  display:grid;
  place-items:center;
}
.player-pro-clubcrest img,
.player-pro-clubcrest .logo-placeholder{
  width:92px!important;
  height:92px!important;
  object-fit:contain;
}
.player-pro-clubcrest img{
  filter:drop-shadow(0 10px 18px rgba(5,21,35,.15));
}
.player-pro-current-season{
  min-width:130px;
}
.player-pro-current-season span{
  display:block;
  color:#8a99a5;
  font-size:.55rem;
  font-weight:950;
  letter-spacing:.13em;
}
.player-pro-current-season strong{
  display:block;
  margin-top:6px;
  color:#07111f;
  font-size:1.12rem;
}
.player-pro-current-season small{
  display:block;
  margin-top:7px;
  color:#82919d;
  font-size:.58rem;
  line-height:1.4;
}

.player-pro-statgrid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin:13px 0 17px;
}
.player-pro-stat{
  position:relative;
  min-height:112px;
  padding:15px 16px;
  overflow:hidden;
  border:1px solid #173348;
  border-radius:11px;
  color:#fff;
  background:linear-gradient(145deg,#061522,#0a2031);
  box-shadow:0 11px 28px rgba(4,18,30,.09);
}
.player-pro-stat:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:#365aff;
}
.player-pro-stat.goal:before{
  background:var(--v5-red,#ff263d);
}
.player-pro-stat>span{
  display:block;
  color:#8298a8;
  font-size:.54rem;
  font-weight:950;
  letter-spacing:.08em;
}
.player-pro-stat>strong{
  display:block;
  margin-top:9px;
  font-size:2.15rem;
  line-height:1;
  letter-spacing:-.05em;
}
.player-pro-stat>small{
  display:block;
  margin-top:9px;
  color:#90a4b2;
  font-size:.56rem;
  font-weight:750;
}

.player-pro-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.70fr);
  gap:16px;
  align-items:start;
}
.player-pro-main,
.player-pro-side{
  display:grid;
  gap:16px;
}
.player-pro-side{
  position:sticky;
  top:100px;
}
.player-pro-section{
  overflow:hidden;
}
.player-pro-section-title{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
}
.player-pro-section-title small{
  color:#8b9aa5;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:none;
}

/* Recent matches */
.player-pro-matches{
  padding:10px!important;
}
.player-pro-matches .match-row{
  margin-bottom:7px;
  border-radius:9px;
}
.player-pro-performance{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:4px;
}
.player-pro-performance span{
  min-height:20px;
  display:inline-flex;
  align-items:center;
  padding:0 6px;
  border-radius:5px;
  background:#edf2f5;
  color:#526572;
  font-size:.51rem;
  font-weight:900;
}
.player-pro-performance .goal{background:#e7f8ef;color:#087b4c}
.player-pro-performance .yellow{background:#fff4c5;color:#816000}
.player-pro-performance .red{background:#fde9ec;color:#b92036}

/* Competition statistics */
.player-pro-competitions{
  padding:5px 14px 12px;
}
.player-pro-comp-row{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(360px,.95fr);
  gap:18px;
  align-items:center;
  min-height:70px;
  border-bottom:1px solid #e6ebef;
}
.player-pro-comp-row:last-child{border-bottom:0}
.player-pro-comp-name strong{
  display:block;
  color:#07111f;
  font-size:.76rem;
}
.player-pro-comp-name small{
  display:block;
  margin-top:4px;
  color:#8998a3;
  font-size:.58rem;
}
.player-pro-comp-stats{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:5px;
}
.player-pro-comp-stats span{
  display:grid;
  justify-items:center;
  gap:2px;
  color:#8a99a4;
  font-size:.49rem;
  font-weight:900;
}
.player-pro-comp-stats b{
  color:#07111f;
  font-size:.82rem;
}

/* Seasons */
.player-pro-seasons{
  padding:4px 14px 12px;
}
.player-pro-season{
  display:grid;
  grid-template-columns:105px minmax(0,1fr);
  gap:16px;
  padding:14px 0;
  border-bottom:1px solid #e5eaee;
}
.player-pro-season:last-child{border-bottom:0}
.player-pro-season-year{
  color:#07111f;
  font-size:1rem;
  font-weight:1000;
}
.player-pro-season-comps{
  display:grid;
  gap:8px;
}
.player-pro-season-comps>div{
  display:flex;
  justify-content:space-between;
  gap:15px;
}
.player-pro-season-comps strong{
  color:#263946;
  font-size:.68rem;
}
.player-pro-season-comps span{
  color:#8998a3;
  font-size:.58rem;
  text-align:right;
}
.player-pro-muted{
  color:#8998a3;
  font-size:.62rem;
}

/* Career timeline */
.player-pro-career{
  padding:4px 14px 12px;
}
.player-pro-career-row{
  position:relative;
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:13px;
  padding:13px 0 13px 14px;
  border-bottom:1px solid #e7ebef;
}
.player-pro-career-row:last-child{border-bottom:0}
.player-pro-career-row:before{
  content:"";
  position:absolute;
  left:0;
  top:19px;
  width:6px;height:6px;
  border-radius:50%;
  background:var(--v5-red,#ff263d);
  box-shadow:0 0 0 4px rgba(255,38,61,.08);
}
.player-pro-career-season{
  color:#7e8e99;
  font-size:.60rem;
  font-weight:900;
}
.player-pro-career-row strong{
  display:block;
  color:#07111f;
  font-size:.70rem;
}
.player-pro-career-row span{
  display:block;
  margin-top:4px;
  color:#8796a1;
  font-size:.57rem;
}

/* Transfers */
.player-pro-transfers{
  padding:4px 14px 12px;
}
.player-pro-transfer{
  padding:13px 0;
  border-bottom:1px solid #e7ebef;
}
.player-pro-transfer:last-child{border-bottom:0}
.player-pro-transfer time{
  display:block;
  margin-bottom:6px;
  color:#8796a1;
  font-size:.56rem;
  font-weight:800;
}
.player-pro-transfer strong{
  display:block;
  color:#07111f;
  font-size:.69rem;
  line-height:1.42;
}
.player-pro-transfer strong span{
  color:var(--v5-red,#ff263d);
}
.player-pro-transfer small{
  display:block;
  margin-top:5px;
  color:#8796a1;
  font-size:.56rem;
}
.player-pro-empty{
  min-height:120px;
  display:grid;
  place-items:center;
}

@media(max-width:1050px){
  .player-pro-identity{
    grid-template-columns:180px minmax(0,1fr);
  }
  .player-pro-photo{
    width:165px;height:188px;
  }
  .player-pro-club{
    grid-column:1/-1;
    justify-content:flex-start;
    min-height:auto;
    padding:14px 0 0;
    border-left:0;
    border-top:1px solid #e0e6eb;
  }
  .player-pro-statgrid{
    grid-template-columns:repeat(5,1fr);
  }
  .player-pro-layout{
    grid-template-columns:1fr;
  }
  .player-pro-side{
    position:static;
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:760px){
  .player-pro-identity{
    grid-template-columns:105px minmax(0,1fr);
    gap:15px;
    min-height:0;
    padding:16px;
  }
  .player-pro-photo{
    width:100px;height:118px;
    border-radius:11px;
  }
  .player-pro-copy h2{
    font-size:2rem;
  }
  .player-pro-copy p{
    margin-top:8px;
    font-size:.70rem;
  }
  .player-pro-teamchips{
    margin-top:12px;
    gap:5px;
  }
  .player-pro-teamchips a,
  .player-pro-teamchips>span{
    min-height:28px;
    padding:0 8px;
    font-size:.56rem;
  }
  .player-pro-club{
    grid-column:1/-1;
  }
  .player-pro-clubcrest{
    width:64px;height:64px;
  }
  .player-pro-clubcrest img,
  .player-pro-clubcrest .logo-placeholder{
    width:62px!important;height:62px!important;
  }
  .player-pro-statgrid{
    grid-template-columns:repeat(2,1fr);
  }
  .player-pro-stat:last-child{
    grid-column:1/-1;
  }
  .player-pro-comp-row{
    grid-template-columns:1fr;
    gap:9px;
    padding:11px 0;
  }
  .player-pro-comp-stats{
    grid-template-columns:repeat(5,1fr);
  }
  .player-pro-season{
    grid-template-columns:1fr;
    gap:8px;
  }
  .player-pro-season-comps>div{
    display:grid;
    gap:4px;
  }
  .player-pro-season-comps span{
    text-align:left;
  }
  .player-pro-side{
    grid-template-columns:1fr;
  }
}


/* =====================================================================
   6.3.1 — PLAYER PROFILE POLISH
   ===================================================================== */

/* Slim context header: player name exists only once, in the identity card. */
#view-player .player-pro-pagehero{
  padding:13px 0 15px!important;
}
.player-pro-pagebar{
  display:flex;
  align-items:center;
  gap:18px;
}
.player-pro-pagebar .back-link{
  margin:0!important;
}
.player-pro-pagebar .section-kicker{
  margin:0!important;
  padding-left:18px;
  border-left:1px solid rgba(255,255,255,.12);
}

/* Better balance between main list and data sidebar. */
.player-pro-layout{
  grid-template-columns:minmax(0,1.42fr) minmax(340px,.78fr)!important;
}
.player-pro-side{
  position:static!important;
  align-content:start;
}

/* Competition statistics need to work in the narrower right column. */
.player-pro-side .player-pro-competitions{
  padding:6px 13px 12px;
}
.player-pro-side .player-pro-comp-row{
  grid-template-columns:1fr!important;
  gap:10px!important;
  padding:12px 0!important;
}
.player-pro-side .player-pro-comp-stats{
  grid-template-columns:repeat(5,1fr)!important;
  gap:4px!important;
}
.player-pro-side .player-pro-comp-stats span{
  min-height:39px;
  align-content:center;
  border-radius:7px;
  background:#f3f6f8;
}
.player-pro-side .player-pro-comp-stats b{
  font-size:.86rem!important;
}

/* Latest matches should be a digest, not an endless database listing. */
.player-pro-more-wrap{
  padding:0 10px 11px;
}
.player-pro-more{
  width:100%;
  min-height:39px;
  border:1px solid #d6e0e7;
  border-radius:8px;
  color:#07111f;
  background:#f5f8fa;
  font:inherit;
  font-size:.64rem;
  font-weight:900;
  cursor:pointer;
  transition:border-color .16s ease,color .16s ease,background .16s ease;
}
.player-pro-more:hover{
  border-color:var(--v5-blue,#365aff);
  color:var(--v5-blue,#365aff);
  background:#fff;
}

/* Historical information belongs below the current-season overview. */
.player-pro-history-grid{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(310px,.6fr);
  gap:16px;
  align-items:start;
  margin-top:16px;
}
.player-pro-history-grid.single{
  grid-template-columns:1fr;
}
.player-pro-history-grid.single>.player-pro-section{
  width:100%;
}

/* Make the identity card slightly tighter now that duplicate title is gone. */
.player-pro-identity{
  min-height:226px!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}
.player-pro-photo{
  height:190px!important;
}
.player-pro-copy h2{
  font-size:clamp(2.65rem,4.35vw,4.05rem)!important;
}

/* The current-season side should feel intentional instead of empty. */
.player-pro-club{
  min-height:150px!important;
  background:linear-gradient(90deg,transparent,rgba(54,90,255,.025));
}
.player-pro-current-season strong{
  font-size:1.18rem!important;
}

/* More legible recent list without making it bulky. */
.player-pro-matches .match-row{
  min-height:63px!important;
}
.player-pro-matches .match-row-score{
  font-size:1.02rem!important;
  font-weight:1000!important;
}

/* On medium displays, avoid a tall empty right column. */
@media(max-width:1100px){
  .player-pro-layout{
    grid-template-columns:1fr!important;
  }
  .player-pro-side{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .player-pro-history-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  .player-pro-pagebar{
    gap:11px;
  }
  .player-pro-pagebar .section-kicker{
    padding-left:11px;
    font-size:.58rem!important;
  }
  .player-pro-side{
    grid-template-columns:1fr!important;
  }
  .player-pro-more{
    min-height:42px;
  }
}


/* =====================================================================
   6.4 — COMPETITIONS + SEASON HISTORY PRO
   ===================================================================== */
#view-competitions,
#view-competition,
#view-history,
#view-season{
  background:#f1f4f7;
}
.competition-pro-list-hero,
.competition-pro-hero,
.history-pro-hero,
.season-pro-hero{
  min-height:auto!important;
  padding:25px 0 29px!important;
  background:
    radial-gradient(circle at 88% 35%,rgba(54,90,255,.13),transparent 28%),
    radial-gradient(circle at 98% 15%,rgba(255,38,61,.10),transparent 24%),
    linear-gradient(115deg,#020a12,#071725 60%,#0a1d30)!important;
}
.competition-pro-list-hero h1,
.competition-pro-hero h1,
.history-pro-hero h1,
.season-pro-hero h1{
  margin:7px 0 5px!important;
  color:#fff!important;
  font-size:clamp(2.4rem,4vw,4rem)!important;
  line-height:.94!important;
}
.competition-pro-list-hero p,
.competition-pro-hero p,
.history-pro-hero p,
.season-pro-hero p{
  color:#a7b7c4!important;
}
.competition-pro-list-body,
.competition-pro-body,
.history-pro-body,
.season-pro-body{
  padding-top:21px!important;
}

/* Listing overview */
.competition-pro-overview,
.history-pro-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:20px;
}
.competition-pro-stat,
.history-overview-stat{
  position:relative;
  min-height:112px;
  padding:16px 17px;
  overflow:hidden;
  border:1px solid #173349;
  border-radius:11px;
  color:#fff;
  background:linear-gradient(145deg,#061522,#0a2031);
}
.competition-pro-stat:before,
.history-overview-stat:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,var(--v5-red,#ff263d),var(--v5-blue,#365aff));
}
.competition-pro-stat span,
.history-overview-stat span{
  color:#8198a8;
  font-size:.55rem;
  font-weight:950;
  letter-spacing:.12em;
}
.competition-pro-stat strong,
.history-overview-stat strong{
  display:block;
  margin-top:8px;
  font-size:2rem;
  line-height:1;
}
.competition-pro-stat small,
.history-overview-stat small{
  display:block;
  margin-top:9px;
  color:#8ea3b2;
  font-size:.58rem;
}

/* Competitions grouped by season */
.competition-pro-seasons{
  display:grid;
  gap:22px;
}
.competition-season-group{
  display:grid;
  gap:11px;
}
.competition-season-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:15px;
  padding:0 2px;
}
.competition-season-head span,
.season-pro-heading span{
  display:block;
  color:var(--v5-red,#ff263d);
  font-size:.56rem;
  font-weight:950;
  letter-spacing:.15em;
}
.competition-season-head h2,
.season-pro-heading h2{
  margin:4px 0 0;
  color:#07111f;
  font-size:1.7rem;
  line-height:1;
}
.competition-season-head>a{
  color:#365aff;
  font-size:.63rem;
  font-weight:900;
}
.competition-pro-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}
.competition-pro-card{
  position:relative;
  min-height:200px;
  display:flex;
  flex-direction:column;
  padding:17px 18px 15px;
  overflow:hidden;
  border:1px solid #d9e1e7;
  border-radius:12px;
  background:
    radial-gradient(circle at 100% 0%,rgba(54,90,255,.07),transparent 30%),
    #fff;
  box-shadow:0 10px 28px rgba(5,21,35,.05);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.competition-pro-card:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--v5-red,#ff263d),var(--v5-blue,#365aff));
}
.competition-pro-card:hover{
  transform:translateY(-2px);
  border-color:#c9d5de;
  box-shadow:0 16px 35px rgba(5,21,35,.08);
}
.competition-pro-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.competition-kind{
  min-height:24px;
  display:inline-flex;
  align-items:center;
  padding:0 7px;
  border-radius:6px;
  color:#fff;
  background:#365aff;
  font-size:.50rem;
  font-weight:950;
  letter-spacing:.08em;
}
.competition-kind.cup{
  background:var(--v5-red,#ff263d);
}
.competition-pro-card-top small{
  color:#8998a4;
  font-size:.57rem;
  font-weight:800;
}
.competition-pro-card h3{
  margin:16px 0 7px;
  color:#07111f;
  font-size:1rem;
  line-height:1.18;
}
.competition-pro-card p{
  margin:0;
  color:#71828f;
  font-size:.66rem;
}
.competition-pro-card-stats{
  display:flex;
  gap:7px;
  margin-top:15px;
}
.competition-pro-card-stats span{
  min-width:75px;
  padding:7px 8px;
  border-radius:7px;
  color:#8998a3;
  background:#f3f6f8;
  font-size:.52rem;
}
.competition-pro-card-stats b{
  display:block;
  color:#07111f;
  font-size:.85rem;
}
.competition-pro-card-link{
  display:flex;
  justify-content:space-between;
  margin-top:auto;
  padding-top:13px;
  border-top:1px solid #e5eaee;
  color:#07111f;
  font-size:.60rem;
  font-weight:950;
  text-transform:uppercase;
}
.competition-pro-card-link b{
  color:var(--v5-red,#ff263d);
}

/* Competition detail */
.competition-detail-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.competition-detail-stat{
  min-height:105px;
  padding:15px 16px;
  border:1px solid #d9e2e8;
  border-radius:11px;
  background:#fff;
  box-shadow:0 9px 25px rgba(5,21,35,.05);
}
.competition-detail-stat span{
  display:block;
  color:#83939f;
  font-size:.54rem;
  font-weight:950;
  letter-spacing:.12em;
}
.competition-detail-stat strong{
  display:block;
  margin-top:8px;
  color:#07111f;
  font-size:2rem;
  line-height:1;
}
.competition-detail-stat small{
  display:block;
  margin-top:8px;
  color:#8b9aa5;
  font-size:.57rem;
}
.competition-detail-table{
  overflow:hidden;
}
.competition-detail-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px;
}
.competition-detail-title small{
  color:#8b9aa5;
  font-size:.57rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:none;
}
.competition-inline-tabs{
  display:flex;
  gap:4px;
}
.competition-inline-tabs button{
  min-height:28px;
  padding:0 9px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:6px;
  color:#aab9c5;
  background:rgba(255,255,255,.04);
  font:inherit;
  font-size:.55rem;
  font-weight:900;
  cursor:pointer;
}
.competition-inline-tabs button.active{
  color:#fff;
  border-color:#365aff;
  background:#365aff;
}
.competition-match-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:14px;
}
.competition-match-card{
  overflow:hidden;
}
.competition-match-list{
  padding:9px!important;
}
.competition-match-list .match-row{
  margin-bottom:6px;
  border-radius:8px;
}

/* History */
.history-pro-notice{
  margin-bottom:15px;
  padding:12px 14px;
  border:1px solid #d8e2e8;
  border-radius:9px;
  color:#6f808c;
  background:#fff;
  font-size:.65rem;
  line-height:1.5;
}
.history-pro-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.history-pro-card{
  position:relative;
  min-height:210px;
  padding:18px;
  overflow:hidden;
  border:1px solid #d9e2e8;
  border-radius:13px;
  background:#fff;
  box-shadow:0 10px 28px rgba(5,21,35,.055);
}
.history-pro-card:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;width:4px;
  background:#365aff;
}
.history-pro-card.current:before{
  background:var(--v5-red,#ff263d);
}
.history-pro-card-main span{
  color:var(--v5-red,#ff263d);
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.14em;
}
.history-pro-card-main strong{
  display:block;
  margin-top:6px;
  color:#07111f;
  font-size:2rem;
  line-height:1;
}
.history-pro-card-main small{
  display:block;
  margin-top:6px;
  color:#8998a3;
  font-size:.59rem;
}
.history-pro-card-stats{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:5px;
  margin-top:15px;
}
.history-pro-card-stats span{
  display:grid;
  justify-items:center;
  gap:3px;
  padding:7px 4px;
  border-radius:7px;
  color:#8a99a4;
  background:#f3f6f8;
  font-size:.49rem;
  font-weight:900;
}
.history-pro-card-stats b{
  color:#07111f;
  font-size:.79rem;
}
.history-pro-card-comps{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:13px;
}
.history-pro-card-comps span{
  padding:5px 7px;
  border-radius:5px;
  color:#667987;
  background:#f2f5f7;
  font-size:.52rem;
}
.history-pro-card-link{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid #e6ebef;
  color:#07111f;
  font-size:.58rem;
  font-weight:950;
  text-transform:uppercase;
}

/* Season */
.season-pro-summary{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin-bottom:20px;
}
.season-pro-summary>div{
  min-height:105px;
  padding:15px;
  border:1px solid #173349;
  border-radius:10px;
  color:#fff;
  background:linear-gradient(145deg,#061522,#0a2031);
}
.season-pro-summary span{
  color:#8499a8;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.11em;
}
.season-pro-summary strong{
  display:block;
  margin-top:8px;
  font-size:1.9rem;
  line-height:1;
}
.season-pro-summary small{
  display:block;
  margin-top:8px;
  color:#8ea3b1;
  font-size:.55rem;
}
.season-pro-section{
  margin-bottom:18px;
}
.season-pro-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.season-pro-heading small{
  color:#8796a1;
  font-size:.59rem;
}
.season-pro-match-section{
  overflow:hidden;
  margin-top:14px;
}
.season-pro-match-list{
  padding:9px!important;
}
.season-pro-match-list .match-row{
  margin-bottom:6px;
  border-radius:8px;
}
.season-pro-more-wrap{
  padding:0 9px 10px;
}
.season-pro-more{
  width:100%;
  min-height:39px;
  border:1px solid #d5dfe6;
  border-radius:8px;
  color:#07111f;
  background:#f5f8fa;
  font:inherit;
  font-size:.62rem;
  font-weight:900;
  cursor:pointer;
}
.season-pro-more:hover{
  color:#365aff;
  border-color:#365aff;
  background:#fff;
}

@media(max-width:1050px){
  .competition-pro-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .competition-match-columns{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .competition-pro-overview,
  .history-pro-overview{
    grid-template-columns:repeat(2,1fr);
  }
  .competition-pro-grid,
  .history-pro-list{
    grid-template-columns:1fr;
  }
  .competition-detail-summary{
    grid-template-columns:repeat(2,1fr);
  }
  .competition-detail-title{
    align-items:flex-start!important;
    flex-direction:column;
  }
  .competition-inline-tabs{
    width:100%;
  }
  .competition-inline-tabs button{
    flex:1;
  }
  .season-pro-summary{
    grid-template-columns:repeat(2,1fr);
  }
  .season-pro-summary>div:last-child{
    grid-column:1/-1;
  }
  .history-pro-card-stats{
    grid-template-columns:repeat(3,1fr);
  }
}


/* =====================================================================
   6.5 — MOBILE UX PRO
   Mobile is treated as a dedicated experience, not a shrunken desktop.
   ===================================================================== */

@media(max-width:700px){

  html{
    scroll-padding-top:70px;
  }

  body{
    padding-bottom:72px!important;
    overflow-x:hidden;
  }

  .wrap{
    width:calc(100% - 18px)!important;
  }

  /* ---------------------------------------------------------------
     HEADER + MAIN MENU
     --------------------------------------------------------------- */
  .utility-bar{
    display:none!important;
  }

  .site-header{
    top:0!important;
    position:sticky!important;
    z-index:1000!important;
    background:rgba(2,10,17,.96)!important;
    backdrop-filter:blur(16px);
  }

  .header-main{
    min-height:64px!important;
    padding:0!important;
  }

  .brand{
    gap:8px!important;
    min-width:0!important;
  }

  .brand-logo-wrap{
    flex:0 0 42px!important;
  }

  .brand-logo{
    width:42px!important;
    height:42px!important;
  }

  .brand-copy{
    min-width:0!important;
  }

  .brand-copy strong{
    display:block!important;
    max-width:215px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:.82rem!important;
    line-height:1!important;
  }

  .brand-copy small{
    margin-top:4px!important;
    font-size:.43rem!important;
    letter-spacing:.14em!important;
  }

  .header-program{
    display:none!important;
  }

  .nav-toggle{
    display:grid!important;
    width:42px!important;
    height:42px!important;
    place-content:center!important;
    gap:4px!important;
    margin-left:auto!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:10px!important;
    background:#091a28!important;
  }

  .nav-toggle span{
    width:18px!important;
    height:2px!important;
    background:#fff!important;
  }

  .main-nav{
    position:fixed!important;
    left:9px!important;
    right:9px!important;
    top:70px!important;
    z-index:1100!important;
    display:none!important;
    max-height:calc(100dvh - 150px)!important;
    padding:8px!important;
    overflow-y:auto!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:15px!important;
    background:rgba(4,16,26,.985)!important;
    box-shadow:0 22px 55px rgba(0,0,0,.38)!important;
  }

  .main-nav.open{
    display:block!important;
  }

  .main-nav>a,
  .nav-group>summary{
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 13px!important;
    border-radius:9px!important;
    color:#d6e1e8!important;
    font-size:.72rem!important;
    font-weight:900!important;
  }

  .main-nav>a.active{
    color:#fff!important;
    background:linear-gradient(90deg,rgba(255,38,61,.15),rgba(54,90,255,.10))!important;
  }

  .nav-group{
    position:static!important;
  }

  .nav-group>summary{
    list-style:none!important;
  }

  .nav-dropdown{
    position:static!important;
    display:none!important;
    margin:0 5px 6px!important;
    padding:4px!important;
    border:0!important;
    border-radius:10px!important;
    background:#081927!important;
    box-shadow:none!important;
  }

  .nav-group[open]>.nav-dropdown{
    display:grid!important;
  }

  .nav-dropdown a{
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    padding:0 11px!important;
    border-radius:8px!important;
    color:#aebdca!important;
    font-size:.66rem!important;
  }

  .nav-dropdown a:active,
  .nav-dropdown a:hover{
    color:#fff!important;
    background:rgba(255,255,255,.05)!important;
  }

  /* ---------------------------------------------------------------
     HOME HERO
     --------------------------------------------------------------- */
  .hero-v5,
  .hero-v5 .hero-inner{
    min-height:320px!important;
  }

  .hero-copy{
    padding:25px 0 34px!important;
  }

  #heroClubName{
    margin-bottom:11px!important;
    font-size:.56rem!important;
    letter-spacing:.14em!important;
  }

  .hero-copy h1{
    max-width:100%!important;
    font-size:clamp(2.25rem,11.5vw,3.15rem)!important;
    line-height:.87!important;
    letter-spacing:-.055em!important;
  }

  .hero-copy #heroSubline{
    margin-top:12px!important;
    font-size:.70rem!important;
  }

  .hero-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    gap:7px!important;
    margin-top:17px!important;
  }

  .hero-actions .button{
    min-height:42px!important;
    justify-content:center!important;
    padding:0 9px!important;
    font-size:.60rem!important;
  }

  .hero-side{
    display:none!important;
  }

  .hero-photo{
    opacity:.52!important;
    background-position:58% center!important;
  }

  .hero-v5:before{
    background:
      linear-gradient(90deg,rgba(1,7,13,.98),rgba(2,10,18,.80) 56%,rgba(2,10,18,.66)),
      linear-gradient(0deg,rgba(2,8,15,.76),rgba(2,8,15,.10) 62%,rgba(2,8,15,.20))!important;
  }

  /* ---------------------------------------------------------------
     RESULT SERVICE
     --------------------------------------------------------------- */
  .home-sport{
    margin-top:-10px!important;
    gap:9px!important;
  }

  .home-team-switch{
    display:flex!important;
    grid-column:1!important;
    min-height:48px!important;
    gap:5px!important;
    padding:6px!important;
    overflow-x:auto!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
  }

  .home-team-switch::-webkit-scrollbar{
    display:none!important;
  }

  .home-team-switch:before{
    display:none!important;
  }

  .home-team-switch>.switch-label{
    flex:0 0 auto!important;
    align-self:center!important;
    min-width:max-content!important;
    padding:0 5px!important;
    font-size:.52rem!important;
  }

  .home-team-button{
    flex:0 0 auto!important;
    min-width:max-content!important;
    min-height:36px!important;
    padding:0 11px!important;
    font-size:.57rem!important;
    scroll-snap-align:start!important;
  }

  .home-sport-grid{
    grid-template-columns:1fr!important;
  }

  .sport-feature-card,
  .table-feature-card{
    grid-column:1!important;
  }

  .sport-feature-card .match-large{
    min-height:188px!important;
    padding:14px!important;
  }

  .home-sport .club-side img,
  .home-sport .club-side .logo-placeholder{
    width:58px!important;
    height:58px!important;
  }

  .home-sport .score{
    font-size:2rem!important;
  }

  .table-feature-card{
    overflow:hidden!important;
  }

  .table-feature-card .mini-table{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  .table-feature-card table{
    min-width:500px!important;
  }

  /* ---------------------------------------------------------------
     HOME PROGRAM / NUMBERS / TEAMS / RESULTS
     --------------------------------------------------------------- */
  .home-quick-grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding-top:10px!important;
  }

  .club-stat-grid{
    grid-template-columns:repeat(3,1fr)!important;
  }

  .club-stat{
    min-height:104px!important;
    padding:12px!important;
  }

  .club-stat b{
    font-size:1.75rem!important;
  }

  .home-teams-section{
    padding-top:22px!important;
  }

  #homeTeams.team-grid{
    display:flex!important;
    gap:9px!important;
    overflow-x:auto!important;
    padding:0 1px 6px!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
  }

  #homeTeams.team-grid::-webkit-scrollbar{
    display:none!important;
  }

  #homeTeams.team-grid>.team-card{
    flex:0 0 76vw!important;
    min-width:76vw!important;
    scroll-snap-align:start!important;
  }

  .home-results-section{
    padding-top:22px!important;
  }

  .home-results-section .match-row{
    grid-template-columns:1fr!important;
    gap:8px!important;
    min-height:0!important;
    padding:11px!important;
  }

  .home-results-section .match-row-main{
    grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr)!important;
    gap:7px!important;
  }

  .home-results-section .match-row-score{
    font-size:1.08rem!important;
  }

  /* ---------------------------------------------------------------
     TEAM DETAIL
     --------------------------------------------------------------- */
  .team-pro-title-line{
    align-items:flex-end!important;
    gap:12px!important;
  }

  .team-pro-code{
    min-width:56px!important;
    font-size:3.6rem!important;
  }

  .team-pro-title-line h1{
    font-size:2rem!important;
  }

  .team-competition-chips{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
  }

  .team-competition-chips::-webkit-scrollbar{
    display:none!important;
  }

  .team-summary-grid{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }

  .team-summary-card{
    min-height:95px!important;
    padding:13px!important;
  }

  .team-featured-grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  #view-team .team-feature-card .match-large{
    min-height:190px!important;
  }

  .team-content-layout{
    display:block!important;
  }

  .team-main-column,
  .team-side-column{
    width:100%!important;
  }

  .team-roster-grid{
    grid-template-columns:1fr!important;
  }

  .team-roster-player:nth-child(odd){
    border-right:0!important;
  }

  /* ---------------------------------------------------------------
     MATCH DETAIL
     --------------------------------------------------------------- */
  .match-pro-scorecard{
    padding:0 12px 16px!important;
    border-radius:12px!important;
  }

  .match-pro-datetime{
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:5px!important;
    margin-top:14px!important;
  }

  .match-pro-score{
    grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr)!important;
    gap:6px!important;
    margin-top:16px!important;
  }

  .match-pro-logo{
    width:62px!important;
    height:62px!important;
  }

  .match-pro-logo img,
  .match-pro-logo .logo-placeholder{
    width:58px!important;
    height:58px!important;
  }

  .match-pro-club>strong{
    max-width:120px!important;
    font-size:.68rem!important;
  }

  .match-pro-result>span{
    font-size:1.9rem!important;
  }

  .match-pro-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }

  .match-pro-action{
    width:100%!important;
    justify-content:center!important;
    text-align:center!important;
  }

  .match-pro-layout{
    grid-template-columns:1fr!important;
  }

  .match-roster{
    grid-template-columns:1fr!important;
  }

  .match-roster-player{
    border-right:0!important;
  }

  .match-timeline-row{
    grid-template-columns:38px 62px minmax(0,1fr)!important;
    gap:7px!important;
  }

  /* ---------------------------------------------------------------
     PLAYER PROFILE
     --------------------------------------------------------------- */
  .player-pro-pagebar{
    overflow-x:auto!important;
    white-space:nowrap!important;
  }

  .player-pro-identity{
    grid-template-columns:88px minmax(0,1fr)!important;
    gap:11px!important;
    min-height:0!important;
    padding:13px!important;
  }

  .player-pro-photo{
    width:84px!important;
    height:104px!important;
  }

  .player-pro-copy h2{
    font-size:1.78rem!important;
  }

  .player-pro-copy p{
    margin-top:7px!important;
    font-size:.67rem!important;
  }

  .player-pro-teamchips{
    margin-top:10px!important;
  }

  .player-pro-club{
    grid-column:1/-1!important;
    justify-content:flex-start!important;
    padding-top:10px!important;
  }

  .player-pro-statgrid{
    grid-template-columns:repeat(2,1fr)!important;
    gap:7px!important;
  }

  .player-pro-stat:last-child{
    grid-column:1/-1!important;
  }

  .player-pro-layout,
  .player-pro-history-grid{
    display:block!important;
  }

  .player-pro-main>.player-pro-section,
  .player-pro-side>.player-pro-section,
  .player-pro-history-grid>.player-pro-section{
    margin-bottom:10px!important;
  }

  .player-pro-side{
    display:block!important;
  }

  .player-pro-comp-stats{
    overflow-x:auto!important;
  }

  /* ---------------------------------------------------------------
     COMPETITIONS + HISTORY
     --------------------------------------------------------------- */
  .competition-pro-overview,
  .history-pro-overview{
    grid-template-columns:repeat(2,1fr)!important;
    gap:7px!important;
  }

  .competition-pro-grid{
    display:flex!important;
    gap:9px!important;
    overflow-x:auto!important;
    padding-bottom:5px!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
  }

  .competition-pro-grid::-webkit-scrollbar{
    display:none!important;
  }

  .competition-pro-grid>.competition-pro-card{
    flex:0 0 83vw!important;
    min-width:83vw!important;
    scroll-snap-align:start!important;
  }

  .competition-detail-summary{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }

  .competition-inline-tabs{
    width:100%!important;
  }

  .competition-inline-tabs button{
    flex:1!important;
  }

  #competitionStandings,
  .team-table-wrap,
  .table-wrap{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  #competitionStandings table,
  .full-table{
    min-width:670px!important;
  }

  .competition-match-columns{
    grid-template-columns:1fr!important;
  }

  .history-pro-list{
    grid-template-columns:1fr!important;
  }

  .history-pro-card-stats{
    grid-template-columns:repeat(3,1fr)!important;
  }

  .season-pro-summary{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }

  .season-pro-summary>div:last-child{
    grid-column:1/-1!important;
  }

  /* ---------------------------------------------------------------
     FOOTER
     --------------------------------------------------------------- */
  .footer-main{
    padding:24px 0!important;
  }

  .footer-links{
    gap:10px!important;
  }

  /* ---------------------------------------------------------------
     MOBILE DOCK
     --------------------------------------------------------------- */
  .mobile-dock{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:1250!important;
    display:grid!important;
    grid-template-columns:repeat(5,1fr)!important;
    min-height:64px!important;
    padding:4px 5px max(4px,env(safe-area-inset-bottom))!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
    background:rgba(2,10,18,.965)!important;
    backdrop-filter:blur(18px)!important;
    box-shadow:0 -12px 32px rgba(0,0,0,.24)!important;
  }

  .mobile-dock:before{
    display:none!important;
  }

  .mobile-dock a{
    min-height:56px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    border-radius:10px!important;
    color:#8497a5!important;
  }

  .mobile-dock a.active{
    color:#fff!important;
    background:linear-gradient(135deg,rgba(255,38,61,.18),rgba(54,90,255,.11))!important;
    box-shadow:none!important;
  }

  .dock-icon{
    width:20px!important;
    height:20px!important;
    display:grid!important;
    place-items:center!important;
    color:#a6b7c3!important;
  }

  .dock-icon svg{
    width:20px!important;
    height:20px!important;
    fill:currentColor!important;
  }

  .mobile-dock a.active .dock-icon{
    color:var(--v5-red,#ff263d)!important;
  }

  .mobile-dock a b{
    font-size:.49rem!important;
    line-height:1!important;
    font-weight:850!important;
    text-transform:none!important;
  }
}

/* Tablet: keep dock, but don't over-compress content. */
@media(min-width:701px) and (max-width:900px){
  .mobile-dock .dock-icon svg{
    width:19px;
    height:19px;
    fill:currentColor;
  }
}


/* =====================================================================
   7.1 — VEŘEJNÉ AKTUALITY
   ===================================================================== */

.news-pro-hero,
.article-pro-pagebar{
  min-height:auto!important;
  padding:25px 0 29px!important;
  background:
    radial-gradient(circle at 87% 28%,rgba(54,90,255,.13),transparent 28%),
    radial-gradient(circle at 98% 15%,rgba(255,38,61,.10),transparent 24%),
    linear-gradient(115deg,#020a12,#071725 60%,#0a1d30)!important;
}
.news-pro-hero h1{
  margin:7px 0 5px!important;
  color:#fff!important;
  font-size:clamp(2.6rem,4.4vw,4.4rem)!important;
  line-height:.94!important;
}
.news-pro-hero p{
  color:#a8b8c5!important;
}
.news-pro-body,
.article-pro-body{
  padding-top:22px!important;
}

/* Cards */
.news-grid{
  gap:13px!important;
}
.news-card{
  position:relative;
  display:flex!important;
  flex-direction:column;
  overflow:hidden;
  min-height:100%;
  border:1px solid #d9e2e8!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 11px 31px rgba(5,21,35,.055)!important;
  transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease!important;
}
.news-card:before{
  content:"";
  position:absolute;
  z-index:2;
  left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(90deg,var(--v5-red,#ff263d),var(--v5-blue,#365aff));
}
.news-card:hover{
  transform:translateY(-3px)!important;
  border-color:#c9d5de!important;
  box-shadow:0 17px 38px rgba(5,21,35,.09)!important;
}
.news-image{
  aspect-ratio:16/9;
  background:linear-gradient(135deg,#071827,#0d2d47)!important;
}
.news-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.news-image-fallback{
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
}
.news-image-fallback:before,
.news-image-fallback:after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(54,90,255,.18);
}
.news-image-fallback:before{width:190px;height:190px}
.news-image-fallback:after{width:135px;height:135px;box-shadow:0 0 0 28px rgba(255,38,61,.025)}
.news-image-fallback .news-fallback-logo{
  position:relative;
  z-index:2;
  width:82px!important;
  height:82px!important;
  object-fit:contain;
}
.news-image-fallback>span:last-child{
  position:absolute;
  left:13px;
  bottom:10px;
  color:#8399aa;
  font-size:.49rem;
  font-weight:950;
  letter-spacing:.16em;
}
.news-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:16px!important;
}
.news-date{
  color:var(--v5-red,#ff263d)!important;
  font-size:.58rem!important;
  font-weight:950!important;
  letter-spacing:.04em;
}
.news-card h3{
  margin:8px 0 7px!important;
  color:#07111f;
  font-size:1.06rem!important;
  line-height:1.22!important;
  letter-spacing:-.02em!important;
}
.news-card p{
  display:-webkit-box;
  overflow:hidden;
  margin:0!important;
  color:#73838f!important;
  font-size:.70rem!important;
  line-height:1.5!important;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
}
.news-read{
  margin-top:auto;
  padding-top:14px;
  color:#07111f;
  font-size:.57rem;
  font-weight:950;
  text-transform:uppercase;
}
.news-card:hover .news-read{
  color:var(--v5-red,#ff263d);
}

/* Homepage: only three newest items, with clean white cards on dark page. */
.home-news-section #homeNews{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

/* News listing – newest article is visually dominant. */
.news-featured-wrap{
  margin-bottom:27px;
}
.news-featured-label{
  margin-bottom:9px;
  color:var(--v5-red,#ff263d);
  font-size:.57rem;
  font-weight:950;
  letter-spacing:.16em;
}
.news-card-featured{
  display:grid!important;
  grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);
  min-height:360px!important;
}
.news-card-featured .news-image{
  aspect-ratio:auto!important;
  min-height:360px;
}
.news-card-featured .news-body{
  justify-content:center;
  padding:30px!important;
}
.news-card-featured h3{
  font-size:clamp(1.7rem,3vw,2.7rem)!important;
  line-height:1.02!important;
}
.news-card-featured p{
  margin-top:5px!important;
  font-size:.84rem!important;
  -webkit-line-clamp:4;
}
.news-card-featured .news-read{
  margin-top:20px;
}
.news-pro-archive{
  margin-top:5px;
}
.news-pro-heading{
  margin-bottom:11px!important;
}
.news-pro-count{
  color:#8897a3;
  font-size:.62rem;
  font-weight:800;
}

/* Article: no duplicated giant title in page hero. */
.article-pro-pagebar{
  padding:14px 0 16px!important;
}
.article-pro-pagebar-inner{
  display:flex;
  align-items:center;
  gap:18px;
}
.article-pro-pagebar .back-link{
  margin:0!important;
}
.article-pro-pagebar .section-kicker{
  margin:0!important;
  padding-left:18px;
  border-left:1px solid rgba(255,255,255,.12);
}
.article-pro{
  max-width:1160px;
  margin:0 auto;
}
.article-pro-header{
  max-width:900px;
  margin:0 auto 24px;
}
.article-pro-kicker{
  color:var(--v5-red,#ff263d);
  font-size:.58rem;
  font-weight:950;
  letter-spacing:.16em;
}
.article-pro-header h1{
  margin:11px 0 12px;
  color:#07111f;
  font-size:clamp(2.7rem,5.2vw,5.4rem);
  line-height:.93;
  letter-spacing:-.055em;
}
.article-pro-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 15px;
  color:#7d8d99;
  font-size:.66rem;
  font-weight:750;
}
.article-pro-meta span{
  position:relative;
  padding-left:15px;
}
.article-pro-meta span:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:4px;height:4px;
  margin-top:-2px;
  border-radius:50%;
  background:var(--v5-blue,#365aff);
}
.article-pro-lead{
  max-width:780px;
  margin:20px 0 0;
  color:#3d4f5c;
  font-size:1.10rem;
  line-height:1.58;
  font-weight:650;
}
.article-pro-cover{
  width:100%;
  margin:0 0 25px;
  overflow:hidden;
  border-radius:15px;
  background:#dfe6eb;
  box-shadow:0 16px 42px rgba(5,21,35,.10);
}
.article-pro-cover img{
  display:block;
  width:100%;
  max-height:650px;
  object-fit:cover;
}
.article-pro-layout{
  display:grid;
  grid-template-columns:minmax(0,760px) minmax(220px,260px);
  gap:50px;
  justify-content:center;
  align-items:start;
}
.article-pro-copy p{
  margin:0 0 1.35em;
  color:#344754;
  font-size:1rem;
  line-height:1.82;
}
.article-pro-copy p:first-child:first-letter{
  float:left;
  margin:5px 8px 0 0;
  color:#07111f;
  font-size:3.55rem;
  line-height:.72;
  font-weight:1000;
}
.article-pro-side{
  position:sticky;
  top:105px;
  display:grid;
  gap:9px;
}
.article-pro-sidebox{
  padding:14px;
  border:1px solid #dbe3e8;
  border-radius:10px;
  background:#fff;
}
.article-pro-sidebox span{
  display:block;
  color:#8a99a4;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.12em;
}
.article-pro-sidebox strong{
  display:block;
  margin-top:7px;
  color:#07111f;
  font-size:.69rem;
  line-height:1.45;
}
.article-share{
  min-height:42px;
  border:1px solid #17364e;
  border-radius:9px;
  color:#fff;
  background:#071522;
  font:inherit;
  font-size:.64rem;
  font-weight:950;
  cursor:pointer;
}
.article-share:hover{
  background:#0c263a;
}
.article-pro-nav{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  max-width:1000px;
  margin:40px auto 0;
  padding-top:17px;
  border-top:1px solid #dce3e8;
}
.article-pro-nav-link{
  min-height:90px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 15px;
  border:1px solid #dce3e8;
  border-radius:10px;
  background:#fff;
}
.article-pro-nav-link.next{
  align-items:flex-end;
  text-align:right;
}
.article-pro-nav-link span{
  color:var(--v5-red,#ff263d);
  font-size:.50rem;
  font-weight:950;
  letter-spacing:.08em;
}
.article-pro-nav-link strong{
  display:block;
  max-width:390px;
  margin-top:6px;
  color:#07111f;
  font-size:.73rem;
  line-height:1.35;
}
.article-pro-nav-link:hover{
  border-color:#becbd4;
}
.article-pro-back{
  max-width:1000px;
  margin:15px auto 0;
  text-align:center;
}
.article-pro-back a{
  color:#365aff;
  font-size:.62rem;
  font-weight:900;
}

/* Mobile */
@media(max-width:700px){
  .home-news-section #homeNews{
    display:flex!important;
    grid-template-columns:none!important;
    gap:9px!important;
    overflow-x:auto!important;
    padding-bottom:5px!important;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .home-news-section #homeNews::-webkit-scrollbar{display:none}
  .home-news-section #homeNews>.news-card{
    flex:0 0 82vw!important;
    min-width:82vw!important;
    scroll-snap-align:start;
  }

  .news-pro-hero{
    padding:22px 0 25px!important;
  }
  .news-pro-hero h1{
    font-size:2.35rem!important;
  }
  .news-card-featured{
    display:flex!important;
    min-height:0!important;
  }
  .news-card-featured .news-image{
    min-height:0!important;
    aspect-ratio:16/9!important;
  }
  .news-card-featured .news-body{
    padding:17px!important;
  }
  .news-card-featured h3{
    font-size:1.45rem!important;
  }
  .news-grid-page{
    grid-template-columns:1fr!important;
  }

  .article-pro-pagebar{
    padding:11px 0 12px!important;
  }
  .article-pro-pagebar-inner{
    gap:10px;
    overflow-x:auto;
    white-space:nowrap;
  }
  .article-pro-pagebar .section-kicker{
    padding-left:10px;
    font-size:.55rem!important;
  }
  .article-pro-body{
    padding-top:17px!important;
  }
  .article-pro-header{
    margin-bottom:17px;
  }
  .article-pro-header h1{
    margin-top:9px;
    font-size:clamp(2.25rem,12vw,3.45rem);
    line-height:.91;
  }
  .article-pro-lead{
    margin-top:15px;
    font-size:.92rem;
    line-height:1.55;
  }
  .article-pro-cover{
    margin-bottom:18px;
    border-radius:11px;
  }
  .article-pro-layout{
    display:block;
  }
  .article-pro-copy p{
    font-size:.94rem;
    line-height:1.72;
  }
  .article-pro-copy p:first-child:first-letter{
    font-size:3rem;
  }
  .article-pro-side{
    position:static;
    grid-template-columns:1fr 1fr;
    margin-top:22px;
  }
  .article-pro-nav{
    grid-template-columns:1fr;
    margin-top:27px;
  }
  .article-pro-nav-link.next{
    align-items:flex-start;
    text-align:left;
  }
}

/* 7.2 — původ Aktuality z Facebooku */
.news-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}
.news-source{flex:0 0 auto;padding:4px 6px;border-radius:999px;background:#edf3ff;color:#2455bb;font-size:.46rem;font-weight:950;letter-spacing:.06em}
.article-source-link{min-height:42px;display:flex;align-items:center;justify-content:center;padding:8px 10px;border:1px solid #c9d9f4;border-radius:9px;background:#f4f8ff;color:#2455bb;text-align:center;font-size:.58rem;font-weight:900;line-height:1.35}
.article-source-link:hover{background:#eaf2ff}


/* =====================================================================
   7.3 — ZÁPASY PRO / STRIKTNÍ ODDĚLENÍ ROČNÍKŮ
   ===================================================================== */

.match-row-comp small{
  display:block;
  margin-top:3px;
  color:#8b99a4;
  font-size:.52rem;
  font-weight:800;
}

/* Zápas dne */
.home-matchday{
  padding-top:19px;
  padding-bottom:3px;
}
.home-matchday-heading{
  margin-bottom:9px!important;
}
.home-matchday-season{
  padding:6px 9px;
  border:1px solid #d7e1e7;
  border-radius:999px;
  color:#667985;
  background:#fff;
  font-size:.55rem;
  font-weight:900;
}
.home-matchday-list{
  display:grid;
  gap:9px;
}
.matchday-card{
  overflow:hidden;
  display:block;
  border:1px solid #162d3e;
  border-radius:13px;
  color:#fff;
  background:
    radial-gradient(circle at 92% 20%,rgba(54,90,255,.16),transparent 26%),
    radial-gradient(circle at 8% 90%,rgba(255,38,61,.13),transparent 28%),
    #061522;
  box-shadow:0 13px 35px rgba(5,21,35,.12);
}
.matchday-card:before{
  content:"";
  display:block;
  height:3px;
  background:linear-gradient(90deg,var(--v5-red,#ff263d),var(--v5-blue,#365aff));
}
.matchday-top{
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:9px 14px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.matchday-top>div span{
  display:block;
  color:#ff586b;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.08em;
}
.matchday-top>div strong{
  display:block;
  margin-top:3px;
  color:#bac8d2;
  font-size:.64rem;
}
.matchday-top>b{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:.54rem;
}
.matchday-card.result-v .matchday-top>b{background:rgba(24,190,120,.16);color:#58dfa5}
.matchday-card.result-p .matchday-top>b{background:rgba(255,38,61,.16);color:#ff7080}
.matchday-card.result-r .matchday-top>b{background:rgba(255,190,68,.14);color:#ffd078}
.matchday-main{
  display:grid;
  grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr);
  align-items:center;
  gap:12px;
  min-height:148px;
  padding:18px 25px;
}
.matchday-club{
  display:flex;
  align-items:center;
  gap:12px;
}
.matchday-club:last-child{
  flex-direction:row-reverse;
  text-align:right;
}
.matchday-club img,
.matchday-club .logo-placeholder{
  width:70px;
  height:70px;
  flex:0 0 70px;
  object-fit:contain;
}
.matchday-club strong{
  font-size:1rem;
  line-height:1.2;
}
.matchday-score{
  text-align:center;
}
.matchday-score strong{
  display:block;
  font-size:2.15rem;
  line-height:1;
  letter-spacing:-.05em;
}
.matchday-score span{
  display:block;
  margin-top:6px;
  color:#7f96a7;
  font-size:.48rem;
  font-weight:950;
  letter-spacing:.12em;
}
.matchday-bottom{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:40px;
  padding:0 14px;
  border-top:1px solid rgba(255,255,255,.07);
  color:#8297a6;
  font-size:.54rem;
  font-weight:800;
}
.matchday-bottom b{
  margin-left:auto;
  color:#fff;
}

/* Předzápasový / pozápasový blok */
.match-context-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.match-context-grid>div{
  min-height:86px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 15px;
  border-right:1px solid #e4eaee;
  border-bottom:1px solid #e4eaee;
}
.match-context-grid>div:nth-child(2n){border-right:0}
.match-context-grid>div:nth-last-child(-n+2){border-bottom:0}
.match-context-grid span{
  color:#8697a3;
  font-size:.50rem;
  font-weight:950;
  letter-spacing:.08em;
}
.match-context-grid strong{
  display:block;
  margin-top:7px;
  color:#07111f;
  font-size:.85rem;
  line-height:1.35;
}
.match-context-form{
  display:flex;
  gap:5px;
  margin-top:8px;
}
.match-context-form b{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  font-size:.56rem;
}
.match-context-form .win{background:#18a86f}
.match-context-form .loss{background:#d83950}
.match-context-form .draw{background:#d49a2f}
.match-context-none{
  margin-top:7px;
  color:#8b99a4!important;
  font-size:.85rem!important;
}
.match-season-nav-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
}
.match-season-nav-grid>a{
  min-height:96px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 15px;
  border-right:1px solid #e4eaee;
}
.match-season-nav-grid>a.next{
  align-items:flex-end;
  border-right:0;
  text-align:right;
}
.match-season-nav-grid>a>span{
  color:#ff263d;
  font-size:.49rem;
  font-weight:950;
  letter-spacing:.06em;
}
.match-season-nav-grid>a>strong{
  margin-top:6px;
  color:#07111f;
  font-size:.72rem;
}
.match-season-nav-grid>a>small{
  margin-top:4px;
  color:#71828e;
  font-size:.62rem;
  line-height:1.3;
}

/* Make season filters clearly separate levels. */
.filters-stack{
  gap:8px!important;
}
.filters-stack>.filter-bar:first-child{
  padding-bottom:8px!important;
  border-bottom:1px solid #e1e7eb;
}
.filters-stack>.filter-bar:first-child:before{
  content:"ROČNÍK";
  align-self:center;
  margin-right:4px;
  color:#8b99a4;
  font-size:.49rem;
  font-weight:950;
  letter-spacing:.12em;
}

@media(max-width:700px){
  .home-matchday{
    padding-top:13px;
  }
  .matchday-main{
    grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr);
    gap:5px;
    min-height:125px;
    padding:14px 9px;
  }
  .matchday-club{
    flex-direction:column!important;
    gap:7px;
    text-align:center!important;
  }
  .matchday-club img,
  .matchday-club .logo-placeholder{
    width:52px;
    height:52px;
    flex-basis:52px;
  }
  .matchday-club strong{
    font-size:.67rem;
  }
  .matchday-score strong{
    font-size:1.38rem;
  }
  .matchday-bottom{
    gap:7px;
    font-size:.48rem;
  }
  .matchday-bottom b{
    max-width:105px;
    text-align:right;
  }
  .match-context-grid{
    grid-template-columns:1fr 1fr;
  }
  .match-context-grid>div{
    min-height:78px;
    padding:11px;
  }
  .match-season-nav-grid{
    grid-template-columns:1fr;
  }
  .match-season-nav-grid>a,
  .match-season-nav-grid>a.next{
    align-items:flex-start;
    border-right:0;
    border-bottom:1px solid #e4eaee;
    text-align:left;
  }
  .match-season-nav-grid>a:last-of-type{
    border-bottom:0;
  }
}


/* 7.3.1 — historické ročníky bez Programu */
.competition-history-results{
  margin-top:14px;
}
.competition-history-results .competition-match-list{
  max-width:none;
}


/* =====================================================================
   7.4 — SOUTĚŽE: POUZE AKTUÁLNÍ ROČNÍK
   ===================================================================== */

.competition-current-body{
  padding-top:18px!important;
}
.competition-current-season{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:14px;
  padding:15px 18px;
  border:1px solid #d9e2e8;
  border-radius:12px;
  background:#fff;
  box-shadow:0 8px 25px rgba(5,21,35,.045);
}
.competition-current-season-main{
  display:flex;
  align-items:center;
  gap:24px;
}
.competition-current-season-main>div span{
  display:block;
  color:#ff263d;
  font-size:.51rem;
  font-weight:950;
  letter-spacing:.13em;
}
.competition-current-season-main>div strong{
  display:block;
  margin-top:4px;
  color:#07111f;
  font-size:1.55rem;
  line-height:1;
  letter-spacing:-.03em;
}
.competition-current-season-main p{
  max-width:470px;
  margin:0;
  color:#7a8b97;
  font-size:.65rem;
  line-height:1.45;
}
.competition-current-season>a{
  flex:0 0 auto;
  color:#365aff;
  font-size:.60rem;
  font-weight:900;
}
.competition-current-teams{
  display:grid;
  gap:10px;
}
.competition-team-section{
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  overflow:hidden;
  border:1px solid #d9e2e8;
  border-radius:13px;
  background:#fff;
  box-shadow:0 8px 25px rgba(5,21,35,.045);
}
.competition-team-identity{
  position:relative;
  min-height:155px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:18px;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 90%,rgba(255,38,61,.15),transparent 34%),
    radial-gradient(circle at 95% 8%,rgba(54,90,255,.13),transparent 31%),
    #071522;
  color:#fff;
}
.competition-team-identity:after{
  content:"";
  position:absolute;
  right:-26px;
  bottom:-52px;
  width:135px;
  height:135px;
  border:1px solid rgba(255,255,255,.05);
  border-radius:50%;
}
.competition-team-code{
  position:relative;
  z-index:1;
  min-width:59px;
  color:#fff;
  font-size:3.15rem;
  font-weight:1000;
  line-height:.8;
  letter-spacing:-.08em;
}
.competition-team-identity>div:nth-child(2){
  position:relative;
  z-index:1;
  min-width:0;
}
.competition-team-identity>div:nth-child(2)>span{
  color:#ff5265;
  font-size:.49rem;
  font-weight:950;
  letter-spacing:.12em;
}
.competition-team-identity h2{
  margin:5px 0 0;
  color:#fff;
  font-size:1.02rem;
  line-height:1.05;
}
.competition-team-identity>a{
  position:absolute;
  z-index:2;
  left:18px;
  bottom:14px;
  color:#9bb0bf;
  font-size:.52rem;
  font-weight:850;
}
.competition-current-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:0;
}
.competition-current-card{
  position:relative;
  min-height:155px;
  display:flex;
  flex-direction:column;
  padding:17px 18px;
  border-left:1px solid #e2e8ec;
  color:#07111f;
  background:#fff;
  transition:background .16s ease;
}
.competition-current-card:hover{
  background:#f8fafb;
}
.competition-current-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:3px;
  height:100%;
  background:#365aff;
  opacity:0;
  transition:opacity .16s ease;
}
.competition-current-card.cup:before{
  background:#ff263d;
}
.competition-current-card:hover:before{
  opacity:1;
}
.competition-current-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.competition-current-card-top>span:last-child{
  color:#8a99a4;
  font-size:.47rem;
  font-weight:850;
  letter-spacing:.06em;
}
.competition-current-card h3{
  margin:12px 0 8px;
  color:#07111f;
  font-size:1.08rem;
  line-height:1.15;
  letter-spacing:-.025em;
}
.competition-current-line{
  color:#6f808c;
  font-size:.65rem;
  line-height:1.45;
}
.competition-current-line strong{
  color:#536572;
  font-weight:800;
}
.competition-current-link{
  margin-top:auto;
  padding-top:14px;
  color:#07111f;
  font-size:.56rem;
  font-weight:950;
  text-transform:uppercase;
}
.competition-current-card:hover .competition-current-link{
  color:#ff263d;
}

/* League and cup detail are intentionally different. */
.competition-cup-summary .competition-detail-stat:nth-child(4) strong.competition-date-value{
  font-size:1.05rem!important;
}
.competition-cup-program{
  margin-top:14px;
}
.competition-history-results{
  margin-top:14px;
}

/* Historical competition header clearly belongs to the archive. */
#competitionKicker{
  display:inline-block;
}

/* Existing competition cards remain only inside History / season detail. */

@media(max-width:850px){
  .competition-team-section{
    grid-template-columns:170px minmax(0,1fr);
  }
  .competition-current-grid{
    grid-template-columns:1fr;
  }
  .competition-current-card{
    border-left:1px solid #e2e8ec;
    border-bottom:1px solid #e2e8ec;
  }
  .competition-current-card:last-child{
    border-bottom:0;
  }
}

@media(max-width:700px){
  .competition-current-season{
    align-items:flex-start;
    flex-direction:column;
    gap:11px;
    padding:13px;
  }
  .competition-current-season-main{
    display:block;
  }
  .competition-current-season-main p{
    margin-top:9px;
  }
  .competition-team-section{
    display:block;
  }
  .competition-team-identity{
    min-height:112px;
    padding:14px 14px 34px;
  }
  .competition-team-code{
    min-width:52px;
    font-size:2.8rem;
  }
  .competition-team-identity h2{
    font-size:.96rem;
  }
  .competition-team-identity>a{
    left:14px;
    bottom:11px;
  }
  .competition-current-card{
    min-height:145px;
    border-left:0;
    border-top:1px solid #e2e8ec;
  }
  .competition-current-card:before{
    width:100%;
    height:3px;
  }
}


/* =====================================================================
   7.4.1 — PŘEHLEDNÉ TABULKY SOUTĚŽÍ
   ===================================================================== */

.standings-pro{
  width:100%;
  background:#fff;
}

/* Desktop */
.standings-pro-table{
  min-width:0!important;
  table-layout:auto;
}
.standings-pro-table th{
  padding:12px 15px!important;
  color:#9babb7!important;
  background:#071522!important;
  font-size:.56rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}
.standings-pro-table th:first-child{
  width:72px;
  text-align:center!important;
}
.standings-pro-table th:nth-child(3){
  width:95px;
}
.standings-pro-table th:nth-child(4){
  width:95px;
}
.standings-pro-table th:nth-child(5){
  width:82px;
}
.standings-pro-table td{
  padding:10px 15px!important;
  vertical-align:middle;
  border-bottom:1px solid #e8edf0!important;
  background:#fff;
}
.standings-pro-table tbody tr{
  transition:background .12s ease;
}
.standings-pro-table tbody tr:hover td{
  background:#f8fafb;
}
.standings-pro-table tbody tr.own td{
  background:linear-gradient(90deg,rgba(255,38,61,.08),rgba(54,90,255,.045))!important;
}
.standings-pro-table tbody tr.own td:first-child{
  box-shadow:inset 4px 0 0 var(--v5-red,#ff263d);
}
.standings-pos{
  text-align:center!important;
}
.standings-rank{
  display:inline-grid;
  min-width:34px;
  height:34px;
  place-items:center;
  border-radius:8px;
  color:#07111f;
  background:#edf2f5;
  font-size:.78rem;
  font-weight:1000;
}
.standings-pro-table tr.own .standings-rank{
  color:#fff;
  background:#071522;
}
.standings-team{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}
.standings-team>img,
.standings-team>.logo-placeholder{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px;
  object-fit:contain;
}
.standings-team-copy{
  min-width:0;
}
.standings-team-name{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.standings-team-name strong{
  overflow:hidden;
  color:#07111f;
  font-size:.78rem;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.standings-team-name em{
  flex:0 0 auto;
  padding:3px 6px;
  border-radius:999px;
  color:#fff;
  background:var(--v5-red,#ff263d);
  font-size:.43rem;
  font-style:normal;
  font-weight:950;
  letter-spacing:.05em;
}
.standings-team-copy small{
  display:block;
  margin-top:4px;
  color:#8a99a4;
  font-size:.53rem;
  font-weight:650;
}
.standings-matches,
.standings-score{
  color:#4f626f;
  font-size:.75rem!important;
  font-weight:800;
}
.standings-points strong{
  color:#07111f;
  font-size:1.02rem;
  font-weight:1000;
}
.standings-note{
  padding:9px 15px 11px;
  border-top:1px solid #edf1f3;
  color:#97a4ad;
  background:#fafbfc;
  font-size:.49rem;
  line-height:1.45;
}
.standings-pro-mobile{
  display:none;
}

/* Competition detail should never force the new standings to scroll sideways. */
#competitionStandings{
  overflow:visible!important;
}
#competitionStandings .full-table{
  min-width:0!important;
}

/* Mobile: each club is one readable row/card – no horizontal table. */
@media(max-width:700px){
  .standings-pro-desktop{
    display:none!important;
  }
  .standings-pro-mobile{
    display:grid;
  }
  #competitionStandings,
  #view-team .team-table-wrap,
  #fullTable{
    overflow:visible!important;
  }
  .standings-mobile-row{
    position:relative;
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 48px;
    align-items:center;
    gap:9px;
    min-height:82px;
    padding:10px 10px;
    border-bottom:1px solid #e7ecef;
    background:#fff;
  }
  .standings-mobile-row:last-child{
    border-bottom:0;
  }
  .standings-mobile-row.own{
    background:linear-gradient(90deg,rgba(255,38,61,.09),rgba(54,90,255,.045));
  }
  .standings-mobile-row.own:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:4px;
    background:var(--v5-red,#ff263d);
  }
  .standings-mobile-rank{
    text-align:center;
  }
  .standings-mobile-rank strong{
    display:block;
    color:#07111f;
    font-size:1rem;
    line-height:1;
    font-weight:1000;
  }
  .standings-mobile-rank span{
    display:block;
    margin-top:5px;
    color:#9aa7b0;
    font-size:.39rem;
    font-weight:950;
    letter-spacing:.08em;
  }
  .standings-mobile-team{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    align-items:center;
    gap:9px;
    min-width:0;
  }
  .standings-mobile-team>img,
  .standings-mobile-team>.logo-placeholder{
    width:34px!important;
    height:34px!important;
    object-fit:contain;
  }
  .standings-mobile-name{
    display:flex;
    align-items:center;
    gap:6px;
    min-width:0;
  }
  .standings-mobile-name strong{
    overflow:hidden;
    color:#07111f;
    font-size:.68rem;
    line-height:1.16;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .standings-mobile-name em{
    flex:0 0 auto;
    padding:2px 4px;
    border-radius:999px;
    color:#fff;
    background:var(--v5-red,#ff263d);
    font-size:.34rem;
    font-style:normal;
    font-weight:950;
  }
  .standings-mobile-team small{
    display:block;
    margin-top:4px;
    overflow:hidden;
    color:#84949f;
    font-size:.47rem;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .standings-mobile-points{
    text-align:center;
  }
  .standings-mobile-points strong{
    display:block;
    color:#07111f;
    font-size:1.12rem;
    line-height:1;
    font-weight:1000;
  }
  .standings-mobile-points span{
    display:block;
    margin-top:5px;
    color:#ff263d;
    font-size:.39rem;
    font-weight:950;
    letter-spacing:.07em;
  }

  /* The old generic horizontal-table rule must not apply to standings. */
  #competitionStandings .standings-pro-table,
  .team-table-wrap .standings-pro-table,
  #fullTable .standings-pro-table{
    min-width:0!important;
  }
}


/* =====================================================================
   7.5 — TABULKY: ROČNÍK → DRUŽSTVO → SOUTĚŽ
   ===================================================================== */

.table-pro-body{
  padding-top:18px!important;
}
.table-picker{
  overflow:hidden;
  margin-bottom:12px;
  border:1px solid #d8e2e8;
  border-radius:13px;
  background:#fff;
  box-shadow:0 9px 27px rgba(5,21,35,.045);
}
.table-picker-row{
  min-height:74px;
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  align-items:center;
  gap:16px;
  padding:12px 15px;
  border-bottom:1px solid #e6ecef;
}
.table-picker-row:last-child{
  border-bottom:0;
}
.table-picker-label{
  display:flex;
  align-items:center;
  gap:11px;
}
.table-picker-label>span{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:0 0 32px;
  border-radius:9px;
  color:#fff;
  background:#071522;
  font-size:.66rem;
  font-weight:1000;
}
.table-picker-label small{
  display:block;
  color:#ff263d;
  font-size:.46rem;
  font-weight:950;
  letter-spacing:.12em;
}
.table-picker-label strong{
  display:block;
  margin-top:3px;
  color:#07111f;
  font-size:.68rem;
  line-height:1.2;
}
.table-mode-tabs{
  display:flex;
  gap:7px;
}
.table-mode-tabs button{
  min-height:42px;
  padding:0 14px;
  border:1px solid #d5e0e7;
  border-radius:9px;
  color:#536673;
  background:#f8fafb;
  font:inherit;
  font-size:.61rem;
  font-weight:900;
  cursor:pointer;
}
.table-mode-tabs button b{
  margin-left:3px;
}
.table-mode-tabs button.active{
  border-color:#071522;
  color:#fff;
  background:#071522;
}
.table-mode-tabs button.active:first-child{
  box-shadow:inset 0 -3px 0 var(--v5-red,#ff263d);
}
.table-history-season{
  display:flex;
  align-items:center;
  gap:12px;
  padding:11px 15px 11px 211px;
  border-bottom:1px solid #e6ecef;
  background:#f8fafb;
}
.table-history-season label{
  color:#778894;
  font-size:.57rem;
  font-weight:850;
}
.table-history-season select{
  min-width:180px;
  min-height:39px;
  padding:0 34px 0 11px;
  border:1px solid #cbd8e0;
  border-radius:8px;
  color:#07111f;
  background:#fff;
  font:inherit;
  font-size:.62rem;
  font-weight:900;
}
.table-team-selector{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.table-team-selector button{
  min-width:104px;
  min-height:48px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:6px 11px;
  border:1px solid #d7e1e7;
  border-radius:9px;
  color:#556874;
  background:#fff;
  font:inherit;
  cursor:pointer;
}
.table-team-selector button strong{
  min-width:31px;
  color:#07111f;
  font-size:.86rem;
  font-weight:1000;
  letter-spacing:-.04em;
}
.table-team-selector button span{
  font-size:.56rem;
  font-weight:850;
  line-height:1.2;
}
.table-team-selector button.active{
  border-color:#071522;
  color:#fff;
  background:#071522;
  box-shadow:inset 0 -3px 0 var(--v5-red,#ff263d);
}
.table-team-selector button.active strong{
  color:#fff;
}
.table-competition-selector{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.table-competition-selector button{
  min-height:40px;
  padding:0 12px;
  border:1px solid #d6e0e6;
  border-radius:8px;
  color:#536673;
  background:#fff;
  font:inherit;
  font-size:.58rem;
  font-weight:850;
  cursor:pointer;
}
.table-competition-selector button.active{
  border-color:#365aff;
  color:#fff;
  background:#365aff;
}
.table-picker-empty{
  color:#8797a2;
  font-size:.62rem;
}

.table-result-head{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
.table-standing-tabs{
  display:flex;
  gap:5px;
  padding:4px;
  border:1px solid #d8e1e7;
  border-radius:9px;
  background:#fff;
}
.table-standing-tabs button{
  min-height:34px;
  padding:0 12px;
  border:0;
  border-radius:6px;
  color:#788995;
  background:transparent;
  font:inherit;
  font-size:.55rem;
  font-weight:900;
  cursor:pointer;
}
.table-standing-tabs button.active{
  color:#fff;
  background:#071522;
}
.table-detail-link{
  color:#365aff;
  font-size:.58rem;
  font-weight:900;
}
.table-pro-card{
  overflow:hidden!important;
}

/* The old generic filter bar cloud must never return on the Tables page. */
#view-table .filter-bar{
  display:none!important;
}

@media(max-width:700px){
  .table-pro-body{
    padding-top:11px!important;
  }
  .table-picker-row{
    display:block;
    min-height:0;
    padding:12px;
  }
  .table-picker-label{
    margin-bottom:10px;
  }
  .table-picker-label>span{
    width:28px;
    height:28px;
    flex-basis:28px;
  }
  .table-mode-tabs{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .table-mode-tabs button{
    min-height:43px;
    padding:0 7px;
  }
  .table-history-season{
    display:block;
    padding:11px 12px;
  }
  .table-history-season label{
    display:block;
    margin-bottom:6px;
  }
  .table-history-season select{
    width:100%;
  }
  .table-team-selector{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .table-team-selector button{
    width:100%;
    min-width:0;
  }
  .table-competition-selector{
    display:grid;
    grid-template-columns:1fr;
  }
  .table-result-head{
    align-items:stretch;
    flex-direction:column;
    gap:7px;
  }
  .table-standing-tabs{
    display:grid;
    grid-template-columns:repeat(3,1fr);
  }
  .table-detail-link{
    align-self:flex-end;
  }
}


/* =====================================================================
   7.5.1 — PROGRAM: VÝRAZNÁ KATEGORIE DRUŽSTVA
   ===================================================================== */

#scheduleList{
  gap:9px!important;
}
#scheduleList .schedule-match-row{
  position:relative;
  grid-template-columns:92px 125px minmax(0,1fr) 145px!important;
  gap:14px!important;
  min-height:92px;
  padding:10px 14px 10px 10px!important;
  overflow:hidden;
}
#scheduleList .schedule-match-row:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:linear-gradient(180deg,var(--v5-red,#ff263d),var(--v5-blue,#365aff));
}

.schedule-category-badge{
  min-height:70px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:
    radial-gradient(circle at 100% 0,rgba(54,90,255,.20),transparent 43%),
    linear-gradient(145deg,#071522,#0c2639);
  color:#fff;
  text-align:center;
}
.schedule-category-badge strong{
  display:block;
  color:#fff;
  font-size:1.48rem;
  line-height:.92;
  font-weight:1000;
  letter-spacing:-.055em;
}
.schedule-category-badge span{
  display:block;
  margin-top:7px;
  color:#ff5669;
  font-size:.45rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
#scheduleList .match-row-date{
  font-size:.69rem!important;
  line-height:1.4!important;
}
#scheduleList .match-row-date strong{
  display:inline-block;
  margin-top:3px;
  color:#fff!important;
  font-size:.88rem!important;
  font-weight:1000!important;
}
#scheduleList .match-row-comp{
  line-height:1.35;
}
#scheduleList .match-row-comp>b{
  display:block;
  margin-bottom:3px;
  color:#fff;
  font-size:.63rem;
  font-weight:950;
}
#scheduleList .match-row-comp small{
  margin-top:4px;
}
#scheduleList .schedule-match-row:hover .schedule-category-badge{
  border-color:rgba(255,38,61,.32);
  background:
    radial-gradient(circle at 100% 0,rgba(54,90,255,.25),transparent 43%),
    linear-gradient(145deg,#091a29,#103049);
}

/* Tablet */
@media(max-width:1000px) and (min-width:701px){
  #scheduleList .schedule-match-row{
    grid-template-columns:78px 105px minmax(0,1fr) 120px!important;
    gap:10px!important;
  }
  .schedule-category-badge strong{
    font-size:1.25rem;
  }
  .schedule-category-badge span{
    font-size:.40rem;
  }
}

/* Mobile: category remains visually first and cannot be missed. */
@media(max-width:700px){
  #scheduleList .schedule-match-row{
    display:grid!important;
    grid-template-columns:70px minmax(0,1fr)!important;
    gap:9px!important;
    min-height:0!important;
    padding:9px!important;
  }
  #scheduleList .schedule-category-badge{
    grid-column:1;
    grid-row:1;
    min-height:62px;
    align-self:start;
  }
  #scheduleList .schedule-category-badge strong{
    font-size:1.26rem;
  }
  #scheduleList .schedule-category-badge span{
    margin-top:6px;
    font-size:.39rem;
  }
  #scheduleList .match-row-date{
    grid-column:2;
    grid-row:1;
    align-self:center;
    font-size:.62rem!important;
  }
  #scheduleList .match-row-date strong{
    font-size:.82rem!important;
  }
  #scheduleList .match-row-main{
    grid-column:1/-1;
    grid-row:2;
    grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;
    gap:6px!important;
    padding:8px 0 4px;
    border-top:1px solid rgba(255,255,255,.07);
  }
  #scheduleList .match-row-team{
    font-size:.62rem!important;
    line-height:1.25;
  }
  #scheduleList .match-row-team img,
  #scheduleList .match-row-team .logo-placeholder{
    width:34px!important;
    height:34px!important;
  }
  #scheduleList .match-row-score{
    font-size:.82rem!important;
  }
  #scheduleList .match-row-comp{
    grid-column:1/-1;
    grid-row:3;
    padding-top:6px;
    border-top:1px solid rgba(255,255,255,.06);
    text-align:left!important;
    font-size:.54rem!important;
  }
  #scheduleList .match-row-comp>b{
    display:inline;
    margin-right:5px;
    font-size:.56rem;
  }
  #scheduleList .match-row-comp small{
    display:inline;
    margin-left:6px;
  }
}


/* =====================================================================
   7.5.2 — PROGRAM POUZE AKTUÁLNÍ ROČNÍK
   ===================================================================== */

#view-schedule #scheduleFilters{
  margin-bottom:10px!important;
}

/* Program intentionally has no historical season selector. */
#view-schedule .filters-stack{
  display:block!important;
}


/* =====================================================================
   7.6 — KLUB
   ===================================================================== */

.club-pro-hero{
  min-height:auto!important;
  padding:26px 0 30px!important;
  background:
    radial-gradient(circle at 87% 24%,rgba(54,90,255,.14),transparent 28%),
    radial-gradient(circle at 97% 70%,rgba(255,38,61,.10),transparent 28%),
    linear-gradient(115deg,#020a12,#071725 58%,#0a1d30)!important;
}
.club-pro-body{
  padding-top:19px!important;
}
.club-pro-overview{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  margin-bottom:13px!important;
}
.club-pro-overview .club-overview-card{
  min-height:115px;
  padding:15px!important;
  border:1px solid #d9e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(5,21,35,.045);
}
.club-pro-overview .club-overview-card small{
  display:block;
  color:#ff263d;
  font-size:.47rem;
  font-weight:950;
  letter-spacing:.12em;
}
.club-pro-overview .club-overview-card b{
  display:block;
  margin-top:8px;
  color:#07111f;
  font-size:1.9rem!important;
  line-height:1;
  font-weight:1000;
}
.club-pro-overview .club-overview-card span{
  display:block;
  margin-top:6px;
  color:#7c8d98;
  font-size:.57rem;
}
.club-pro-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 310px;
  gap:13px;
  align-items:start;
}
.club-pro-copy,
.club-history-copy{
  padding:24px!important;
}
.club-copy-kicker{
  margin-bottom:15px;
  color:#ff263d;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.15em;
}
.club-pro-copy p,
.club-history-copy p{
  max-width:820px;
  margin:0 0 1.2em;
  color:#40525f;
  font-size:.86rem;
  line-height:1.75;
}
.club-pro-copy p:first-of-type,
.club-history-copy p:first-of-type{
  color:#243844;
  font-size:1rem;
  line-height:1.72;
  font-weight:600;
}
.club-quick-links{
  display:grid;
  overflow:hidden;
  border:1px solid #d9e2e8;
  border-radius:11px;
  background:#071522;
}
.club-quick-links>a{
  min-height:72px;
  display:grid;
  grid-template-columns:33px minmax(0,1fr) 20px;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:#fff;
}
.club-quick-links>a:last-child{border-bottom:0}
.club-quick-links>a>span{
  color:#ff5266;
  font-size:.48rem;
  font-weight:950;
}
.club-quick-links strong{
  display:block;
  color:#fff;
  font-size:.67rem;
}
.club-quick-links small{
  display:block;
  margin-top:4px;
  color:#7f96a6;
  font-size:.51rem;
}
.club-quick-links>a>b{
  color:#587187;
}
.club-quick-links>a:hover{
  background:#0b2132;
}
.club-history-founded{
  float:right;
  min-width:160px;
  margin:0 0 20px 24px;
  padding:15px;
  border-radius:10px;
  color:#fff;
  background:#071522;
}
.club-history-founded span{
  display:block;
  color:#ff5366;
  font-size:.46rem;
  font-weight:950;
  letter-spacing:.12em;
}
.club-history-founded strong{
  display:block;
  margin-top:6px;
  font-size:2rem;
  line-height:1;
}
.club-empty{
  grid-column:1/-1;
  padding:24px;
  border:1px dashed #cbd7df;
  border-radius:11px;
  color:#7b8c97;
  background:#fff;
}
.club-empty strong{
  display:block;
  color:#07111f;
  font-size:.85rem;
}
.club-empty p{
  margin:7px 0 0;
  font-size:.67rem;
}
.club-people-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.club-person-card{
  min-height:125px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:14px;
  border:1px solid #d9e2e8;
  border-radius:11px;
  background:#fff;
  box-shadow:0 8px 24px rgba(5,21,35,.045);
}
.club-person-mark{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(135deg,#ff263d,#365aff);
  font-size:.78rem;
  font-weight:1000;
}
.club-person-copy>span{
  display:block;
  color:#ff263d;
  font-size:.47rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.club-person-copy h3{
  margin:5px 0 0;
  color:#07111f;
  font-size:.84rem;
  line-height:1.2;
}
.club-person-contact{
  display:flex;
  flex-direction:column;
  gap:3px;
  margin-top:8px;
}
.club-person-contact a{
  color:#6f818d;
  font-size:.55rem;
  font-weight:750;
}
.club-person-contact a:hover{color:#365aff}
.club-staff-list{
  display:grid;
  gap:13px;
}
.club-staff-group{
  overflow:hidden;
  border:1px solid #d9e2e8;
  border-radius:12px;
  background:#fff;
}
.club-staff-heading{
  min-height:76px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 15px;
  color:#fff;
  background:#071522;
}
.club-staff-heading>span{
  min-width:52px;
  font-size:2rem;
  font-weight:1000;
  letter-spacing:-.06em;
}
.club-staff-heading small{
  color:#ff5266;
  font-size:.45rem;
  font-weight:950;
  letter-spacing:.12em;
}
.club-staff-heading h2{
  margin:4px 0 0;
  color:#fff;
  font-size:.95rem;
}
.club-staff-group .club-people-grid{
  padding:10px;
}
.venue-pro-main{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  gap:12px;
}
.venue-pro-photo{
  min-height:390px;
  margin:0;
  overflow:hidden;
  border-radius:12px;
  background:#dfe6eb;
}
.venue-pro-photo img{
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
}
.venue-pro-copy{
  padding:23px!important;
}
.venue-pro-copy>span{
  color:#ff263d;
  font-size:.5rem;
  font-weight:950;
  letter-spacing:.13em;
}
.venue-pro-copy h2{
  margin:7px 0 8px;
  color:#07111f;
  font-size:1.75rem;
  line-height:1.02;
}
.venue-pro-address{
  margin-bottom:18px;
  padding-bottom:13px;
  border-bottom:1px solid #e3e9ed;
  color:#365aff;
  font-size:.65rem;
  font-weight:850;
}
.venue-pro-copy p{
  color:#536572;
  font-size:.72rem;
  line-height:1.65;
}
.venue-facilities{
  margin-top:18px;
}
.venue-facility-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.venue-facility-grid>div{
  min-height:64px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border:1px solid #d9e2e8;
  border-radius:9px;
  background:#fff;
}
.venue-facility-grid span{
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  flex:0 0 25px;
  border-radius:50%;
  color:#fff;
  background:#18a86f;
  font-size:.55rem;
}
.venue-facility-grid strong{
  color:#40535f;
  font-size:.60rem;
  line-height:1.3;
}
.club-contact-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.club-contact-card{
  min-height:110px!important;
  padding:15px!important;
}
.club-contact-card small{
  color:#ff263d!important;
  font-size:.49rem!important;
  font-weight:950!important;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.club-contact-card strong{
  display:block;
  margin-top:8px;
  font-size:.76rem!important;
  line-height:1.45;
}
.club-contact-note{
  margin-top:12px;
  padding:17px!important;
}
.club-contact-note span{
  color:#ff263d;
  font-size:.49rem;
  font-weight:950;
  letter-spacing:.11em;
}
.club-contact-note p{
  margin:8px 0 0;
  color:#657783;
  font-size:.68rem;
  line-height:1.55;
}

@media(max-width:950px){
  .club-pro-layout{grid-template-columns:1fr}
  .club-quick-links{grid-template-columns:repeat(2,1fr)}
  .club-quick-links>a:nth-child(odd){border-right:1px solid rgba(255,255,255,.07)}
  .club-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .venue-pro-main{grid-template-columns:1fr}
  .venue-facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .club-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .club-pro-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .club-pro-overview .club-overview-card{min-height:95px}
  .club-pro-overview .club-overview-card b{font-size:1.55rem!important}
  .club-pro-copy,.club-history-copy{padding:17px!important}
  .club-pro-copy p,.club-history-copy p{font-size:.78rem}
  .club-history-founded{
    float:none;
    margin:0 0 17px;
  }
  .club-quick-links{grid-template-columns:1fr}
  .club-quick-links>a:nth-child(odd){border-right:0}
  .club-people-grid{grid-template-columns:1fr}
  .club-person-card{min-height:108px}
  .club-staff-group .club-people-grid{padding:8px}
  .venue-pro-photo,.venue-pro-photo img{min-height:230px}
  .venue-facility-grid{grid-template-columns:1fr}
  .club-contact-grid{grid-template-columns:1fr!important}
}


/* =====================================================================
   7.6.1 — ČITELNOST PRO
   ===================================================================== */

:root{
  --read-body:.78rem;
  --read-small:.64rem;
  --read-meta:.60rem;
  --read-label:.56rem;
}

body{font-size:16px}

.page-hero p,
.section-heading p,
.content-card p,
.article-page p{
  font-size:var(--read-body)!important;
  line-height:1.6!important;
}

.team-card p,
.news-card p,
.competition-pro-card p,
.history-pro-card p,
.sponsor-card small,
.contact-card small,
.contact-card strong{
  font-size:var(--read-small)!important;
  line-height:1.45!important;
}

.filter-button,
.home-team-button,
.competition-inline-tabs button,
.table-standing-tabs button,
.table-mode-tabs button,
.table-competition-selector button,
.table-team-selector button span{
  font-size:var(--read-small)!important;
}

/* Program / výsledky */
.match-row-date{font-size:.76rem!important}
.match-row-date strong{font-size:.88rem!important}
.match-row-team{font-size:.76rem!important;line-height:1.25!important}
.match-row-score{font-size:1rem!important}
.match-row-comp{font-size:.66rem!important;line-height:1.4!important}
.match-row-comp small{font-size:.60rem!important}
.schedule-category-badge span{font-size:.52rem!important}
#scheduleList .match-row-comp>b{font-size:.68rem!important}

/* Soutěže */
.competition-current-season-main p{font-size:.72rem!important}
.competition-current-season>a,
.competition-current-card-top>span:last-child,
.competition-current-line,
.competition-current-link{font-size:.64rem!important}
.competition-current-card h3{font-size:1.12rem!important}
.competition-team-identity>div:nth-child(2)>span{font-size:.55rem!important}
.competition-team-identity>a{font-size:.60rem!important}

/* Tabulky */
.standings-pro-table th{font-size:.62rem!important}
.standings-team-name strong{font-size:.82rem!important}
.standings-team-copy small{font-size:.60rem!important}
.standings-matches,.standings-score{font-size:.80rem!important}
.standings-note{font-size:.56rem!important}

/* Hráč */
.player-pro-copy p,
.player-pro-section-title small,
.player-pro-comp-row,
.player-pro-performance span{font-size:var(--read-small)!important}
.player-pro-section-title{font-size:.72rem!important}
.player-pro-teamchips a,
.player-pro-teamchips span{font-size:.61rem!important}

/* Tým */
.team-summary-card small,
.team-pro-meta,
.team-competition-chips a,
.team-competition-chips span{font-size:.62rem!important}
.team-summary-card strong{font-size:1.1rem!important}

/* Zápas */
.match-pro-datetime,
.match-pro-actions,
.match-pro-info,
.match-context-grid span,
.match-context-grid strong,
.match-season-nav-grid>a>strong,
.match-season-nav-grid>a>small{font-size:var(--read-small)!important}
.match-context-grid span{font-size:.58rem!important}
.match-context-grid strong{font-size:.88rem!important}
.match-pro-club>strong{font-size:.76rem!important}

/* Aktuality */
.news-date{font-size:.64rem!important}
.news-source{font-size:.52rem!important}
.news-read{font-size:.61rem!important}
.article-pro-meta{font-size:.72rem!important}
.article-pro-copy p{font-size:1.02rem!important}
.article-pro-sidebox span{font-size:.58rem!important}
.article-pro-sidebox strong,
.article-share,
.article-source-link{font-size:.66rem!important}

/* Klub */
.club-pro-overview .club-overview-card small{font-size:.54rem!important}
.club-pro-overview .club-overview-card span{font-size:.64rem!important}
.club-pro-copy p,
.club-history-copy p{font-size:.91rem!important}
.club-pro-copy p:first-of-type,
.club-history-copy p:first-of-type{font-size:1.02rem!important}
.club-quick-links strong{font-size:.73rem!important}
.club-quick-links small{font-size:.59rem!important}
.club-person-copy>span{font-size:.54rem!important}
.club-person-copy h3{font-size:.90rem!important}
.club-person-contact a{font-size:.62rem!important}
.club-staff-heading small{font-size:.51rem!important}
.club-staff-heading h2{font-size:1.02rem!important}
.venue-pro-copy>span{font-size:.56rem!important}
.venue-pro-copy p{font-size:.80rem!important}
.venue-facility-grid strong{font-size:.68rem!important}
.club-contact-card small{font-size:.55rem!important}
.club-contact-card strong{font-size:.82rem!important}
.club-contact-note p{font-size:.76rem!important}

/* Historie */
.history-pro-notice{font-size:.72rem!important}
.history-pro-card-main span{font-size:.58rem!important}
.history-pro-card small,
.season-pro-heading small{font-size:.64rem!important}
.season-pro-more{font-size:.67rem!important}

/* Navigace / patička */
.main-nav>a,
.nav-group>summary{font-size:.69rem!important}
.nav-dropdown a{font-size:.65rem!important}
.footer-links a,
.footer-status{font-size:.72rem!important}

@media(max-width:700px){
  :root{
    --read-body:.82rem;
    --read-small:.68rem;
    --read-meta:.64rem;
    --read-label:.60rem;
  }

  .page-hero p{font-size:.78rem!important}

  .match-row-team{font-size:.68rem!important}
  .match-row-comp{font-size:.60rem!important}
  .match-row-comp small{font-size:.56rem!important}

  #scheduleList .match-row-date{font-size:.68rem!important}
  #scheduleList .match-row-date strong{font-size:.86rem!important}
  #scheduleList .match-row-comp{font-size:.60rem!important}
  #scheduleList .match-row-comp>b{font-size:.62rem!important}
  .schedule-category-badge span{font-size:.45rem!important}

  .standings-mobile-name strong{font-size:.74rem!important}
  .standings-mobile-team small{font-size:.54rem!important}
  .standings-mobile-rank span,
  .standings-mobile-points span{font-size:.44rem!important}

  .club-pro-copy p,
  .club-history-copy p{font-size:.86rem!important}
  .venue-pro-copy p{font-size:.76rem!important}
  .article-pro-copy p{font-size:.98rem!important}
  .mobile-dock a b{font-size:.54rem!important}
}


/* =====================================================================
   7.7 — ÚVODNÍ STRANA FINAL
   Praktická hierarchie, klidnější design, jednotný rytmus.
   ===================================================================== */

#view-home.home-final{
  background:
    linear-gradient(#f4f6f8,#f4f6f8) padding-box;
}

/* HERO: značku necháváme silnou, ale ne jako reklamní plakát */
.home-final .hero-v5{
  min-height:420px!important;
  border-bottom:0!important;
}
.home-final .hero-v5 .hero-inner{
  min-height:420px!important;
}
.home-final .hero-copy{
  padding:40px 0 58px!important;
}
.home-final .hero-copy h1{
  max-width:720px!important;
  font-size:clamp(3.55rem,4.8vw,5.05rem)!important;
  line-height:.89!important;
}
.home-final .hero-copy p{
  max-width:590px!important;
  margin-top:13px!important;
  color:#aebdca!important;
  font-size:.88rem!important;
  line-height:1.55!important;
}
.home-final .hero-actions{
  margin-top:24px!important;
}
.home-final .hero-identity{
  background:rgba(4,15,25,.18)!important;
  border-color:rgba(255,255,255,.06)!important;
  box-shadow:none!important;
}

/* RYCHLÉ ODKAZY: nejpraktičtější cesty do webu */
.home-shortcuts{
  position:relative;
  z-index:8;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:-24px;
  overflow:hidden;
  border:1px solid #d5dfe5;
  border-radius:13px;
  background:#fff;
  box-shadow:0 14px 36px rgba(4,20,32,.10);
}
.home-shortcuts>a{
  min-height:78px;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 20px;
  align-items:center;
  gap:10px;
  padding:13px 15px;
  border-right:1px solid #e5ebef;
  color:#07111f;
  transition:background .15s ease;
}
.home-shortcuts>a:last-child{border-right:0}
.home-shortcuts>a:hover{background:#f8fafb}
.home-shortcuts>a>span{
  color:#ff263d;
  font-size:.50rem;
  font-weight:1000;
  letter-spacing:.08em;
}
.home-shortcuts strong{
  display:block;
  color:#07111f;
  font-size:.76rem;
  font-weight:950;
}
.home-shortcuts small{
  display:block;
  margin-top:4px;
  color:#7d8e99;
  font-size:.58rem;
  line-height:1.25;
}
.home-shortcuts>a>b{
  color:#9aa9b3;
  font-size:.85rem;
}

/* Výsledkový servis má vlastní jasný nadpis */
.home-service-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding-top:33px;
  padding-bottom:11px;
}
.home-service-heading h2{
  margin:5px 0 0;
  color:#07111f;
  font-size:2rem;
  line-height:1;
  letter-spacing:-.035em;
}
.home-service-heading p{
  margin:8px 0 0;
  color:#768792;
  font-size:.70rem;
  line-height:1.45;
}
.home-service-season{
  flex:0 0 auto;
  padding:7px 10px;
  border:1px solid #d4dee5;
  border-radius:999px;
  color:#536674;
  background:#fff;
  font-size:.59rem;
  font-weight:900;
}

/* sportovní servis: jasné tři bloky stejné váhy */
.home-final .home-sport{
  margin-top:0!important;
  gap:11px!important;
}
.home-final .home-team-switch{
  min-height:54px!important;
  border-radius:11px 11px 5px 5px!important;
}
.home-final .sport-feature-card{
  overflow:hidden;
  border-radius:11px!important;
}
.home-final .sport-feature-card:after{
  opacity:.55;
}
.home-final .last-result-card{
  border-top:3px solid rgba(255,255,255,.09)!important;
}
.home-final .next-match-card{
  border-top:3px solid #ff263d!important;
}
.home-final .table-feature-card{
  border-top:3px solid #365aff!important;
}
.home-final .sport-card-top{
  min-height:48px!important;
}
.home-final .sport-card-top>span:first-child,
.home-final .sport-card-top>a{
  font-size:.75rem!important;
}

/* sekce mají jednotný rytmus a stejné nadpisy */
.home-final .section{
  padding-top:39px!important;
}
.home-final-heading{
  align-items:flex-end!important;
  margin-bottom:14px!important;
}
.home-final-heading h2{
  margin-top:5px!important;
  font-size:2rem!important;
  letter-spacing:-.035em!important;
}
.home-final-heading p{
  max-width:570px;
  margin:7px 0 0!important;
  color:#778993!important;
  font-size:.70rem!important;
  line-height:1.45!important;
}
.home-final .text-link{
  font-size:.66rem!important;
  font-weight:900!important;
}

/* Aktuality: čisté bílé karty, minimum efektů */
.home-final #homeNews.news-grid{
  gap:11px!important;
}
.home-final #homeNews .news-card{
  border:1px solid #d9e2e8!important;
  border-radius:11px!important;
  box-shadow:0 8px 24px rgba(5,21,35,.045)!important;
}
.home-final #homeNews .news-card:hover{
  transform:translateY(-2px);
  box-shadow:0 13px 30px rgba(5,21,35,.075)!important;
}
.home-final #homeNews .news-body{
  padding:15px!important;
}
.home-final #homeNews .news-body h3{
  font-size:1.02rem!important;
  line-height:1.18!important;
}
.home-final #homeNews .news-body p{
  font-size:.70rem!important;
  line-height:1.5!important;
}

/* Program + čísla: praktický blok, ne dashboard */
.home-final .home-quick-grid{
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)!important;
  gap:11px!important;
  padding-top:32px!important;
}
.home-final .home-upcoming-panel{
  padding:18px 18px 12px!important;
  border:1px solid #d8e2e8!important;
  box-shadow:0 8px 24px rgba(5,21,35,.04)!important;
}
.home-final .home-upcoming-panel .compact-heading p{
  margin:4px 0 0;
  color:#8796a0;
  font-size:.60rem!important;
  font-weight:750;
}
.home-final .light-fixtures .fixture{
  min-height:60px!important;
}
.home-final .light-fixtures .fixture-date,
.home-final .light-fixtures .fixture-time{
  font-size:.72rem!important;
}
.home-final .light-fixtures .fixture-teams{
  font-size:.76rem!important;
  line-height:1.3!important;
}
.home-final .home-club-stats{
  box-shadow:0 10px 28px rgba(4,20,32,.10)!important;
}
.home-final .club-stat{
  min-height:142px!important;
}
.home-final .club-stat small{
  font-size:.63rem!important;
}

/* Týmy: stejné rozměry, méně dekorací */
.home-final #homeTeams.team-grid{
  gap:10px!important;
}
.home-final #homeTeams .team-card{
  min-height:196px!important;
  border-radius:11px!important;
  box-shadow:0 8px 24px rgba(5,21,35,.045)!important;
}
.home-final #homeTeams .team-card:hover{
  transform:translateY(-2px);
}

/* Výsledky: jen čtyři, protože hlavní poslední výsledek už je výše */
.home-final #homeResults{
  display:grid;
  gap:8px;
}
.home-final #homeResults .match-row{
  min-height:78px!important;
  border-radius:9px!important;
}

/* Klubová výzva */
.home-club-cta{
  min-height:190px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:42px;
  padding:28px 32px;
  overflow:hidden;
  border-radius:14px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 20%,rgba(54,90,255,.17),transparent 29%),
    radial-gradient(circle at 10% 100%,rgba(255,38,61,.13),transparent 34%),
    #061522;
}
.home-club-cta-copy>span{
  color:#ff5266;
  font-size:.54rem;
  font-weight:950;
  letter-spacing:.14em;
}
.home-club-cta-copy h2{
  max-width:680px;
  margin:7px 0 0;
  color:#fff;
  font-size:2rem;
  line-height:1.03;
  letter-spacing:-.035em;
}
.home-club-cta-copy p{
  max-width:650px;
  margin:10px 0 0;
  color:#92a7b6;
  font-size:.72rem;
  line-height:1.5;
}
.home-club-cta-actions{
  flex:0 0 auto;
  display:flex;
  gap:8px;
}
.home-club-cta-actions .button{
  min-width:120px;
}

/* Partneři jsou záměrně tichý závěr stránky */
.home-partners{
  margin-top:18px;
  margin-bottom:10px;
  padding:15px 17px;
  border:1px solid #dbe3e8;
  border-radius:11px;
  background:#fff;
}
.home-partners-title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-bottom:12px;
  border-bottom:1px solid #e8edf0;
}
.home-partners-title span{
  color:#778994;
  font-size:.54rem;
  font-weight:950;
  letter-spacing:.12em;
}
.home-partners-title a{
  color:#365aff;
  font-size:.59rem;
  font-weight:900;
}
.home-partners-list{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:20px 30px;
  padding:17px 8px 3px;
}
.home-partners-list>a{
  min-width:110px;
  min-height:45px;
  display:grid;
  place-items:center;
  color:#526571;
}
.home-partners-list img{
  max-width:125px;
  max-height:48px;
  object-fit:contain;
  filter:grayscale(.15);
}
.home-partners-list span{
  font-size:.67rem;
  font-weight:850;
}

/* TABLET */
@media(max-width:1000px){
  .home-shortcuts{
    grid-template-columns:repeat(2,1fr);
  }
  .home-shortcuts>a:nth-child(2){
    border-right:0;
  }
  .home-shortcuts>a:nth-child(-n+2){
    border-bottom:1px solid #e5ebef;
  }
  .home-final .home-quick-grid{
    grid-template-columns:1fr!important;
  }
  .home-club-cta{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* MOBILE */
@media(max-width:700px){
  .home-final .hero-v5,
  .home-final .hero-v5 .hero-inner{
    min-height:340px!important;
  }
  .home-final .hero-copy{
    padding:25px 0 35px!important;
  }
  .home-final .hero-copy h1{
    font-size:clamp(2.35rem,11.5vw,3.45rem)!important;
    line-height:.90!important;
  }
  .home-final .hero-copy p{
    margin-top:10px!important;
    font-size:.78rem!important;
  }
  .home-final .hero-actions{
    margin-top:18px!important;
  }

  .home-shortcuts{
    grid-template-columns:repeat(2,1fr);
    margin-top:-16px;
    border-radius:10px;
  }
  .home-shortcuts>a{
    min-height:68px;
    grid-template-columns:24px minmax(0,1fr) 14px;
    gap:7px;
    padding:10px;
  }
  .home-shortcuts strong{font-size:.69rem}
  .home-shortcuts small{font-size:.51rem}

  .home-service-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:9px;
    padding-top:26px;
    padding-bottom:9px;
  }
  .home-service-heading h2{
    font-size:1.62rem;
  }
  .home-service-heading p{
    font-size:.66rem;
  }
  .home-service-season{
    padding:5px 8px;
    font-size:.53rem;
  }

  .home-final .home-sport{
    margin-top:0!important;
  }

  .home-final .section{
    padding-top:30px!important;
  }
  .home-final-heading{
    align-items:flex-start!important;
    gap:8px!important;
  }
  .home-final-heading h2{
    font-size:1.65rem!important;
  }
  .home-final-heading p{
    font-size:.66rem!important;
  }

  .home-final .home-quick-grid{
    padding-top:26px!important;
  }

  .home-final .club-stat-grid{
    grid-template-columns:repeat(3,1fr)!important;
  }
  .home-final .club-stat{
    min-height:110px!important;
    padding:15px 10px!important;
  }
  .home-final .club-stat b{
    font-size:1.75rem!important;
  }
  .home-final .club-stat strong{
    font-size:.57rem!important;
  }
  .home-final .club-stat small{
    display:none;
  }

  .home-club-cta{
    min-height:0;
    margin-top:31px;
    padding:21px 18px;
    border-radius:11px;
  }
  .home-club-cta-copy h2{
    font-size:1.55rem;
  }
  .home-club-cta-copy p{
    font-size:.68rem;
  }
  .home-club-cta-actions{
    width:100%;
  }
  .home-club-cta-actions .button{
    flex:1;
    min-width:0;
  }

  .home-partners{
    margin-top:12px;
    padding:12px;
  }
  .home-partners-list{
    gap:15px 20px;
  }
  .home-partners-list>a{
    min-width:90px;
  }
  .home-partners-list img{
    max-width:105px;
    max-height:40px;
  }
}


/* =====================================================================
   7.8 — PARTNEŘI
   ===================================================================== */

.partners-pro{
  display:grid;
  gap:24px;
}
.partners-tier{
  display:grid;
  gap:11px;
}
.partners-tier-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}
.partners-tier-heading span{
  color:#ff263d;
  font-size:.54rem;
  font-weight:950;
  letter-spacing:.13em;
}
.partners-tier-heading h2{
  margin:4px 0 0;
  color:#07111f;
  font-size:1.55rem;
  letter-spacing:-.03em;
}
.partners-main-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.partners-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.partner-pro-card{
  position:relative;
  min-height:180px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #d9e2e8;
  border-radius:11px;
  color:#07111f;
  background:#fff;
  box-shadow:0 8px 24px rgba(5,21,35,.045);
  transition:transform .15s ease,box-shadow .15s ease;
}
.partner-pro-card:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(5,21,35,.075);
}
.partner-pro-card.large{
  min-height:225px;
  border-top:3px solid #ff263d;
}
.partner-pro-logo{
  min-height:105px;
  display:grid;
  place-items:center;
  padding:18px;
  border-bottom:1px solid #e9eef1;
  background:#fbfcfd;
}
.partner-pro-card.large .partner-pro-logo{
  min-height:130px;
}
.partner-pro-logo img{
  max-width:180px;
  max-height:76px;
  object-fit:contain;
}
.partner-pro-card.large .partner-pro-logo img{
  max-width:240px;
  max-height:92px;
}
.partner-pro-logo>span{
  color:#4c606e;
  font-size:1rem;
  font-weight:950;
  text-align:center;
}
.partner-pro-copy{
  padding:14px 15px 8px;
}
.partner-pro-copy small{
  display:block;
  color:#ff263d;
  font-size:.51rem;
  font-weight:950;
  letter-spacing:.11em;
}
.partner-pro-copy strong{
  display:block;
  margin-top:5px;
  color:#07111f;
  font-size:.90rem;
  line-height:1.2;
}
.partner-pro-card.large .partner-pro-copy strong{
  font-size:1.08rem;
}
.partner-pro-copy p{
  margin:7px 0 0;
  color:#748691;
  font-size:.65rem!important;
  line-height:1.45!important;
}
.partner-pro-card>b{
  margin-top:auto;
  padding:7px 15px 14px;
  color:#365aff;
  font-size:.59rem;
  font-weight:900;
}
.partners-supporter-grid{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
}
.partners-supporter-grid>a{
  min-width:150px;
  min-height:72px;
  display:grid;
  place-items:center;
  padding:12px 16px;
  border:1px solid #dce4e9;
  border-radius:9px;
  color:#667985;
  background:#fff;
}
.partners-supporter-grid img{
  max-width:120px;
  max-height:43px;
  object-fit:contain;
}
.partners-supporter-grid span{
  font-size:.64rem;
  font-weight:850;
  text-align:center;
}

/* Home partner strip – main partner can breathe a little more. */
.home-partners-list>a.main{
  min-width:150px;
}
.home-partners-list>a.main img{
  max-width:145px;
  max-height:54px;
}

@media(max-width:900px){
  .partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .partners-main-grid,
  .partners-grid{grid-template-columns:1fr}
  .partner-pro-card,
  .partner-pro-card.large{min-height:0}
  .partner-pro-logo,
  .partner-pro-card.large .partner-pro-logo{min-height:100px}
  .partners-supporter-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .partners-supporter-grid>a{min-width:0}
}


/* =====================================================================
   7.9 — AKTUALITY FINAL
   ===================================================================== */

/* Page hero */
.news-final-hero{
  min-height:auto!important;
  padding:32px 0 36px!important;
  background:
    radial-gradient(circle at 88% 20%,rgba(54,90,255,.13),transparent 28%),
    radial-gradient(circle at 96% 80%,rgba(255,38,61,.09),transparent 30%),
    linear-gradient(115deg,#020a12,#071725 58%,#0a1d30)!important;
}
.news-final-hero h1{
  margin-top:7px!important;
  color:#fff!important;
  font-size:clamp(2.6rem,4.2vw,4rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
}
.news-final-hero p{
  max-width:590px;
  margin-top:10px!important;
  color:#a8bac7!important;
  font-size:.82rem!important;
  line-height:1.55!important;
}
.news-final-body{
  padding-top:20px!important;
  padding-bottom:34px!important;
}

/* Featured article */
.news-featured-wrap{
  margin:0!important;
}
.news-final-body .news-card-featured{
  min-height:365px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr)!important;
  overflow:hidden;
  border:1px solid #d6e0e6!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 13px 34px rgba(5,21,35,.075)!important;
}
.news-final-body .news-card-featured .news-image{
  min-height:365px!important;
  aspect-ratio:auto!important;
  border-radius:0!important;
}
.news-final-body .news-card-featured .news-image img{
  width:100%;
  height:100%;
  min-height:365px;
  object-fit:cover;
}
.news-final-body .news-card-featured .news-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px 30px!important;
}
.news-featured-kicker{
  margin:18px 0 0;
  color:#ff263d;
  font-size:.54rem;
  font-weight:1000;
  letter-spacing:.14em;
}
.news-final-body .news-card-featured h3{
  max-width:520px;
  margin:9px 0 0!important;
  color:#07111f!important;
  font-size:clamp(1.75rem,2.8vw,2.65rem)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
.news-final-body .news-card-featured p{
  max-width:520px;
  margin:14px 0 0!important;
  color:#647783!important;
  font-size:.79rem!important;
  line-height:1.62!important;
}
.news-final-body .news-card-featured .news-read{
  margin-top:22px!important;
  color:#365aff!important;
  font-size:.67rem!important;
  font-weight:950!important;
}
.news-final-body .news-card-featured:hover{
  transform:none!important;
  box-shadow:0 16px 40px rgba(5,21,35,.10)!important;
}

/* Meta labels */
.news-final-body .news-date{
  color:#738590!important;
  font-size:.66rem!important;
  font-weight:800!important;
}
.news-final-body .news-source{
  padding:5px 7px!important;
  font-size:.52rem!important;
}
.news-final-body .news-card-meta{
  min-height:24px;
}

/* Archive */
.news-final-archive{
  margin-top:36px!important;
}
.news-final-heading{
  align-items:flex-end!important;
  margin-bottom:14px!important;
  padding-bottom:12px;
  border-bottom:1px solid #dbe3e8;
}
.news-final-heading h2{
  margin:5px 0 0!important;
  color:#07111f!important;
  font-size:1.85rem!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
.news-final-heading p{
  margin:7px 0 0!important;
  color:#81919b!important;
  font-size:.68rem!important;
}
.news-pro-count{
  min-width:75px;
  padding:6px 9px!important;
  border:1px solid #d6e0e6;
  border-radius:999px;
  color:#617480!important;
  background:#fff;
  font-size:.58rem!important;
  font-weight:900!important;
  text-align:center;
}

.news-grid-page{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:11px!important;
}
.news-grid-page .news-card{
  min-height:310px!important;
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(5,21,35,.04)!important;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.news-grid-page .news-card:hover{
  transform:translateY(-2px)!important;
  border-color:#c8d4dc!important;
  box-shadow:0 13px 30px rgba(5,21,35,.07)!important;
}
.news-grid-page .news-image{
  height:176px!important;
  min-height:176px!important;
  aspect-ratio:auto!important;
  border-radius:0!important;
}
.news-grid-page .news-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.news-grid-page .news-body{
  min-height:132px;
  display:flex;
  flex-direction:column;
  padding:14px 15px 15px!important;
}
.news-grid-page .news-body h3{
  margin:8px 0 0!important;
  color:#07111f!important;
  font-size:1rem!important;
  line-height:1.18!important;
  letter-spacing:-.015em!important;
}
.news-grid-page .news-body p{
  margin:9px 0 0!important;
  color:#73858f!important;
  font-size:.68rem!important;
  line-height:1.5!important;
}
.news-grid-page .news-read{
  margin-top:auto!important;
  padding-top:12px;
  color:#365aff!important;
  font-size:.62rem!important;
  font-weight:950!important;
}

/* Article pagebar */
.article-pro-pagebar{
  min-height:auto!important;
  padding:14px 0 15px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  background:#061522!important;
}
.article-pro-pagebar-inner{
  min-height:34px;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
}
.article-pro-pagebar .back-link{
  color:#d7e1e8!important;
  font-size:.65rem!important;
  font-weight:850!important;
}
.article-pro-pagebar .section-kicker{
  padding-left:14px;
  border-left:1px solid rgba(255,255,255,.12);
  color:#ff5367!important;
  font-size:.55rem!important;
}

/* Article canvas */
#view-article{
  background:#f4f6f8!important;
}
.article-pro-body{
  padding-top:27px!important;
  padding-bottom:38px!important;
}
.article-pro{
  max-width:1120px;
  margin:0 auto;
}
.article-pro-header{
  max-width:900px;
  margin:0 auto 23px!important;
  text-align:left!important;
}
.article-pro-kicker{
  color:#ff263d!important;
  font-size:.55rem!important;
  font-weight:1000!important;
  letter-spacing:.14em!important;
}
.article-pro-header h1{
  max-width:880px;
  margin:9px 0 0!important;
  color:#07111f!important;
  font-size:clamp(2.55rem,4.9vw,4.6rem)!important;
  line-height:.94!important;
  letter-spacing:-.048em!important;
}
.article-pro-meta{
  display:flex!important;
  flex-wrap:wrap;
  gap:8px 17px!important;
  margin-top:15px!important;
  color:#788a95!important;
  font-size:.69rem!important;
}
.article-pro-meta span{
  position:relative;
  padding-left:16px;
}
.article-pro-meta span:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#ff263d;
  transform:translateY(-50%);
}
.article-pro-lead{
  max-width:800px;
  margin:21px 0 0!important;
  color:#354b58!important;
  font-size:1.08rem!important;
  line-height:1.62!important;
  font-weight:650!important;
}
.article-pro-cover{
  max-width:1050px;
  margin:0 auto 27px!important;
  overflow:hidden;
  border-radius:13px!important;
  background:#dfe6eb;
  box-shadow:0 10px 28px rgba(5,21,35,.06);
}
.article-pro-cover img{
  width:100%;
  max-height:620px;
  object-fit:cover;
  display:block;
}

/* Article reading layout */
.article-pro-layout{
  max-width:1000px!important;
  grid-template-columns:minmax(0,1fr) 220px!important;
  gap:42px!important;
  margin:0 auto!important;
  align-items:start;
}
.article-pro-copy{
  max-width:720px!important;
}
.article-pro-copy p{
  margin:0 0 1.45em!important;
  color:#314650!important;
  font-size:1rem!important;
  line-height:1.78!important;
}
.article-pro-copy p:first-child:first-letter{
  float:none!important;
  margin:0!important;
  color:inherit!important;
  font-size:inherit!important;
  line-height:inherit!important;
  font-weight:inherit!important;
}
.article-pro-side{
  position:sticky!important;
  top:110px;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.article-pro-sidebox,
.article-share,
.article-source-link{
  min-height:54px!important;
  border-radius:9px!important;
}
.article-pro-sidebox{
  padding:11px 12px!important;
  border:1px solid #d9e2e8!important;
  background:#fff!important;
}
.article-pro-sidebox span{
  color:#ff263d!important;
  font-size:.54rem!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
.article-pro-sidebox strong{
  margin-top:5px!important;
  color:#334a56!important;
  font-size:.68rem!important;
  line-height:1.4!important;
}
.article-share{
  border:1px solid #ced9e0!important;
  color:#07111f!important;
  background:#fff!important;
  font-size:.68rem!important;
  font-weight:950!important;
}
.article-share:hover{
  border-color:#365aff!important;
  color:#365aff!important;
}
.article-source-link{
  font-size:.64rem!important;
}

/* Article navigation */
.article-pro-nav{
  max-width:1000px!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin:42px auto 0!important;
  padding-top:18px!important;
}
.article-pro-nav-link{
  min-height:96px!important;
  padding:14px 16px!important;
  border:1px solid #d8e1e7!important;
  border-radius:10px!important;
  background:#fff!important;
}
.article-pro-nav-link span{
  font-size:.54rem!important;
}
.article-pro-nav-link strong{
  margin-top:7px!important;
  font-size:.78rem!important;
  line-height:1.38!important;
}
.article-pro-back{
  margin-top:17px!important;
}
.article-pro-back a{
  font-size:.67rem!important;
}

/* Tablet */
@media(max-width:950px){
  .news-final-body .news-card-featured{
    grid-template-columns:1fr 1fr!important;
  }
  .news-grid-page{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .article-pro-layout{
    gap:25px!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .news-final-hero{
    padding:25px 0 28px!important;
  }
  .news-final-hero h1{
    font-size:2.55rem!important;
  }
  .news-final-hero p{
    font-size:.76rem!important;
  }
  .news-final-body{
    padding-top:13px!important;
  }

  .news-final-body .news-card-featured{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
  }
  .news-final-body .news-card-featured .news-image{
    min-height:0!important;
    height:auto!important;
    aspect-ratio:16/9!important;
  }
  .news-final-body .news-card-featured .news-image img{
    min-height:0!important;
  }
  .news-final-body .news-card-featured .news-body{
    padding:17px!important;
  }
  .news-featured-kicker{
    margin-top:12px;
    font-size:.50rem;
  }
  .news-final-body .news-card-featured h3{
    font-size:1.55rem!important;
    line-height:1.05!important;
  }
  .news-final-body .news-card-featured p{
    font-size:.74rem!important;
  }
  .news-final-body .news-card-featured .news-read{
    margin-top:16px!important;
  }

  .news-final-archive{
    margin-top:27px!important;
  }
  .news-final-heading{
    align-items:flex-start!important;
    gap:8px!important;
  }
  .news-final-heading h2{
    font-size:1.55rem!important;
  }
  .news-final-heading p{
    font-size:.64rem!important;
  }
  .news-grid-page{
    grid-template-columns:1fr!important;
  }
  .news-grid-page .news-card{
    min-height:0!important;
  }
  .news-grid-page .news-image{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
  }
  .news-grid-page .news-body{
    min-height:0!important;
  }

  .article-pro-pagebar{
    padding:10px 0!important;
  }
  .article-pro-pagebar-inner{
    overflow:visible!important;
    white-space:normal!important;
  }
  .article-pro-body{
    padding-top:19px!important;
  }
  .article-pro-header{
    margin-bottom:17px!important;
  }
  .article-pro-header h1{
    font-size:clamp(2.2rem,11vw,3.25rem)!important;
    line-height:.94!important;
  }
  .article-pro-meta{
    margin-top:12px!important;
    font-size:.64rem!important;
  }
  .article-pro-lead{
    margin-top:16px!important;
    font-size:.94rem!important;
    line-height:1.6!important;
  }
  .article-pro-cover{
    margin-bottom:20px!important;
    border-radius:10px!important;
  }
  .article-pro-layout{
    display:block!important;
  }
  .article-pro-copy{
    max-width:none!important;
  }
  .article-pro-copy p{
    font-size:.94rem!important;
    line-height:1.72!important;
  }
  .article-pro-side{
    position:static!important;
    grid-template-columns:1fr 1fr!important;
    margin-top:21px!important;
  }
  .article-source-link{
    grid-column:1/-1;
  }
  .article-pro-nav{
    grid-template-columns:1fr!important;
    margin-top:28px!important;
  }
  .article-pro-nav-link.next{
    align-items:flex-start!important;
    text-align:left!important;
  }
}


/* =====================================================================
   8.0 — TÝMY + SOUPISKY FINAL
   ===================================================================== */

/* ---------------------------------------------------------------
   Přehled týmů
   --------------------------------------------------------------- */
.teams-final-hero,
.players-final-hero{
  min-height:auto!important;
  padding:31px 0 35px!important;
  background:
    radial-gradient(circle at 88% 22%,rgba(54,90,255,.13),transparent 29%),
    radial-gradient(circle at 96% 78%,rgba(255,38,61,.09),transparent 29%),
    linear-gradient(115deg,#020a12,#071725 58%,#0a1d30)!important;
}
.teams-final-hero h1,
.players-final-hero h1{
  margin-top:7px!important;
  color:#fff!important;
  font-size:clamp(2.65rem,4.2vw,4rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
}
.teams-final-hero p,
.players-final-hero p{
  max-width:720px;
  margin-top:10px!important;
  color:#a8bac7!important;
  font-size:.82rem!important;
  line-height:1.55!important;
}

.teams-final-body{
  padding-top:18px!important;
}
.teams-final-intro{
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  margin-bottom:12px;
  padding:12px 15px;
  border:1px solid #d8e2e8;
  border-radius:10px;
  background:#fff;
}
.teams-final-intro>div{
  flex:0 0 auto;
}
.teams-final-intro span{
  display:block;
  color:#ff263d;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.11em;
}
.teams-final-intro strong{
  display:block;
  margin-top:3px;
  color:#07111f;
  font-size:.88rem;
}
.teams-final-intro p{
  margin:0;
  color:#748690;
  font-size:.68rem;
  line-height:1.45;
}

.teams-final-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.team-final-card{
  min-height:244px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(5,21,35,.045)!important;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.team-final-card:hover{
  transform:translateY(-2px);
  border-color:#c4d1d9!important;
  box-shadow:0 14px 32px rgba(5,21,35,.075)!important;
}
.team-final-card .team-card-top{
  min-height:94px!important;
  padding:14px 15px!important;
  border-bottom:1px solid #e8edf0!important;
  background:
    radial-gradient(circle at 90% 10%,rgba(54,90,255,.07),transparent 32%),
    #fbfcfd!important;
}
.team-final-card .team-code{
  font-size:2.55rem!important;
  letter-spacing:-.07em!important;
}
.team-final-card .team-code-block small{
  font-size:.55rem!important;
}
.team-final-card .team-card-club-logo img,
.team-final-card .team-card-club-logo .logo-placeholder{
  width:60px!important;
  height:60px!important;
}
.team-final-card .team-card-copy{
  padding:13px 15px 10px!important;
}
.team-final-season{
  color:#ff263d;
  font-size:.51rem;
  font-weight:950;
  letter-spacing:.08em;
}
.team-final-card .team-card-copy h3{
  margin:5px 0 0!important;
  color:#07111f!important;
  font-size:1.05rem!important;
  line-height:1.12!important;
}
.team-final-card .team-card-copy p{
  margin:7px 0 0!important;
  color:#758691!important;
  font-size:.66rem!important;
  line-height:1.45!important;
}
.team-final-card-bottom{
  min-height:45px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  padding:9px 15px 11px;
  border-top:1px solid #edf1f3;
}
.team-final-card-bottom span{
  color:#85949e;
  font-size:.58rem;
  font-weight:800;
}
.team-final-card-bottom strong{
  color:#365aff;
  font-size:.61rem;
  font-weight:950;
}

/* ---------------------------------------------------------------
   Detail týmu
   --------------------------------------------------------------- */
.team-final-hero{
  min-height:auto!important;
  padding-bottom:27px!important;
}
.team-final-hero .back-link{
  margin-bottom:16px!important;
}
.team-final-hero .team-pro-hero-grid{
  align-items:center!important;
  gap:25px!important;
}
.team-final-hero .team-pro-code{
  min-width:76px!important;
  color:#ff263d!important;
  font-size:4.6rem!important;
  line-height:.83!important;
  letter-spacing:-.08em!important;
}
.team-final-hero .team-pro-title-line h1{
  color:#fff!important;
  font-size:clamp(2.5rem,4.4vw,4.15rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
}
.team-final-hero #teamCompetitions{
  max-width:760px;
  margin-top:8px!important;
  color:#a7bac7!important;
  font-size:.75rem!important;
  line-height:1.45!important;
}
.team-final-hero .team-competition-chips{
  margin-top:15px!important;
  gap:7px!important;
}
.team-final-hero .team-competition-chips a{
  min-height:42px!important;
  padding:7px 10px!important;
  border-radius:8px!important;
  font-size:.64rem!important;
}
.team-final-hero .team-competition-chips a small{
  font-size:.54rem!important;
}
.team-final-hero .team-hero-identity{
  min-width:250px;
  border-radius:12px!important;
  background:rgba(255,255,255,.035)!important;
  border:1px solid rgba(255,255,255,.07)!important;
}
.team-final-hero .team-hero-crest img,
.team-final-hero .team-hero-crest .logo-placeholder{
  width:102px!important;
  height:102px!important;
}
.team-final-hero .team-hero-meta span{
  font-size:.52rem!important;
}
.team-final-hero .team-hero-meta strong{
  font-size:1.05rem!important;
}
.team-final-hero .team-hero-meta small{
  font-size:.58rem!important;
}

.team-final-body{
  padding-top:17px!important;
}
.team-final-body .team-summary-grid{
  gap:9px!important;
}
.team-final-body .team-summary-card{
  min-height:112px!important;
  padding:14px 15px!important;
  border:1px solid #d8e2e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,21,35,.035)!important;
}
.team-final-body .team-summary-card>span{
  color:#ff263d!important;
  font-size:.53rem!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
}
.team-final-body .team-summary-card>strong{
  margin-top:7px!important;
  color:#07111f!important;
  font-size:1.65rem!important;
  line-height:1!important;
}
.team-final-body .team-summary-card>small{
  margin-top:6px!important;
  color:#82919b!important;
  font-size:.62rem!important;
}
.team-final-body .team-form{
  margin-top:8px!important;
}
.team-final-body .team-form b{
  width:29px!important;
  height:29px!important;
  font-size:.60rem!important;
}

/* Last/next match: equal visual weight, next match gets red accent */
.team-final-body .team-featured-grid{
  gap:10px!important;
  margin-top:11px!important;
}
.team-final-body .team-feature-card{
  overflow:hidden;
  border:1px solid #172d3e!important;
  border-radius:11px!important;
  background:#061522!important;
  box-shadow:0 9px 25px rgba(5,21,35,.07)!important;
}
.team-final-body .team-feature-card:nth-child(2){
  border-top:3px solid #ff263d!important;
}
.team-final-body .team-feature-head{
  min-height:46px!important;
  padding:9px 13px!important;
}
.team-final-body .team-feature-head>span{
  font-size:.58rem!important;
  letter-spacing:.08em!important;
}
.team-final-body .team-feature-head>strong{
  font-size:.55rem!important;
}
.team-final-body .team-feature-head>strong.next{
  color:#ff5367!important;
}
.team-final-body .team-feature-card .match-large{
  min-height:198px!important;
}

/* Content layout */
.team-final-body .team-content-layout{
  grid-template-columns:minmax(0,1fr) 330px!important;
  gap:11px!important;
  margin-top:11px!important;
}
.team-final-body .team-main-column{
  display:grid;
  gap:10px!important;
}
.team-final-body .team-section-card,
.team-final-body .team-roster-card{
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  box-shadow:0 6px 20px rgba(5,21,35,.03)!important;
}
.team-final-body .team-section-title{
  min-height:50px!important;
  padding:10px 13px!important;
  border-bottom:1px solid #e4eaee!important;
}
.team-final-body .team-section-title>span{
  color:#07111f!important;
  font-size:.80rem!important;
  font-weight:950!important;
}
.team-final-body .team-section-title>a,
.team-final-body .team-section-title>small{
  font-size:.61rem!important;
  font-weight:900!important;
}
.team-final-body .team-match-list{
  padding:8px!important;
}
.team-final-body .team-match-list .match-row{
  border-radius:8px!important;
}

/* Roster */
.team-final-body .team-roster-card{
  position:sticky;
  top:105px;
}
.team-final-body .team-roster-grid{
  max-height:740px;
  overflow:auto;
  scrollbar-width:thin;
}
.team-final-body .team-roster-player{
  min-height:76px!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:11px!important;
  padding:10px 11px!important;
  border-bottom:1px solid #edf1f3!important;
}
.team-final-body .team-roster-player:last-child{
  border-bottom:0!important;
}
.team-final-body .team-roster-photo,
.team-final-body .team-roster-photo img,
.team-final-body .team-roster-photo .player-photo-fallback{
  width:52px!important;
  height:52px!important;
}
.team-final-body .team-roster-copy strong{
  color:#07111f!important;
  font-size:.73rem!important;
  line-height:1.2!important;
}
.team-final-body .team-roster-copy span{
  margin-top:5px!important;
  color:#365aff!important;
  font-size:.57rem!important;
  font-weight:850!important;
}

/* ---------------------------------------------------------------
   Samostatný seznam hráčů
   --------------------------------------------------------------- */
.players-final-body{
  padding-top:18px!important;
}
.players-final-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:10px;
  align-items:end;
  margin-bottom:12px;
  padding:13px;
  border:1px solid #d9e2e8;
  border-radius:10px;
  background:#fff;
}
.players-final-filter-wrap>span,
.players-final-search>span{
  display:block;
  margin-bottom:7px;
  color:#6f818c;
  font-size:.56rem!important;
  font-weight:950!important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.players-final-filter-wrap .filter-bar{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
.players-final-filter-wrap .filter-button{
  min-height:36px!important;
  padding:0 10px!important;
  border-radius:7px!important;
  font-size:.62rem!important;
}
.players-final-search{
  display:block!important;
}
.players-final-search input{
  width:100%!important;
  height:40px!important;
  border-radius:8px!important;
  font-size:.72rem!important;
}
.players-final-directory{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
}
.players-final-directory .directory-player{
  min-height:86px!important;
  display:grid!important;
  grid-template-columns:62px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:11px!important;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 6px 19px rgba(5,21,35,.035)!important;
  transition:transform .15s ease,border-color .15s ease;
}
.players-final-directory .directory-player:hover{
  transform:translateY(-1px);
  border-color:#c3d0d8!important;
}
.players-final-directory .directory-photo,
.players-final-directory .directory-photo img,
.players-final-directory .directory-photo .player-photo-fallback{
  width:60px!important;
  height:60px!important;
}
.players-final-directory .directory-player strong{
  display:block;
  color:#07111f!important;
  font-size:.76rem!important;
  line-height:1.2!important;
}
.players-final-directory .directory-player small{
  display:block;
  margin-top:5px!important;
  color:#7b8c96!important;
  font-size:.59rem!important;
  line-height:1.35!important;
}

/* Tablet */
@media(max-width:1000px){
  .teams-final-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .team-final-body .team-content-layout{
    grid-template-columns:1fr!important;
  }
  .team-final-body .team-roster-card{
    position:static;
  }
  .team-final-body .team-roster-grid{
    max-height:none;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .players-final-directory{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .teams-final-hero,
  .players-final-hero{
    padding:25px 0 28px!important;
  }
  .teams-final-hero h1,
  .players-final-hero h1{
    font-size:2.55rem!important;
  }
  .teams-final-hero p,
  .players-final-hero p{
    font-size:.76rem!important;
  }

  .teams-final-intro{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
    min-height:0;
  }
  .teams-final-intro p{
    font-size:.64rem;
  }
  .teams-final-grid{
    grid-template-columns:1fr!important;
  }
  .team-final-card{
    min-height:220px!important;
  }

  .team-final-hero{
    padding-bottom:22px!important;
  }
  .team-final-hero .team-pro-hero-grid{
    display:block!important;
  }
  .team-final-hero .team-pro-title-line{
    align-items:flex-end!important;
    gap:12px!important;
  }
  .team-final-hero .team-pro-code{
    min-width:54px!important;
    font-size:3.5rem!important;
  }
  .team-final-hero .team-pro-title-line h1{
    font-size:2.25rem!important;
  }
  .team-final-hero #teamCompetitions{
    font-size:.70rem!important;
  }
  .team-final-hero .team-hero-identity{
    display:none!important;
  }
  .team-final-hero .team-competition-chips{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding-bottom:3px!important;
    scrollbar-width:none!important;
  }
  .team-final-hero .team-competition-chips::-webkit-scrollbar{display:none}

  .team-final-body .team-summary-grid{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  .team-final-body .team-summary-card{
    min-height:98px!important;
    padding:12px!important;
  }
  .team-final-body .team-summary-card>strong{
    font-size:1.4rem!important;
  }

  .team-final-body .team-featured-grid{
    grid-template-columns:1fr!important;
  }
  .team-final-body .team-feature-card .match-large{
    min-height:185px!important;
  }

  .team-final-body .team-section-title>span{
    font-size:.75rem!important;
  }
  .team-final-body .team-roster-grid{
    grid-template-columns:1fr!important;
  }

  .players-final-toolbar{
    grid-template-columns:1fr;
    padding:10px;
  }
  .players-final-filter-wrap .filter-bar{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding-bottom:3px;
    scrollbar-width:none;
  }
  .players-final-filter-wrap .filter-bar::-webkit-scrollbar{display:none}
  .players-final-filter-wrap .filter-button{
    flex:0 0 auto;
  }
  .players-final-directory{
    grid-template-columns:1fr!important;
  }
}


/* =====================================================================
   8.1 — PROGRAM + VÝSLEDKY + DETAIL ZÁPASU FINAL
   ===================================================================== */

/* ---------------------------------------------------------------
   Program / Výsledky
   --------------------------------------------------------------- */
.matches-final-hero{
  min-height:auto!important;
  padding:31px 0 35px!important;
  background:
    radial-gradient(circle at 88% 22%,rgba(54,90,255,.13),transparent 29%),
    radial-gradient(circle at 96% 78%,rgba(255,38,61,.09),transparent 29%),
    linear-gradient(115deg,#020a12,#071725 58%,#0a1d30)!important;
}
.matches-final-hero h1{
  margin-top:7px!important;
  color:#fff!important;
  font-size:clamp(2.65rem,4.2vw,4rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
}
.matches-final-hero p{
  max-width:720px;
  margin-top:10px!important;
  color:#a8bac7!important;
  font-size:.82rem!important;
  line-height:1.55!important;
}

.matches-final-body{
  padding-top:18px!important;
  padding-bottom:36px!important;
}
.matches-control-panel{
  overflow:hidden;
  margin-bottom:23px;
  border:1px solid #d8e2e8;
  border-radius:11px;
  background:#fff;
  box-shadow:0 7px 22px rgba(5,21,35,.035);
}
.matches-control-head{
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  padding:12px 14px;
  border-bottom:1px solid #e4eaee;
  background:#fbfcfd;
}
.matches-control-head>div>span{
  display:block;
  color:#ff263d;
  font-size:.51rem;
  font-weight:950;
  letter-spacing:.10em;
}
.matches-control-head>div>strong{
  display:block;
  margin-top:4px;
  color:#07111f;
  font-size:.90rem;
}
.matches-control-head p{
  max-width:480px;
  margin:0;
  color:#7c8d97;
  font-size:.64rem;
  line-height:1.45;
  text-align:right;
}
.matches-control-group{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  align-items:start;
  gap:10px;
  padding:10px 13px;
  border-bottom:1px solid #edf1f3;
}
.matches-control-group:last-child{
  border-bottom:0;
}
.matches-control-group>span{
  padding-top:10px;
  color:#617480;
  font-size:.55rem;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.matches-control-group .filter-bar{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
.matches-control-group .filter-button{
  min-height:36px!important;
  padding:0 10px!important;
  border-radius:7px!important;
  font-size:.63rem!important;
}
.matches-control-group .filter-button.active{
  box-shadow:none!important;
}

.matches-list-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:10px;
}
.matches-list-heading span{
  display:block;
  color:#ff263d;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.11em;
}
.matches-list-heading h2{
  margin:5px 0 0;
  color:#07111f;
  font-size:1.75rem;
  line-height:1;
  letter-spacing:-.035em;
}
.matches-count{
  padding:6px 9px;
  border:1px solid #d6e0e6;
  border-radius:999px;
  color:#617480;
  background:#fff;
  font-size:.58rem;
  font-weight:900;
}

/* Match list cards */
.matches-final-list{
  display:grid!important;
  gap:8px!important;
}
.matches-final-list .match-row{
  position:relative;
  min-height:94px!important;
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  color:#07111f!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.03)!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.matches-final-list .match-row:hover{
  transform:translateY(-1px);
  border-color:#c3d0d8!important;
  box-shadow:0 10px 24px rgba(5,21,35,.055)!important;
}
.schedule-final-list .match-row{
  border-left:3px solid #ff263d!important;
}
.results-final-list .match-row{
  border-left:3px solid #365aff!important;
}

.matches-final-list .match-row-date{
  color:#536875!important;
  font-size:.70rem!important;
  line-height:1.35!important;
}
.matches-final-list .match-row-date strong{
  display:inline-block;
  margin-top:5px;
  color:#07111f!important;
  font-size:.90rem!important;
}
.matches-final-list .match-row-main{
  align-items:center!important;
}
.matches-final-list .match-row-team{
  color:#07111f!important;
  font-size:.75rem!important;
  font-weight:850!important;
  line-height:1.25!important;
}
.matches-final-list .match-row-team img,
.matches-final-list .match-row-team .logo-placeholder{
  width:42px!important;
  height:42px!important;
}
.matches-final-list .match-row-score{
  min-width:70px;
  color:#07111f!important;
  font-size:1.15rem!important;
  font-weight:1000!important;
  letter-spacing:-.03em;
}
.schedule-final-list .match-row-score{
  color:#788994!important;
  font-size:.88rem!important;
}
.matches-final-list .match-row-comp{
  color:#6e818d!important;
  font-size:.64rem!important;
  line-height:1.4!important;
}
.matches-final-list .match-row-comp>b{
  display:block;
  margin-bottom:3px;
  color:#07111f!important;
  font-size:.68rem!important;
}
.matches-final-list .match-row-comp small{
  margin-top:4px!important;
  color:#9aa7af!important;
  font-size:.57rem!important;
}
.schedule-final-list .schedule-category-badge{
  min-width:72px!important;
  border-right:1px solid #e8edf0;
}
.schedule-final-list .schedule-category-badge strong{
  color:#ff263d!important;
  font-size:1.3rem!important;
}
.schedule-final-list .schedule-category-badge span{
  color:#768894!important;
  font-size:.49rem!important;
}

/* ---------------------------------------------------------------
   Detail zápasu
   --------------------------------------------------------------- */
.match-final-hero{
  min-height:auto!important;
  padding:18px 0 21px!important;
  background:
    radial-gradient(circle at 90% 20%,rgba(54,90,255,.10),transparent 26%),
    linear-gradient(115deg,#020a12,#071725 63%,#091b2c)!important;
}
.match-final-hero .back-link{
  display:inline-flex!important;
  margin-bottom:13px!important;
  color:#c7d4dd!important;
  font-size:.63rem!important;
}
.match-final-hero .section-kicker{
  color:#ff5266!important;
  font-size:.53rem!important;
}
.match-final-hero h1{
  max-width:900px;
  margin-top:6px!important;
  color:#fff!important;
  font-size:clamp(1.8rem,3vw,2.75rem)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
.match-final-hero p{
  max-width:900px;
  margin-top:8px!important;
  color:#9eb1bf!important;
  font-size:.68rem!important;
  line-height:1.45!important;
}
.match-final-body{
  padding-top:14px!important;
  padding-bottom:38px!important;
}

/* Scorecard is the visual center of the match detail */
.match-final-body .match-pro-scorecard{
  max-width:1120px;
  margin:0 auto;
  overflow:hidden;
  padding:0 22px 21px!important;
  border:1px solid #142c3d!important;
  border-top:3px solid #ff263d!important;
  border-radius:13px!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 85% 10%,rgba(54,90,255,.13),transparent 28%),
    radial-gradient(circle at 12% 95%,rgba(255,38,61,.09),transparent 31%),
    #061522!important;
  box-shadow:0 14px 36px rgba(5,21,35,.13)!important;
}
.match-final-body .match-pro-topline{
  min-height:54px!important;
  margin:0 -22px!important;
  padding:10px 15px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
.match-final-body .match-pro-topline>div>span{
  color:#fff!important;
  font-size:.70rem!important;
  font-weight:900!important;
}
.match-final-body .match-pro-topline>div>small{
  margin-top:4px!important;
  color:#8ea3b2!important;
  font-size:.58rem!important;
}
.match-final-body .match-status-badge{
  padding:6px 9px!important;
  font-size:.55rem!important;
}
.match-final-body .match-pro-datetime{
  justify-content:center!important;
  gap:10px!important;
  margin:18px 0 5px!important;
  color:#a9bbc7!important;
  font-size:.68rem!important;
}
.match-final-body .match-pro-datetime strong{
  color:#e8eff4!important;
  font-size:.72rem!important;
}
.match-final-body .match-pro-datetime span{
  padding:5px 8px;
  border-radius:999px;
  color:#fff!important;
  background:rgba(255,255,255,.07);
  font-size:.66rem!important;
  font-weight:900;
}
.match-final-body .match-pro-score{
  max-width:860px;
  margin:0 auto!important;
  padding:15px 0 8px!important;
}
.match-final-body .match-pro-club{
  gap:11px!important;
}
.match-final-body .match-pro-logo img,
.match-final-body .match-pro-logo .logo-placeholder{
  width:92px!important;
  height:92px!important;
}
.match-final-body .match-pro-club>strong{
  max-width:260px;
  color:#fff!important;
  font-size:.82rem!important;
  line-height:1.25!important;
}
.match-final-body .match-pro-result>span{
  color:#fff!important;
  font-size:3rem!important;
  line-height:.9!important;
  letter-spacing:-.06em!important;
}
.match-final-body .match-pro-result>small{
  margin-top:8px!important;
  color:#91a6b5!important;
  font-size:.60rem!important;
}
.match-final-body .match-pro-actions{
  justify-content:center!important;
  gap:6px!important;
  margin-top:14px!important;
}
.match-final-body .match-pro-action{
  min-height:37px!important;
  padding:0 10px!important;
  border-radius:7px!important;
  font-size:.59rem!important;
}

/* Content under the scorecard */
.match-final-body .match-pro-layout{
  max-width:1120px!important;
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:11px!important;
  margin:12px auto 0!important;
}
.match-final-body .match-pro-main{
  display:grid;
  gap:10px!important;
}
.match-final-body .match-pro-side{
  display:grid;
  align-content:start;
  gap:10px!important;
}
.match-final-body .match-pro-section{
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.match-final-body .match-pro-title,
.match-final-body .content-card-title{
  min-height:49px!important;
  padding:10px 13px!important;
  border-bottom:1px solid #e5eaee!important;
}
.match-final-body .match-pro-title>span,
.match-final-body .content-card-title{
  color:#07111f!important;
  font-size:.78rem!important;
  font-weight:950!important;
}
.match-final-body .match-pro-title>small{
  color:#7e909b!important;
  font-size:.58rem!important;
  font-weight:850!important;
}

/* Before / after match summary */
.match-final-body .match-context-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
}
.match-final-body .match-context-grid>div{
  min-height:96px!important;
  padding:14px!important;
  border-right:1px solid #edf1f3!important;
  background:#fff!important;
}
.match-final-body .match-context-grid>div:last-child{
  border-right:0!important;
}
.match-final-body .match-context-grid span{
  color:#ff263d!important;
  font-size:.53rem!important;
  font-weight:950!important;
  letter-spacing:.07em!important;
}
.match-final-body .match-context-grid strong{
  display:block;
  margin-top:7px!important;
  color:#07111f!important;
  font-size:.88rem!important;
  line-height:1.3!important;
}

/* Facts */
.match-final-body .match-pro-facts{
  display:grid!important;
  grid-template-columns:1fr!important;
}
.match-final-body .match-pro-facts>div{
  min-height:62px!important;
  padding:10px 12px!important;
  border-bottom:1px solid #edf1f3!important;
}
.match-final-body .match-pro-facts>div:last-child{
  border-bottom:0!important;
}
.match-final-body .match-pro-facts span{
  color:#788a95!important;
  font-size:.55rem!important;
  font-weight:850!important;
}
.match-final-body .match-pro-facts strong{
  margin-top:4px!important;
  color:#07111f!important;
  font-size:.69rem!important;
  line-height:1.4!important;
}

/* Roster */
.match-final-body .match-roster{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
}
.match-final-body .match-roster-player{
  min-height:78px!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:10px!important;
  padding:10px 12px!important;
  border-right:1px solid #edf1f3!important;
  border-bottom:1px solid #edf1f3!important;
}
.match-final-body .match-roster-player:nth-child(even){
  border-right:0!important;
}
.match-final-body .match-roster-photo,
.match-final-body .match-roster-photo img,
.match-final-body .match-roster-photo .player-photo-fallback{
  width:50px!important;
  height:50px!important;
}
.match-final-body .match-roster-copy strong{
  color:#07111f!important;
  font-size:.71rem!important;
}
.match-final-body .match-roster-copy div{
  margin-top:5px!important;
}

/* Timeline */
.match-final-body .match-timeline-row{
  min-height:58px!important;
  padding:9px 12px!important;
}
.match-final-body .match-event-minute{
  font-size:.70rem!important;
}
.match-final-body .match-event-type{
  font-size:.55rem!important;
}
.match-final-body .match-event-copy strong{
  font-size:.68rem!important;
}
.match-final-body .match-event-copy small{
  font-size:.56rem!important;
}

/* Same-season navigation */
.match-final-body .match-season-nav-grid{
  gap:8px!important;
  padding:9px!important;
}
.match-final-body .match-season-nav-grid>a{
  min-height:82px!important;
  padding:12px!important;
  border:1px solid #dce4e9!important;
  border-radius:8px!important;
  background:#fff!important;
}
.match-final-body .match-season-nav-grid>a>span{
  color:#ff263d!important;
  font-size:.51rem!important;
  font-weight:950!important;
}
.match-final-body .match-season-nav-grid>a>strong{
  margin-top:5px!important;
  color:#07111f!important;
  font-size:.72rem!important;
}
.match-final-body .match-season-nav-grid>a>small{
  margin-top:4px!important;
  color:#788a95!important;
  font-size:.60rem!important;
  line-height:1.35!important;
}

/* Tablet */
@media(max-width:1000px){
  .match-final-body .match-pro-layout{
    grid-template-columns:1fr!important;
  }
  .match-final-body .match-pro-side{
    grid-template-columns:1fr 1fr!important;
  }
  .match-final-body .match-pro-facts{
    grid-template-columns:repeat(2,1fr)!important;
  }
  .match-final-body .match-pro-facts>div{
    border-right:1px solid #edf1f3!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .matches-final-hero{
    padding:25px 0 28px!important;
  }
  .matches-final-hero h1{
    font-size:2.55rem!important;
  }
  .matches-final-hero p{
    font-size:.76rem!important;
  }

  .matches-control-head{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
  .matches-control-head p{
    font-size:.62rem;
    text-align:left;
  }
  .matches-control-group{
    grid-template-columns:1fr;
    gap:5px;
    padding:9px 10px;
  }
  .matches-control-group>span{
    padding-top:0;
  }
  .matches-control-group .filter-bar{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding-bottom:3px;
    scrollbar-width:none;
  }
  .matches-control-group .filter-bar::-webkit-scrollbar{display:none}
  .matches-control-group .filter-button{
    flex:0 0 auto!important;
  }
  .matches-list-heading h2{
    font-size:1.5rem;
  }

  /* Program and result cards: category/date first, match on its own row */
  .matches-final-list .match-row{
    min-height:0!important;
    grid-template-columns:68px minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
  }
  .schedule-final-list .match-row{
    grid-template-columns:54px minmax(0,1fr)!important;
  }
  .schedule-final-list .schedule-category-badge{
    grid-row:1/3;
    min-width:0!important;
    padding-right:7px;
  }
  .matches-final-list .match-row-date{
    grid-column:2;
    font-size:.64rem!important;
  }
  .results-final-list .match-row-date{
    grid-column:1/-1;
  }
  .matches-final-list .match-row-main{
    grid-column:2;
    grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr)!important;
    gap:5px!important;
  }
  .results-final-list .match-row-main{
    grid-column:1/-1;
  }
  .matches-final-list .match-row-team{
    display:grid!important;
    justify-items:center!important;
    gap:5px!important;
    font-size:.62rem!important;
    text-align:center!important;
  }
  .matches-final-list .match-row-team img,
  .matches-final-list .match-row-team .logo-placeholder{
    width:38px!important;
    height:38px!important;
  }
  .matches-final-list .match-row-score{
    min-width:0;
    font-size:1rem!important;
  }
  .matches-final-list .match-row-comp{
    grid-column:2;
    padding-top:3px;
    font-size:.58rem!important;
  }
  .results-final-list .match-row-comp{
    grid-column:1/-1;
    padding-top:6px;
    border-top:1px solid #edf1f3;
  }

  .match-final-hero{
    padding:14px 0 16px!important;
  }
  .match-final-hero h1{
    font-size:1.65rem!important;
  }
  .match-final-hero p{
    font-size:.62rem!important;
  }
  .match-final-body{
    padding-top:10px!important;
  }
  .match-final-body .match-pro-scorecard{
    padding:0 11px 15px!important;
    border-radius:10px!important;
  }
  .match-final-body .match-pro-topline{
    margin:0 -11px!important;
    padding:9px 10px!important;
  }
  .match-final-body .match-pro-topline>div>span{
    font-size:.61rem!important;
  }
  .match-final-body .match-pro-score{
    grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr)!important;
    gap:7px!important;
    padding-top:10px!important;
  }
  .match-final-body .match-pro-logo img,
  .match-final-body .match-pro-logo .logo-placeholder{
    width:65px!important;
    height:65px!important;
  }
  .match-final-body .match-pro-club>strong{
    font-size:.68rem!important;
  }
  .match-final-body .match-pro-result>span{
    font-size:2.1rem!important;
  }
  .match-final-body .match-pro-actions{
    justify-content:flex-start!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    padding-bottom:3px;
    scrollbar-width:none;
  }
  .match-final-body .match-pro-actions::-webkit-scrollbar{display:none}
  .match-final-body .match-pro-action{
    flex:0 0 auto;
  }

  .match-final-body .match-context-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .match-final-body .match-context-grid>div{
    min-height:82px!important;
    border-bottom:1px solid #edf1f3!important;
  }
  .match-final-body .match-context-grid>div:nth-child(even){
    border-right:0!important;
  }

  .match-final-body .match-roster{
    grid-template-columns:1fr!important;
  }
  .match-final-body .match-roster-player{
    border-right:0!important;
  }
  .match-final-body .match-pro-side{
    grid-template-columns:1fr!important;
  }
  .match-final-body .match-pro-facts{
    grid-template-columns:1fr!important;
  }
  .match-final-body .match-pro-facts>div{
    border-right:0!important;
  }
  .match-final-body .match-season-nav-grid{
    grid-template-columns:1fr!important;
  }
}


/* =====================================================================
   8.2 — SOUTĚŽE + TABULKY + HISTORIE FINAL
   ===================================================================== */

/* Unified hero */
.competitions-final-hero,
.competition-final-hero,
.table-final-hero,
.history-final-hero,
.season-final-hero{
  min-height:auto!important;
  padding:31px 0 35px!important;
  background:
    radial-gradient(circle at 88% 22%,rgba(54,90,255,.13),transparent 29%),
    radial-gradient(circle at 96% 78%,rgba(255,38,61,.09),transparent 29%),
    linear-gradient(115deg,#020a12,#071725 58%,#0a1d30)!important;
}
.competition-final-hero,
.season-final-hero{
  padding-top:19px!important;
}
.competitions-final-hero h1,
.competition-final-hero h1,
.table-final-hero h1,
.history-final-hero h1,
.season-final-hero h1{
  margin-top:7px!important;
  color:#fff!important;
  font-size:clamp(2.55rem,4vw,3.9rem)!important;
  line-height:.93!important;
  letter-spacing:-.045em!important;
}
.competition-final-hero h1{
  max-width:900px;
  font-size:clamp(2rem,3.3vw,3rem)!important;
}
.competitions-final-hero p,
.competition-final-hero p,
.table-final-hero p,
.history-final-hero p,
.season-final-hero p{
  max-width:760px;
  margin-top:10px!important;
  color:#a8bac7!important;
  font-size:.80rem!important;
  line-height:1.55!important;
}
.competition-final-hero .back-link,
.season-final-hero .back-link{
  margin-bottom:13px!important;
  color:#c8d5de!important;
  font-size:.63rem!important;
}

/* ---------------------------------------------------------------
   Aktuální soutěže
   --------------------------------------------------------------- */
.competitions-final-body{
  padding-top:18px!important;
  padding-bottom:36px!important;
}
.competitions-final-body .competition-current-season{
  overflow:hidden;
  margin-bottom:15px!important;
  border:1px solid #d8e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(5,21,35,.035)!important;
}
.competitions-final-body .competition-current-season-main{
  min-height:73px!important;
  padding:13px 15px!important;
  background:#fbfcfd!important;
}
.competitions-final-body .competition-current-season-main span{
  color:#ff263d!important;
  font-size:.52rem!important;
  letter-spacing:.10em!important;
}
.competitions-final-body .competition-current-season-main strong{
  margin-top:4px!important;
  color:#07111f!important;
  font-size:1.05rem!important;
}
.competitions-final-body .competition-current-season-main p{
  color:#788a95!important;
  font-size:.67rem!important;
  line-height:1.45!important;
}
.competitions-final-body .competition-current-season>a{
  min-height:43px!important;
  display:flex!important;
  align-items:center!important;
  padding:9px 15px!important;
  border-top:1px solid #e6ecef!important;
  color:#365aff!important;
  font-size:.63rem!important;
  font-weight:900!important;
}

.competition-current-teams{
  display:grid;
  gap:11px!important;
}
.competition-team-section{
  overflow:hidden;
  border:1px solid #d8e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,21,35,.03)!important;
}
.competition-team-identity{
  min-height:72px!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:11px 14px!important;
  border-bottom:1px solid #e5eaee!important;
  background:#fbfcfd!important;
}
.competition-team-code{
  color:#ff263d!important;
  font-size:2.15rem!important;
  line-height:.9!important;
  letter-spacing:-.07em!important;
}
.competition-team-identity>div:nth-child(2)>span{
  color:#7b8d98!important;
  font-size:.52rem!important;
  font-weight:900!important;
}
.competition-team-identity h2{
  margin:4px 0 0!important;
  color:#07111f!important;
  font-size:1rem!important;
}
.competition-team-identity>a{
  color:#365aff!important;
  font-size:.61rem!important;
  font-weight:900!important;
}
.competition-current-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  padding:9px!important;
}
.competition-current-card{
  min-height:153px!important;
  padding:14px!important;
  border:1px solid #dce4e9!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.competition-current-card.league{
  border-top:3px solid #365aff!important;
}
.competition-current-card.cup{
  border-top:3px solid #ff263d!important;
}
.competition-current-card:hover{
  transform:translateY(-1px)!important;
  border-color:#c6d2da!important;
}
.competition-current-card-top{
  font-size:.53rem!important;
}
.competition-kind{
  padding:4px 6px!important;
  border-radius:999px!important;
  font-size:.50rem!important;
  font-weight:950!important;
}
.competition-current-card h3{
  margin:12px 0 0!important;
  color:#07111f!important;
  font-size:.90rem!important;
  line-height:1.2!important;
}
.competition-current-line{
  margin-top:9px!important;
  color:#687b87!important;
  font-size:.64rem!important;
  line-height:1.45!important;
}
.competition-current-link{
  margin-top:auto!important;
  padding-top:13px!important;
  color:#365aff!important;
  font-size:.61rem!important;
  font-weight:900!important;
}

/* ---------------------------------------------------------------
   Detail soutěže
   --------------------------------------------------------------- */
.competition-final-body{
  padding-top:16px!important;
  padding-bottom:38px!important;
}
.competition-final-body .competition-detail-summary{
  gap:8px!important;
  margin-bottom:10px!important;
}
.competition-final-body .competition-detail-stat{
  min-height:108px!important;
  padding:14px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.03)!important;
}
.competition-final-body .competition-detail-stat>span{
  color:#ff263d!important;
  font-size:.52rem!important;
  font-weight:950!important;
}
.competition-final-body .competition-detail-stat>strong{
  margin-top:8px!important;
  color:#07111f!important;
  font-size:1.5rem!important;
  line-height:1!important;
}
.competition-final-body .competition-detail-stat>small{
  margin-top:6px!important;
  color:#7e909b!important;
  font-size:.60rem!important;
}
.competition-final-body .competition-detail-table,
.competition-final-body .competition-match-card{
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.competition-final-body .competition-detail-title{
  min-height:50px!important;
  padding:10px 13px!important;
  border-bottom:1px solid #e5eaee!important;
}
.competition-final-body .competition-detail-title>span{
  color:#07111f!important;
  font-size:.78rem!important;
  font-weight:950!important;
}
.competition-final-body .competition-detail-title>small{
  color:#7c8e99!important;
  font-size:.59rem!important;
}
.competition-inline-tabs{
  gap:5px!important;
}
.competition-inline-tabs button{
  min-height:32px!important;
  padding:0 9px!important;
  border-radius:6px!important;
  font-size:.58rem!important;
}
.competition-match-columns{
  gap:10px!important;
  margin-top:10px!important;
}
.competition-match-list{
  padding:8px!important;
}
.competition-match-list .match-row{
  border-radius:8px!important;
}

/* ---------------------------------------------------------------
   Tabulky – picker as a clear three-step flow
   --------------------------------------------------------------- */
.table-final-body{
  padding-top:18px!important;
  padding-bottom:38px!important;
}
.table-final-body .table-picker{
  overflow:hidden;
  margin-bottom:13px!important;
  border:1px solid #d8e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(5,21,35,.035)!important;
}
.table-final-body .table-picker-row{
  min-height:69px!important;
  padding:10px 13px!important;
  border-bottom:1px solid #e7ecef!important;
}
.table-final-body .table-picker-row:last-child{
  border-bottom:0!important;
}
.table-final-body .table-picker-label{
  min-width:205px!important;
}
.table-final-body .table-picker-label>span{
  width:32px!important;
  height:32px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  color:#fff!important;
  background:#07111f!important;
  font-size:.60rem!important;
  font-weight:950!important;
}
.table-final-body .table-picker-label small{
  color:#ff263d!important;
  font-size:.51rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}
.table-final-body .table-picker-label strong{
  margin-top:3px!important;
  color:#07111f!important;
  font-size:.70rem!important;
}
.table-mode-tabs,
.table-team-selector,
.table-competition-selector,
.table-standing-tabs{
  gap:6px!important;
}
.table-mode-tabs button,
.table-team-selector button,
.table-competition-selector button,
.table-standing-tabs button{
  min-height:36px!important;
  border-radius:7px!important;
  font-size:.61rem!important;
}
.table-team-selector button{
  min-width:94px!important;
}
.table-team-selector button strong{
  font-size:.82rem!important;
}
.table-team-selector button span{
  font-size:.57rem!important;
}
.table-history-season{
  padding:11px 13px!important;
  border-bottom:1px solid #e7ecef!important;
  background:#fbfcfd!important;
}
.table-history-season label{
  color:#687b87!important;
  font-size:.58rem!important;
  font-weight:900!important;
}
.table-history-season select{
  height:38px!important;
  border-radius:7px!important;
  font-size:.66rem!important;
}
.table-result-head{
  min-height:49px!important;
  margin-bottom:8px!important;
}
.table-detail-link{
  font-size:.62rem!important;
  font-weight:900!important;
}
.table-pro-card{
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}

/* Standings readability */
.table-final-body .standings-pro-table thead th,
.competition-final-body .standings-pro-table thead th{
  height:42px!important;
  color:#617480!important;
  background:#f7f9fa!important;
  font-size:.57rem!important;
  font-weight:950!important;
}
.table-final-body .standings-pro-table tbody tr,
.competition-final-body .standings-pro-table tbody tr{
  height:62px!important;
}
.table-final-body .standings-team-name strong,
.competition-final-body .standings-team-name strong{
  font-size:.77rem!important;
}
.table-final-body .standings-team-copy small,
.competition-final-body .standings-team-copy small{
  font-size:.58rem!important;
}
.table-final-body .standings-points strong,
.competition-final-body .standings-points strong{
  font-size:.84rem!important;
}
.standings-pro-table tr.own{
  background:linear-gradient(90deg,rgba(255,38,61,.055),rgba(255,38,61,.018))!important;
}
.standings-team-name em{
  padding:3px 5px!important;
  border-radius:999px!important;
  font-size:.46rem!important;
}

/* ---------------------------------------------------------------
   Historie ročníků
   --------------------------------------------------------------- */
.history-final-body{
  padding-top:18px!important;
  padding-bottom:38px!important;
}
.history-final-body .history-pro-overview{
  gap:8px!important;
  margin-bottom:10px!important;
}
.history-final-body .history-overview-stat{
  min-height:105px!important;
  padding:14px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.03)!important;
}
.history-final-body .history-overview-stat>span{
  color:#ff263d!important;
  font-size:.51rem!important;
  font-weight:950!important;
}
.history-final-body .history-overview-stat>strong{
  margin-top:7px!important;
  color:#07111f!important;
  font-size:1.55rem!important;
}
.history-final-body .history-overview-stat>small{
  color:#7f909a!important;
  font-size:.60rem!important;
}
.history-final-body .history-pro-notice{
  margin:10px 0 13px!important;
  padding:10px 12px!important;
  border:1px solid #d8e2e8!important;
  border-left:3px solid #365aff!important;
  border-radius:8px!important;
  color:#647782!important;
  background:#fff!important;
  font-size:.68rem!important;
  line-height:1.5!important;
}
.history-final-body .history-pro-list{
  gap:8px!important;
}
.history-final-body .history-pro-card{
  min-height:116px!important;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.history-final-body .history-pro-card.current{
  border-left:3px solid #ff263d!important;
}
.history-final-body .history-pro-card-main{
  min-width:160px!important;
}
.history-final-body .history-pro-card-main span{
  color:#ff263d!important;
  font-size:.52rem!important;
}
.history-final-body .history-pro-card-main strong{
  color:#07111f!important;
  font-size:1.3rem!important;
}
.history-final-body .history-pro-card-main small{
  font-size:.59rem!important;
}
.history-final-body .history-pro-card-stats span{
  font-size:.52rem!important;
}
.history-final-body .history-pro-card-stats b{
  font-size:.80rem!important;
}
.history-final-body .history-pro-card-comps span{
  font-size:.55rem!important;
}
.history-final-body .history-pro-card-link{
  color:#365aff!important;
  font-size:.61rem!important;
  font-weight:900!important;
}

/* ---------------------------------------------------------------
   Detail historického ročníku
   --------------------------------------------------------------- */
.season-final-body{
  padding-top:17px!important;
  padding-bottom:38px!important;
}
.season-final-body .season-pro-summary{
  gap:8px!important;
}
.season-final-body .season-pro-summary>div{
  min-height:103px!important;
  padding:13px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.season-final-body .season-pro-summary span{
  color:#ff263d!important;
  font-size:.51rem!important;
}
.season-final-body .season-pro-summary strong{
  margin-top:7px!important;
  color:#07111f!important;
  font-size:1.45rem!important;
}
.season-final-body .season-pro-summary small{
  font-size:.59rem!important;
}
.season-final-body .season-pro-section{
  margin-top:25px!important;
}
.season-final-body .season-pro-heading{
  margin-bottom:10px!important;
}
.season-final-body .season-pro-heading h2{
  margin-top:5px!important;
  color:#07111f!important;
  font-size:1.6rem!important;
  letter-spacing:-.03em!important;
}
.season-final-body .season-pro-heading>small{
  font-size:.61rem!important;
}
.season-final-body .competition-pro-grid{
  gap:9px!important;
}
.season-final-body .competition-pro-card{
  min-height:170px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.season-final-body .season-pro-match-section{
  margin-top:12px!important;
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
}
.season-final-body .season-pro-match-list{
  padding:8px!important;
}

/* Tablet */
@media(max-width:1000px){
  .competition-current-grid{
    grid-template-columns:1fr!important;
  }
  .history-final-body .history-pro-card{
    grid-template-columns:150px minmax(0,1fr)!important;
  }
  .history-final-body .history-pro-card-link{
    grid-column:1/-1;
  }
}

/* Mobile */
@media(max-width:700px){
  .competitions-final-hero,
  .competition-final-hero,
  .table-final-hero,
  .history-final-hero,
  .season-final-hero{
    padding:25px 0 28px!important;
  }
  .competition-final-hero,
  .season-final-hero{
    padding-top:16px!important;
  }
  .competitions-final-hero h1,
  .table-final-hero h1,
  .history-final-hero h1,
  .season-final-hero h1{
    font-size:2.45rem!important;
  }
  .competition-final-hero h1{
    font-size:1.9rem!important;
  }
  .competitions-final-hero p,
  .competition-final-hero p,
  .table-final-hero p,
  .history-final-hero p,
  .season-final-hero p{
    font-size:.75rem!important;
  }

  .competition-team-identity{
    grid-template-columns:48px minmax(0,1fr) auto!important;
    gap:9px!important;
    padding:10px!important;
  }
  .competition-team-code{
    font-size:1.8rem!important;
  }
  .competition-team-identity>a{
    font-size:.55rem!important;
  }
  .competition-current-grid{
    grid-template-columns:1fr!important;
    padding:7px!important;
  }

  .competition-final-body .competition-detail-summary{
    grid-template-columns:1fr 1fr!important;
  }
  .competition-final-body .competition-detail-stat{
    min-height:94px!important;
    padding:11px!important;
  }
  .competition-final-body .competition-detail-stat>strong{
    font-size:1.3rem!important;
  }
  .competition-match-columns{
    grid-template-columns:1fr!important;
  }
  .competition-inline-tabs{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    scrollbar-width:none;
  }
  .competition-inline-tabs::-webkit-scrollbar{display:none}

  .table-final-body .table-picker-row{
    display:block!important;
    padding:10px!important;
  }
  .table-final-body .table-picker-label{
    min-width:0!important;
    margin-bottom:8px!important;
  }
  .table-mode-tabs,
  .table-team-selector,
  .table-competition-selector,
  .table-standing-tabs{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding-bottom:3px;
    scrollbar-width:none;
  }
  .table-mode-tabs::-webkit-scrollbar,
  .table-team-selector::-webkit-scrollbar,
  .table-competition-selector::-webkit-scrollbar,
  .table-standing-tabs::-webkit-scrollbar{display:none}

  .table-result-head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:7px!important;
  }

  .history-final-body .history-pro-overview{
    grid-template-columns:1fr 1fr!important;
  }
  .history-final-body .history-overview-stat{
    min-height:90px!important;
  }
  .history-final-body .history-pro-card{
    display:block!important;
    min-height:0!important;
    padding:13px!important;
  }
  .history-final-body .history-pro-card-main{
    min-width:0!important;
  }
  .history-final-body .history-pro-card-stats{
    margin-top:12px!important;
  }
  .history-final-body .history-pro-card-comps{
    margin-top:10px!important;
  }
  .history-final-body .history-pro-card-link{
    margin-top:12px!important;
  }

  .season-final-body .season-pro-summary{
    grid-template-columns:1fr 1fr!important;
  }
  .season-final-body .season-pro-summary>div:last-child{
    grid-column:1/-1;
  }
  .season-final-body .competition-pro-grid{
    grid-template-columns:1fr!important;
  }
}


/* =====================================================================
   8.3 — KLUB FINAL
   O klubu / historie / vedení / realizační týmy / areál / kontakty
   ===================================================================== */

/* ---------------------------------------------------------------
   Jednotný klubový hero
   --------------------------------------------------------------- */
.club-final-hero{
  min-height:auto!important;
  padding:31px 0 35px!important;
  background:
    radial-gradient(circle at 88% 22%,rgba(54,90,255,.13),transparent 29%),
    radial-gradient(circle at 96% 78%,rgba(255,38,61,.09),transparent 29%),
    linear-gradient(115deg,#020a12,#071725 58%,#0a1d30)!important;
}
.club-final-hero:has(.back-link){
  padding-top:18px!important;
}
.club-final-hero .back-link{
  display:inline-flex!important;
  margin-bottom:13px!important;
  color:#c8d5de!important;
  font-size:.63rem!important;
  font-weight:850!important;
}
.club-final-hero h1{
  max-width:850px;
  margin-top:7px!important;
  color:#fff!important;
  font-size:clamp(2.55rem,4vw,3.9rem)!important;
  line-height:.93!important;
  letter-spacing:-.045em!important;
}
.club-final-hero p{
  max-width:720px;
  margin-top:10px!important;
  color:#a8bac7!important;
  font-size:.80rem!important;
  line-height:1.55!important;
}
.club-final-body{
  padding-top:18px!important;
  padding-bottom:38px!important;
}

/* ---------------------------------------------------------------
   O klubu
   --------------------------------------------------------------- */
.club-final-overview{
  gap:8px!important;
  margin-bottom:11px!important;
}
.club-final-overview .club-overview-card{
  min-height:108px!important;
  padding:14px 15px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.03)!important;
}
.club-final-overview .club-overview-card small{
  color:#ff263d!important;
  font-size:.52rem!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
.club-final-overview .club-overview-card b{
  display:block;
  margin-top:7px!important;
  color:#07111f!important;
  font-size:1.6rem!important;
  line-height:1!important;
}
.club-final-overview .club-overview-card span{
  display:block;
  margin-top:6px!important;
  color:#81919b!important;
  font-size:.62rem!important;
}

.club-final-body .club-pro-layout{
  grid-template-columns:minmax(0,1fr) 355px!important;
  gap:11px!important;
}
.club-final-body .club-pro-copy{
  max-width:none!important;
  padding:24px 26px!important;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,21,35,.03)!important;
}
.club-final-body .club-copy-kicker{
  margin-bottom:13px!important;
  color:#ff263d!important;
  font-size:.53rem!important;
  font-weight:1000!important;
  letter-spacing:.14em!important;
}
.club-final-body .club-pro-copy p,
.club-final-body .club-history-copy p{
  max-width:780px;
  margin:0 0 1.35em!important;
  color:#354b57!important;
  font-size:.94rem!important;
  line-height:1.72!important;
}
.club-final-body .club-pro-copy p:first-of-type,
.club-final-body .club-history-copy p:first-of-type{
  color:#253c49!important;
  font-size:1.02rem!important;
  line-height:1.68!important;
  font-weight:630!important;
}

/* Quick club navigation */
.club-final-body .club-quick-links{
  overflow:hidden;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:start;
  border:1px solid #142c3d!important;
  border-radius:10px!important;
  background:#061522!important;
  box-shadow:0 8px 24px rgba(5,21,35,.07)!important;
}
.club-final-body .club-quick-links>a{
  min-height:72px!important;
  display:grid!important;
  grid-template-columns:31px minmax(0,1fr) 18px!important;
  align-items:center!important;
  gap:10px!important;
  padding:11px 13px!important;
  border-right:0!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  color:#fff!important;
  background:transparent!important;
}
.club-final-body .club-quick-links>a:last-child{
  border-bottom:0!important;
}
.club-final-body .club-quick-links>a:hover{
  background:rgba(255,255,255,.035)!important;
}
.club-final-body .club-quick-links>a>span{
  color:#ff5266!important;
  font-size:.51rem!important;
  font-weight:950!important;
}
.club-final-body .club-quick-links strong{
  color:#fff!important;
  font-size:.72rem!important;
  font-weight:900!important;
}
.club-final-body .club-quick-links small{
  display:block;
  margin-top:4px!important;
  color:#879daa!important;
  font-size:.58rem!important;
  line-height:1.35!important;
}
.club-final-body .club-quick-links>a>b{
  color:#8196a5!important;
}

/* ---------------------------------------------------------------
   Historie klubu
   --------------------------------------------------------------- */
.club-final-body .club-history-copy{
  max-width:920px!important;
  margin:0 auto;
  padding:27px 30px!important;
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-top:3px solid #ff263d!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,21,35,.03)!important;
}
.club-final-body .club-history-founded{
  float:right;
  min-width:150px;
  margin:0 0 20px 25px!important;
  padding:16px!important;
  border:1px solid #dce4e9!important;
  border-radius:9px!important;
  background:#f8fafb!important;
  text-align:center;
}
.club-final-body .club-history-founded span{
  display:block;
  color:#ff263d!important;
  font-size:.52rem!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
.club-final-body .club-history-founded strong{
  display:block;
  margin-top:6px!important;
  color:#07111f!important;
  font-size:1.65rem!important;
}

/* ---------------------------------------------------------------
   Lidé – vedení i realizační týmy
   --------------------------------------------------------------- */
.club-final-body .club-people-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
}
.club-final-body .club-person-card{
  min-height:142px!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  align-items:start!important;
  gap:12px!important;
  padding:14px!important;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.03)!important;
}
.club-final-body .club-person-mark{
  width:56px!important;
  height:56px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  color:#fff!important;
  background:
    linear-gradient(145deg,#ff263d,#c51429)!important;
  font-size:.72rem!important;
  font-weight:950!important;
}
.club-final-body .club-person-copy>span{
  color:#ff263d!important;
  font-size:.53rem!important;
  font-weight:950!important;
  letter-spacing:.07em!important;
  text-transform:uppercase;
}
.club-final-body .club-person-copy h3{
  margin:5px 0 0!important;
  color:#07111f!important;
  font-size:.88rem!important;
  line-height:1.2!important;
}
.club-final-body .club-person-contact{
  display:grid!important;
  gap:6px!important;
  margin-top:12px!important;
}
.club-final-body .club-person-contact a{
  display:block!important;
  padding-top:7px;
  border-top:1px solid #edf1f3;
  color:#365aff!important;
  text-decoration:none!important;
}
.club-final-body .club-person-contact small{
  display:block;
  color:#8a99a3!important;
  font-size:.46rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}
.club-final-body .club-person-contact b{
  display:block;
  margin-top:3px;
  color:#365aff!important;
  font-size:.62rem!important;
  line-height:1.3!important;
  overflow-wrap:anywhere;
}

/* Staff groups */
.club-final-body .club-staff-list{
  display:grid!important;
  gap:11px!important;
}
.club-final-body .club-staff-group{
  overflow:hidden;
  border:1px solid #d8e2e8!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,21,35,.03)!important;
}
.club-final-body .club-staff-heading{
  min-height:77px!important;
  display:grid!important;
  grid-template-columns:60px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:11px 14px!important;
  background:
    radial-gradient(circle at 95% 15%,rgba(54,90,255,.10),transparent 28%),
    #061522!important;
}
.club-final-body .club-staff-heading>span{
  color:#ff5266!important;
  font-size:2.2rem!important;
  line-height:.9!important;
}
.club-final-body .club-staff-heading small{
  color:#ff5266!important;
  font-size:.50rem!important;
}
.club-final-body .club-staff-heading h2{
  margin-top:4px!important;
  color:#fff!important;
  font-size:1rem!important;
}
.club-final-body .club-staff-group .club-people-grid{
  padding:9px!important;
}

/* ---------------------------------------------------------------
   Areál a hřiště
   --------------------------------------------------------------- */
.club-final-body .venue-pro-main{
  grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr)!important;
  gap:11px!important;
}
.club-final-body .venue-pro-photo{
  min-height:410px!important;
  border-radius:11px!important;
  box-shadow:0 7px 22px rgba(5,21,35,.05)!important;
}
.club-final-body .venue-pro-photo img{
  min-height:410px!important;
}
.club-final-body .venue-pro-copy{
  padding:25px!important;
  border:1px solid #d9e2e8!important;
  border-top:3px solid #365aff!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,21,35,.03)!important;
}
.club-final-body .venue-pro-copy>span{
  color:#ff263d!important;
  font-size:.53rem!important;
}
.club-final-body .venue-pro-copy h2{
  margin:7px 0 9px!important;
  color:#07111f!important;
  font-size:1.8rem!important;
  letter-spacing:-.03em!important;
}
.club-final-body .venue-pro-address{
  margin-bottom:17px!important;
  padding:10px 11px!important;
  border:1px solid #dce4e9!important;
  border-radius:8px!important;
  color:#365aff!important;
  background:#f8fafb!important;
  font-size:.68rem!important;
  font-weight:900!important;
}
.club-final-body .venue-pro-copy p{
  color:#485d69!important;
  font-size:.82rem!important;
  line-height:1.68!important;
}
.club-final-body .venue-facilities{
  margin-top:25px!important;
}
.club-final-body .venue-facilities .section-heading{
  margin-bottom:10px!important;
}
.club-final-body .venue-facilities h2{
  font-size:1.55rem!important;
  letter-spacing:-.03em!important;
}
.club-final-body .venue-facility-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
.club-final-body .venue-facility-grid>div{
  min-height:68px!important;
  padding:11px 12px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  background:#fff!important;
}
.club-final-body .venue-facility-grid strong{
  color:#354b57!important;
  font-size:.67rem!important;
}

/* ---------------------------------------------------------------
   Kontakty
   --------------------------------------------------------------- */
.club-contact-heading{
  margin-bottom:10px;
}
.club-contact-heading>span{
  display:block;
  color:#ff263d;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.11em;
}
.club-contact-heading h2{
  margin:5px 0 0;
  color:#07111f;
  font-size:1.6rem;
  letter-spacing:-.03em;
}
.club-final-body .club-contact-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
}
.club-final-body .club-contact-card{
  min-height:128px!important;
  display:flex!important;
  flex-direction:column!important;
  padding:15px!important;
  border:1px solid #d9e2e8!important;
  border-top:3px solid #365aff!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.03)!important;
}
.club-final-body .club-contact-card small{
  color:#ff263d!important;
  font-size:.52rem!important;
}
.club-final-body .club-contact-card strong{
  display:block;
  margin-top:9px!important;
  color:#07111f!important;
  font-size:.78rem!important;
  line-height:1.4!important;
  overflow-wrap:anywhere;
}
.club-final-body .club-contact-card strong a{
  color:#07111f!important;
}
.club-final-body .club-contact-card>span{
  margin-top:auto;
  padding-top:12px;
  color:#365aff;
  font-size:.59rem;
  font-weight:900;
}
.club-final-body .club-contact-extra{
  margin-top:10px!important;
}
.club-final-body .club-contact-note{
  padding:17px!important;
  border:1px solid #d9e2e8!important;
  border-left:3px solid #ff263d!important;
  border-radius:9px!important;
  background:#fff!important;
}
.club-final-body .club-contact-note span{
  color:#ff263d!important;
  font-size:.52rem!important;
}
.club-final-body .club-contact-note p{
  margin-top:8px!important;
  color:#536773!important;
  font-size:.76rem!important;
  line-height:1.6!important;
}

/* Partners page gets the same final rhythm */
.club-final-body .partners-pro{
  gap:25px!important;
}
.club-final-body .partners-tier-heading h2{
  font-size:1.55rem!important;
}

/* ---------------------------------------------------------------
   Empty states
   --------------------------------------------------------------- */
.club-final-body .club-empty{
  min-height:125px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:18px!important;
  border:1px dashed #ccd8df!important;
  border-radius:9px!important;
  color:#70838f!important;
  background:#fbfcfd!important;
}
.club-final-body .club-empty strong{
  color:#07111f!important;
  font-size:.78rem!important;
}
.club-final-body .club-empty p{
  margin:6px 0 0!important;
  font-size:.68rem!important;
}

/* Tablet */
@media(max-width:1000px){
  .club-final-body .club-pro-layout{
    grid-template-columns:1fr!important;
  }
  .club-final-body .club-quick-links{
    grid-template-columns:repeat(2,1fr)!important;
  }
  .club-final-body .club-quick-links>a{
    border-right:1px solid rgba(255,255,255,.07)!important;
  }
  .club-final-body .club-quick-links>a:nth-child(even){
    border-right:0!important;
  }
  .club-final-body .club-people-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .club-final-body .venue-pro-main{
    grid-template-columns:1fr!important;
  }
  .club-final-body .club-contact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .club-final-hero{
    padding:25px 0 28px!important;
  }
  .club-final-hero:has(.back-link){
    padding-top:15px!important;
  }
  .club-final-hero h1{
    font-size:2.45rem!important;
  }
  .club-final-hero p{
    font-size:.75rem!important;
  }

  .club-final-overview{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  .club-final-overview .club-overview-card{
    min-height:94px!important;
    padding:12px!important;
  }
  .club-final-overview .club-overview-card b{
    font-size:1.4rem!important;
  }

  .club-final-body .club-pro-copy,
  .club-final-body .club-history-copy{
    padding:18px!important;
  }
  .club-final-body .club-pro-copy p,
  .club-final-body .club-history-copy p{
    font-size:.88rem!important;
    line-height:1.68!important;
  }
  .club-final-body .club-pro-copy p:first-of-type,
  .club-final-body .club-history-copy p:first-of-type{
    font-size:.94rem!important;
  }
  .club-final-body .club-history-founded{
    float:none;
    min-width:0;
    margin:0 0 17px!important;
  }

  .club-final-body .club-quick-links{
    grid-template-columns:1fr!important;
  }
  .club-final-body .club-quick-links>a{
    border-right:0!important;
  }

  .club-final-body .club-people-grid{
    grid-template-columns:1fr!important;
  }
  .club-final-body .club-person-card{
    min-height:0!important;
  }

  .club-final-body .club-staff-heading{
    grid-template-columns:50px minmax(0,1fr)!important;
  }
  .club-final-body .club-staff-heading>span{
    font-size:1.8rem!important;
  }

  .club-final-body .venue-pro-photo,
  .club-final-body .venue-pro-photo img{
    min-height:230px!important;
  }
  .club-final-body .venue-pro-copy{
    padding:18px!important;
  }
  .club-final-body .venue-pro-copy h2{
    font-size:1.5rem!important;
  }
  .club-final-body .venue-pro-copy p{
    font-size:.78rem!important;
  }
  .club-final-body .venue-facility-grid{
    grid-template-columns:1fr!important;
  }

  .club-final-body .club-contact-grid{
    grid-template-columns:1fr!important;
  }
  .club-final-body .club-contact-card{
    min-height:108px!important;
  }
}


/* =====================================================================
   8.4 — FINÁLNÍ CELOWEBOVÝ PRŮCHOD + NEJLEPŠÍ STŘELCI
   ===================================================================== */

/* ---------------------------------------------------------------
   Nejlepší střelec na kartách družstev
   --------------------------------------------------------------- */
.team-final-card{
  min-height:285px!important;
}
.team-final-scorer{
  min-height:57px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:9px 15px;
  border-top:1px solid #edf1f3;
  background:#fbfcfd;
}
.team-final-scorer>span{
  color:#ff263d;
  font-size:.47rem;
  font-weight:1000;
  letter-spacing:.10em;
}
.team-final-scorer>strong{
  display:block;
  margin-top:4px;
  overflow:hidden;
  color:#07111f;
  font-size:.67rem;
  line-height:1.25;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.team-final-scorer>small{
  display:block;
  margin-top:3px;
  color:#7d8e99;
  font-size:.52rem;
  line-height:1.25;
}

/* Homepage team cards stay compact while still showing the scorer. */
#homeTeams .team-final-card{
  min-height:235px!important;
}
#homeTeams .team-final-scorer{
  min-height:52px;
  padding:8px 12px;
}
#homeTeams .team-final-scorer>strong{
  font-size:.62rem;
}

/* ---------------------------------------------------------------
   Detailed top scorer block on team page
   --------------------------------------------------------------- */
.team-topscorer-panel{
  margin-top:9px;
}
.team-topscorer-card{
  overflow:hidden;
  display:grid;
  grid-template-columns:185px minmax(0,1fr);
  min-height:92px;
  border:1px solid #d8e2e8;
  border-left:3px solid #ff263d;
  border-radius:10px;
  background:#fff;
  box-shadow:0 5px 18px rgba(5,21,35,.03);
}
.team-topscorer-title{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 15px;
  border-right:1px solid #e6ecef;
  background:#fbfcfd;
}
.team-topscorer-title>span{
  color:#ff263d;
  font-size:.52rem;
  font-weight:1000;
  letter-spacing:.10em;
}
.team-topscorer-title>strong{
  display:block;
  margin-top:5px;
  color:#07111f;
  font-size:.68rem;
  line-height:1.35;
}
.team-topscorer-leaders{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
}
.team-topscorer-player{
  min-height:90px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 58px;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-right:1px solid #edf1f3;
  color:#07111f;
}
.team-topscorer-player:last-child{
  border-right:0;
}
.team-topscorer-photo,
.team-topscorer-photo img,
.team-topscorer-photo .player-photo-fallback{
  width:56px!important;
  height:56px!important;
  border-radius:50%!important;
}
.team-topscorer-copy strong{
  display:block;
  color:#07111f;
  font-size:.75rem;
  line-height:1.2;
}
.team-topscorer-copy small{
  display:block;
  margin-top:5px;
  color:#365aff;
  font-size:.55rem;
  line-height:1.3;
  font-weight:850;
}
.team-topscorer-goals{
  text-align:center;
}
.team-topscorer-goals b{
  display:block;
  color:#ff263d;
  font-size:1.7rem;
  line-height:.9;
  letter-spacing:-.05em;
}
.team-topscorer-goals span{
  display:block;
  margin-top:5px;
  color:#7b8d98;
  font-size:.45rem;
  font-weight:950;
  letter-spacing:.08em;
}
.team-topscorer-empty{
  display:flex;
  align-items:center;
  padding:14px 16px;
  color:#758792;
  font-size:.66rem;
  line-height:1.45;
}
.team-topscorer-card.unavailable{
  border-left-color:#aebbc4;
}
.team-topscorer-card.unavailable .team-topscorer-title>span{
  color:#7c8e99;
}
.team-topscorer-card.zero{
  border-left-color:#365aff;
}
.team-topscorer-card.loading{
  opacity:.75;
}

/* ---------------------------------------------------------------
   Player card final
   --------------------------------------------------------------- */
.player-final-hero{
  min-height:auto!important;
  padding:13px 0 14px!important;
  background:#061522!important;
}
.player-final-hero .player-pro-pagebar{
  min-height:34px!important;
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
}
.player-final-hero .back-link{
  color:#d0dce4!important;
  font-size:.63rem!important;
  font-weight:850!important;
}
.player-final-hero .section-kicker{
  padding-left:13px;
  border-left:1px solid rgba(255,255,255,.12);
  color:#ff5266!important;
  font-size:.53rem!important;
}
.player-final-body{
  padding-top:17px!important;
  padding-bottom:38px!important;
}
.player-final-body .player-pro-identity{
  min-height:245px!important;
  overflow:hidden;
  border:1px solid #142c3d!important;
  border-top:3px solid #ff263d!important;
  border-radius:12px!important;
  background:
    radial-gradient(circle at 90% 15%,rgba(54,90,255,.13),transparent 28%),
    #061522!important;
  box-shadow:0 11px 30px rgba(5,21,35,.10)!important;
}
.player-final-body .player-pro-photo{
  background:#0a1c2b!important;
}
.player-final-body .player-pro-photo,
.player-final-body .player-pro-photo img,
.player-final-body .player-pro-photo .player-photo-fallback{
  min-height:242px!important;
}
.player-final-body .player-pro-copy{
  padding:22px!important;
}
.player-final-body .player-pro-copy .section-kicker{
  color:#ff5266!important;
  font-size:.53rem!important;
}
.player-final-body .player-pro-copy h2{
  margin-top:7px!important;
  color:#fff!important;
  font-size:clamp(2rem,3.5vw,3.25rem)!important;
  line-height:.95!important;
  letter-spacing:-.045em!important;
}
.player-final-body .player-pro-copy p{
  margin-top:9px!important;
  color:#9eb1bf!important;
  font-size:.70rem!important;
}
.player-final-body .player-pro-teamchips{
  margin-top:15px!important;
  gap:6px!important;
}
.player-final-body .player-pro-teamchips a,
.player-final-body .player-pro-teamchips span{
  min-height:34px!important;
  padding:0 9px!important;
  border-radius:7px!important;
  font-size:.58rem!important;
}
.player-final-body .player-pro-club{
  padding:18px!important;
  border-left:1px solid rgba(255,255,255,.07)!important;
}
.player-final-body .player-pro-clubcrest img,
.player-final-body .player-pro-clubcrest .logo-placeholder{
  width:82px!important;
  height:82px!important;
}
.player-final-body .player-pro-current-season{
  margin-top:13px!important;
}
.player-final-body .player-pro-current-season>span{
  color:#ff5266!important;
  font-size:.49rem!important;
}
.player-final-body .player-pro-current-season>strong{
  margin-top:5px!important;
  color:#fff!important;
  font-size:.82rem!important;
}
.player-final-body .player-pro-current-season>small{
  margin-top:5px!important;
  color:#8ea3b2!important;
  font-size:.54rem!important;
  line-height:1.35!important;
}

/* Player stats */
.player-final-body .player-pro-statgrid{
  gap:8px!important;
  margin-top:9px!important;
}
.player-final-body .player-pro-stat{
  min-height:101px!important;
  padding:13px!important;
  border:1px solid #d9e2e8!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.player-final-body .player-pro-stat.goal{
  border-top:3px solid #ff263d!important;
}
.player-final-body .player-pro-stat>span{
  color:#ff263d!important;
  font-size:.49rem!important;
}
.player-final-body .player-pro-stat>strong{
  margin-top:7px!important;
  color:#07111f!important;
  font-size:1.45rem!important;
}
.player-final-body .player-pro-stat>small{
  margin-top:5px!important;
  color:#7c8e99!important;
  font-size:.55rem!important;
}

/* Player content cards */
.player-final-body .player-pro-layout{
  grid-template-columns:minmax(0,1fr) 370px!important;
  gap:10px!important;
  margin-top:10px!important;
}
.player-final-body .player-pro-main,
.player-final-body .player-pro-side{
  display:grid;
  align-content:start;
  gap:10px!important;
}
.player-final-body .player-pro-section{
  overflow:hidden;
  border:1px solid #d9e2e8!important;
  border-radius:10px!important;
  box-shadow:0 5px 18px rgba(5,21,35,.025)!important;
}
.player-final-body .player-pro-section-title{
  min-height:49px!important;
  padding:10px 13px!important;
  border-bottom:1px solid #e5eaee!important;
}
.player-final-body .player-pro-section-title>span{
  color:#07111f!important;
  font-size:.76rem!important;
  font-weight:950!important;
}
.player-final-body .player-pro-section-title>small{
  color:#7d8f99!important;
  font-size:.57rem!important;
}
.player-final-body .player-pro-comp-row,
.player-final-body .player-pro-season,
.player-final-body .player-pro-career-row,
.player-final-body .player-pro-transfer{
  border-color:#edf1f3!important;
}
.player-final-body .player-pro-comp-name strong,
.player-final-body .player-pro-season-comps strong,
.player-final-body .player-pro-career-row strong,
.player-final-body .player-pro-transfer strong{
  color:#07111f!important;
  font-size:.67rem!important;
}
.player-final-body .player-pro-comp-name small,
.player-final-body .player-pro-season-comps span,
.player-final-body .player-pro-career-row span,
.player-final-body .player-pro-transfer small,
.player-final-body .player-pro-transfer time{
  color:#7c8e99!important;
  font-size:.55rem!important;
}
.player-final-body .player-pro-history-grid{
  gap:10px!important;
  margin-top:10px!important;
}

/* ---------------------------------------------------------------
   Header / navigation final consistency
   --------------------------------------------------------------- */
.site-header{
  border-bottom:1px solid rgba(255,255,255,.06)!important;
}
.header-main{
  min-height:78px!important;
}
.brand-logo{
  width:54px!important;
  height:54px!important;
}
.brand-copy strong{
  font-size:1.05rem!important;
  letter-spacing:-.015em!important;
}
.brand-copy small{
  font-size:.55rem!important;
  letter-spacing:.08em!important;
}
.main-nav>a,
.nav-group>summary{
  min-height:42px!important;
  padding:0 10px!important;
  border-radius:7px!important;
}
.header-program{
  min-height:38px!important;
  padding:0 12px!important;
  border-radius:7px!important;
}

/* Footer as a calm, useful end to the page. */
.site-footer{
  margin-top:22px!important;
}
.footer-main{
  min-height:142px!important;
  gap:28px!important;
}
.footer-links{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:9px 17px!important;
}
.footer-links a{
  font-size:.67rem!important;
  font-weight:850!important;
}
.footer-status{
  max-width:220px;
  text-align:right;
}

/* ---------------------------------------------------------------
   Mobile final pass
   --------------------------------------------------------------- */
@media(max-width:1000px){
  .player-final-body .player-pro-layout{
    grid-template-columns:1fr!important;
  }
  .team-topscorer-card{
    grid-template-columns:155px minmax(0,1fr);
  }
}
@media(max-width:700px){
  .team-final-card{
    min-height:255px!important;
  }
  #homeTeams .team-final-card{
    min-height:220px!important;
  }
  .team-final-scorer>strong{
    white-space:normal;
  }

  .team-topscorer-card{
    grid-template-columns:1fr!important;
  }
  .team-topscorer-title{
    min-height:58px;
    border-right:0;
    border-bottom:1px solid #e6ecef;
  }
  .team-topscorer-leaders{
    grid-template-columns:1fr!important;
  }
  .team-topscorer-player{
    border-right:0;
    border-bottom:1px solid #edf1f3;
  }
  .team-topscorer-player:last-child{
    border-bottom:0;
  }

  .player-final-hero{
    padding:9px 0!important;
  }
  .player-final-hero .player-pro-pagebar{
    overflow:visible!important;
    white-space:normal!important;
  }
  .player-final-body{
    padding-top:10px!important;
  }
  .player-final-body .player-pro-identity{
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    min-height:0!important;
  }
  .player-final-body .player-pro-photo,
  .player-final-body .player-pro-photo img,
  .player-final-body .player-pro-photo .player-photo-fallback{
    min-height:125px!important;
    height:100%!important;
  }
  .player-final-body .player-pro-copy{
    padding:15px!important;
  }
  .player-final-body .player-pro-copy h2{
    font-size:1.75rem!important;
  }
  .player-final-body .player-pro-club{
    grid-column:1/-1;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    min-height:75px!important;
    padding:11px 13px!important;
    border-left:0!important;
    border-top:1px solid rgba(255,255,255,.07)!important;
  }
  .player-final-body .player-pro-clubcrest img,
  .player-final-body .player-pro-clubcrest .logo-placeholder{
    width:52px!important;
    height:52px!important;
  }
  .player-final-body .player-pro-current-season{
    margin-top:0!important;
  }
  .player-final-body .player-pro-statgrid{
    grid-template-columns:repeat(3,1fr)!important;
  }
  .player-final-body .player-pro-stat:nth-child(4),
  .player-final-body .player-pro-stat:nth-child(5){
    grid-column:auto!important;
  }
  .player-final-body .player-pro-stat{
    min-height:84px!important;
    padding:10px!important;
  }
  .player-final-body .player-pro-stat>strong{
    font-size:1.25rem!important;
  }

  .header-main{
    min-height:62px!important;
  }
  .brand-logo{
    width:42px!important;
    height:42px!important;
  }
  .brand-copy strong{
    font-size:.82rem!important;
  }
  .brand-copy small{
    font-size:.46rem!important;
  }
  .main-nav{
    top:68px!important;
  }
  .mobile-dock{
    min-height:64px!important;
  }
  .mobile-dock a{
    min-height:60px!important;
  }

  .footer-main{
    gap:18px!important;
    text-align:center;
  }
  .footer-links{
    justify-content:center!important;
  }
  .footer-status{
    max-width:none;
    text-align:center;
  }
}


/* =====================================================================
   8.4.1 — OPRAVY DETAILU TÝMU
   ===================================================================== */

/* Program / výsledky / tabulka / soupiska mají tmavou hlavičku:
   text proto musí zůstat světlý. */
.team-final-body .team-section-card>.team-section-title,
.team-final-body .team-roster-card>.team-section-title{
  background:#061522!important;
  border-bottom-color:rgba(255,255,255,.08)!important;
}
.team-final-body .team-section-card>.team-section-title>span,
.team-final-body .team-roster-card>.team-section-title>span{
  color:#fff!important;
}
.team-final-body .team-section-card>.team-section-title>a,
.team-final-body .team-roster-card>.team-section-title>a,
.team-final-body .team-section-card>.team-section-title>small,
.team-final-body .team-roster-card>.team-section-title>small{
  color:#aebdca!important;
}
.team-final-body .team-section-card>.team-section-title>a:hover,
.team-final-body .team-roster-card>.team-section-title>a:hover{
  color:#fff!important;
}

/* "Další zápas" je informační štítek, ne tlačítko. */
.team-final-body .team-feature-head>strong.next{
  color:#d7e3eb!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}

/* Ochrana proti případnému vložení pomocného textu mimo známé části řádku. */
.team-final-body .team-match-list .match-row{
  overflow:hidden!important;
}


/* =====================================================================
   8.6 — JESTŘABÍ LHOTA CLUB DESIGN
   Světlejší, klubovější, méně technický vzhled.
   Základ: modrá + červená + bílá.
   ===================================================================== */

:root{
  --jl-blue:#1554a5;
  --jl-blue-dark:#0d356d;
  --jl-blue-soft:#eaf2fb;
  --jl-red:#d71920;
  --jl-red-dark:#aa1016;
  --jl-red-soft:#fff0f1;
  --jl-ink:#14243a;
  --jl-muted:#6d7e91;
  --jl-line:#dbe3ec;
  --jl-bg:#f4f7fb;
  --jl-card:#ffffff;
  --jl-shadow:0 10px 28px rgba(30,63,101,.07);
}

/* ------------------------------------------------------------------
   Celková plocha
   ------------------------------------------------------------------ */
html,body{
  background:var(--jl-bg)!important;
  color:var(--jl-ink)!important;
}
body{
  letter-spacing:0!important;
}
.wrap{
  max-width:1440px!important;
}

/* ------------------------------------------------------------------
   Horní stavová linka
   ------------------------------------------------------------------ */
.data-status-bar,
.top-status,
.site-status{
  background:#fff!important;
  color:var(--jl-blue-dark)!important;
  border-bottom:1px solid var(--jl-line)!important;
}
.data-status-bar::before,
.top-status::before{
  background:linear-gradient(90deg,var(--jl-red) 0 50%,var(--jl-blue) 50% 100%)!important;
}

/* ------------------------------------------------------------------
   Hlavička – světlá, klubová, přirozenější
   ------------------------------------------------------------------ */
.site-header{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid var(--jl-line)!important;
  box-shadow:0 7px 24px rgba(26,58,96,.055)!important;
  backdrop-filter:blur(12px);
}
.header-main{
  min-height:82px!important;
}
.brand-copy strong{
  color:var(--jl-ink)!important;
}
.brand-copy small{
  color:#7b8b9d!important;
}
.main-nav>a,
.nav-group>summary{
  color:#273b55!important;
  font-weight:900!important;
}
.main-nav>a:hover,
.nav-group>summary:hover,
.main-nav>a.active,
.nav-group.active>summary{
  color:var(--jl-blue)!important;
  background:var(--jl-blue-soft)!important;
}
.nav-group>summary::after{
  color:#71839a!important;
}
.nav-dropdown{
  overflow:hidden;
  border:1px solid var(--jl-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(26,58,96,.13)!important;
}
.nav-dropdown a{
  color:#2a3f59!important;
}
.nav-dropdown a:hover{
  color:var(--jl-blue)!important;
  background:var(--jl-blue-soft)!important;
}
.header-program{
  color:#fff!important;
  background:linear-gradient(135deg,var(--jl-red),#ee3038)!important;
  border:0!important;
  box-shadow:0 8px 18px rgba(215,25,32,.18)!important;
}
.nav-toggle span{
  background:var(--jl-ink)!important;
}

/* ------------------------------------------------------------------
   Hero systém – klubová modrá místo skoro černé
   ------------------------------------------------------------------ */
.page-hero,
.news-final-hero,
.teams-final-hero,
.players-final-hero,
.matches-final-hero,
.competitions-final-hero,
.competition-final-hero,
.table-final-hero,
.history-final-hero,
.season-final-hero,
.club-final-hero,
.team-final-hero,
.match-final-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 25%,rgba(255,255,255,.13),transparent 24%),
    radial-gradient(circle at 90% 105%,rgba(215,25,32,.26),transparent 32%),
    linear-gradient(122deg,var(--jl-blue-dark) 0%,var(--jl-blue) 68%,#2869bd 100%)!important;
  border-bottom:4px solid transparent!important;
}
.page-hero::after,
.news-final-hero::after,
.teams-final-hero::after,
.players-final-hero::after,
.matches-final-hero::after,
.competitions-final-hero::after,
.competition-final-hero::after,
.table-final-hero::after,
.history-final-hero::after,
.season-final-hero::after,
.club-final-hero::after,
.team-final-hero::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:4px;
  background:linear-gradient(90deg,var(--jl-red) 0 48%,#fff 48% 52%,var(--jl-blue) 52% 100%);
}
.page-hero h1,
.news-final-hero h1,
.teams-final-hero h1,
.players-final-hero h1,
.matches-final-hero h1,
.competitions-final-hero h1,
.competition-final-hero h1,
.table-final-hero h1,
.history-final-hero h1,
.season-final-hero h1,
.club-final-hero h1{
  color:#fff!important;
  text-shadow:0 2px 18px rgba(5,31,68,.16);
}
.page-hero p,
.news-final-hero p,
.teams-final-hero p,
.players-final-hero p,
.matches-final-hero p,
.competitions-final-hero p,
.competition-final-hero p,
.table-final-hero p,
.history-final-hero p,
.season-final-hero p,
.club-final-hero p{
  color:#dce9f7!important;
}
.section-kicker{
  color:var(--jl-red)!important;
}
.page-hero .section-kicker,
.team-final-hero .section-kicker,
.match-final-hero .section-kicker,
.club-final-hero .section-kicker{
  color:#fff!important;
  opacity:.82;
}
.page-hero .back-link,
.team-final-hero .back-link,
.match-final-hero .back-link,
.club-final-hero .back-link{
  color:#edf5ff!important;
}

/* ------------------------------------------------------------------
   Karty – méně hran, více prostoru
   ------------------------------------------------------------------ */
.content-card,
.news-card,
.team-card,
.team-summary-card,
.team-section-card,
.team-roster-card,
.competition-current-card,
.competition-team-section,
.competition-detail-stat,
.competition-detail-table,
.competition-match-card,
.table-picker,
.table-pro-card,
.history-overview-stat,
.history-pro-card,
.season-pro-summary>div,
.competition-pro-card,
.club-overview-card,
.club-person-card,
.club-staff-group,
.club-contact-card,
.partner-pro-card,
.players-final-toolbar,
.directory-player,
.matches-control-panel,
.match-row{
  border-color:var(--jl-line)!important;
  border-radius:14px!important;
  background:var(--jl-card)!important;
  box-shadow:var(--jl-shadow)!important;
}

/* ------------------------------------------------------------------
   Úvod – praktičtější a výrazně klubovější
   ------------------------------------------------------------------ */
#view-home{
  background:var(--jl-bg)!important;
}
#view-home .home-hero,
.hero-pro,
.hero-premium{
  background:
    radial-gradient(circle at 80% 25%,rgba(255,255,255,.12),transparent 28%),
    radial-gradient(circle at 92% 110%,rgba(215,25,32,.30),transparent 35%),
    linear-gradient(120deg,var(--jl-blue-dark),var(--jl-blue) 72%,#2869bd)!important;
}
#view-home .hero-title,
#view-home h1{
  color:#fff!important;
}
#view-home .hero-subtitle,
#view-home .hero-copy p{
  color:#dce9f7!important;
}
.home-shortcuts{
  gap:10px!important;
}
.home-shortcuts>a{
  border:1px solid #d9e4f1!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(30,63,101,.06)!important;
}
.home-shortcuts>a:hover{
  transform:translateY(-2px);
  border-color:#b8d0ec!important;
  box-shadow:0 14px 28px rgba(30,63,101,.10)!important;
}
.home-shortcuts>a span,
.home-shortcuts>a strong{
  color:var(--jl-ink)!important;
}
.home-shortcuts>a b,
.home-shortcuts>a em{
  color:var(--jl-blue)!important;
}

.home-service-heading .section-kicker,
.home-service-heading .kicker{
  color:var(--jl-red)!important;
}
.home-service-heading h2{
  color:var(--jl-ink)!important;
}
.home-service-heading p{
  color:var(--jl-muted)!important;
}

/* sportovní karty na úvodu */
.home-sport-card,
.home-result-card,
.home-next-card,
.home-table-card{
  overflow:hidden;
  border:1px solid var(--jl-line)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:var(--jl-shadow)!important;
}
.home-next-card{
  border-top:4px solid var(--jl-red)!important;
}
.home-table-card{
  border-top:4px solid var(--jl-blue)!important;
}

/* ------------------------------------------------------------------
   Detail týmu – méně temné, více klubové
   ------------------------------------------------------------------ */
.team-final-hero .team-pro-code{
  color:#fff!important;
  text-shadow:0 2px 20px rgba(4,29,65,.20);
}
.team-final-hero .team-pro-title-line h1{
  color:#fff!important;
}
.team-final-hero .team-hero-identity{
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.team-final-hero .team-competition-chips a{
  color:#fff!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.team-final-hero .team-competition-chips a:hover{
  background:rgba(255,255,255,.18)!important;
}

.team-final-body .team-summary-card{
  border-top:3px solid var(--jl-blue)!important;
}
.team-final-body .team-summary-card:nth-child(2){
  border-top-color:var(--jl-red)!important;
}
.team-final-body .team-summary-card>span{
  color:var(--jl-blue)!important;
}
.team-final-body .team-summary-card:nth-child(2)>span{
  color:var(--jl-red)!important;
}

.team-topscorer-card{
  border:1px solid var(--jl-line)!important;
  border-left:5px solid var(--jl-red)!important;
  border-radius:14px!important;
  box-shadow:var(--jl-shadow)!important;
}
.team-topscorer-title{
  background:var(--jl-red-soft)!important;
  border-right:1px solid #f1d8da!important;
}
.team-topscorer-title>span,
.team-topscorer-goals b{
  color:var(--jl-red)!important;
}
.team-topscorer-copy small{
  color:var(--jl-blue)!important;
}

/* zápasové dvojkarty: už ne skoro černé */
.team-final-body .team-feature-card{
  border:0!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,var(--jl-blue-dark),var(--jl-blue))!important;
  box-shadow:0 12px 30px rgba(13,53,109,.16)!important;
}
.team-final-body .team-feature-card:nth-child(2){
  border-top:0!important;
  background:linear-gradient(135deg,#a81219,var(--jl-red))!important;
}
.team-final-body .team-feature-head{
  background:rgba(0,0,0,.08)!important;
}
.team-final-body .team-feature-head>strong.next{
  color:#fff!important;
  background:rgba(255,255,255,.13)!important;
  border-color:rgba(255,255,255,.20)!important;
}

/* Program / Soupiska hlavičky: modrá místo černé */
.team-final-body .team-section-card>.team-section-title,
.team-final-body .team-roster-card>.team-section-title{
  background:var(--jl-blue)!important;
  border-bottom:0!important;
}
.team-final-body .team-section-card>.team-section-title>a,
.team-final-body .team-roster-card>.team-section-title>a,
.team-final-body .team-section-card>.team-section-title>small,
.team-final-body .team-roster-card>.team-section-title>small{
  color:#dcecff!important;
}

/* ------------------------------------------------------------------
   Zápasy – dominantní klubová modrá, výsledky červený detail
   ------------------------------------------------------------------ */
.match-final-body .match-pro-scorecard{
  border:0!important;
  border-top:0!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 85% 15%,rgba(255,255,255,.12),transparent 28%),
    linear-gradient(135deg,var(--jl-blue-dark),var(--jl-blue))!important;
  box-shadow:0 16px 38px rgba(13,53,109,.18)!important;
}
.match-final-body .match-pro-scorecard::before{
  content:"";
  display:block;
  height:4px;
  margin:0 -22px;
  background:linear-gradient(90deg,var(--jl-red),#fff,var(--jl-blue));
}
.match-final-body .match-pro-topline{
  border-bottom-color:rgba(255,255,255,.12)!important;
}
.match-final-body .match-status-badge{
  background:var(--jl-red)!important;
  color:#fff!important;
}

.schedule-final-list .match-row{
  border-left:4px solid var(--jl-red)!important;
}
.results-final-list .match-row{
  border-left:4px solid var(--jl-blue)!important;
}
.matches-final-list .match-row:hover{
  border-color:#bcd0e6!important;
}

/* ------------------------------------------------------------------
   Soutěže / tabulky
   ------------------------------------------------------------------ */
.competition-current-card.league{
  border-top:4px solid var(--jl-blue)!important;
}
.competition-current-card.cup{
  border-top:4px solid var(--jl-red)!important;
}
.table-final-body .table-picker-label>span{
  background:var(--jl-blue)!important;
}
.standings-pro-table tr.own{
  background:linear-gradient(90deg,rgba(215,25,32,.09),rgba(21,84,165,.035))!important;
  box-shadow:inset 4px 0 0 var(--jl-red)!important;
}
.standings-team-name em{
  color:#fff!important;
  background:var(--jl-red)!important;
}

/* ------------------------------------------------------------------
   Aktuality
   ------------------------------------------------------------------ */
.news-final-body .news-card-featured{
  border:0!important;
  border-radius:16px!important;
  box-shadow:0 15px 36px rgba(30,63,101,.10)!important;
}
.news-featured-kicker,
.news-final-heading .section-kicker{
  color:var(--jl-red)!important;
}
.news-final-body .news-card-featured .news-read,
.news-grid-page .news-read{
  color:var(--jl-blue)!important;
}
.news-grid-page .news-card{
  border-radius:14px!important;
}
.news-grid-page .news-card:hover{
  border-color:#bfd2e7!important;
}

/* ------------------------------------------------------------------
   Hráči / osoby / kontakty
   ------------------------------------------------------------------ */
.players-final-directory .directory-player:hover,
.club-final-body .club-person-card:hover,
.partner-pro-card:hover{
  border-color:#bed2e8!important;
  box-shadow:0 14px 30px rgba(30,63,101,.10)!important;
}
.club-final-body .club-person-mark{
  background:linear-gradient(145deg,var(--jl-blue),var(--jl-blue-dark))!important;
}
.club-final-body .club-person-copy>span,
.club-contact-heading>span,
.club-final-body .club-contact-card small{
  color:var(--jl-red)!important;
}
.club-final-body .club-person-contact b,
.club-final-body .club-contact-card>span{
  color:var(--jl-blue)!important;
}
.club-final-body .club-contact-card{
  border-top:4px solid var(--jl-blue)!important;
}

/* Klub quicklinks – modré, ne černé */
.club-final-body .club-quick-links{
  border:0!important;
  background:linear-gradient(150deg,var(--jl-blue-dark),var(--jl-blue))!important;
  box-shadow:0 12px 28px rgba(13,53,109,.15)!important;
}
.club-final-body .club-quick-links>a>span{
  color:#ffb3b7!important;
}

/* Realizační týmy */
.club-final-body .club-staff-heading{
  background:linear-gradient(135deg,var(--jl-blue-dark),var(--jl-blue))!important;
}
.club-final-body .club-staff-heading>span,
.club-final-body .club-staff-heading small{
  color:#ffb5b8!important;
}

/* Partneři */
.partner-pro-card.large{
  border-top:4px solid var(--jl-red)!important;
}
.partner-pro-copy small{
  color:var(--jl-red)!important;
}
.partner-pro-card>b{
  color:var(--jl-blue)!important;
}

/* ------------------------------------------------------------------
   Tlačítka / odkazy
   ------------------------------------------------------------------ */
a{
  text-decoration-thickness:1px;
}
.button-primary,
.btn-primary,
.primary-button{
  background:var(--jl-red)!important;
  color:#fff!important;
}
.button-secondary,
.btn-secondary{
  color:var(--jl-blue)!important;
  border-color:#b9cfe6!important;
  background:#fff!important;
}

/* ------------------------------------------------------------------
   Patička – modrá, ne skoro černá
   ------------------------------------------------------------------ */
.site-footer{
  background:linear-gradient(135deg,var(--jl-blue-dark),#092d5d)!important;
  border-top:4px solid var(--jl-red)!important;
  color:#dce9f7!important;
}
.footer-brand strong{
  color:#fff!important;
}
.footer-brand small,
.footer-status{
  color:#9eb8d3!important;
}
.footer-links a,
.footer-status a{
  color:#eaf3fc!important;
}
.footer-links a:hover,
.footer-status a:hover{
  color:#fff!important;
}

/* ------------------------------------------------------------------
   Mobile navigation
   ------------------------------------------------------------------ */
.mobile-dock{
  border-top:1px solid #d5e0eb!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 -8px 24px rgba(27,58,93,.08)!important;
}
.mobile-dock a{
  color:#71839a!important;
}
.mobile-dock a.active{
  color:var(--jl-blue)!important;
}
.mobile-dock a.active::before{
  background:var(--jl-red)!important;
}
.mobile-dock svg{
  fill:currentColor!important;
}

@media(max-width:900px){
  .main-nav{
    border:1px solid var(--jl-line)!important;
    background:#fff!important;
    box-shadow:0 18px 40px rgba(26,58,96,.14)!important;
  }
  .nav-group>summary,
  .main-nav>a{
    color:var(--jl-ink)!important;
  }
  .nav-dropdown{
    box-shadow:none!important;
    background:#f8fbff!important;
  }
}

/* ------------------------------------------------------------------
   Jemnější typografie a radius na mobilu
   ------------------------------------------------------------------ */
@media(max-width:700px){
  .page-hero,
  .news-final-hero,
  .teams-final-hero,
  .players-final-hero,
  .matches-final-hero,
  .competitions-final-hero,
  .competition-final-hero,
  .table-final-hero,
  .history-final-hero,
  .season-final-hero,
  .club-final-hero{
    border-radius:0!important;
  }
  .team-final-body .team-feature-card,
  .match-final-body .match-pro-scorecard{
    border-radius:12px!important;
  }
  .content-card,
  .news-card,
  .team-card,
  .team-summary-card,
  .team-section-card,
  .team-roster-card,
  .partner-pro-card{
    border-radius:12px!important;
  }
}


/* =====================================================================
   8.7 — SVĚTLÝ KLUBOVÝ ÚVOD
   Reakce na reálný náhled 8.6:
   - méně tmavých ploch
   - hero jako světlá klubová prezentace
   - výsledkový servis jako bílý sportovní obsah, ne dashboard
   ===================================================================== */

/* ------------------------------------------------------------------
   Stavová lišta: klubová modrá místo černé
   ------------------------------------------------------------------ */
.utility-bar{
  min-height:30px!important;
  color:#eaf3fd!important;
  background:var(--jl-blue-dark)!important;
}
.utility-bar:after{
  height:2px!important;
  background:linear-gradient(90deg,var(--jl-red) 0 48%,#fff 48% 52%,var(--jl-blue) 52% 100%)!important;
}
.utility-inner{
  min-height:30px!important;
}
.utility-left,
.utility-right,
.utility-right a{
  color:#eaf3fd!important;
}
.utility-right a:hover{color:#fff!important}

/* ------------------------------------------------------------------
   HOME HERO — zásadně světlejší
   ------------------------------------------------------------------ */
#view-home .hero-v5{
  min-height:380px!important;
  background:
    linear-gradient(100deg,#ffffff 0%,#ffffff 47%,#f4f8fd 62%,#e8f1fb 100%)!important;
  border-bottom:0!important;
  box-shadow:inset 0 -1px 0 #d9e4ef;
}
#view-home .hero-v5 .hero-inner{
  min-height:380px!important;
}
#view-home .hero-v5:before{
  z-index:-2!important;
  background:
    linear-gradient(90deg,
      rgba(255,255,255,1) 0%,
      rgba(255,255,255,.99) 43%,
      rgba(255,255,255,.88) 57%,
      rgba(21,84,165,.32) 100%)!important;
}
#view-home .hero-v5:after{
  right:-10%!important;
  top:-34%!important;
  width:58%!important;
  height:170%!important;
  opacity:.34!important;
  background:
    radial-gradient(circle at center,rgba(21,84,165,.24),transparent 46%),
    repeating-radial-gradient(circle at 56% 48%,rgba(21,84,165,.14) 0 1px,transparent 1px 46px)!important;
}
#view-home .hero-v5-grid{
  opacity:.08!important;
  background-image:
    linear-gradient(rgba(21,84,165,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(21,84,165,.08) 1px,transparent 1px)!important;
}
#view-home .hero-v5-glow-red{
  width:330px!important;
  height:330px!important;
  right:4%!important;
  top:-190px!important;
  background:var(--jl-red)!important;
  opacity:.14!important;
}
#view-home .hero-v5-glow-blue{
  width:360px!important;
  height:360px!important;
  right:-120px!important;
  bottom:-230px!important;
  background:var(--jl-blue)!important;
  opacity:.18!important;
}
#view-home .hero-photo{
  opacity:.17!important;
  background-position:78% 42%!important;
  filter:saturate(.65) contrast(.95)!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0 42%,rgba(0,0,0,.18) 54%,#000 75%);
  mask-image:linear-gradient(90deg,transparent 0 42%,rgba(0,0,0,.18) 54%,#000 75%);
}

/* hero copy */
#view-home .hero-copy{
  padding:44px 0 54px!important;
}
#view-home #heroClubName{
  margin-bottom:13px!important;
  color:var(--jl-red)!important;
  font-size:.70rem!important;
  letter-spacing:.17em!important;
}
#view-home .hero-copy h1{
  max-width:760px!important;
  color:var(--jl-blue-dark)!important;
  font-size:clamp(3rem,4.35vw,4.65rem)!important;
  line-height:.91!important;
  letter-spacing:-.058em!important;
  text-shadow:none!important;
}
#view-home .hero-copy h1 span{
  color:var(--jl-red)!important;
}
#view-home .hero-copy h1 span:after{
  height:4px!important;
  right:6%!important;
  bottom:-8px!important;
  background:linear-gradient(90deg,var(--jl-blue) 0 42%,var(--jl-red) 42%)!important;
}
#view-home .hero-copy #heroSubline{
  max-width:620px!important;
  margin-top:19px!important;
  color:#536a83!important;
  font-size:.84rem!important;
  line-height:1.5!important;
}
#view-home .hero-actions{
  margin-top:21px!important;
}
#view-home .hero-actions .button-primary{
  background:linear-gradient(135deg,var(--jl-red),#ed333a)!important;
  box-shadow:0 10px 22px rgba(215,25,32,.18)!important;
}
#view-home .hero-actions .button-ghost{
  color:var(--jl-blue-dark)!important;
  background:#fff!important;
  border:1px solid #a9c3df!important;
  box-shadow:0 7px 20px rgba(30,63,101,.06)!important;
}
#view-home .hero-actions .button-ghost:hover{
  color:#fff!important;
  background:var(--jl-blue)!important;
  border-color:var(--jl-blue)!important;
}

/* crest — white club card on the light-blue side */
#view-home .hero-side{
  min-height:300px!important;
  align-items:center!important;
  justify-content:center!important;
}
#view-home .hero-identity{
  min-width:330px!important;
  min-height:230px!important;
  display:grid!important;
  place-items:center!important;
  padding:20px!important;
  border:1px solid rgba(21,84,165,.18)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.82)!important;
  box-shadow:
    0 22px 54px rgba(18,64,115,.12),
    inset 0 1px 0 rgba(255,255,255,.9)!important;
  backdrop-filter:blur(12px);
}
#view-home .hero-crest{
  width:185px!important;
  height:185px!important;
}
#view-home .hero-crest:before{
  inset:-16px!important;
  border:1px solid rgba(21,84,165,.12)!important;
  box-shadow:
    0 0 0 18px rgba(21,84,165,.035),
    0 0 55px rgba(21,84,165,.10)!important;
}
#view-home .crest-halo{
  opacity:.20!important;
}

/* ------------------------------------------------------------------
   Rychlé odkazy — necháme bílou, ale méně "formulářové"
   ------------------------------------------------------------------ */
#view-home .home-shortcuts{
  position:relative!important;
  z-index:20!important;
  margin-top:-22px!important;
}
#view-home .home-shortcuts>a{
  min-height:72px!important;
  border-color:#d7e3ef!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(24,60,101,.08)!important;
}
#view-home .home-shortcuts>a:hover{
  border-color:#acc7e3!important;
  box-shadow:0 16px 34px rgba(24,60,101,.12)!important;
}
#view-home .home-shortcuts>a>span{
  color:var(--jl-red)!important;
}
#view-home .home-shortcuts>a b{
  color:var(--jl-blue)!important;
}

/* ------------------------------------------------------------------
   Nadpis výsledkového servisu
   ------------------------------------------------------------------ */
#view-home .home-service-heading{
  margin-top:28px!important;
  padding-top:0!important;
  padding-bottom:12px!important;
}
#view-home .home-service-heading h2{
  margin-top:4px!important;
  color:var(--jl-blue-dark)!important;
  font-size:2rem!important;
}
#view-home .home-service-heading p{
  margin-top:6px!important;
  color:#6d7e91!important;
}
#view-home .home-service-season{
  color:var(--jl-blue-dark)!important;
  border:1px solid #cbd9e8!important;
  background:#fff!important;
}

/* ------------------------------------------------------------------
   Výběr družstva — světlý segmented control
   ------------------------------------------------------------------ */
#view-home .home-sport{
  margin-top:0!important;
  gap:12px!important;
}
#view-home .home-team-switch{
  min-height:58px!important;
  padding:7px 8px 7px 190px!important;
  border:1px solid #d6e2ee!important;
  border-radius:13px!important;
  color:var(--jl-ink)!important;
  background:#fff!important;
  box-shadow:0 9px 25px rgba(30,63,101,.06)!important;
}
#view-home .home-team-switch:before{
  left:18px!important;
  color:var(--jl-blue-dark)!important;
  font-size:.66rem!important;
  letter-spacing:.09em!important;
}
#view-home .home-team-button{
  min-height:42px!important;
  padding:0 13px!important;
  color:#5f7288!important;
  border:1px solid transparent!important;
  background:transparent!important;
}
#view-home .home-team-button:hover{
  color:var(--jl-blue)!important;
  background:var(--jl-blue-soft)!important;
}
#view-home .home-team-button.active{
  color:#fff!important;
  background:var(--jl-blue)!important;
  border-color:var(--jl-blue)!important;
  box-shadow:
    inset 0 -3px 0 var(--jl-red),
    0 6px 16px rgba(21,84,165,.15)!important;
}

/* ------------------------------------------------------------------
   SPORTOVNÍ KARTY — žádná skoro černá
   ------------------------------------------------------------------ */
#view-home .sport-feature-card{
  color:var(--jl-ink)!important;
  border:1px solid #d6e2ee!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 12px 30px rgba(30,63,101,.075)!important;
}
#view-home .sport-feature-card:before{
  background:none!important;
}
#view-home .sport-feature-card:after{
  left:0!important;
  right:0!important;
  top:0!important;
  height:4px!important;
  opacity:1!important;
  background:var(--jl-blue)!important;
}
#view-home .last-result-card:after{
  background:var(--jl-red)!important;
}
#view-home .next-match-card:after{
  background:var(--jl-blue)!important;
}
#view-home .table-feature-card:after{
  background:linear-gradient(90deg,var(--jl-blue),#4082cb)!important;
}

/* card headers */
#view-home .sport-card-top{
  min-height:51px!important;
  color:var(--jl-blue-dark)!important;
  border-bottom:1px solid #e2e9f1!important;
  background:#f7faff!important;
}
#view-home .sport-card-top>span:first-child{
  color:var(--jl-blue-dark)!important;
  font-weight:950!important;
}
#view-home .sport-card-top>span:first-child:before{
  background:var(--jl-red)!important;
}
#view-home .table-feature-card .sport-card-top>span:first-child:before{
  background:var(--jl-blue)!important;
}
#view-home .sport-card-top>a{
  color:var(--jl-blue)!important;
  font-weight:900!important;
}
#view-home .status-chip{
  color:#fff!important;
  background:var(--jl-blue)!important;
}
#view-home .status-chip.status-finished,
#view-home .status-chip.is-win{
  background:#19945a!important;
}

/* match content */
#view-home .sport-feature-card .match-large{
  min-height:225px!important;
  background:#fff!important;
}
#view-home .sport-feature-card .match-meta{
  color:#6e8196!important;
}
#view-home .sport-feature-card .club-side .club-name,
#view-home .sport-feature-card .club-name{
  color:var(--jl-ink)!important;
}
#view-home .sport-feature-card .score{
  color:var(--jl-blue-dark)!important;
  text-shadow:none!important;
}
#view-home .sport-feature-card .score.pending{
  color:#8ba0b6!important;
}
#view-home .sport-feature-card .match-bottom{
  color:#74889d!important;
}

/* table content */
#view-home .table-feature-card .mini-table{
  color:var(--jl-ink)!important;
  background:#fff!important;
}
#view-home .mini-row{
  color:#263a53!important;
  border-bottom:1px solid #e7edf3!important;
  background:#fff!important;
}
#view-home .mini-row:hover{
  background:#f5f9fd!important;
}
#view-home .mini-row.own{
  color:var(--jl-blue-dark)!important;
  border-left:4px solid var(--jl-red)!important;
  background:
    linear-gradient(90deg,var(--jl-red-soft),#f3f7fc 68%)!important;
}
#view-home .mini-row.own *{
  color:inherit!important;
}

/* ------------------------------------------------------------------
   Níže na úvodu: ještě víc bílé a méně těžkých boxů
   ------------------------------------------------------------------ */
#view-home .home-news-section,
#view-home .home-teams-section,
#view-home .home-results-section{
  padding-top:34px!important;
}
#view-home .home-final-heading h2{
  color:var(--jl-blue-dark)!important;
}
#view-home .home-final-heading .section-kicker{
  color:var(--jl-red)!important;
}
#view-home .home-upcoming-panel,
#view-home .home-club-stats{
  border:1px solid #d9e4ef!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(30,63,101,.055)!important;
}

/* ------------------------------------------------------------------
   Desktop / tablet / mobile
   ------------------------------------------------------------------ */
@media(max-width:1100px){
  #view-home .hero-identity{
    min-width:270px!important;
  }
  #view-home .home-team-switch{
    padding-left:170px!important;
  }
}

@media(max-width:800px){
  #view-home .hero-v5,
  #view-home .hero-v5 .hero-inner{
    min-height:0!important;
  }
  #view-home .hero-v5 .hero-inner{
    display:block!important;
  }
  #view-home .hero-copy{
    padding:34px 0 28px!important;
  }
  #view-home .hero-copy h1{
    max-width:600px!important;
    font-size:clamp(2.7rem,9vw,4rem)!important;
  }
  #view-home .hero-side{
    min-height:0!important;
    padding-bottom:36px!important;
  }
  #view-home .hero-identity{
    min-width:0!important;
    width:min(100%,420px)!important;
    min-height:150px!important;
    margin:0 auto!important;
  }
  #view-home .hero-crest{
    width:120px!important;
    height:120px!important;
  }
  #view-home .hero-photo{
    opacity:.08!important;
  }
}

@media(max-width:700px){
  #view-home .home-shortcuts{
    margin-top:-14px!important;
  }
  #view-home .home-service-heading{
    margin-top:24px!important;
  }
  #view-home .home-team-switch{
    min-height:0!important;
    padding:8px!important;
  }
  #view-home .home-team-switch:before{
    content:none!important;
  }
  #view-home .home-team-button{
    flex:0 0 auto!important;
  }
  #view-home .sport-feature-card{
    border-radius:12px!important;
  }
  #view-home .sport-feature-card .match-large{
    min-height:190px!important;
  }
}


/* =====================================================================
   8.7.1 — SLOGAN BEZ PROBLIKNUTÍ
   Výchozí text v HTML drží rozměry hero sekce, ale není viditelný.
   Zobrazí se až po načtení /content/site.json a aplikaci redakčního sloganu.
   ===================================================================== */
#view-home .hero-editorial{
  visibility:hidden;
  opacity:0;
}
#view-home .hero-editorial.is-ready{
  visibility:visible;
  opacity:1;
  transition:opacity .12s ease-out;
}
@media (prefers-reduced-motion:reduce){
  #view-home .hero-editorial.is-ready{
    transition:none;
  }
}


/* =====================================================================
   8.7.2 — FINÁLNÍ SJEDNOCENÍ ÚVODU
   Reakce na reálný screenshot:
   1) Výsledky klubu – vyšší kontrast
   2) Naše týmy – bílé klubové karty
   3) Klub v číslech – plnohodnotný pravý blok
   4) Spodní CTA – klubová modrá místo téměř černé
   ===================================================================== */

/* ------------------------------------------------------------------
   Nejbližší zápasy + Klub v číslech
   ------------------------------------------------------------------ */
#view-home .home-quick-grid{
  align-items:stretch!important;
  grid-template-columns:minmax(0,1.38fr) minmax(320px,.62fr)!important;
  gap:12px!important;
}
#view-home .home-upcoming-panel,
#view-home .home-club-stats{
  height:100%;
  border:1px solid #d7e3ef!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(30,63,101,.065)!important;
}
#view-home .home-upcoming-panel{
  padding:18px 18px 12px!important;
}
#view-home .home-club-stats{
  position:relative;
  overflow:hidden;
  padding:18px!important;
}
#view-home .home-club-stats:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,var(--jl-red) 0 34%,#fff 34% 38%,var(--jl-blue) 38% 100%);
}
#view-home .home-club-stats:after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-100px;
  width:210px;
  height:210px;
  border:1px solid rgba(21,84,165,.10);
  border-radius:50%;
  box-shadow:0 0 0 34px rgba(21,84,165,.035),0 0 0 68px rgba(21,84,165,.025);
  pointer-events:none;
}
#view-home .home-club-stats .section-mini-title{
  position:relative;
  z-index:1;
  min-height:40px!important;
  display:flex;
  align-items:center;
  padding:0!important;
  border:0!important;
}
#view-home .home-club-stats .section-mini-title span{
  color:var(--jl-blue-dark)!important;
  font-size:.62rem!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
#view-home .home-club-stats .club-stat-grid{
  position:relative;
  z-index:1;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin-top:6px!important;
}
#view-home .home-club-stats .club-stat{
  min-height:67px!important;
  display:grid!important;
  grid-template-columns:68px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  column-gap:12px!important;
  padding:9px 11px!important;
  border:1px solid #e0e8f0!important;
  border-radius:10px!important;
  background:#f9fbfe!important;
  box-shadow:none!important;
}
#view-home .home-club-stats .club-stat b{
  grid-row:1/3;
  display:grid!important;
  place-items:center!important;
  width:58px!important;
  height:48px!important;
  margin:0!important;
  border-radius:9px!important;
  color:#fff!important;
  background:var(--jl-blue)!important;
  font-size:1.55rem!important;
  line-height:1!important;
}
#view-home .home-club-stats .club-stat:nth-child(2) b{
  background:var(--jl-red)!important;
}
#view-home .home-club-stats .club-stat:nth-child(3) b{
  color:var(--jl-blue-dark)!important;
  background:var(--jl-blue-soft)!important;
}
#view-home .home-club-stats .club-stat strong{
  align-self:end;
  color:var(--jl-ink)!important;
  font-size:.66rem!important;
  line-height:1.2!important;
}
#view-home .home-club-stats .club-stat small{
  display:block!important;
  align-self:start;
  margin-top:3px!important;
  color:#7a8c9e!important;
  font-size:.53rem!important;
  line-height:1.3!important;
}

/* ------------------------------------------------------------------
   NAŠE TÝMY — převážně bílé karty
   ------------------------------------------------------------------ */
#view-home #homeTeams.team-grid{
  gap:10px!important;
}
#view-home #homeTeams .team-final-card{
  min-height:232px!important;
  overflow:hidden!important;
  border:1px solid #d7e3ef!important;
  border-radius:14px!important;
  color:var(--jl-ink)!important;
  background:#fff!important;
  box-shadow:0 10px 25px rgba(30,63,101,.065)!important;
}
#view-home #homeTeams .team-final-card:hover{
  transform:translateY(-3px)!important;
  border-color:#b9cfe5!important;
  box-shadow:0 15px 32px rgba(30,63,101,.11)!important;
}
#view-home #homeTeams .team-card-top{
  min-height:77px!important;
  padding:11px 12px!important;
  border-bottom:1px solid #e3eaf2!important;
  background:
    linear-gradient(120deg,#f8fbff 0%,#fff 58%,var(--jl-blue-soft) 100%)!important;
}
#view-home #homeTeams .team-code{
  color:var(--jl-red)!important;
  font-size:2.15rem!important;
}
#view-home #homeTeams .team-code-block small{
  color:#64798e!important;
}
#view-home #homeTeams .team-card-club-logo img,
#view-home #homeTeams .team-card-club-logo .logo-placeholder{
  width:48px!important;
  height:48px!important;
}
#view-home #homeTeams .team-card-copy{
  min-height:77px!important;
  padding:10px 12px 9px!important;
  color:var(--jl-ink)!important;
  background:#fff!important;
}
#view-home #homeTeams .team-final-season{
  color:var(--jl-blue)!important;
  font-size:.48rem!important;
}
#view-home #homeTeams .team-card-copy h3{
  margin-top:4px!important;
  color:var(--jl-blue-dark)!important;
  font-size:.88rem!important;
}
#view-home #homeTeams .team-card-copy p{
  margin-top:5px!important;
  color:#6f8194!important;
  font-size:.56rem!important;
}
#view-home #homeTeams .team-final-scorer{
  min-height:48px!important;
  padding:7px 12px!important;
  border-top:1px solid #f0dfe1!important;
  border-bottom:1px solid #f0dfe1!important;
  background:linear-gradient(90deg,var(--jl-red-soft),#fff)!important;
}
#view-home #homeTeams .team-final-scorer>span{
  color:var(--jl-red)!important;
  font-size:.43rem!important;
}
#view-home #homeTeams .team-final-scorer>strong{
  color:var(--jl-ink)!important;
  font-size:.58rem!important;
}
#view-home #homeTeams .team-final-scorer>small{
  color:#7a8997!important;
  font-size:.47rem!important;
}
#view-home #homeTeams .team-final-card-bottom{
  min-height:38px!important;
  padding:7px 12px 8px!important;
  border-top:0!important;
  color:#718397!important;
  background:#fff!important;
}
#view-home #homeTeams .team-final-card-bottom span{
  color:#7b8c9c!important;
  font-size:.49rem!important;
}
#view-home #homeTeams .team-final-card-bottom strong{
  color:var(--jl-blue)!important;
  font-size:.53rem!important;
}

/* ------------------------------------------------------------------
   VÝSLEDKY KLUBU — kontrast a čitelnost
   ------------------------------------------------------------------ */
#view-home #homeResults{
  gap:8px!important;
}
#view-home #homeResults .match-row{
  min-height:74px!important;
  overflow:hidden!important;
  border:1px solid #d6e2ee!important;
  border-left:4px solid var(--jl-blue)!important;
  border-radius:11px!important;
  color:var(--jl-ink)!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(30,63,101,.045)!important;
}
#view-home #homeResults .match-row:hover{
  transform:translateY(-1px)!important;
  border-color:#b9cee4!important;
  border-left-color:var(--jl-red)!important;
  background:#fbfdff!important;
  box-shadow:0 10px 24px rgba(30,63,101,.08)!important;
}
#view-home #homeResults .match-row-date{
  color:#667b91!important;
  font-size:.61rem!important;
}
#view-home #homeResults .match-row-date strong{
  color:var(--jl-blue-dark)!important;
}
#view-home #homeResults .match-row-main{
  color:var(--jl-ink)!important;
}
#view-home #homeResults .match-row-team{
  color:#223950!important;
  font-size:.68rem!important;
  font-weight:900!important;
}
#view-home #homeResults .match-row-team img,
#view-home #homeResults .match-row-team .logo-placeholder{
  width:36px!important;
  height:36px!important;
}
#view-home #homeResults .match-row-score{
  min-width:66px!important;
  color:var(--jl-blue-dark)!important;
  font-size:1.16rem!important;
  font-weight:1000!important;
  text-shadow:none!important;
}
#view-home #homeResults .match-row-comp{
  color:#718398!important;
  font-size:.57rem!important;
}
#view-home #homeResults .match-row-comp b{
  color:#536b82!important;
}
#view-home #homeResults .match-row-comp small{
  color:#8b9aa8!important;
}

/* ------------------------------------------------------------------
   SPODNÍ KLUBOVÁ VÝZVA — modrá, nikoli černá
   ------------------------------------------------------------------ */
#view-home .home-club-cta{
  position:relative;
  min-height:168px!important;
  margin-top:38px!important;
  padding:26px 30px!important;
  overflow:hidden;
  border:0!important;
  border-radius:16px!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 88% 30%,rgba(255,255,255,.15),transparent 24%),
    radial-gradient(circle at 4% 115%,rgba(215,25,32,.32),transparent 34%),
    linear-gradient(125deg,var(--jl-blue-dark),var(--jl-blue) 72%,#2c70be)!important;
  box-shadow:0 14px 34px rgba(13,53,109,.16)!important;
}
#view-home .home-club-cta:after{
  content:"";
  position:absolute;
  right:-50px;
  top:-125px;
  width:320px;
  height:320px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.025);
  pointer-events:none;
}
#view-home .home-club-cta-copy,
#view-home .home-club-cta-actions{
  position:relative;
  z-index:1;
}
#view-home .home-club-cta-copy>span{
  color:#ffb6ba!important;
}
#view-home .home-club-cta-copy h2{
  color:#fff!important;
}
#view-home .home-club-cta-copy p{
  color:#d7e7f7!important;
}
#view-home .home-club-cta-actions .button-primary{
  color:var(--jl-red)!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(5,36,76,.12)!important;
}
#view-home .home-club-cta-actions .button-primary:hover{
  color:#fff!important;
  background:var(--jl-red)!important;
}
#view-home .home-club-cta-actions .button-ghost{
  color:#fff!important;
  border-color:rgba(255,255,255,.45)!important;
  background:rgba(255,255,255,.08)!important;
}
#view-home .home-club-cta-actions .button-ghost:hover{
  background:rgba(255,255,255,.16)!important;
}

/* ------------------------------------------------------------------
   Drobné sjednocení nadpisů / odkazů
   ------------------------------------------------------------------ */
#view-home .home-final-heading .text-link,
#view-home .compact-heading .text-link{
  color:var(--jl-blue)!important;
}
#view-home .home-final-heading .text-link:hover,
#view-home .compact-heading .text-link:hover{
  color:var(--jl-red)!important;
}

/* ------------------------------------------------------------------
   Tablet / mobil
   ------------------------------------------------------------------ */
@media(max-width:1000px){
  #view-home .home-quick-grid{
    grid-template-columns:1fr!important;
  }
  #view-home .home-club-stats .club-stat-grid{
    grid-template-columns:repeat(3,1fr)!important;
  }
  #view-home .home-club-stats .club-stat{
    min-height:102px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important;
    text-align:center;
  }
  #view-home .home-club-stats .club-stat b{
    width:52px!important;
    height:42px!important;
  }
}

@media(max-width:700px){
  #view-home .home-club-stats{
    padding:14px!important;
  }
  #view-home .home-club-stats .club-stat-grid{
    grid-template-columns:repeat(3,1fr)!important;
    gap:6px!important;
  }
  #view-home .home-club-stats .club-stat{
    min-height:92px!important;
    padding:8px 5px!important;
  }
  #view-home .home-club-stats .club-stat b{
    width:44px!important;
    height:38px!important;
    font-size:1.25rem!important;
  }
  #view-home .home-club-stats .club-stat strong{
    font-size:.52rem!important;
  }
  #view-home .home-club-stats .club-stat small{
    display:none!important;
  }

  #view-home #homeTeams.team-grid{
    scroll-snap-type:x mandatory;
  }
  #view-home #homeTeams .team-final-card{
    min-height:225px!important;
    scroll-snap-align:start;
  }

  #view-home #homeResults .match-row{
    padding:10px!important;
  }
  #view-home #homeResults .match-row-main{
    grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;
  }
  #view-home #homeResults .match-row-score{
    min-width:0!important;
    font-size:1.03rem!important;
  }

  #view-home .home-club-cta{
    min-height:0!important;
    padding:22px 18px!important;
  }
}


/* =====================================================================
   8.7.3 — ÚVOD BEZ DUPLICITNÍCH VÝSLEDKŮ
   ===================================================================== */
#view-home .home-teams-section{
  padding-bottom:6px!important;
}
#view-home .home-teams-section + .home-club-cta{
  margin-top:28px!important;
}
@media(max-width:700px){
  #view-home .home-teams-section + .home-club-cta{
    margin-top:22px!important;
  }
}


/* =====================================================================
   8.7.4 — ÚVOD BEZ RYCHLÝCH ODKAZŮ
   ===================================================================== */
#view-home .home-service-heading{
  margin-top:30px!important;
  padding-top:0!important;
}
#view-home .hero-v5{
  margin-bottom:0!important;
}
@media(max-width:700px){
  #view-home .home-service-heading{
    margin-top:22px!important;
  }
}


/* =====================================================================
   8.8 — DESIGN SYSTEM I
   Funkce zmrazeny. Celowebové sjednocení:
   hlavička / typografie / karty / tlačítka / týmy / detail týmu.
   ===================================================================== */

:root{
  --ds-blue:#1554a5;
  --ds-blue-700:#0f447f;
  --ds-blue-900:#0b2f5c;
  --ds-red:#d71920;
  --ds-red-700:#b31319;
  --ds-ink:#12243a;
  --ds-text:#334960;
  --ds-muted:#73869a;
  --ds-line:#d9e3ee;
  --ds-soft:#f5f8fc;
  --ds-card:#fff;
  --ds-radius:14px;
  --ds-radius-sm:10px;
  --ds-shadow:0 8px 24px rgba(24,56,92,.055);
  --ds-shadow-hover:0 14px 32px rgba(24,56,92,.10);
  --ds-section:48px;
}

/* ---------------------------------------------------------------
   BRAND / LOADING STABILITY
   --------------------------------------------------------------- */
body:not(.brand-ready) .brand-logo-wrap,
body:not(.brand-ready) .brand-copy{
  opacity:0;
}
.brand-logo-wrap,
.brand-copy{
  transition:opacity .12s ease-out;
}
@media (prefers-reduced-motion:reduce){
  .brand-logo-wrap,.brand-copy{transition:none}
}

/* ---------------------------------------------------------------
   GLOBAL TYPOGRAPHY / RHYTHM
   --------------------------------------------------------------- */
html{
  text-rendering:optimizeLegibility;
}
body{
  font-family:"Inter","Aptos","Segoe UI",Arial,sans-serif!important;
  color:var(--ds-ink)!important;
  background:#f3f7fb!important;
  -webkit-font-smoothing:antialiased;
}
.wrap{
  width:min(1320px,calc(100% - 48px))!important;
  max-width:1320px!important;
}
.section{
  padding-top:var(--ds-section)!important;
}
.section-kicker{
  color:var(--ds-red)!important;
  font-size:.62rem!important;
  font-weight:950!important;
  letter-spacing:.13em!important;
}
.section-heading{
  gap:24px!important;
}
.section-heading h2,
.home-final-heading h2{
  color:var(--ds-blue-900)!important;
  font-size:clamp(1.75rem,2.2vw,2.25rem)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
.section-heading p,
.home-final-heading p{
  color:var(--ds-muted)!important;
  font-size:.72rem!important;
  line-height:1.5!important;
}
.text-link{
  color:var(--ds-blue)!important;
  font-size:.66rem!important;
  font-weight:900!important;
}
.text-link:hover{
  color:var(--ds-red)!important;
}

/* ---------------------------------------------------------------
   BUTTON SYSTEM
   --------------------------------------------------------------- */
.button,
.header-program,
.filter-button{
  border-radius:9px!important;
}
.button{
  min-height:42px!important;
  padding:0 15px!important;
  font-size:.66rem!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}
.button-primary{
  color:#fff!important;
  background:linear-gradient(135deg,var(--ds-red),#ec3037)!important;
  border:1px solid transparent!important;
  box-shadow:0 7px 17px rgba(215,25,32,.15)!important;
}
.button-primary:hover{
  background:linear-gradient(135deg,var(--ds-red-700),var(--ds-red))!important;
  transform:translateY(-1px);
}
.button-ghost{
  color:var(--ds-blue)!important;
  background:#fff!important;
  border:1px solid #b9cde2!important;
}
.button-ghost:hover{
  color:#fff!important;
  background:var(--ds-blue)!important;
  border-color:var(--ds-blue)!important;
}

/* ---------------------------------------------------------------
   HEADER
   --------------------------------------------------------------- */
.utility-bar{
  min-height:28px!important;
}
.utility-inner{
  min-height:28px!important;
}
.site-header{
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid var(--ds-line)!important;
  box-shadow:0 4px 18px rgba(24,56,92,.045)!important;
}
.header-main{
  min-height:74px!important;
}
.brand{
  gap:11px!important;
}
.brand-logo{
  width:48px!important;
  height:48px!important;
}
.brand-copy strong{
  color:var(--ds-ink)!important;
  font-size:1rem!important;
  line-height:1.08!important;
  letter-spacing:-.018em!important;
}
.brand-copy small{
  margin-top:4px!important;
  color:#7b8da0!important;
  font-size:.51rem!important;
  letter-spacing:.075em!important;
}
.main-nav{
  gap:3px!important;
}
.main-nav>a,
.nav-group>summary{
  min-height:38px!important;
  padding:0 10px!important;
  color:#31465d!important;
  font-size:.64rem!important;
  font-weight:900!important;
  border-radius:8px!important;
}
.main-nav>a:hover,
.nav-group>summary:hover,
.main-nav>a.active,
.nav-group.group-active>summary{
  color:var(--ds-blue)!important;
  background:#edf4fb!important;
}
.main-nav>a.active:after,
.nav-group.group-active>summary:after{
  border-color:var(--ds-red)!important;
}
.header-program{
  min-height:40px!important;
  padding:0 15px!important;
  font-size:.65rem!important;
}

/* ---------------------------------------------------------------
   GENERIC PAGE HERO
   --------------------------------------------------------------- */
.page-hero:not(.article-pro-pagebar):not(.player-pro-pagehero){
  min-height:auto!important;
  padding:34px 0 36px!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.13),transparent 24%),
    radial-gradient(circle at 98% 105%,rgba(215,25,32,.20),transparent 32%),
    linear-gradient(118deg,var(--ds-blue-900),var(--ds-blue) 72%,#2c70bd)!important;
}
.page-hero:not(.article-pro-pagebar):not(.player-pro-pagehero) h1{
  margin-top:6px!important;
  color:#fff!important;
  font-size:clamp(2.3rem,3.8vw,3.5rem)!important;
  line-height:.94!important;
  letter-spacing:-.045em!important;
}
.page-hero:not(.article-pro-pagebar):not(.player-pro-pagehero) p{
  max-width:740px;
  margin-top:9px!important;
  color:#dce9f6!important;
  font-size:.78rem!important;
  line-height:1.55!important;
}

/* ---------------------------------------------------------------
   GENERIC CARD SYSTEM
   --------------------------------------------------------------- */
.content-card,
.news-card,
.team-card,
.team-summary-card,
.team-section-card,
.team-roster-card,
.matches-control-panel,
.match-row,
.competition-current-card,
.table-picker,
.table-pro-card,
.club-contact-card,
.partner-pro-card{
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius)!important;
  background:var(--ds-card)!important;
  box-shadow:var(--ds-shadow)!important;
}
.news-card:hover,
.team-card:hover,
.match-row:hover,
.partner-pro-card:hover{
  border-color:#bfd1e4!important;
  box-shadow:var(--ds-shadow-hover)!important;
}

/* ---------------------------------------------------------------
   TEAMS OVERVIEW
   --------------------------------------------------------------- */
.teams-final-body{
  padding-top:24px!important;
  padding-bottom:52px!important;
}
.teams-final-intro{
  min-height:78px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  padding:14px 18px!important;
  margin-bottom:18px!important;
  border:1px solid var(--ds-line)!important;
  border-left:4px solid var(--ds-red)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.teams-final-intro>div{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.teams-final-intro span{
  color:var(--ds-red)!important;
  font-size:.52rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}
.teams-final-intro strong{
  color:var(--ds-blue-900)!important;
  font-size:1rem!important;
}
.teams-final-intro p{
  max-width:650px!important;
  margin:0!important;
  color:var(--ds-muted)!important;
  font-size:.69rem!important;
  line-height:1.45!important;
}
.teams-final-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
.teams-final-grid .team-final-card{
  min-height:268px!important;
  overflow:hidden!important;
  color:var(--ds-ink)!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.teams-final-grid .team-final-card:hover{
  transform:translateY(-3px)!important;
  border-color:#b9cee3!important;
  border-top-color:var(--ds-red)!important;
  box-shadow:var(--ds-shadow-hover)!important;
}
.teams-final-grid .team-card-top{
  min-height:88px!important;
  padding:14px 15px!important;
  border-bottom:1px solid #e5ebf2!important;
  background:
    linear-gradient(120deg,#f7fbff 0%,#fff 60%,#eef5fc 100%)!important;
}
.teams-final-grid .team-code{
  color:var(--ds-red)!important;
  font-size:2.6rem!important;
  line-height:.88!important;
}
.teams-final-grid .team-code-block small{
  margin-top:5px!important;
  color:#63788e!important;
  font-size:.50rem!important;
}
.teams-final-grid .team-card-club-logo img,
.teams-final-grid .team-card-club-logo .logo-placeholder{
  width:55px!important;
  height:55px!important;
}
.teams-final-grid .team-card-copy{
  min-height:89px!important;
  padding:12px 15px 11px!important;
  background:#fff!important;
}
.teams-final-grid .team-final-season{
  color:var(--ds-blue)!important;
  font-size:.49rem!important;
  font-weight:900!important;
}
.teams-final-grid .team-card-copy h3{
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.02rem!important;
  line-height:1.05!important;
}
.teams-final-grid .team-card-copy p{
  margin-top:6px!important;
  color:#708397!important;
  font-size:.59rem!important;
  line-height:1.35!important;
}
.teams-final-grid .team-final-scorer{
  min-height:52px!important;
  padding:8px 15px!important;
  border-top:1px solid #f0dfe1!important;
  border-bottom:1px solid #f0dfe1!important;
  background:linear-gradient(90deg,#fff2f3,#fff 75%)!important;
}
.teams-final-grid .team-final-scorer>span{
  color:var(--ds-red)!important;
}
.teams-final-grid .team-final-scorer>strong{
  color:var(--ds-ink)!important;
  font-size:.62rem!important;
}
.teams-final-grid .team-final-card-bottom{
  min-height:40px!important;
  padding:8px 15px!important;
  color:#718397!important;
  background:#fff!important;
}
.teams-final-grid .team-final-card-bottom strong{
  color:var(--ds-blue)!important;
}

/* ---------------------------------------------------------------
   TEAM DETAIL HERO
   --------------------------------------------------------------- */
.team-final-hero{
  padding:25px 0 30px!important;
}
.team-final-hero .back-link{
  display:inline-flex!important;
  margin-bottom:16px!important;
  color:#e8f2fc!important;
  font-size:.61rem!important;
  font-weight:850!important;
}
.team-pro-hero-grid{
  align-items:center!important;
  gap:28px!important;
}
.team-pro-title-line{
  gap:18px!important;
}
.team-pro-code{
  min-width:88px!important;
  color:#fff!important;
  font-size:5.2rem!important;
  line-height:.82!important;
  letter-spacing:-.07em!important;
}
.team-pro-title-line h1{
  color:#fff!important;
  font-size:clamp(2.4rem,4vw,3.7rem)!important;
  line-height:.95!important;
}
.team-pro-title-line p,
#teamCompetitions{
  margin-top:8px!important;
  color:#dce9f6!important;
  font-size:.72rem!important;
}
.team-competition-chips{
  gap:7px!important;
  margin-top:17px!important;
}
.team-competition-chips a{
  min-height:38px!important;
  padding:0 11px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:8px!important;
  color:#f5f9fd!important;
  background:rgba(255,255,255,.10)!important;
}
.team-competition-chips a.primary{
  border-color:rgba(255,255,255,.50)!important;
  background:rgba(255,255,255,.17)!important;
}
.team-competition-chips a span{
  font-size:.58rem!important;
  font-weight:900!important;
}
.team-competition-chips a small{
  margin-left:7px!important;
  color:#c8ddef!important;
  font-size:.48rem!important;
}
.team-hero-identity{
  min-width:310px!important;
  min-height:180px!important;
  padding:17px 20px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.11)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
  backdrop-filter:blur(8px);
}
.team-hero-crest img,
.team-hero-crest .logo-placeholder{
  width:96px!important;
  height:96px!important;
}
.team-hero-meta{
  padding-left:18px!important;
  border-left:1px solid rgba(255,255,255,.24)!important;
}
.team-hero-meta span{
  color:#bcd2e6!important;
}
.team-hero-meta strong{
  color:#fff!important;
  font-size:1.25rem!important;
}
.team-hero-meta small{
  color:#d9e8f5!important;
}

/* ---------------------------------------------------------------
   TEAM DETAIL BODY
   --------------------------------------------------------------- */
.team-final-body{
  padding-top:20px!important;
  padding-bottom:50px!important;
}
.team-summary-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.team-final-body .team-summary-card{
  min-height:103px!important;
  padding:14px 15px!important;
  border-top:3px solid var(--ds-blue)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.team-final-body .team-summary-card:nth-child(2){
  border-top-color:var(--ds-red)!important;
}
.team-final-body .team-summary-card>span{
  color:#6d8094!important;
  font-size:.51rem!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
.team-final-body .team-summary-card>strong{
  margin-top:8px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.65rem!important;
  line-height:1!important;
}
.team-final-body .team-summary-card>small{
  margin-top:6px!important;
  color:#8292a2!important;
  font-size:.53rem!important;
}

/* Best scorer */
.team-topscorer-panel{
  margin-top:10px!important;
}
.team-topscorer-card{
  border-left:4px solid var(--ds-red)!important;
  border-radius:12px!important;
  box-shadow:var(--ds-shadow)!important;
}
.team-topscorer-title{
  min-width:190px!important;
  background:#fff5f5!important;
}
.team-topscorer-player{
  min-height:88px!important;
}
.team-topscorer-copy strong{
  color:var(--ds-ink)!important;
  font-size:.72rem!important;
}
.team-topscorer-copy small{
  color:var(--ds-blue)!important;
}

/* Featured matches — white editorial cards instead of large colour blocks */
.team-final-body .team-featured-grid{
  gap:10px!important;
  margin-top:10px!important;
}
.team-final-body .team-feature-card,
.team-final-body .team-feature-card:nth-child(2){
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.team-final-body .team-feature-card:first-child{
  border-top:4px solid var(--ds-red)!important;
}
.team-final-body .team-feature-card:nth-child(2){
  border-top:4px solid var(--ds-blue)!important;
}
.team-final-body .team-feature-head{
  min-height:47px!important;
  padding:10px 13px!important;
  color:var(--ds-blue-900)!important;
  border-bottom:1px solid #e4ebf2!important;
  background:#f8fbfe!important;
}
.team-final-body .team-feature-head>span{
  color:var(--ds-blue-900)!important;
  font-size:.58rem!important;
}
.team-final-body .team-feature-head>strong{
  color:#fff!important;
  border:0!important;
}
.team-final-body .team-feature-head>strong.win{background:#18965a!important}
.team-final-body .team-feature-head>strong.loss{background:var(--ds-red)!important}
.team-final-body .team-feature-head>strong.draw{background:#718397!important}
.team-final-body .team-feature-head>strong.next{
  color:var(--ds-blue)!important;
  background:#eaf2fb!important;
  border:1px solid #c9daeb!important;
}
#view-team .team-feature-card .match-large{
  min-height:205px!important;
  padding:16px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
}
#view-team .team-feature-card .match-large-link{
  color:var(--ds-ink)!important;
}
#view-team .team-feature-card .match-meta{
  color:#6f8295!important;
}
#view-team .team-feature-card .club-name{
  color:var(--ds-ink)!important;
}
#view-team .team-feature-card .score{
  color:var(--ds-blue-900)!important;
  text-shadow:none!important;
}
#view-team .team-feature-card .score.pending{
  color:#91a5b8!important;
}
#view-team .team-feature-card .match-bottom{
  color:#73869a!important;
}
#view-team .team-feature-card .match-large img,
#view-team .team-feature-card .match-large .logo-placeholder{
  width:68px!important;
  height:68px!important;
}

/* Content layout and headers */
.team-final-body .team-content-layout{
  grid-template-columns:minmax(0,1.62fr) minmax(300px,.70fr)!important;
  gap:12px!important;
  margin-top:12px!important;
}
.team-final-body .team-section-card,
.team-final-body .team-roster-card{
  border-radius:var(--ds-radius)!important;
}
.team-final-body .team-section-card>.team-section-title,
.team-final-body .team-roster-card>.team-section-title{
  min-height:50px!important;
  padding:10px 14px!important;
  border-bottom:1px solid #dce6ef!important;
  background:#f7fafe!important;
}
.team-final-body .team-section-card>.team-section-title>span,
.team-final-body .team-roster-card>.team-section-title>span{
  color:var(--ds-blue-900)!important;
  font-size:.74rem!important;
}
.team-final-body .team-section-card>.team-section-title>a,
.team-final-body .team-roster-card>.team-section-title>a,
.team-final-body .team-section-card>.team-section-title>small,
.team-final-body .team-roster-card>.team-section-title>small{
  color:var(--ds-blue)!important;
  font-size:.58rem!important;
}
.team-final-body .team-match-list{
  padding:9px!important;
}
.team-final-body .team-match-list .match-row{
  min-height:72px!important;
  border-radius:9px!important;
  box-shadow:none!important;
}

/* Roster */
.team-final-body .team-roster-card{
  position:sticky;
  top:94px!important;
}
.team-final-body .team-roster-grid{
  max-height:700px!important;
}
.team-final-body .team-roster-player{
  min-height:72px!important;
  padding:9px 11px!important;
  background:#fff!important;
}
.team-final-body .team-roster-player:hover{
  background:#f4f8fc!important;
}
.team-final-body .team-roster-copy strong{
  color:var(--ds-ink)!important;
  font-size:.66rem!important;
}
.team-final-body .team-roster-copy span{
  color:var(--ds-blue)!important;
  font-size:.52rem!important;
}

/* ---------------------------------------------------------------
   EMPTY / ERROR / SKELETON CONSISTENCY
   --------------------------------------------------------------- */
.empty,
.dark-empty{
  color:#718397!important;
  background:#f8fafc!important;
}
.skeleton-box{
  background:
    linear-gradient(90deg,#f3f6fa 25%,#fafcff 37%,#f3f6fa 63%)!important;
  background-size:400% 100%!important;
}

/* ---------------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------------- */
@media(max-width:1100px){
  .wrap{
    width:min(100% - 34px,1320px)!important;
  }
  .teams-final-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .team-pro-code{
    min-width:72px!important;
    font-size:4.3rem!important;
  }
  .team-hero-identity{
    min-width:270px!important;
  }
  .team-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .team-final-body .team-content-layout{
    grid-template-columns:1fr!important;
  }
  .team-final-body .team-roster-card{
    position:static!important;
  }
  .team-final-body .team-roster-grid{
    max-height:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:800px){
  .wrap{
    width:min(100% - 26px,1320px)!important;
  }
  .header-main{
    min-height:64px!important;
  }
  .brand-logo{
    width:42px!important;
    height:42px!important;
  }
  .brand-copy strong{
    font-size:.80rem!important;
  }
  .brand-copy small{
    font-size:.45rem!important;
  }
  .page-hero:not(.article-pro-pagebar):not(.player-pro-pagehero){
    padding:26px 0 29px!important;
  }
  .teams-final-intro{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .team-pro-hero-grid{
    grid-template-columns:1fr!important;
  }
  .team-hero-identity{
    min-width:0!important;
    width:100%!important;
    min-height:120px!important;
  }
}

@media(max-width:700px){
  :root{--ds-section:34px}
  .wrap{
    width:calc(100% - 22px)!important;
  }
  .section-heading{
    align-items:flex-start!important;
  }
  .section-heading h2,
  .home-final-heading h2{
    font-size:1.65rem!important;
  }
  .teams-final-grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  .teams-final-grid .team-final-card{
    min-height:244px!important;
  }
  .team-pro-title-line{
    align-items:flex-end!important;
    gap:12px!important;
  }
  .team-pro-code{
    min-width:54px!important;
    font-size:3.5rem!important;
  }
  .team-pro-title-line h1{
    font-size:2rem!important;
  }
  .team-competition-chips{
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
  }
  .team-competition-chips::-webkit-scrollbar{display:none}
  .team-competition-chips a{
    flex:0 0 auto!important;
  }
  .team-summary-grid{
    gap:7px!important;
  }
  .team-final-body .team-summary-card{
    min-height:92px!important;
    padding:11px!important;
  }
  .team-final-body .team-summary-card>strong{
    font-size:1.35rem!important;
  }
  .team-topscorer-card{
    grid-template-columns:1fr!important;
  }
  .team-topscorer-title{
    border-right:0!important;
    border-bottom:1px solid #eedfe1!important;
  }
  .team-final-body .team-featured-grid{
    grid-template-columns:1fr!important;
  }
  .team-final-body .team-roster-grid{
    grid-template-columns:1fr!important;
  }
}


/* =====================================================================
   8.9 — DESIGN SYSTEM II
   SPORTOVNÍ ČÁST: detail týmu / Program / Výsledky / detail zápasu /
   Soutěže / Tabulky
   ===================================================================== */

/* ------------------------------------------------------------------
   DETAIL TÝMU — hero sjednocený s ostatními stránkami
   ------------------------------------------------------------------ */
.team-final-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(255,255,255,.13),transparent 23%),
    radial-gradient(circle at 98% 108%,rgba(215,25,32,.22),transparent 33%),
    linear-gradient(118deg,var(--ds-blue-900),var(--ds-blue) 72%,#2c70bd)!important;
}
.team-final-hero:after{
  height:4px!important;
  background:linear-gradient(90deg,var(--ds-red) 0 46%,#fff 46% 50%,var(--ds-blue) 50% 100%)!important;
}
.team-final-hero .section-kicker{
  color:#ffb8bc!important;
}
.team-final-hero .team-hero-identity{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:0 12px 34px rgba(5,33,72,.11),inset 0 1px 0 rgba(255,255,255,.13)!important;
}

/* ------------------------------------------------------------------
   PROGRAM / VÝSLEDKY — ovládací panel
   ------------------------------------------------------------------ */
.matches-final-body{
  padding-top:22px!important;
  padding-bottom:52px!important;
}
.matches-control-panel{
  overflow:hidden!important;
  margin-bottom:22px!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.results-control-panel{
  border-top-color:var(--ds-red)!important;
}
.matches-control-head{
  min-height:72px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:13px 17px!important;
  border-bottom:1px solid #e3eaf2!important;
  background:#f8fbfe!important;
}
.matches-control-head>div{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.matches-control-head span{
  color:var(--ds-red)!important;
  font-size:.51rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}
.matches-control-head strong{
  color:var(--ds-blue-900)!important;
  font-size:.94rem!important;
}
.matches-control-head p{
  max-width:650px!important;
  margin:0!important;
  color:var(--ds-muted)!important;
  font-size:.65rem!important;
  line-height:1.45!important;
}
.matches-control-group{
  display:grid!important;
  grid-template-columns:100px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:11px 16px!important;
  border-bottom:1px solid #edf1f5!important;
}
.matches-control-group:last-child{
  border-bottom:0!important;
}
.matches-control-group>span{
  color:#6f8193!important;
  font-size:.55rem!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
}
.matches-control-group .filter-bar{
  gap:6px!important;
}
.matches-control-group .filter-button{
  min-height:34px!important;
  padding:0 11px!important;
  border:1px solid #d6e1ec!important;
  color:#536a82!important;
  background:#fff!important;
  font-size:.56rem!important;
  box-shadow:none!important;
}
.matches-control-group .filter-button:hover{
  color:var(--ds-blue)!important;
  border-color:#b8cee3!important;
  background:#f4f8fc!important;
}
.matches-control-group .filter-button.active{
  color:#fff!important;
  border-color:var(--ds-blue)!important;
  background:var(--ds-blue)!important;
  box-shadow:inset 0 -3px 0 var(--ds-red)!important;
}

/* seznam zápasů */
.matches-list-heading{
  min-height:58px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-bottom:10px!important;
}
.matches-list-heading span{
  color:var(--ds-red)!important;
  font-size:.53rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}
.matches-list-heading h2{
  margin:4px 0 0!important;
  color:var(--ds-blue-900)!important;
  font-size:1.55rem!important;
  line-height:1!important;
}
.matches-count{
  color:var(--ds-blue)!important;
  font-size:.65rem!important;
}
.matches-final-list{
  gap:8px!important;
}
.matches-final-list .match-row{
  min-height:82px!important;
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-left:4px solid var(--ds-blue)!important;
  border-radius:11px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
  box-shadow:0 5px 17px rgba(24,56,92,.04)!important;
}
.schedule-final-list .match-row{
  border-left-color:var(--ds-red)!important;
}
.matches-final-list .match-row:hover{
  transform:translateY(-1px)!important;
  border-color:#bdd0e3!important;
  box-shadow:0 9px 22px rgba(24,56,92,.075)!important;
}
.matches-final-list .match-row-date,
.matches-final-list .match-row-comp{
  color:#728598!important;
}
.matches-final-list .match-row-date strong{
  color:var(--ds-blue-900)!important;
}
.matches-final-list .match-row-team{
  color:#243a52!important;
  font-weight:900!important;
}
.matches-final-list .match-row-score{
  color:var(--ds-blue-900)!important;
  font-size:1.12rem!important;
  font-weight:1000!important;
  text-shadow:none!important;
}
.schedule-final-list .match-row-score{
  color:#93a6b9!important;
}

/* ------------------------------------------------------------------
   DETAIL ZÁPASU
   ------------------------------------------------------------------ */
.match-final-body{
  padding-top:22px!important;
  padding-bottom:52px!important;
}
.match-final-body .match-pro-scorecard{
  overflow:hidden!important;
  padding:0!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:18px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
  box-shadow:0 13px 36px rgba(24,56,92,.09)!important;
}
.match-final-body .match-pro-scorecard:before{
  display:none!important;
}
.match-pro-topline{
  min-height:62px!important;
  padding:13px 18px!important;
  border-bottom:1px solid #e3eaf1!important;
  color:var(--ds-ink)!important;
  background:#f8fbfe!important;
}
.match-pro-topline span{
  color:var(--ds-blue-900)!important;
  font-size:.68rem!important;
  font-weight:950!important;
}
.match-pro-topline small{
  margin-top:4px!important;
  color:#718599!important;
  font-size:.54rem!important;
}
.match-status-badge{
  color:#fff!important;
  background:var(--ds-blue)!important;
  border-radius:999px!important;
  box-shadow:none!important;
}
.match-status-badge.win,
.match-status-badge.is-win{
  background:#19945a!important;
}
.match-status-badge.loss,
.match-status-badge.is-loss{
  background:var(--ds-red)!important;
}
.match-status-badge.draw,
.match-status-badge.is-draw{
  background:#75889a!important;
}
.match-pro-datetime{
  margin:0!important;
  padding:18px 18px 4px!important;
  color:#657a8f!important;
}
.match-pro-datetime strong{
  color:var(--ds-blue-900)!important;
}
.match-pro-score{
  padding:20px 24px 26px!important;
}
.match-pro-club strong{
  color:var(--ds-ink)!important;
  font-size:.88rem!important;
}
.match-pro-logo img,
.match-pro-logo .logo-placeholder{
  width:92px!important;
  height:92px!important;
}
.match-pro-result span{
  color:var(--ds-blue-900)!important;
  font-size:clamp(2.5rem,4vw,4.2rem)!important;
  text-shadow:none!important;
}
.match-pro-result small{
  color:#708398!important;
}
.match-pro-actions{
  gap:7px!important;
  padding:12px 18px!important;
  border-top:1px solid #e3eaf1!important;
  background:#f8fbfe!important;
}
.match-pro-action{
  min-height:36px!important;
  padding:0 11px!important;
  border:1px solid #cbd9e7!important;
  border-radius:8px!important;
  color:var(--ds-blue)!important;
  background:#fff!important;
  font-size:.54rem!important;
  font-weight:900!important;
}
.match-pro-action:hover{
  color:#fff!important;
  border-color:var(--ds-blue)!important;
  background:var(--ds-blue)!important;
}
.match-pro-action.primary{
  color:#fff!important;
  border-color:var(--ds-red)!important;
  background:var(--ds-red)!important;
}
.match-pro-action.primary:hover{
  background:var(--ds-red-700)!important;
}
.match-pro-layout{
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.62fr)!important;
  gap:12px!important;
  margin-top:12px!important;
}
.match-pro-main,
.match-pro-side{
  gap:10px!important;
}
.match-pro-section{
  overflow:hidden!important;
  border-radius:var(--ds-radius)!important;
}
.match-pro-section>.content-card-title,
.match-pro-title{
  min-height:48px!important;
  padding:10px 14px!important;
  border-bottom:1px solid #dfe7ef!important;
  color:var(--ds-blue-900)!important;
  background:#f8fbfe!important;
}
.match-pro-section>.content-card-title>span,
.match-pro-title>span{
  color:var(--ds-blue-900)!important;
  font-size:.70rem!important;
}
.match-pro-section>.content-card-title>small,
.match-pro-title>small{
  color:var(--ds-blue)!important;
  font-size:.54rem!important;
}
.match-context-grid{
  gap:0!important;
}
.match-context-grid>div{
  min-height:88px!important;
  padding:14px!important;
  border-right:1px solid #edf1f5!important;
  border-bottom:1px solid #edf1f5!important;
  background:#fff!important;
}
.match-context-grid>div span{
  color:#73869a!important;
  font-size:.48rem!important;
}
.match-context-grid>div strong{
  margin-top:6px!important;
  color:var(--ds-blue-900)!important;
  font-size:.86rem!important;
}
.match-pro-facts{
  padding:6px 12px 12px!important;
}
.match-pro-facts>div{
  padding:10px 2px!important;
  border-bottom:1px solid #edf1f5!important;
}
.match-pro-facts>div span{
  color:#75889a!important;
}
.match-pro-facts>div strong{
  color:var(--ds-ink)!important;
}
.match-roster{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.match-roster-player{
  min-height:72px!important;
  padding:9px 11px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
}
.match-roster-player:hover{
  background:#f5f9fd!important;
}
.match-roster-copy strong{
  color:var(--ds-ink)!important;
}
.match-season-nav-grid a{
  border:1px solid #dce5ee!important;
  border-radius:9px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
}
.match-season-nav-grid a:hover{
  border-color:#b9cee3!important;
  background:#f7fafe!important;
}
.match-season-nav-grid a span{
  color:var(--ds-red)!important;
}
.match-season-nav-grid a.next span{
  color:var(--ds-blue)!important;
}

/* ------------------------------------------------------------------
   SOUTĚŽE — přehled
   ------------------------------------------------------------------ */
.competitions-final-body{
  padding-top:22px!important;
  padding-bottom:52px!important;
}
.competition-current-season{
  min-height:86px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  padding:15px 18px!important;
  margin-bottom:14px!important;
  border:1px solid var(--ds-line)!important;
  border-left:4px solid var(--ds-red)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.competition-current-season-main{
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
}
.competition-current-season-main>div{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.competition-current-season-main span{
  color:var(--ds-red)!important;
  font-size:.51rem!important;
  font-weight:950!important;
}
.competition-current-season-main strong{
  color:var(--ds-blue-900)!important;
  font-size:1.15rem!important;
}
.competition-current-season-main p{
  margin:0!important;
  color:var(--ds-muted)!important;
  font-size:.66rem!important;
}
.competition-current-season>a{
  color:var(--ds-blue)!important;
  font-size:.61rem!important;
  font-weight:900!important;
}
.competition-current-teams{
  gap:12px!important;
}
.competition-team-section{
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.competition-team-identity{
  min-height:84px!important;
  padding:12px 15px!important;
  border-bottom:1px solid #e4ebf2!important;
  background:
    linear-gradient(120deg,#f7fbff 0%,#fff 62%,#eef5fc 100%)!important;
}
.competition-team-code{
  min-width:72px!important;
  color:var(--ds-red)!important;
  font-size:2.75rem!important;
}
.competition-team-identity span{
  color:#6e8295!important;
}
.competition-team-identity h2{
  color:var(--ds-blue-900)!important;
  font-size:1.1rem!important;
}
.competition-team-identity>a{
  color:var(--ds-blue)!important;
  font-size:.58rem!important;
  font-weight:900!important;
}
.competition-current-grid{
  gap:9px!important;
  padding:10px!important;
}
.competition-current-card{
  min-height:155px!important;
  border:1px solid #dce5ee!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:11px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
  box-shadow:none!important;
}
.competition-current-card.cup{
  border-top-color:var(--ds-red)!important;
}
.competition-current-card:hover{
  border-color:#bbcee1!important;
  box-shadow:0 9px 22px rgba(24,56,92,.07)!important;
}
.competition-current-card-top{
  color:#75879a!important;
}
.competition-kind{
  color:#fff!important;
  border-radius:999px!important;
}
.competition-kind.league{
  background:var(--ds-blue)!important;
}
.competition-kind.cup{
  background:var(--ds-red)!important;
}
.competition-current-card h3{
  color:var(--ds-blue-900)!important;
  font-size:.88rem!important;
}
.competition-current-line{
  color:#5f7489!important;
}
.competition-current-link{
  color:var(--ds-blue)!important;
  border-top-color:#edf1f5!important;
}

/* ------------------------------------------------------------------
   DETAIL SOUTĚŽE
   ------------------------------------------------------------------ */
.competition-final-body{
  padding-top:22px!important;
  padding-bottom:52px!important;
}
.competition-detail-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  margin-bottom:10px!important;
}
.competition-detail-stat{
  min-height:102px!important;
  padding:14px!important;
  border:1px solid var(--ds-line)!important;
  border-top:3px solid var(--ds-blue)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.competition-detail-stat:nth-child(2){
  border-top-color:var(--ds-red)!important;
}
.competition-detail-stat span{
  color:#728599!important;
  font-size:.50rem!important;
  font-weight:950!important;
}
.competition-detail-stat strong{
  margin-top:7px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.5rem!important;
}
.competition-detail-stat small{
  color:#8494a4!important;
}
.competition-detail-table,
.competition-match-card{
  overflow:hidden!important;
  border-radius:var(--ds-radius)!important;
}
.competition-detail-title{
  min-height:49px!important;
  padding:10px 14px!important;
  border-bottom:1px solid #dfe7ef!important;
  color:var(--ds-blue-900)!important;
  background:#f8fbfe!important;
}
.competition-detail-title>span{
  color:var(--ds-blue-900)!important;
  font-size:.70rem!important;
}
.competition-detail-title>small{
  color:var(--ds-blue)!important;
}
.competition-inline-tabs{
  gap:5px!important;
}
.competition-inline-tabs button{
  min-height:31px!important;
  padding:0 9px!important;
  border:1px solid #d4e0eb!important;
  border-radius:7px!important;
  color:#667b90!important;
  background:#fff!important;
}
.competition-inline-tabs button.active{
  color:#fff!important;
  border-color:var(--ds-blue)!important;
  background:var(--ds-blue)!important;
}
.competition-match-columns{
  gap:10px!important;
  margin-top:10px!important;
}
.competition-match-list{
  padding:8px!important;
}
.competition-match-list .match-row{
  min-height:72px!important;
  border-radius:9px!important;
  box-shadow:none!important;
}

/* ------------------------------------------------------------------
   TABULKY — výběr + samotná tabulka
   ------------------------------------------------------------------ */
.table-final-body{
  padding-top:22px!important;
  padding-bottom:52px!important;
}
.table-picker{
  overflow:hidden!important;
  margin-bottom:12px!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}
.table-picker-row{
  min-height:74px!important;
  padding:11px 15px!important;
  border-bottom:1px solid #e6ecf2!important;
}
.table-picker-row:last-child{
  border-bottom:0!important;
}
.table-picker-label{
  min-width:205px!important;
}
.table-picker-label>span{
  width:36px!important;
  height:36px!important;
  color:#fff!important;
  border-radius:9px!important;
  background:var(--ds-blue)!important;
}
.table-picker-row:nth-of-type(2) .table-picker-label>span{
  background:var(--ds-red)!important;
}
.table-picker-label small{
  color:#75889b!important;
  font-size:.49rem!important;
}
.table-picker-label strong{
  color:var(--ds-blue-900)!important;
  font-size:.72rem!important;
}
.table-mode-tabs,
.table-team-selector,
.table-competition-selector,
.table-standing-tabs{
  gap:5px!important;
}
.table-mode-tabs button,
.table-team-selector button,
.table-competition-selector button,
.table-standing-tabs button{
  min-height:36px!important;
  border:1px solid #d4e0eb!important;
  border-radius:8px!important;
  color:#60758a!important;
  background:#fff!important;
  box-shadow:none!important;
}
.table-mode-tabs button:hover,
.table-team-selector button:hover,
.table-competition-selector button:hover,
.table-standing-tabs button:hover{
  color:var(--ds-blue)!important;
  border-color:#b7cde2!important;
  background:#f5f9fd!important;
}
.table-mode-tabs button.active,
.table-team-selector button.active,
.table-competition-selector button.active,
.table-standing-tabs button.active{
  color:#fff!important;
  border-color:var(--ds-blue)!important;
  background:var(--ds-blue)!important;
  box-shadow:inset 0 -3px 0 var(--ds-red)!important;
}
.table-team-selector button strong{
  color:inherit!important;
}
.table-history-season{
  padding:10px 15px!important;
  border-bottom:1px solid #e6ecf2!important;
  background:#f8fbfe!important;
}
.table-history-season label{
  color:#708397!important;
}
.table-history-season select{
  min-height:36px!important;
  border:1px solid #cedbe8!important;
  border-radius:8px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
}
.table-result-head{
  min-height:48px!important;
  margin-bottom:8px!important;
}
.table-detail-link{
  color:var(--ds-blue)!important;
  font-size:.60rem!important;
  font-weight:900!important;
}
.table-pro-card{
  overflow:hidden!important;
  border-radius:var(--ds-radius)!important;
}
.standings-pro-table thead th{
  height:44px!important;
  color:#61758a!important;
  border-bottom:1px solid #dfe7ef!important;
  background:#f8fbfe!important;
  font-size:.54rem!important;
}
.standings-pro-table tbody tr{
  height:62px!important;
  border-bottom:1px solid #edf1f5!important;
  background:#fff!important;
}
.standings-pro-table tbody tr:hover{
  background:#f8fbfe!important;
}
.standings-pro-table tr.own{
  background:linear-gradient(90deg,#fff1f2,#f6f9fd 65%)!important;
  box-shadow:inset 4px 0 0 var(--ds-red)!important;
}
.standings-rank{
  color:var(--ds-blue-900)!important;
}
.standings-team-name strong{
  color:var(--ds-ink)!important;
}
.standings-team-name em{
  color:#fff!important;
  background:var(--ds-red)!important;
}
.standings-team-copy small{
  color:#7c8d9d!important;
}
.standings-points strong{
  color:var(--ds-blue-900)!important;
  font-size:.88rem!important;
}
.standings-note{
  padding:9px 12px!important;
  color:#8191a1!important;
  border-top:1px solid #edf1f5!important;
  background:#fafcfe!important;
}

/* ------------------------------------------------------------------
   RESPONZIVITA SPORTOVNÍ ČÁSTI
   ------------------------------------------------------------------ */
@media(max-width:1050px){
  .match-pro-layout{
    grid-template-columns:1fr!important;
  }
  .competition-detail-summary{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:800px){
  .matches-control-head,
  .competition-current-season{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .matches-control-group{
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .competition-current-season-main{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .competition-match-columns{
    grid-template-columns:1fr!important;
  }
  .match-pro-score{
    padding-inline:14px!important;
  }
  .match-pro-logo img,
  .match-pro-logo .logo-placeholder{
    width:74px!important;
    height:74px!important;
  }
  .match-roster{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:700px){
  .matches-final-body,
  .match-final-body,
  .competitions-final-body,
  .competition-final-body,
  .table-final-body{
    padding-top:14px!important;
    padding-bottom:38px!important;
  }

  .matches-control-panel,
  .table-picker{
    border-radius:12px!important;
  }
  .matches-control-head{
    padding:11px!important;
  }
  .matches-control-group{
    padding:10px 11px!important;
  }
  .matches-control-group .filter-bar{
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
  }
  .matches-control-group .filter-bar::-webkit-scrollbar{display:none}
  .matches-control-group .filter-button{
    flex:0 0 auto!important;
  }

  .matches-final-list .match-row{
    min-height:0!important;
    padding:10px!important;
  }

  .match-pro-scorecard{
    border-radius:12px!important;
  }
  .match-pro-topline{
    padding:11px!important;
  }
  .match-pro-score{
    grid-template-columns:minmax(0,1fr) 78px minmax(0,1fr)!important;
    gap:7px!important;
    padding:16px 10px 22px!important;
  }
  .match-pro-logo img,
  .match-pro-logo .logo-placeholder{
    width:60px!important;
    height:60px!important;
  }
  .match-pro-club strong{
    font-size:.67rem!important;
  }
  .match-pro-result span{
    font-size:2.3rem!important;
  }
  .match-pro-actions{
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
  }
  .match-pro-actions::-webkit-scrollbar{display:none}
  .match-pro-action{
    flex:0 0 auto!important;
  }
  .match-context-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .competition-current-grid{
    grid-template-columns:1fr!important;
  }
  .competition-team-identity{
    grid-template-columns:auto 1fr!important;
  }
  .competition-team-identity>a{
    grid-column:1/-1!important;
  }
  .competition-detail-summary{
    gap:7px!important;
  }
  .competition-detail-stat{
    min-height:92px!important;
    padding:11px!important;
  }

  .table-picker-row{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:9px!important;
    padding:10px 11px!important;
  }
  .table-picker-label{
    min-width:0!important;
  }
  .table-mode-tabs,
  .table-team-selector,
  .table-competition-selector{
    width:100%!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
  }
  .table-mode-tabs::-webkit-scrollbar,
  .table-team-selector::-webkit-scrollbar,
  .table-competition-selector::-webkit-scrollbar{display:none}
  .table-mode-tabs button,
  .table-team-selector button,
  .table-competition-selector button{
    flex:0 0 auto!important;
  }
  .table-result-head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:7px!important;
  }
  .standings-mobile-row{
    border-bottom:1px solid #e8edf3!important;
    background:#fff!important;
  }
  .standings-mobile-row.own{
    background:linear-gradient(90deg,#fff1f2,#f7fafe)!important;
    box-shadow:inset 4px 0 0 var(--ds-red)!important;
  }
}


/* =====================================================================
   8.9.1 — DETAIL ZÁPASU: OPRAVA KONTRASTU
   Starší tmavé selektory měly vyšší specificitu a na bílé kartě nechávaly
   bílé názvy / skóre / datum. Tato vrstva je přepisuje cíleně.
   ===================================================================== */

.match-final-body .match-pro-scorecard{
  color:var(--ds-ink)!important;
  background:#fff!important;
}

/* Horní informace o soutěži */
.match-final-body .match-pro-topline{
  color:var(--ds-ink)!important;
  border-bottom:1px solid #e2e9f1!important;
  background:#f7fafe!important;
}
.match-final-body .match-pro-topline>div>span{
  color:var(--ds-blue-900)!important;
  font-size:.68rem!important;
  font-weight:950!important;
}
.match-final-body .match-pro-topline>div>small{
  color:#728599!important;
  font-size:.54rem!important;
}

/* Datum a čas */
.match-final-body .match-pro-datetime{
  margin:0!important;
  padding:18px 18px 4px!important;
  color:#6f8296!important;
  font-size:.66rem!important;
}
.match-final-body .match-pro-datetime strong{
  color:var(--ds-blue-900)!important;
  font-size:.70rem!important;
}
.match-final-body .match-pro-datetime span{
  padding:4px 8px!important;
  border:1px solid #d8e3ee!important;
  border-radius:999px!important;
  color:var(--ds-blue)!important;
  background:#fff!important;
  font-size:.62rem!important;
}

/* Hlavní skóre a názvy klubů */
.match-final-body .match-pro-score{
  max-width:920px!important;
  margin:0 auto!important;
  padding:20px 24px 28px!important;
}
.match-final-body .match-pro-club>strong{
  max-width:260px!important;
  color:var(--ds-ink)!important;
  font-size:.84rem!important;
  line-height:1.25!important;
}
.match-final-body .match-pro-result>span{
  display:block!important;
  color:var(--ds-blue-900)!important;
  font-size:clamp(3rem,5vw,4.7rem)!important;
  line-height:.88!important;
  font-weight:1000!important;
  letter-spacing:-.065em!important;
  text-shadow:none!important;
}
.match-final-body .match-pro-result>small{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:27px!important;
  margin-top:12px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  color:var(--ds-blue)!important;
  background:#edf4fb!important;
  font-size:.58rem!important;
  font-weight:900!important;
}

/* Loga mají jemné, nikoli tmavé halo */
.match-final-body .match-pro-logo{
  display:grid!important;
  place-items:center!important;
}
.match-final-body .match-pro-logo img,
.match-final-body .match-pro-logo .logo-placeholder{
  width:92px!important;
  height:92px!important;
  filter:none!important;
  box-shadow:none!important;
}

/* Akce pod skóre */
.match-final-body .match-pro-actions{
  margin-top:0!important;
  padding:12px 18px!important;
  border-top:1px solid #e2e9f1!important;
  background:#f7fafe!important;
}

/* Hero detailu zápasu stejně modrý jako ostatní sportovní stránky */
.match-final-hero{
  background:
    radial-gradient(circle at 84% 20%,rgba(255,255,255,.13),transparent 23%),
    radial-gradient(circle at 98% 108%,rgba(215,25,32,.22),transparent 33%),
    linear-gradient(118deg,var(--ds-blue-900),var(--ds-blue) 72%,#2c70bd)!important;
}
.match-final-hero .back-link{
  color:#e8f2fc!important;
}
.match-final-hero .section-kicker{
  color:#ffb8bc!important;
}
.match-final-hero p{
  color:#dce9f6!important;
}

/* Mobile */
@media(max-width:700px){
  .match-final-body .match-pro-score{
    grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr)!important;
    gap:8px!important;
    padding:16px 9px 22px!important;
  }
  .match-final-body .match-pro-result>span{
    font-size:2.35rem!important;
  }
  .match-final-body .match-pro-club>strong{
    font-size:.66rem!important;
  }
  .match-final-body .match-pro-logo img,
  .match-final-body .match-pro-logo .logo-placeholder{
    width:60px!important;
    height:60px!important;
  }
}


/* =====================================================================
   8.9.2 — DETAIL ZÁPASU: KOMPAKTNÍ HERO
   Po sjednocení sportovní části zůstal viditelný pouze spodní barevný proužek.
   Vracíme nadpis soutěže a metadata v nízké, praktické podobě.
   ===================================================================== */

#view-match .match-final-hero{
  display:block!important;
  min-height:0!important;
  padding:22px 0 24px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.10),transparent 26%),
    linear-gradient(118deg,var(--ds-blue-900),var(--ds-blue) 76%,#2b6db8)!important;
}
#view-match .match-final-hero>.wrap{
  display:block!important;
}
#view-match .match-final-hero .back-link{
  display:inline-flex!important;
  margin:0 0 10px!important;
  color:#e7f0fa!important;
  font-size:.58rem!important;
  font-weight:850!important;
}
#view-match .match-final-hero .section-kicker{
  display:inline-block!important;
  margin-left:8px!important;
  color:#ffb7bb!important;
  font-size:.50rem!important;
  font-weight:950!important;
  letter-spacing:.10em!important;
}
#view-match .match-final-hero h1{
  display:block!important;
  margin:0!important;
  color:#fff!important;
  font-size:clamp(2rem,3.1vw,3rem)!important;
  line-height:.95!important;
  letter-spacing:-.04em!important;
}
#view-match .match-final-hero p{
  display:block!important;
  margin:8px 0 0!important;
  color:#dce8f5!important;
  font-size:.68rem!important;
  line-height:1.45!important;
}
#view-match .match-final-hero:after{
  height:4px!important;
  background:linear-gradient(90deg,var(--ds-red) 0 46%,#fff 46% 50%,var(--ds-blue) 50% 100%)!important;
}

/* přiblíží hlavní kartu k hero bez zbytečně velké mezery */
#view-match .match-final-body{
  padding-top:18px!important;
}

@media(max-width:700px){
  #view-match .match-final-hero{
    padding:17px 0 19px!important;
  }
  #view-match .match-final-hero .back-link{
    margin-bottom:8px!important;
  }
  #view-match .match-final-hero h1{
    font-size:1.75rem!important;
  }
  #view-match .match-final-hero p{
    font-size:.60rem!important;
  }
}


/* =====================================================================
   8.9.3 — DETAIL ZÁPASU: LEPŠÍ ROZLOŽENÍ TEXTU
   ===================================================================== */

/* Hero: jasná vertikální hierarchie */
#view-match .match-final-hero>.wrap{
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:start!important;
  justify-items:start!important;
  gap:0!important;
}

#view-match .match-final-hero .back-link{
  order:1!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0 0 8px!important;
  padding:0!important;
  color:#edf4fb!important;
  font-size:.57rem!important;
  font-weight:850!important;
  line-height:1!important;
}

#view-match .match-final-hero .section-kicker{
  order:2!important;
  display:block!important;
  margin:0 0 8px!important;
  color:#ffb8bc!important;
  font-size:.50rem!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.12em!important;
}

#view-match .match-final-hero h1{
  order:3!important;
  display:block!important;
  margin:0!important;
  max-width:900px!important;
  color:#fff!important;
  font-size:clamp(2.15rem,3.35vw,3.2rem)!important;
  line-height:.95!important;
  letter-spacing:-.045em!important;
}

#view-match .match-final-hero p{
  order:4!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  align-items:center!important;
  margin:12px 0 0!important;
  color:#dce8f5!important;
  font-size:.66rem!important;
  line-height:1.4!important;
}

/* metadata line gets softer spacing rather than one dense sentence */
#view-match .match-final-hero p{
  word-spacing:.08em!important;
}

/* Main scorecard top bar */
.match-final-body .match-pro-topline{
  min-height:56px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:11px 16px!important;
}

.match-final-body .match-pro-topline>div{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

.match-final-body .match-pro-topline>div>span{
  margin:0!important;
  color:var(--ds-blue-900)!important;
  font-size:.64rem!important;
  font-weight:950!important;
  white-space:nowrap!important;
}

.match-final-body .match-pro-topline>div>small{
  margin:0!important;
  padding-left:10px!important;
  border-left:1px solid #d9e3ed!important;
  color:#75889b!important;
  font-size:.54rem!important;
  white-space:nowrap!important;
}

.match-final-body .match-status-badge{
  flex:0 0 auto!important;
}

/* Datum/čas visually centered over score */
.match-final-body .match-pro-datetime{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:16px 18px 0!important;
  text-align:center!important;
}

.match-final-body .match-pro-datetime strong{
  margin:0!important;
}

/* Main teams and score alignment */
.match-final-body .match-pro-score{
  display:grid!important;
  grid-template-columns:minmax(220px,1fr) minmax(170px,.72fr) minmax(220px,1fr)!important;
  align-items:center!important;
  justify-items:center!important;
  gap:24px!important;
  max-width:980px!important;
  margin:0 auto!important;
  padding:24px 32px 28px!important;
}

.match-final-body .match-pro-club{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:13px!important;
  text-align:center!important;
}

.match-final-body .match-pro-club>strong{
  min-height:2.5em!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  max-width:240px!important;
  margin:0 auto!important;
}

.match-final-body .match-pro-result{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}

/* Info cards below score */
.match-final-body .match-context-grid>div{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}

.match-final-body .match-context-grid>div span{
  margin-bottom:5px!important;
}

/* Mobile */
@media(max-width:700px){
  #view-match .match-final-hero{
    padding:16px 0 18px!important;
  }

  #view-match .match-final-hero .back-link{
    margin-bottom:7px!important;
  }

  #view-match .match-final-hero .section-kicker{
    margin-bottom:6px!important;
  }

  #view-match .match-final-hero h1{
    font-size:1.8rem!important;
  }

  #view-match .match-final-hero p{
    margin-top:9px!important;
    font-size:.58rem!important;
  }

  .match-final-body .match-pro-topline{
    align-items:flex-start!important;
    min-height:0!important;
    padding:10px 11px!important;
  }

  .match-final-body .match-pro-topline>div{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:3px!important;
  }

  .match-final-body .match-pro-topline>div>small{
    padding-left:0!important;
    border-left:0!important;
  }

  .match-final-body .match-pro-datetime{
    padding-top:13px!important;
  }

  .match-final-body .match-pro-score{
    grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr)!important;
    gap:8px!important;
    padding:15px 9px 21px!important;
  }

  .match-final-body .match-pro-club{
    gap:8px!important;
  }

  .match-final-body .match-pro-club>strong{
    min-height:2.8em!important;
    font-size:.65rem!important;
  }
}


/* =====================================================================
   8.9.4 — DETAIL ZÁPASU: CENTROVANÁ HORNÍ METADATA
   ===================================================================== */

/* scorecard header: center text, badge fixed in corner */
.match-final-body .match-pro-scorecard{
  overflow:hidden!important;
}

.match-final-body .match-pro-topline{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:12px 92px 12px 92px!important;
  text-align:center!important;
  border-bottom:1px solid #dfe7ef!important;
  background:#f7fbff!important;
}

.match-final-body .match-pro-topline>div{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-width:0!important;
  text-align:center!important;
}

.match-final-body .match-pro-topline>div>span{
  display:block!important;
  max-width:100%!important;
  padding:0 8px!important;
  color:var(--ds-blue-900)!important;
  font-size:.75rem!important;
  font-weight:950!important;
  line-height:1.1!important;
  white-space:normal!important;
  letter-spacing:.01em!important;
}

.match-final-body .match-pro-topline>div>small{
  display:block!important;
  max-width:100%!important;
  padding:0!important;
  border-left:0!important;
  color:#6d8195!important;
  font-size:.57rem!important;
  line-height:1.1!important;
  white-space:normal!important;
}

.match-final-body .match-status-badge{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  margin:0!important;
}

/* date row */
.match-final-body .match-pro-datetime{
  padding:18px 20px 4px!important;
  gap:10px!important;
}
.match-final-body .match-pro-datetime strong{
  font-size:.82rem!important;
  line-height:1.15!important;
}
.match-final-body .match-pro-datetime span{
  min-width:0!important;
}

/* more balanced score section */
.match-final-body .match-pro-score{
  grid-template-columns:minmax(200px,1fr) minmax(190px,.78fr) minmax(200px,1fr)!important;
  gap:18px!important;
  padding:20px 28px 26px!important;
}

.match-final-body .match-pro-logo img,
.match-final-body .match-pro-logo .logo-placeholder{
  width:84px!important;
  height:84px!important;
}

.match-final-body .match-pro-club>strong{
  align-items:center!important;
  min-height:2.3em!important;
  font-size:1rem!important;
  line-height:1.2!important;
}

.match-final-body .match-pro-result span{
  font-size:clamp(3.25rem,5vw,4.7rem)!important;
  line-height:.92!important;
}

.match-final-body .match-pro-result small{
  margin-top:10px!important;
}

.match-final-body .match-pro-actions{
  padding-top:14px!important;
}

@media(max-width:700px){
  .match-final-body .match-pro-topline{
    justify-content:flex-start!important;
    padding:10px 12px 10px 12px!important;
    text-align:left!important;
  }

  .match-final-body .match-pro-topline>div{
    align-items:flex-start!important;
    text-align:left!important;
    padding-right:74px!important;
  }

  .match-final-body .match-pro-topline>div>span{
    padding:0!important;
    font-size:.69rem!important;
  }

  .match-final-body .match-pro-topline>div>small{
    font-size:.54rem!important;
  }

  .match-final-body .match-status-badge{
    top:10px!important;
    right:10px!important;
  }

  .match-final-body .match-pro-datetime{
    flex-wrap:wrap!important;
    gap:6px!important;
    padding:12px 10px 2px!important;
  }

  .match-final-body .match-pro-datetime strong{
    width:100%!important;
    text-align:center!important;
    font-size:.72rem!important;
  }

  .match-final-body .match-pro-score{
    grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr)!important;
    gap:6px!important;
    padding:12px 10px 18px!important;
  }

  .match-final-body .match-pro-logo img,
  .match-final-body .match-pro-logo .logo-placeholder{
    width:66px!important;
    height:66px!important;
  }

  .match-final-body .match-pro-club>strong{
    font-size:.74rem!important;
    min-height:2.6em!important;
  }

  .match-final-body .match-pro-result span{
    font-size:2.7rem!important;
  }
}


/* =====================================================================
   8.9.5 — DETAIL ZÁPASU: OPRAVA POLOHY ŠTÍTKU STAVU
   ===================================================================== */
.match-final-body .match-pro-topline{
  min-height:64px!important;
  padding-right:104px!important;
}

.match-final-body .match-status-badge{
  position:absolute!important;
  top:50%!important;
  right:16px!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  min-height:30px!important;
  padding:0 12px!important;
  line-height:1!important;
  z-index:2!important;
}

@media(max-width:700px){
  .match-final-body .match-pro-topline{
    min-height:auto!important;
    padding-right:84px!important;
  }

  .match-final-body .match-status-badge{
    top:50%!important;
    right:10px!important;
    transform:translateY(-50%)!important;
    min-height:26px!important;
    padding:0 10px!important;
  }
}


/* =====================================================================
   8.9.6 — DETAIL ZÁPASU: STABILNÍ MŘÍŽKOVÉ USAZENÍ HORNÍ LIŠTY
   ===================================================================== */
.match-final-body .match-pro-topline{
  display:grid!important;
  grid-template-columns:minmax(88px,1fr) auto minmax(88px,1fr)!important;
  align-items:center!important;
  min-height:64px!important;
  padding:12px 16px!important;
}

.match-final-body .match-pro-topline>div{
  grid-column:2!important;
  width:auto!important;
  max-width:100%!important;
}

.match-final-body .match-status-badge{
  position:static!important;
  grid-column:3!important;
  justify-self:end!important;
  align-self:center!important;
  transform:none!important;
  top:auto!important;
  right:auto!important;
  margin:0!important;
  min-height:30px!important;
  padding:0 12px!important;
  line-height:1!important;
  z-index:auto!important;
}

@media(max-width:700px){
  .match-final-body .match-pro-topline{
    grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr)!important;
    min-height:58px!important;
    padding:10px 10px!important;
  }

  .match-final-body .match-status-badge{
    min-height:26px!important;
    padding:0 10px!important;
  }
}


/* =====================================================================
   8.10 — FINÁLNÍ POLISH SPORTOVNÍCH DETAILŮ
   Detail týmu + detail zápasu: stejné rozestupy, hlavičky, tlačítka a karty.
   ===================================================================== */

:root{
  --sport-gap:12px;
  --sport-head-h:52px;
  --sport-card-radius:14px;
  --sport-soft:#f7fafe;
  --sport-line:#dde6ef;
}

/* ------------------------------------------------------------------
   Společný rytmus detailů
   ------------------------------------------------------------------ */
#view-team .team-final-body,
#view-match .match-final-body{
  padding-top:18px!important;
  padding-bottom:52px!important;
}

#view-team .team-final-body > *,
#view-match .match-final-body #matchPageContent > *{
  scroll-margin-top:96px;
}

/* jednotný styl sekundárních odkazů */
#view-team .team-section-title a,
#view-match .match-pro-action:not(.primary),
#view-team .team-competition-chips a{
  transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease!important;
}

#view-team .team-section-title a:hover,
#view-match .match-pro-action:not(.primary):hover,
#view-team .team-competition-chips a:hover{
  transform:translateY(-1px)!important;
}

/* ------------------------------------------------------------------
   DETAIL TÝMU — kompaktnější a vyrovnanější
   ------------------------------------------------------------------ */
#view-team .team-final-hero{
  padding:22px 0 26px!important;
}

#view-team .team-final-hero .back-link{
  margin-bottom:12px!important;
  font-size:.58rem!important;
}

#view-team .team-pro-hero-grid{
  gap:22px!important;
}

#view-team .team-pro-heading{
  min-width:0!important;
}

#view-team .team-pro-title-line{
  align-items:flex-end!important;
  gap:16px!important;
}

#view-team .team-pro-code{
  min-width:74px!important;
  font-size:4.55rem!important;
  line-height:.80!important;
}

#view-team .team-pro-title-line h1{
  font-size:clamp(2.35rem,3.55vw,3.35rem)!important;
  line-height:.94!important;
}

#view-team #teamCompetitions{
  margin-top:6px!important;
  max-width:720px!important;
  line-height:1.35!important;
}

#view-team .team-competition-chips{
  margin-top:14px!important;
}

#view-team .team-competition-chips a{
  min-height:36px!important;
  border-radius:8px!important;
}

#view-team .team-hero-identity{
  min-width:292px!important;
  min-height:154px!important;
  border-radius:16px!important;
}

#view-team .team-hero-crest img,
#view-team .team-hero-crest .logo-placeholder{
  width:82px!important;
  height:82px!important;
}

#view-team .team-summary-grid{
  gap:var(--sport-gap)!important;
}

#view-team .team-summary-card{
  min-height:94px!important;
  padding:13px 14px!important;
  border-radius:12px!important;
  box-shadow:0 6px 18px rgba(24,56,92,.045)!important;
}

#view-team .team-summary-card>strong{
  margin-top:7px!important;
  font-size:1.52rem!important;
}

#view-team .team-summary-card>small{
  margin-top:5px!important;
}

/* nejlepší střelec - nižší, jako informační pás */
#view-team .team-topscorer-panel{
  margin-top:var(--sport-gap)!important;
}

#view-team .team-topscorer-card{
  min-height:78px!important;
  overflow:hidden!important;
  border:1px solid var(--sport-line)!important;
  border-left:4px solid var(--ds-red)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(24,56,92,.045)!important;
}

#view-team .team-topscorer-title{
  min-width:178px!important;
  padding:12px 14px!important;
}

#view-team .team-topscorer-player{
  min-height:76px!important;
  padding:8px 12px!important;
}

#view-team .team-topscorer-photo,
#view-team .team-topscorer-photo img,
#view-team .team-topscorer-photo .player-photo-fallback{
  width:52px!important;
  height:52px!important;
}

#view-team .team-topscorer-goals b{
  font-size:1.35rem!important;
}

/* Poslední / příští zápas */
#view-team .team-featured-grid{
  gap:var(--sport-gap)!important;
  margin-top:var(--sport-gap)!important;
}

#view-team .team-feature-card{
  border-radius:var(--sport-card-radius)!important;
  box-shadow:0 7px 21px rgba(24,56,92,.052)!important;
}

#view-team .team-feature-head{
  min-height:var(--sport-head-h)!important;
  padding:10px 14px!important;
  background:var(--sport-soft)!important;
}

#view-team .team-feature-head>span{
  font-size:.62rem!important;
  letter-spacing:.035em!important;
}

#view-team .team-feature-head>strong{
  min-height:25px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 9px!important;
  border-radius:999px!important;
  font-size:.50rem!important;
}

#view-team .team-feature-card .match-large{
  min-height:198px!important;
  padding:15px 16px 17px!important;
}

#view-team .team-feature-card .match-large img,
#view-team .team-feature-card .match-large .logo-placeholder{
  width:62px!important;
  height:62px!important;
}

#view-team .team-feature-card .score{
  font-size:2.3rem!important;
  line-height:.9!important;
}

/* Hlavní obsah týmu */
#view-team .team-content-layout{
  gap:var(--sport-gap)!important;
  margin-top:var(--sport-gap)!important;
}

#view-team .team-main-column{
  display:grid!important;
  gap:var(--sport-gap)!important;
}

#view-team .team-section-card,
#view-team .team-roster-card{
  overflow:hidden!important;
  border-radius:var(--sport-card-radius)!important;
  box-shadow:0 6px 18px rgba(24,56,92,.045)!important;
}

#view-team .team-section-card>.team-section-title,
#view-team .team-roster-card>.team-section-title{
  position:relative!important;
  min-height:var(--sport-head-h)!important;
  padding:10px 14px 10px 17px!important;
  background:var(--sport-soft)!important;
}

#view-team .team-section-card>.team-section-title:before,
#view-team .team-roster-card>.team-section-title:before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:var(--ds-blue);
}

#view-team .team-main-column .team-section-card:nth-child(2)>.team-section-title:before{
  background:var(--ds-red);
}

#view-team .team-section-title>span{
  font-size:.70rem!important;
  letter-spacing:.01em!important;
}

#view-team .team-section-title>a,
#view-team .team-section-title>small{
  font-size:.56rem!important;
}

#view-team .team-match-list{
  padding:8px!important;
}

#view-team .team-match-list .match-row{
  min-height:68px!important;
  margin-bottom:6px!important;
  border:1px solid #e3eaf1!important;
  border-left:3px solid var(--ds-blue)!important;
  background:#fff!important;
}

#view-team .team-match-list .match-row:last-child{
  margin-bottom:0!important;
}

#view-team .team-roster-grid{
  background:#fff!important;
}

#view-team .team-roster-player{
  min-height:66px!important;
  border-bottom:1px solid #edf1f5!important;
}

#view-team .team-roster-player:last-child{
  border-bottom:0!important;
}

/* ------------------------------------------------------------------
   DETAIL ZÁPASU — stejná geometrie jako tým
   ------------------------------------------------------------------ */
#view-match .match-final-hero{
  padding:20px 0 22px!important;
}

#view-match .match-final-hero .back-link{
  margin-bottom:7px!important;
}

#view-match .match-final-hero .section-kicker{
  margin-bottom:6px!important;
}

#view-match .match-final-hero h1{
  font-size:clamp(2.05rem,3.15vw,2.95rem)!important;
}

#view-match .match-final-hero p{
  margin-top:8px!important;
}

#view-match .match-pro-scorecard{
  border-radius:var(--sport-card-radius)!important;
  box-shadow:0 8px 24px rgba(24,56,92,.065)!important;
}

/* Stabilní horní lišta: soutěž uprostřed, stav vpravo */
#view-match .match-pro-topline{
  display:grid!important;
  grid-template-columns:minmax(88px,1fr) auto minmax(88px,1fr)!important;
  align-items:center!important;
  min-height:62px!important;
  padding:10px 16px!important;
  background:var(--sport-soft)!important;
}

#view-match .match-pro-topline>div{
  grid-column:2!important;
  width:auto!important;
  padding:0!important;
}

#view-match .match-pro-topline>div>span{
  font-size:.72rem!important;
}

#view-match .match-pro-topline>div>small{
  font-size:.55rem!important;
}

#view-match .match-status-badge{
  position:static!important;
  grid-column:3!important;
  justify-self:end!important;
  align-self:center!important;
  transform:none!important;
  top:auto!important;
  right:auto!important;
  margin-right:12px!important;
  min-height:29px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  font-size:.52rem!important;
}

#view-match .match-pro-datetime{
  padding:15px 18px 2px!important;
}

#view-match .match-pro-datetime strong{
  font-size:.78rem!important;
}

#view-match .match-pro-score{
  grid-template-columns:minmax(190px,1fr) minmax(180px,.72fr) minmax(190px,1fr)!important;
  gap:16px!important;
  max-width:930px!important;
  padding:18px 28px 24px!important;
}

#view-match .match-pro-logo img,
#view-match .match-pro-logo .logo-placeholder{
  width:78px!important;
  height:78px!important;
}

#view-match .match-pro-club>strong{
  min-height:2.2em!important;
  font-size:.92rem!important;
}

#view-match .match-pro-result>span{
  font-size:clamp(3.1rem,4.6vw,4.35rem)!important;
}

#view-match .match-pro-result>small{
  min-height:25px!important;
  margin-top:9px!important;
  padding:0 8px!important;
  font-size:.54rem!important;
}

#view-match .match-pro-actions{
  justify-content:center!important;
  gap:6px!important;
  padding:11px 14px!important;
  background:var(--sport-soft)!important;
}

#view-match .match-pro-action{
  min-height:36px!important;
  border-radius:8px!important;
  font-size:.55rem!important;
}

#view-match .match-pro-action.primary{
  box-shadow:0 5px 13px rgba(215,25,32,.12)!important;
}

#view-match .match-pro-layout{
  gap:var(--sport-gap)!important;
  margin-top:var(--sport-gap)!important;
}

#view-match .match-pro-main,
#view-match .match-pro-side{
  gap:var(--sport-gap)!important;
}

#view-match .match-pro-section,
#view-match .match-info-card{
  overflow:hidden!important;
  border-radius:var(--sport-card-radius)!important;
  box-shadow:0 6px 18px rgba(24,56,92,.045)!important;
}

#view-match .match-pro-section>.content-card-title,
#view-match .match-pro-title{
  position:relative!important;
  min-height:var(--sport-head-h)!important;
  padding:10px 14px 10px 17px!important;
  background:var(--sport-soft)!important;
}

#view-match .match-pro-section>.content-card-title:before,
#view-match .match-pro-title:before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:var(--ds-blue);
}

#view-match .match-pro-main .match-pro-section:first-child>.content-card-title:before,
#view-match .match-pro-main .match-pro-section:first-child>.match-pro-title:before{
  background:var(--ds-red);
}

#view-match .match-context-grid>div{
  min-height:82px!important;
  padding:12px 13px!important;
}

#view-match .match-pro-facts{
  padding:5px 12px 10px!important;
}

#view-match .match-pro-facts>div{
  padding:9px 2px!important;
}

#view-match .match-roster-player{
  min-height:67px!important;
}

/* ------------------------------------------------------------------
   Focus + interakce
   ------------------------------------------------------------------ */
#view-team a:focus-visible,
#view-match a:focus-visible,
#view-team button:focus-visible,
#view-match button:focus-visible{
  outline:3px solid rgba(21,84,165,.24)!important;
  outline-offset:2px!important;
}

/* ------------------------------------------------------------------
   Tablet / mobil
   ------------------------------------------------------------------ */
@media(max-width:900px){
  #view-team .team-hero-identity{
    min-width:250px!important;
  }

  #view-match .match-pro-score{
    grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr)!important;
  }
}

@media(max-width:700px){
  #view-team .team-final-body,
  #view-match .match-final-body{
    padding-top:14px!important;
    padding-bottom:38px!important;
  }

  #view-team .team-final-hero{
    padding:18px 0 20px!important;
  }

  #view-team .team-pro-title-line{
    gap:10px!important;
  }

  #view-team .team-pro-code{
    min-width:50px!important;
    font-size:3.35rem!important;
  }

  #view-team .team-pro-title-line h1{
    font-size:1.9rem!important;
  }

  #view-team .team-hero-identity{
    min-height:112px!important;
  }

  #view-team .team-summary-grid{
    gap:7px!important;
  }

  #view-team .team-summary-card{
    min-height:86px!important;
    padding:10px!important;
  }

  #view-team .team-topscorer-card{
    grid-template-columns:1fr!important;
  }

  #view-team .team-featured-grid{
    gap:8px!important;
  }

  #view-team .team-content-layout{
    gap:8px!important;
    margin-top:8px!important;
  }

  #view-team .team-main-column{
    gap:8px!important;
  }

  #view-match .match-final-hero{
    padding:16px 0 18px!important;
  }

  #view-match .match-pro-topline{
    grid-template-columns:minmax(68px,1fr) auto minmax(68px,1fr)!important;
    min-height:56px!important;
    padding:9px 10px!important;
  }

  #view-match .match-pro-topline>div>span{
    font-size:.65rem!important;
  }

  #view-match .match-status-badge{
    min-height:25px!important;
    padding:0 8px!important;
    font-size:.46rem!important;
  }

  #view-match .match-pro-datetime{
    flex-wrap:wrap!important;
    gap:6px!important;
    padding:11px 10px 1px!important;
  }

  #view-match .match-pro-datetime strong{
    width:100%!important;
    text-align:center!important;
    font-size:.69rem!important;
  }

  #view-match .match-pro-score{
    grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr)!important;
    gap:6px!important;
    padding:12px 8px 17px!important;
  }

  #view-match .match-pro-logo img,
  #view-match .match-pro-logo .logo-placeholder{
    width:58px!important;
    height:58px!important;
  }

  #view-match .match-pro-club>strong{
    min-height:2.5em!important;
    font-size:.68rem!important;
  }

  #view-match .match-pro-result>span{
    font-size:2.55rem!important;
  }

  #view-match .match-pro-layout{
    gap:8px!important;
    margin-top:8px!important;
  }

  #view-match .match-pro-main,
  #view-match .match-pro-side{
    gap:8px!important;
  }
}


/* =====================================================================
   8.11 — DESIGN SYSTEM III
   Aktuality / Hráči / Klub / Partneři / Kontakty / Patička / Mobil
   ===================================================================== */

/* ------------------------------------------------------------------
   Stabilita značky
   ------------------------------------------------------------------ */
body:not(.brand-ready) .footer-brand{
  opacity:0;
}
.footer-brand{
  transition:opacity .12s ease-out;
}
@media (prefers-reduced-motion:reduce){
  .footer-brand{transition:none}
}

/* =====================================================================
   AKTUALITY
   ===================================================================== */
.news-final-body{
  padding-top:24px!important;
  padding-bottom:52px!important;
}

.news-featured-wrap{
  margin-bottom:36px!important;
}

.news-final-body .news-card-featured{
  display:grid!important;
  grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr)!important;
  min-height:390px!important;
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-red)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 14px 36px rgba(24,56,92,.09)!important;
}

.news-final-body .news-card-featured .news-image{
  min-height:386px!important;
  border-radius:0!important;
  background:#eaf1f8!important;
}

.news-final-body .news-card-featured .news-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.news-final-body .news-card-featured .news-body{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:34px 34px 30px!important;
}

.news-final-body .news-card-featured .news-card-meta{
  margin-bottom:12px!important;
}

.news-final-body .news-card-featured .news-date{
  color:#76899b!important;
  font-size:.60rem!important;
  font-weight:850!important;
}

.news-source{
  color:#fff!important;
  background:var(--ds-blue)!important;
  border-radius:999px!important;
  padding:5px 8px!important;
  font-size:.46rem!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
}

.news-featured-kicker{
  margin-bottom:8px!important;
  color:var(--ds-red)!important;
  font-size:.52rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}

.news-final-body .news-card-featured h3{
  color:var(--ds-blue-900)!important;
  font-size:clamp(1.85rem,2.7vw,2.65rem)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}

.news-final-body .news-card-featured p{
  margin-top:14px!important;
  color:#63778c!important;
  font-size:.72rem!important;
  line-height:1.55!important;
}

.news-final-body .news-card-featured .news-read{
  margin-top:22px!important;
  color:var(--ds-blue)!important;
  font-size:.65rem!important;
  font-weight:950!important;
}

.news-final-archive{
  padding-top:0!important;
}

.news-final-heading{
  margin-bottom:14px!important;
}

.news-grid-page{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}

.news-grid-page .news-card{
  min-height:360px!important;
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.news-grid-page .news-card:hover{
  transform:translateY(-3px)!important;
  border-color:#bfd1e4!important;
  box-shadow:var(--ds-shadow-hover)!important;
}

.news-grid-page .news-image{
  height:190px!important;
  border-radius:0!important;
  background:#edf3f8!important;
}

.news-grid-page .news-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.news-grid-page .news-body{
  display:flex!important;
  flex-direction:column!important;
  min-height:168px!important;
  padding:14px 15px 15px!important;
}

.news-grid-page h3{
  color:var(--ds-blue-900)!important;
  font-size:.91rem!important;
  line-height:1.16!important;
}

.news-grid-page p{
  margin-top:7px!important;
  color:#74869a!important;
  font-size:.59rem!important;
  line-height:1.45!important;
}

.news-grid-page .news-read{
  margin-top:auto!important;
  padding-top:12px!important;
  color:var(--ds-blue)!important;
  font-size:.56rem!important;
  font-weight:950!important;
}

/* =====================================================================
   DETAIL AKTUALITY
   ===================================================================== */
.article-pro-pagebar{
  padding:20px 0 22px!important;
  background:
    radial-gradient(circle at 90% 12%,rgba(255,255,255,.10),transparent 25%),
    linear-gradient(118deg,var(--ds-blue-900),var(--ds-blue) 76%,#2b6db8)!important;
}

.article-pro-pagebar-inner{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px 12px!important;
}

.article-pro-pagebar .back-link{
  flex:0 0 100%!important;
  margin-bottom:2px!important;
  color:#e8f2fc!important;
  font-size:.58rem!important;
}

.article-pro-pagebar .section-kicker{
  color:#ffb6ba!important;
}

.article-pro-body{
  max-width:1180px!important;
  padding-top:24px!important;
  padding-bottom:56px!important;
}

.article-pro{
  padding:0!important;
}

.article-pro-header{
  max-width:920px!important;
  margin:0 auto 22px!important;
  text-align:left!important;
}

.article-pro-header .article-pro-kicker{
  color:var(--ds-red)!important;
  font-size:.55rem!important;
  font-weight:950!important;
  letter-spacing:.12em!important;
}

.article-pro-header h1{
  margin-top:8px!important;
  color:var(--ds-blue-900)!important;
  font-size:clamp(2.15rem,3.7vw,3.55rem)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}

.article-pro-meta{
  margin-top:13px!important;
  gap:8px 14px!important;
  color:#74879a!important;
  font-size:.61rem!important;
}

.article-pro-lead{
  max-width:820px!important;
  margin-top:18px!important;
  color:#4e657d!important;
  font-size:1rem!important;
  line-height:1.55!important;
  font-weight:650!important;
}

.article-pro-cover{
  overflow:hidden!important;
  max-width:1040px!important;
  margin:24px auto 28px!important;
  border:1px solid var(--ds-line)!important;
  border-radius:16px!important;
  background:#edf3f8!important;
  box-shadow:0 12px 30px rgba(24,56,92,.07)!important;
}

.article-pro-cover img{
  display:block!important;
  width:100%!important;
  max-height:650px!important;
  object-fit:cover!important;
}

.article-pro-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 250px!important;
  gap:28px!important;
  max-width:920px!important;
  margin:0 auto!important;
}

.article-pro-copy{
  color:#31475d!important;
  font-size:.91rem!important;
  line-height:1.75!important;
}

.article-pro-copy p{
  margin:0 0 1.22em!important;
}

.article-pro-side{
  position:sticky!important;
  top:100px!important;
  align-self:start!important;
  display:grid!important;
  gap:8px!important;
}

.article-pro-sidebox,
.article-source-link,
.article-share{
  border:1px solid var(--ds-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}

.article-pro-sidebox{
  padding:13px!important;
  border-top:3px solid var(--ds-blue)!important;
}

.article-pro-sidebox span{
  color:#778a9d!important;
  font-size:.48rem!important;
  font-weight:950!important;
}

.article-pro-sidebox strong{
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:.67rem!important;
}

.article-source-link,
.article-share{
  min-height:40px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 11px!important;
  color:var(--ds-blue)!important;
  font-size:.56rem!important;
  font-weight:900!important;
}

.article-share{
  color:#fff!important;
  border-color:var(--ds-red)!important;
  background:var(--ds-red)!important;
}

.article-pro-nav{
  max-width:920px!important;
  margin:28px auto 0!important;
  gap:10px!important;
}

.article-pro-nav-link{
  min-height:90px!important;
  padding:14px!important;
  border:1px solid var(--ds-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.article-pro-nav-link span{
  color:var(--ds-red)!important;
  font-size:.47rem!important;
}

.article-pro-nav-link.next span{
  color:var(--ds-blue)!important;
}

.article-pro-nav-link strong{
  margin-top:6px!important;
  color:var(--ds-blue-900)!important;
  font-size:.66rem!important;
  line-height:1.3!important;
}

.article-pro-back{
  max-width:920px!important;
  margin:18px auto 0!important;
}

/* =====================================================================
   HRÁČI — PŘEHLED
   ===================================================================== */
.players-final-body{
  padding-top:22px!important;
  padding-bottom:52px!important;
}

.players-final-toolbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 280px!important;
  align-items:end!important;
  gap:18px!important;
  margin-bottom:16px!important;
  padding:15px 16px!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.players-final-filter-wrap>span,
.players-final-search>span{
  display:block!important;
  margin-bottom:8px!important;
  color:#728599!important;
  font-size:.51rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}

.players-final-filter-wrap .filter-bar{
  gap:5px!important;
}

.players-final-filter-wrap .filter-button{
  min-height:34px!important;
  padding:0 10px!important;
  color:#5e7389!important;
  border:1px solid #d5e0eb!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:none!important;
}

.players-final-filter-wrap .filter-button.active{
  color:#fff!important;
  border-color:var(--ds-blue)!important;
  background:var(--ds-blue)!important;
  box-shadow:inset 0 -3px 0 var(--ds-red)!important;
}

.players-final-search input{
  width:100%!important;
  min-height:38px!important;
  padding:0 12px!important;
  border:1px solid #cddae7!important;
  border-radius:8px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
  outline:none!important;
}

.players-final-search input:focus{
  border-color:#8eb3d9!important;
  box-shadow:0 0 0 3px rgba(21,84,165,.08)!important;
}

.players-final-directory{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}

.players-final-directory .directory-player{
  min-height:92px!important;
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:9px 12px 9px 9px!important;
  border:1px solid var(--ds-line)!important;
  border-left:4px solid transparent!important;
  border-radius:12px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.players-final-directory .directory-player:hover{
  transform:translateY(-2px)!important;
  border-color:#bfd1e4!important;
  border-left-color:var(--ds-red)!important;
  box-shadow:var(--ds-shadow-hover)!important;
}

.players-final-directory .directory-photo,
.players-final-directory .directory-photo img,
.players-final-directory .directory-photo .player-photo-fallback{
  width:72px!important;
  height:72px!important;
  border-radius:10px!important;
  object-fit:cover!important;
}

.players-final-directory .directory-player strong{
  color:var(--ds-blue-900)!important;
  font-size:.68rem!important;
  line-height:1.2!important;
}

.players-final-directory .directory-player small{
  display:block!important;
  margin-top:5px!important;
  color:#73869a!important;
  font-size:.53rem!important;
  line-height:1.3!important;
}

/* =====================================================================
   HRÁČSKÁ KARTA
   ===================================================================== */
.player-final-body{
  padding-top:20px!important;
  padding-bottom:54px!important;
}

.player-final-body .player-pro-identity{
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:190px minmax(0,1fr) 290px!important;
  min-height:220px!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 12px 31px rgba(24,56,92,.075)!important;
}

.player-final-body .player-pro-photo,
.player-final-body .player-pro-photo img,
.player-final-body .player-pro-photo .player-photo-fallback{
  width:190px!important;
  height:100%!important;
  min-height:216px!important;
  border-radius:0!important;
  object-fit:cover!important;
}

.player-final-body .player-pro-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:24px 25px!important;
}

.player-final-body .player-pro-copy h2{
  margin-top:6px!important;
  color:var(--ds-blue-900)!important;
  font-size:clamp(2rem,3vw,3rem)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}

.player-final-body .player-pro-copy p{
  margin-top:10px!important;
  color:#73869a!important;
  font-size:.67rem!important;
}

.player-final-body .player-pro-teamchips{
  gap:6px!important;
  margin-top:16px!important;
}

.player-final-body .player-pro-teamchips a,
.player-final-body .player-pro-teamchips span{
  min-height:32px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:0 10px!important;
  color:var(--ds-blue)!important;
  border:1px solid #cbd9e7!important;
  border-radius:999px!important;
  background:#f7fbff!important;
  font-size:.54rem!important;
  font-weight:900!important;
}

.player-final-body .player-pro-club{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  padding:20px!important;
  border-left:1px solid #e2e9f0!important;
  background:
    radial-gradient(circle at 70% 20%,rgba(21,84,165,.10),transparent 35%),
    #f8fbfe!important;
}

.player-final-body .player-pro-clubcrest img,
.player-final-body .player-pro-clubcrest .logo-placeholder{
  width:76px!important;
  height:76px!important;
}

.player-final-body .player-pro-current-season{
  text-align:center!important;
}

.player-final-body .player-pro-current-season span{
  color:var(--ds-red)!important;
  font-size:.48rem!important;
  font-weight:950!important;
}

.player-final-body .player-pro-current-season strong{
  display:block!important;
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:.92rem!important;
}

.player-final-body .player-pro-current-season small{
  display:block!important;
  margin-top:5px!important;
  color:#73869a!important;
  font-size:.50rem!important;
  line-height:1.3!important;
}

.player-final-body .player-pro-statgrid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:9px!important;
  margin-top:10px!important;
}

.player-final-body .player-pro-stat{
  min-height:96px!important;
  padding:12px!important;
  border:1px solid var(--ds-line)!important;
  border-top:3px solid var(--ds-blue)!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.player-final-body .player-pro-stat.goal{
  border-top-color:var(--ds-red)!important;
}

.player-final-body .player-pro-stat span{
  color:#788a9c!important;
  font-size:.48rem!important;
  font-weight:950!important;
}

.player-final-body .player-pro-stat strong{
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.55rem!important;
}

.player-final-body .player-pro-stat.goal strong{
  color:var(--ds-red)!important;
}

.player-final-body .player-pro-stat small{
  margin-top:4px!important;
  color:#8494a4!important;
  font-size:.47rem!important;
}

.player-final-body .player-pro-layout{
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.72fr)!important;
  gap:12px!important;
  margin-top:12px!important;
}

.player-final-body .player-pro-main,
.player-final-body .player-pro-side{
  gap:10px!important;
}

.player-final-body .player-pro-section{
  overflow:hidden!important;
  border-radius:var(--ds-radius)!important;
}

.player-final-body .player-pro-section-title{
  min-height:48px!important;
  padding:10px 14px!important;
  border-bottom:1px solid #dfe7ef!important;
  color:var(--ds-blue-900)!important;
  background:#f8fbfe!important;
}

.player-final-body .player-pro-section-title>span{
  color:var(--ds-blue-900)!important;
  font-size:.69rem!important;
}

.player-final-body .player-pro-section-title>small{
  color:var(--ds-blue)!important;
  font-size:.53rem!important;
}

.player-final-body .player-pro-comp-row,
.player-final-body .player-pro-transfer,
.player-final-body .player-pro-season,
.player-final-body .player-pro-career-row{
  border-bottom:1px solid #edf1f5!important;
  background:#fff!important;
}

.player-final-body .player-pro-comp-name strong,
.player-final-body .player-pro-season-comps strong,
.player-final-body .player-pro-career-row strong,
.player-final-body .player-pro-transfer strong{
  color:var(--ds-ink)!important;
}

.player-final-body .player-pro-more{
  min-height:38px!important;
  color:var(--ds-blue)!important;
  border:1px solid #cbd9e7!important;
  border-radius:8px!important;
  background:#fff!important;
  font-weight:900!important;
}

/* =====================================================================
   KLUB
   ===================================================================== */
.club-final-body{
  padding-top:22px!important;
  padding-bottom:54px!important;
}

.club-final-overview{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  margin-bottom:12px!important;
}

.club-final-overview .club-overview-card{
  min-height:104px!important;
  padding:14px 15px!important;
  border:1px solid var(--ds-line)!important;
  border-top:3px solid var(--ds-blue)!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.club-final-overview .club-overview-card:nth-child(2){
  border-top-color:var(--ds-red)!important;
}

.club-final-overview .club-overview-card small{
  color:#788a9c!important;
  font-size:.49rem!important;
  font-weight:950!important;
}

.club-final-overview .club-overview-card b{
  display:block!important;
  margin-top:7px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.6rem!important;
}

.club-final-overview .club-overview-card span{
  display:block!important;
  margin-top:5px!important;
  color:#8494a4!important;
  font-size:.49rem!important;
}

.club-final-body .club-pro-layout{
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)!important;
  gap:12px!important;
}

.club-final-body .club-pro-copy{
  padding:24px 26px!important;
  border-radius:var(--ds-radius)!important;
}

.club-copy-kicker{
  margin-bottom:12px!important;
  color:var(--ds-red)!important;
  font-size:.53rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}

.club-final-body .club-pro-copy p,
.club-history-copy p{
  color:#435b72!important;
  font-size:.81rem!important;
  line-height:1.72!important;
}

.club-final-body .club-quick-links{
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.club-final-body .club-quick-links>a{
  min-height:70px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) 22px!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 13px!important;
  border-bottom:1px solid #e8edf3!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
}

.club-final-body .club-quick-links>a:last-child{
  border-bottom:0!important;
}

.club-final-body .club-quick-links>a:hover{
  background:#f6fafe!important;
}

.club-final-body .club-quick-links>a>span{
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  border-radius:8px!important;
  color:#fff!important;
  background:var(--ds-blue)!important;
  font-size:.48rem!important;
  font-weight:950!important;
}

.club-final-body .club-quick-links>a:nth-child(2n)>span{
  background:var(--ds-red)!important;
}

.club-final-body .club-quick-links strong{
  color:var(--ds-blue-900)!important;
  font-size:.64rem!important;
}

.club-final-body .club-quick-links small{
  display:block!important;
  margin-top:3px!important;
  color:#798b9e!important;
  font-size:.49rem!important;
}

.club-final-body .club-quick-links b{
  color:var(--ds-blue)!important;
}

/* Historie */
.club-history-copy{
  max-width:980px!important;
  margin:0 auto!important;
  padding:26px 28px!important;
  border-left:4px solid var(--ds-red)!important;
}

.club-history-founded{
  float:right!important;
  min-width:150px!important;
  margin:0 0 18px 24px!important;
  padding:14px!important;
  border:1px solid var(--ds-line)!important;
  border-top:3px solid var(--ds-blue)!important;
  border-radius:10px!important;
  background:#f8fbfe!important;
}

.club-history-founded span{
  color:#77899b!important;
  font-size:.47rem!important;
}

.club-history-founded strong{
  display:block!important;
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.35rem!important;
}

/* Lidé */
.club-people-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}

.club-final-body .club-person-card{
  min-height:116px!important;
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  align-items:center!important;
  gap:13px!important;
  padding:13px!important;
  border:1px solid var(--ds-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.club-final-body .club-person-mark{
  width:58px!important;
  height:58px!important;
  border-radius:14px!important;
  color:#fff!important;
  background:linear-gradient(145deg,var(--ds-blue),var(--ds-blue-900))!important;
}

.club-final-body .club-person-copy>span{
  color:var(--ds-red)!important;
  font-size:.46rem!important;
  font-weight:950!important;
}

.club-final-body .club-person-copy h3{
  margin-top:4px!important;
  color:var(--ds-blue-900)!important;
  font-size:.78rem!important;
}

.club-final-body .club-person-contact{
  margin-top:7px!important;
  color:#73869a!important;
  font-size:.51rem!important;
}

/* Realizační týmy */
.club-staff-list{
  display:grid!important;
  gap:12px!important;
}

.club-final-body .club-staff-group{
  overflow:hidden!important;
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.club-final-body .club-staff-heading{
  min-height:74px!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  padding:12px 15px!important;
  border-bottom:1px solid #e0e8f0!important;
  background:
    linear-gradient(120deg,#f7fbff 0%,#fff 62%,#eef5fc 100%)!important;
}

.club-final-body .club-staff-heading>span{
  min-width:64px!important;
  color:var(--ds-red)!important;
  font-size:2.05rem!important;
  font-weight:1000!important;
  letter-spacing:-.05em!important;
}

.club-final-body .club-staff-heading small{
  color:#75889b!important;
  font-size:.46rem!important;
}

.club-final-body .club-staff-heading h2{
  margin-top:3px!important;
  color:var(--ds-blue-900)!important;
  font-size:1rem!important;
}

.club-final-body .club-staff-group .club-people-grid{
  padding:10px!important;
}

/* Areál */
.venue-pro-main{
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;
  gap:12px!important;
}

.venue-pro-photo{
  overflow:hidden!important;
  min-height:390px!important;
  margin:0!important;
  border:1px solid var(--ds-line)!important;
  border-radius:15px!important;
  background:#edf3f8!important;
  box-shadow:var(--ds-shadow)!important;
}

.venue-pro-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.venue-pro-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:25px!important;
  border-top:4px solid var(--ds-blue)!important;
}

.venue-pro-copy>span{
  color:var(--ds-red)!important;
  font-size:.50rem!important;
  font-weight:950!important;
}

.venue-pro-copy h2{
  margin-top:7px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.8rem!important;
}

.venue-pro-address{
  margin:10px 0 13px!important;
  color:var(--ds-blue)!important;
  font-size:.61rem!important;
  font-weight:900!important;
}

.venue-pro-copy p{
  color:#526a81!important;
  font-size:.72rem!important;
  line-height:1.58!important;
}

.venue-facility-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}

.venue-facility-grid>div{
  min-height:62px!important;
  border:1px solid var(--ds-line)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.venue-facility-grid>div>span{
  color:var(--ds-red)!important;
}

/* =====================================================================
   PARTNEŘI
   ===================================================================== */
.partners-pro{
  display:grid!important;
  gap:28px!important;
}

.partners-tier-heading{
  margin-bottom:12px!important;
}

.partners-tier-heading>span{
  color:var(--ds-red)!important;
  font-size:.52rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}

.partners-tier-heading h2{
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.55rem!important;
}

.partners-main-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}

.partner-pro-card{
  min-height:150px!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:145px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  padding:16px!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:13px!important;
  color:var(--ds-ink)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.partner-pro-card.large{
  min-height:190px!important;
  border-top-color:var(--ds-red)!important;
}

.partner-pro-card:hover{
  transform:translateY(-2px)!important;
  border-color:#bfd1e4!important;
  box-shadow:var(--ds-shadow-hover)!important;
}

.partner-pro-logo{
  min-height:105px!important;
  display:grid!important;
  place-items:center!important;
  padding:12px!important;
  border:1px solid #e0e8f0!important;
  border-radius:10px!important;
  background:#fafcff!important;
}

.partner-pro-logo img{
  max-width:100%!important;
  max-height:100px!important;
  object-fit:contain!important;
}

.partner-pro-copy small{
  color:var(--ds-red)!important;
  font-size:.46rem!important;
  font-weight:950!important;
}

.partner-pro-copy strong{
  display:block!important;
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:.82rem!important;
}

.partner-pro-copy p{
  margin-top:7px!important;
  color:#74869a!important;
  font-size:.56rem!important;
  line-height:1.4!important;
}

.partner-pro-card>b{
  color:var(--ds-blue)!important;
  font-size:.55rem!important;
  white-space:nowrap!important;
}

.partners-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}

.partners-grid .partner-pro-card{
  grid-template-columns:105px minmax(0,1fr)!important;
  min-height:125px!important;
}

.partners-grid .partner-pro-card>b{
  grid-column:2!important;
}

.partners-supporter-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}

.partners-supporter-grid>a{
  min-height:66px!important;
  min-width:150px!important;
  display:grid!important;
  place-items:center!important;
  padding:10px 14px!important;
  border:1px solid var(--ds-line)!important;
  border-radius:10px!important;
  color:var(--ds-blue-900)!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.partners-supporter-grid img{
  max-width:130px!important;
  max-height:45px!important;
  object-fit:contain!important;
}

/* =====================================================================
   KONTAKTY
   ===================================================================== */
.club-contact-heading{
  margin-bottom:13px!important;
}

.club-contact-heading>span{
  color:var(--ds-red)!important;
  font-size:.52rem!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}

.club-contact-heading h2{
  margin-top:5px!important;
  color:var(--ds-blue-900)!important;
  font-size:1.65rem!important;
}

.club-contact-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
}

.club-final-body .club-contact-card{
  min-height:120px!important;
  padding:14px!important;
  border:1px solid var(--ds-line)!important;
  border-top:4px solid var(--ds-blue)!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:var(--ds-shadow)!important;
}

.club-final-body .club-contact-card:nth-child(2){
  border-top-color:var(--ds-red)!important;
}

.club-final-body .club-contact-card small{
  color:#788a9c!important;
  font-size:.48rem!important;
  font-weight:950!important;
}

.club-final-body .club-contact-card strong{
  display:block!important;
  margin-top:8px!important;
  color:var(--ds-blue-900)!important;
  font-size:.70rem!important;
  line-height:1.35!important;
}

.club-final-body .club-contact-card strong a{
  color:inherit!important;
}

.club-final-body .club-contact-card>span{
  display:block!important;
  margin-top:10px!important;
  color:var(--ds-blue)!important;
  font-size:.52rem!important;
  font-weight:900!important;
}

.club-contact-note{
  margin-top:10px!important;
  padding:17px!important;
  border-left:4px solid var(--ds-red)!important;
}

.club-contact-note>span{
  color:var(--ds-red)!important;
  font-size:.48rem!important;
  font-weight:950!important;
}

.club-contact-note p{
  margin-top:7px!important;
  color:#536a81!important;
  font-size:.70rem!important;
}

/* =====================================================================
   PATIČKA
   ===================================================================== */
.site-footer{
  position:relative!important;
  margin-top:30px!important;
  overflow:hidden!important;
  border-top:0!important;
  color:#dce8f5!important;
  background:
    radial-gradient(circle at 88% 20%,rgba(255,255,255,.08),transparent 24%),
    linear-gradient(120deg,var(--ds-blue-900),#103d76)!important;
}

.site-footer:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,var(--ds-red) 0 46%,#fff 46% 50%,var(--ds-blue) 50% 100%);
}

.footer-main{
  min-height:138px!important;
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) auto minmax(230px,.75fr)!important;
  align-items:center!important;
  gap:28px!important;
  padding-top:22px!important;
  padding-bottom:20px!important;
}

.footer-brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}

.footer-brand img{
  width:54px!important;
  height:54px!important;
  object-fit:contain!important;
}

.footer-brand strong{
  color:#fff!important;
  font-size:.78rem!important;
}

.footer-brand small{
  display:block!important;
  margin-top:4px!important;
  color:#abc2d9!important;
  font-size:.49rem!important;
}

.footer-links{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:9px 16px!important;
  max-width:450px!important;
}

.footer-links a{
  color:#e8f1fa!important;
  font-size:.57rem!important;
  font-weight:850!important;
}

.footer-links a:hover{
  color:#fff!important;
}

.footer-status{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:6px!important;
  color:#abc2d9!important;
  text-align:right!important;
  font-size:.52rem!important;
  line-height:1.35!important;
}

.footer-status a{
  color:#fff!important;
  font-weight:850!important;
}

/* =====================================================================
   FINÁLNÍ MOBILNÍ PRŮCHOD
   ===================================================================== */
@media(max-width:1050px){
  .news-grid-page{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .players-final-directory{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .player-final-body .player-pro-identity{
    grid-template-columns:160px minmax(0,1fr)!important;
  }

  .player-final-body .player-pro-photo,
  .player-final-body .player-pro-photo img,
  .player-final-body .player-pro-photo .player-photo-fallback{
    width:160px!important;
  }

  .player-final-body .player-pro-club{
    grid-column:1/-1!important;
    flex-direction:row!important;
    justify-content:flex-start!important;
    border-left:0!important;
    border-top:1px solid #e2e9f0!important;
  }

  .player-final-body .player-pro-current-season{
    text-align:left!important;
  }

  .player-final-body .player-pro-layout{
    grid-template-columns:1fr!important;
  }

  .club-final-body .club-pro-layout{
    grid-template-columns:1fr!important;
  }

  .club-people-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .venue-pro-main{
    grid-template-columns:1fr!important;
  }

  .venue-pro-photo{
    min-height:300px!important;
  }

  .partners-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .club-contact-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .footer-main{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    text-align:center!important;
  }

  .footer-status{
    align-items:center!important;
    text-align:center!important;
  }
}

@media(max-width:800px){
  .news-final-body .news-card-featured{
    grid-template-columns:1fr!important;
  }

  .news-final-body .news-card-featured .news-image{
    min-height:270px!important;
    height:270px!important;
  }

  .news-final-body .news-card-featured .news-body{
    padding:22px!important;
  }

  .article-pro-layout{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .article-pro-side{
    position:static!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .players-final-toolbar{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .players-final-filter-wrap .filter-bar{
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    scrollbar-width:none!important;
  }

  .players-final-filter-wrap .filter-bar::-webkit-scrollbar{display:none}

  .players-final-filter-wrap .filter-button{
    flex:0 0 auto!important;
  }

  .player-final-body .player-pro-statgrid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .club-final-overview{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .partners-main-grid{
    grid-template-columns:1fr!important;
  }

  .partner-pro-card{
    grid-template-columns:120px minmax(0,1fr)!important;
  }

  .partner-pro-card>b{
    grid-column:2!important;
  }
}

@media(max-width:700px){
  body{
    padding-bottom:calc(66px + env(safe-area-inset-bottom))!important;
  }

  .page-body{
    padding-left:0!important;
    padding-right:0!important;
  }

  .news-final-body,
  .players-final-body,
  .player-final-body,
  .club-final-body,
  .article-pro-body{
    padding-top:14px!important;
    padding-bottom:38px!important;
  }

  .news-grid-page{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .news-grid-page .news-card{
    min-height:0!important;
  }

  .news-grid-page .news-image{
    height:185px!important;
  }

  .article-pro-header h1{
    font-size:2rem!important;
  }

  .article-pro-lead{
    font-size:.85rem!important;
  }

  .article-pro-cover{
    margin-top:18px!important;
    border-radius:12px!important;
  }

  .article-pro-copy{
    font-size:.81rem!important;
    line-height:1.7!important;
  }

  .article-pro-side{
    grid-template-columns:1fr!important;
  }

  .article-pro-nav{
    grid-template-columns:1fr!important;
  }

  .players-final-toolbar{
    padding:11px!important;
    border-radius:12px!important;
  }

  .players-final-directory{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  .players-final-directory .directory-player{
    min-height:84px!important;
    grid-template-columns:64px minmax(0,1fr)!important;
  }

  .players-final-directory .directory-photo,
  .players-final-directory .directory-photo img,
  .players-final-directory .directory-photo .player-photo-fallback{
    width:64px!important;
    height:64px!important;
  }

  .player-final-body .player-pro-identity{
    grid-template-columns:92px minmax(0,1fr)!important;
    min-height:0!important;
    border-radius:12px!important;
  }

  .player-final-body .player-pro-photo,
  .player-final-body .player-pro-photo img,
  .player-final-body .player-pro-photo .player-photo-fallback{
    width:92px!important;
    min-height:138px!important;
  }

  .player-final-body .player-pro-copy{
    padding:14px!important;
  }

  .player-final-body .player-pro-copy h2{
    font-size:1.55rem!important;
  }

  .player-final-body .player-pro-club{
    min-height:80px!important;
    padding:12px 14px!important;
  }

  .player-final-body .player-pro-clubcrest img,
  .player-final-body .player-pro-clubcrest .logo-placeholder{
    width:52px!important;
    height:52px!important;
  }

  .player-final-body .player-pro-statgrid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  .player-final-body .player-pro-stat:last-child{
    grid-column:1/-1!important;
  }

  .club-final-overview{
    gap:7px!important;
  }

  .club-final-overview .club-overview-card{
    min-height:94px!important;
    padding:11px!important;
  }

  .club-final-body .club-pro-copy{
    padding:18px!important;
  }

  .club-history-copy{
    padding:18px!important;
  }

  .club-history-founded{
    float:none!important;
    width:100%!important;
    margin:0 0 16px!important;
  }

  .club-people-grid{
    grid-template-columns:1fr!important;
  }

  .club-final-body .club-person-card{
    min-height:98px!important;
  }

  .club-final-body .club-staff-heading{
    min-height:64px!important;
  }

  .club-final-body .club-staff-heading>span{
    min-width:52px!important;
    font-size:1.7rem!important;
  }

  .venue-pro-photo{
    min-height:220px!important;
  }

  .venue-pro-copy{
    padding:18px!important;
  }

  .venue-facility-grid{
    grid-template-columns:1fr!important;
  }

  .partners-grid{
    grid-template-columns:1fr!important;
  }

  .partner-pro-card,
  .partners-grid .partner-pro-card{
    grid-template-columns:94px minmax(0,1fr)!important;
    min-height:112px!important;
    padding:11px!important;
  }

  .partner-pro-logo{
    min-height:84px!important;
  }

  .partner-pro-logo img{
    max-height:70px!important;
  }

  .club-contact-grid{
    grid-template-columns:1fr!important;
  }

  .club-final-body .club-contact-card{
    min-height:102px!important;
  }

  .site-footer{
    margin-top:18px!important;
  }

  .footer-main{
    min-height:0!important;
    gap:16px!important;
    padding-top:24px!important;
    padding-bottom:84px!important;
  }

  .footer-brand{
    justify-content:center!important;
  }

  .footer-links{
    gap:8px 13px!important;
  }

  .mobile-dock{
    height:calc(64px + env(safe-area-inset-bottom))!important;
    min-height:64px!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
    border-top:1px solid #d6e1ec!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 -8px 24px rgba(24,56,92,.08)!important;
    backdrop-filter:blur(10px)!important;
  }

  .mobile-dock a{
    min-height:60px!important;
    gap:3px!important;
    color:#75879a!important;
  }

  .mobile-dock a.active{
    color:var(--ds-blue)!important;
  }

  .mobile-dock a.active:before{
    width:26px!important;
    height:3px!important;
    background:var(--ds-red)!important;
  }

  .mobile-dock .dock-icon{
    width:22px!important;
    height:22px!important;
  }

  .mobile-dock b{
    font-size:.48rem!important;
    font-weight:850!important;
  }
}


/* 8.12.1 funkční doplňky */
.club-social-links{margin-top:10px;padding:15px;border-left:4px solid var(--ds-blue)}
.club-social-links>span{display:block;color:var(--ds-red);font-size:.5rem;font-weight:950;letter-spacing:.1em;margin-bottom:9px}
.club-social-links>div{display:flex;flex-wrap:wrap;gap:7px}
.club-social-links a{padding:7px 10px;border:1px solid var(--ds-line);border-radius:8px;color:var(--ds-blue);background:#fff;font-size:.56rem;font-weight:900}
.match-roster-player.historical{cursor:default}
