:root{--bg:#f3f8f5;--ink:#15392d;--muted:#60766b;--line:#dce9e1;--green:#087454;--shadow:0 8px 30px #173e2910}
body{background:radial-gradient(ellipse at 5% 12%,#dcf5df70,transparent 36%),radial-gradient(ellipse at 95% 36%,#e4f3fc65,transparent 30%),var(--bg)}
header{background:linear-gradient(115deg,#09291f,#104735);border-bottom:1px solid #a7e98938;box-shadow:0 6px 24px #0e342419}
.brand img{filter:drop-shadow(0 3px 10px #b9f16c30)}
.icon-button{background:#ffffff08;border-color:#c9f5d52e;border-radius:12px}
.icon-button:hover{background:#d3f69b20;border-color:#c6f86b80}
#current-date{padding:4px 12px;border:1px solid #c0e5cb38;border-radius:20px;background:#c9f5d510;color:#e2f7e8}
.hero{border:1px solid #a5db8a50;border-radius:22px;box-shadow:0 14px 40px #0a3e2520}
.hero .eyebrow{width:fit-content;padding:5px 11px;border-radius:24px;border:1px solid #c6f86b40;background:#092b2070}
.hero h1{font-size:clamp(27px,3vw,38px);letter-spacing:-.7px}
.hero-link{border-radius:12px;box-shadow:0 5px 18px #b7ee6830;border:1px solid #c6f86b70}
.hero-link:hover{background:#d7ff8d;box-shadow:0 7px 24px #b7ee6845}
.section-heading h2{font-size:22px;letter-spacing:-.4px}
#schedule-date{display:inline-flex;align-items:center;gap:7px;background:#e2f2e8;color:#205e43;border:1px solid #b3d8c1;border-radius:12px;padding:7px 12px;font-size:12px;font-weight:700;line-height:1.7}
#schedule-date::before{content:'▦';font-size:18px}
.day-shortcuts a{border-radius:12px;border-color:#c5dfce;box-shadow:0 4px 12px #183d2707;color:#166545}
.datebar{padding:8px;gap:7px;border:1px solid #c4ddcd;border-radius:18px;box-shadow:0 6px 22px #1b60350a}
.datebar button{min-height:62px;background:#f2f8f4;border:1px solid #d9e9de;border-radius:12px;color:#355f4a;font-size:13px;font-weight:700}
.datebar button small{font-size:11px;opacity:1;margin-top:2px;font-weight:500}
.datebar button.selected{background:linear-gradient(135deg,#09805a,#07553d);color:#fff;border-color:#087958;box-shadow:0 5px 14px #0874542b}
.datebar button.selected small{color:#d1f7de}
.datebar .date-arrow{min-height:44px;align-self:center;background:#fff;border-color:#d7e6dc;color:#2e6c4b;border-radius:11px}
.datebar button:disabled{opacity:.4}
.chip{min-height:35px;border-radius:20px;border-color:#d5e5da;color:#4a6556}
.chip.selected{background:#e0f3e6;border-color:#8fc3a2;color:#155d39;box-shadow:0 2px 8px #1d6a2d0b}
.search input{min-height:39px;border-color:#ccdfd2;border-radius:12px;font-size:12px;box-shadow:0 3px 12px #163c2404}
.preview-note{background:#edf6f1;color:#48675a;border-color:#d5e7dc;border-radius:12px;padding:9px 12px}
.league-group,.side-card,.news-card,.channel,.editorial-article,.info-section{border-radius:18px;border-color:var(--line);box-shadow:var(--shadow)}
.league-head{padding:14px 18px;background:linear-gradient(100deg,#f2f8f3,#eaf5ed);border-bottom-color:#d9e9de;border-inline-start:4px solid #64b67d}
.league-head b{font-size:13px}
.league-icon{background:#fff;box-shadow:0 2px 7px #0b452410;border:1px solid #d6e5dc;border-radius:9px}
.match{grid-template-columns:26px minmax(0,1fr) 112px minmax(0,1fr) 26px;padding:21px 16px;min-height:150px;gap:10px}
.team{font-size:13px;gap:12px;line-height:1.7}
.team>span{min-width:0;overflow-wrap:anywhere}
.team-logo{width:42px;height:44px;filter:drop-shadow(0 2px 3px #12372812)}
.match-center{width:100%;padding:8px 6px;background:linear-gradient(145deg,#f2fcf6,#e3f5eb);border:1.5px solid #9dceb4;border-radius:15px;box-shadow:0 4px 12px #1065420c;line-height:1.45}
.match-date{display:block;width:fit-content;max-width:100%;margin:0 auto 5px;padding:3px 7px;background:#fff9;border:1px solid #91bea55c;border-radius:7px;font-size:10px;color:#206143;font-weight:700;white-space:nowrap}
.match-center .time{font:800 23px/1.3 Arial,sans-serif;letter-spacing:1px;color:#07593c;font-variant-numeric:tabular-nums;direction:ltr}
.match-center .score{font:800 23px/1.3 Arial,sans-serif;letter-spacing:2px;font-variant-numeric:tabular-nums;color:#244c70}
.match-center .kickoff-time{display:block;font:600 10px/1.6 Arial,sans-serif;color:#506c80;letter-spacing:.5px;margin-top:3px;direction:ltr}
.match-center .status{font-size:10px;color:#397057;font-weight:600;margin-top:4px}
.match-center[data-status=finished]{background:linear-gradient(135deg,#f5f9ff,#e7f0fb);border-color:#b4cbe5;box-shadow:0 4px 12px #19437708}
.match-center[data-status=finished] .match-date{color:#335b83;border-color:#b6cce7;background:#ffffffb5}
.match-center[data-status=finished] .status{color:#4b6e92}
.match-center[data-status=live]{background:linear-gradient(135deg,#fff6f2,#ffeae3);border-color:#e9a18e;box-shadow:0 4px 16px #d95e3416}
.match-center[data-status=live] .match-date{color:#a1412d;border-color:#edb5a4}
.match-center[data-status=live] .score,.match-center[data-status=live] .status{color:#aa382b}
.match-center[data-status=live] .kickoff-time{color:#9b584b}
.match-center[data-status=other]{border-color:#d6c38d;background:#fbf6e7}
.match-center[data-status=other] .status{color:#7c642a}
.favorite{border-radius:9px;min-height:32px}.favorite.on{color:#b47b0d;text-shadow:0 1px 8px #e6bc5650}
.details-icon{border:1px solid #d9e9de;background:#f4f9f5;border-radius:9px;color:#507c61;min-height:30px}
.broadcast{margin-top:0;color:#657d70;font-size:10px;line-height:1.8}
.video-badge{font-size:10px;background:#edf7ef;border-color:#badbc6;color:#216b44}
.side-title{background:linear-gradient(100deg,#fff,#f2f8f3);font-size:14px}
.league-list button{min-height:41px;border:1px solid transparent}
.league-list button.selected{background:#e8f5eb;border-color:#d2e9d8;color:#14623c;font-weight:700}
.feature-card{background:linear-gradient(135deg,#edf9dd,#dff2d9);border-color:#c7dfb4;border-radius:18px;box-shadow:0 7px 25px #42722d0a}
.feature-card p{color:#546e40}.feature-card button{border-radius:10px;color:#315d28}
.timezone{font-size:11px}.timezone select{padding:6px;border-radius:8px;background:var(--card);border:1px solid var(--line)}
.news-card{overflow:hidden}.news-card h3{font-size:15px}.news-read{font-size:11px;font-weight:700}
.news-card .eyebrow,.editorial-article .eyebrow{color:#186c49}.news-card .eyebrow::before,.editorial-article .eyebrow::before{background:#32965a}
.article-body .source-note{display:block}
dialog{border-radius:22px;border-color:#c4ddce;box-shadow:0 30px 100px #0b2b264a}
.dialog-close{background:#e7f3eb;color:#2c6547}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#278954}
.dark{--bg:#0a1c16;--card:#122e24;--ink:#e4f0e8;--muted:#acc3b5;--line:#2c4d3d;--green:#9bdfb5;--shadow:0 8px 30px #00000018}
body.dark{background:radial-gradient(ellipse at 15% 12%,#1b4a3030,transparent 42%),var(--bg)}
.dark #schedule-date,.dark .datebar button{background:#1c3e2d;border-color:#3d664b;color:#d3efdb}
.dark .datebar button.selected{background:linear-gradient(135deg,#226e49,#1b5137);border-color:#8cd7a5;color:#fff}
.dark .datebar button.selected small{color:#d4f2dd}
.dark .chip{color:#bfd5c5;border-color:#33533f}.dark .chip.selected{background:#214731;border-color:#689e77;color:#d4f5dd}
.dark .search input{border-color:#3e6149}.dark .preview-note{background:#193627;border-color:#3c5a43;color:#bfd8c5}
.dark .league-head,.dark .side-title{background:linear-gradient(100deg,#183d2b,#143021);border-color:#35523f}
.dark .match-center{background:linear-gradient(135deg,#204431,#163726);border-color:#5a9671}
.dark .match-date{background:#193d2e;border-color:#4c785b;color:#d6f1df}
.dark .match-center .time,.dark .match-center .status{color:#cef4dc}
.dark .match-center[data-status=finished]{background:linear-gradient(135deg,#1b3443,#162d38);border-color:#4e7289}
.dark .match-center[data-status=finished] .match-date{background:#203d4d;border-color:#4c7188;color:#d3e9ff}
.dark .match-center[data-status=finished] .score,.dark .match-center[data-status=finished] .status,.dark .match-center .kickoff-time{color:#c9e2f5}
.dark .match-center[data-status=live]{background:linear-gradient(135deg,#492d27,#39241f);border-color:#ba7b68}
.dark .match-center[data-status=live] .match-date{background:#53352d;border-color:#a76d58;color:#ffe0d4}
.dark .match-center[data-status=live] .score,.dark .match-center[data-status=live] .status,.dark .match-center[data-status=live] .kickoff-time{color:#ffd0bf}
.dark .match-center[data-status=other]{background:#3c3622;border-color:#8e7a42}.dark .match-center[data-status=other] .status{color:#eedda1}
.dark .details-icon,.dark .video-badge{background:#1c402c;border-color:#3e654b;color:#c6ead3}
.dark .broadcast{color:#a9c4b2}.dark .league-list button.selected{background:#234c32;border-color:#426c4c;color:#daf6df}
.dark .feature-card{background:linear-gradient(135deg,#233f28,#183721);border-color:#4c7140}.dark .feature-card p{color:#c0d6b6}
.dark .news-card .eyebrow,.dark .editorial-article .eyebrow{color:#b8e8bf}
.dark .dialog-close{background:#284c35;color:#d5eedf}.dark button:focus-visible,.dark a:focus-visible,.dark input:focus-visible,.dark select:focus-visible{outline-color:#c6f86b}
@media(prefers-reduced-motion:no-preference){.news-card,.match-center,.day-shortcuts a{transition:transform .18s ease,box-shadow .18s ease}.news-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #14392518}.match-center:hover{transform:translateY(-2px);box-shadow:0 7px 16px #1c704a1a}}
@media(max-width:1000px){header #navigation{display:none;position:absolute;inset-inline:0;top:90px;z-index:10;background:#102e22;padding:20px;flex-direction:column;align-items:stretch;gap:18px}header #navigation.open{display:flex}header #navigation a.active:after{display:none}.mobile-menu{display:block}.topbar{gap:20px}.section-heading{gap:10px}}
@media(max-width:720px){header #navigation{top:72px}.hero{border-radius:17px}.hero h1{font-size:27px}.section-heading h2{font-size:19px}#schedule-date{font-size:10px;padding:6px 8px;border-radius:9px;max-width:55%;line-height:1.6}.datebar{padding:6px;gap:5px;border-radius:14px}.datebar button{font-size:11px;padding:8px 4px;min-height:61px}.datebar button small{font-size:10px}.datebar .date-arrow{flex-basis:26px;min-height:38px}.match{grid-template-columns:18px minmax(0,1fr) 84px minmax(0,1fr) 14px;gap:6px;padding:17px 9px;min-height:148px}.team,.team.away{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;font-size:11px}.team-logo{width:32px;height:34px}.match-center{padding:8px 3px;border-radius:12px}.match-date{font-size:9px;padding:3px 5px}.match-center .time,.match-center .score{font-size:20px}.match-center .status,.match-center .kickoff-time{font-size:9px}.details-icon{border:0;background:transparent}.broadcast{grid-column:2/5;font-size:9px;margin-top:1px}.video-badge{font-size:9px}.chip{padding:6px 11px;font-size:10px}.news-card h3{font-size:14px}.side-title{font-size:12px}.timezone{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

#match-count{display:inline-block;white-space:nowrap;margin-inline-start:5px}.section-heading h2{min-width:0}.status.live::before{margin:0;margin-inline-end:4px}
