.match-row{grid-template-columns:27px minmax(0,1fr)}
.match-open{display:grid;grid-template-columns:51px minmax(0,1fr) 44px 21px;align-items:center;gap:7px;min-width:0;width:100%;padding:0}
@media(max-width:700px){.match-row{grid-template-columns:22px minmax(0,1fr)}.match-open{grid-template-columns:42px minmax(0,1fr) 32px 12px;gap:5px}}
@media(max-width:700px){.day strong{font-size:10px;white-space:nowrap}.day span{font-size:8px}}
.top{position:sticky;top:0;z-index:20;box-shadow:0 3px 18px #152e2803}
.empty-table-button{display:inline-block;margin-top:20px;background:#e8f0dd;padding:11px 17px;border-radius:6px;font-size:11px;font-weight:700;color:#52753f}
.player-photo{flex:0 0 38px;width:38px;height:42px;background:#edf2e7;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#83976b;font-size:12px;font-weight:700}.player-photo img{width:100%;height:100%;object-fit:cover;object-position:top}.player>span{flex-shrink:0}.player>div:last-child{min-width:0}
.player-photo{position:relative}.player-photo img{position:absolute;inset:0;z-index:1;background:#edf2e7}
.schedule-toolbar{background:#fff;border:1px solid var(--line);border-radius:10px 10px 0 0;padding:20px;display:flex;align-items:center;gap:14px}.schedule-toolbar>div{flex:1}.schedule-toolbar h2{font-size:16px;margin:0 0 5px}.schedule-toolbar span{font-size:10px;color:#95a088}.schedule-toolbar button{font-size:10px;background:#eaf1e2;padding:9px 12px;border-radius:5px;color:#66834e;white-space:nowrap}.schedule-search{padding:15px 20px;background:#fff;border-left:1px solid var(--line);border-right:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}.schedule-search input{max-width:300px;font-size:11px}.schedule-search span{font-size:10px;color:#98a28d}.schedule-table th{text-align:left}.schedule-table td{text-align:left;font-size:11px}.schedule-table td .team span{white-space:normal}.schedule-table td .team img{width:23px;height:23px;flex-shrink:0}.schedule-table .schedule-vs{color:#91a085;text-align:center;font-size:10px}.schedule-table td button{font-size:10px;color:#628344;padding:8px;background:#f0f5e9;border-radius:5px}.schedule-sync{padding:16px 0;font-size:10px;color:#8e9f80}.schedule-table tr:hover{background:#fafcf5}
@media(max-width:700px){.schedule-toolbar{padding:15px;flex-wrap:wrap;gap:8px}.schedule-toolbar>div{width:100%;flex:auto;margin-bottom:8px}.schedule-toolbar h2{font-size:14px}.schedule-search{padding:14px;flex-wrap:wrap;gap:10px}.schedule-search input{max-width:none}.schedule-search span{font-size:9px}.schedule-table{min-width:580px}.schedule-table td{font-size:10px;padding:12px 9px}.player-photo{flex-basis:30px;width:30px;height:36px}}
@media(max-width:700px){.schedule-table{min-width:0;display:block}.schedule-table thead{display:none}.schedule-table tbody{display:block}.schedule-table tr{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:14px 8px;padding:17px 14px;border-top:1px solid var(--line);align-items:center}.schedule-table td{border:0;padding:0;white-space:normal}.schedule-table td:nth-child(1){grid-row:1;grid-column:1/3;font-size:10px;color:#7a8c6d}.schedule-table td:nth-child(2){grid-row:1;grid-column:3;text-align:right;font-size:10px;color:#7a8c6d}.schedule-table td:nth-child(3){grid-row:2;grid-column:1}.schedule-table td:nth-child(4){grid-row:2;grid-column:2}.schedule-table td:nth-child(5){grid-row:2;grid-column:3}.schedule-table td:nth-child(6){grid-row:3;grid-column:1/4;text-align:right}.schedule-table td .team{font-size:11px;line-height:1.5}.schedule-table td button{font-size:9px;padding:6px 10px}}
.sidebar{position:sticky;top:88px;height:calc(100vh - 88px);min-height:0;align-self:start;padding-top:25px}
.league-list{max-height:none;min-height:0;flex:1}.side-footer{padding-top:22px}.side-footer p{font-size:11px;margin:8px 0}
.league-section-label{font-size:8px;letter-spacing:1.2px;font-weight:800;color:#85957b;padding:18px 10px 8px}
.league-fixtures-count{margin-left:auto;min-width:20px;background:#eaf0e1;color:#71855a;padding:3px 5px;border-radius:5px;font-size:9px;text-align:center}
.league-link.selected{box-shadow:inset 3px 0 #37704b}.league-link>span{flex:1}.league-label{margin-top:24px;font-size:8px;letter-spacing:1px}
.mobile-menu-heading,.menu-backdrop{display:none}.menu-toolbar{display:flex;align-items:center;gap:14px;margin:-8px 0 22px;font-size:11px;min-height:25px}
#menu-toggle{display:none}.menu-toolbar>span{color:#768966;font-weight:700}.menu-toolbar>span:before{content:'◉';margin-right:7px;color:#77966b}
#reset-filters{margin-left:auto;color:#718362;background:#eaf0e2;padding:7px 10px;border-radius:5px;font-size:10px}
.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-heading h2{font-size:17px;margin:0;letter-spacing:-.3px}.section-heading>span{font-size:9px;color:#8d9b82}
.top-matches-section{margin-bottom:28px}.top-matches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.top-match-card{padding:16px;background:#fff;border:1px solid var(--line);border-radius:9px;min-width:0;text-align:left;transition:border-color .2s,transform .2s}.top-match-card:hover{border-color:#99b07a;transform:translateY(-2px)}
.top-match-league{display:flex;align-items:center;gap:7px;font-size:9px;color:#8b997e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-match-league img{width:17px;height:17px;object-fit:contain}
.top-match-teams{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;gap:8px;margin:20px 0}.top-match-teams>span{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0}.top-match-teams img{width:37px;height:37px;object-fit:contain}.top-match-teams b{font-size:10px;line-height:1.5;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-match-teams>strong{font-size:21px;text-align:center;letter-spacing:1px}
.top-match-status{font-size:8px;display:flex;justify-content:space-between;gap:8px;border-top:1px solid #eef2e8;padding-top:12px;color:#97a08e}.top-match-status.live{color:#29854e;font-weight:700}.top-match-status>span{color:#6b8253}.top-league-badge{font-style:normal;display:inline-block;font-size:7px;letter-spacing:.8px;background:#edf4df;color:#759252;padding:3px 5px;border-radius:4px;margin-left:10px}
@media(max-width:1200px){.top-match-card{padding:13px}.top-match-teams{grid-template-columns:1fr 45px 1fr;gap:4px}.top-match-teams>strong{font-size:18px}}
@media(max-width:850px){.top-matches{grid-template-columns:repeat(2,minmax(0,1fr))}.top-match-teams{grid-template-columns:1fr 55px 1fr}}
@media(max-width:700px){
 .top{position:sticky;top:0}.sidebar{display:none}.sidebar.is-open{display:flex;position:fixed;top:0;left:0;bottom:0;height:100dvh;width:min(330px,88vw);z-index:101;background:#f7f9f2;border:0;padding:20px;box-shadow:20px 0 80px #102b2430;overflow:hidden}.menu-open{overflow:hidden}
 .menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:#102b2470;z-index:100;backdrop-filter:blur(3px)}.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;font-size:18px}.mobile-menu-heading button{font-size:15px;border-radius:50%;background:#e7efdc;width:34px;height:34px}
 .sidebar .league-list{flex:1;overflow:auto}.sidebar .side-footer{display:none}.sidebar .league-link{padding:13px 10px;font-size:12px}.sidebar .league-link small{font-size:10px}.sidebar .side-link{padding:14px 12px}
 .menu-toolbar{margin:-5px 0 20px;gap:10px;flex-wrap:wrap}#menu-toggle{display:block;border:1px solid #dce5d1;border-radius:6px;padding:10px 13px;background:#fff;font-weight:700;font-size:11px}.menu-toolbar>span{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.menu-toolbar>span:before{display:none}#reset-filters{font-size:9px;padding:8px 10px}
 .overview span:not(.mini-pitch){font-size:6.5px}.overview small{font-size:6px}.section-heading h2{font-size:15px}.section-heading>span{font-size:8px}.top-matches-section{margin-bottom:22px}.top-matches{display:flex;gap:10px;overflow:auto;scroll-snap-type:x mandatory;padding:2px 1px 12px;scrollbar-width:thin;scrollbar-color:#dbe5cf transparent}.top-match-card{flex:0 0 270px;scroll-snap-align:start;padding:17px}.top-match-teams{grid-template-columns:1fr 60px 1fr}.top-match-teams>strong{font-size:22px}.top-match-teams img{width:37px;height:37px}.top-match-teams b{font-size:11px}.top-match-status{font-size:9px}.top-match-league{font-size:10px}.top-league-badge{margin-left:6px}
}
