:root{color:#17211e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f8f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}h1,h2,h3,p{letter-spacing:0}h1{font-size:38px;line-height:1.02}h2{font-size:24px;line-height:1.12}button:focus-visible{outline-offset:2px;outline:3px solid #1f5f5059}.app-shell{width:min(1240px,100%);min-height:100svh;margin:0 auto;padding:18px}button{color:inherit;font:inherit}.eyebrow{color:#4e6b68;letter-spacing:0;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:900}.stadium-hero{color:#fff;background:linear-gradient(90deg,#04110de6,#08392ab8 46%,#092b3647),url(/stadium-pitch.jpg) 50%/cover;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:18px;min-height:212px;padding:24px;display:grid;position:relative;overflow:hidden}.stadium-hero:after{content:"";background:linear-gradient(90deg,#ef4444,#f5c84b,#20a464,#2f72ea);height:5px;position:absolute;inset:auto 0 0}.hero-copy,.hero-scoreboard,.source-pill{z-index:1;position:relative}.hero-copy{align-self:end;max-width:620px}.hero-copy .eyebrow{color:#d8efe5}.hero-copy h1{margin:0;font-size:46px;line-height:.98}.hero-copy p:last-child{color:#e7f3ef;max-width:520px;margin:12px 0 0;font-weight:700}.hero-scoreboard{grid-template-columns:repeat(3,92px);align-self:end;gap:8px;display:grid}.hero-scoreboard div{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff29;border:1px solid #ffffff3d;border-radius:8px;gap:3px;padding:12px;display:grid}.hero-scoreboard strong{font-size:26px;line-height:1}.hero-scoreboard span{color:#dbe8e4;text-transform:uppercase;font-size:12px;font-weight:800}.source-pill,.status-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;width:fit-content;font-size:12px;font-weight:900;display:inline-flex}.source-pill{background:#ffffff2e;border:1px solid #ffffff52;padding:8px 11px;position:absolute;top:18px;right:18px}.source-pill.warning{background:#fdba7438}.top-tabs{z-index:15;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8faf7eb;border:1px solid #d5ddd9;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0;padding:7px;display:grid;position:sticky;top:0}.top-tabs button,.day-rail button,.fixture-card,.detail-tabs button,.lineup-toggle button,.bench-player,.pitch-player,.dialog-close{cursor:pointer;border:0}.top-tabs button{color:#52605d;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:46px;font-weight:850;display:flex}.top-tabs button.active{color:#fff;background:#0f2d28}.state-card,.match-centre,.fixture-card,.google-card,.standings-card,.lineup-card,.bench-card,.round-card,.qualification-card{background:#fff;border:1px solid #dbe2df;border-radius:8px;box-shadow:0 2px 14px #19231f12}.state-card{padding:22px}.state-card h2,.section-head h2{margin:0}.state-card p:last-child,.empty,.app-footer{color:#68736f}.match-layout{grid-template-columns:minmax(280px,368px) minmax(0,1fr);align-items:start;gap:14px;display:grid}.fixture-browser{align-self:start;gap:10px;display:grid;position:sticky;top:78px}.day-rail{scroll-snap-type:x mandatory;gap:8px;padding:2px 2px 8px;display:flex;overflow-x:auto}.day-rail button{color:#52605d;scroll-snap-align:start;text-align:left;background:#fff;border:1px solid #dbe2df;border-radius:8px;align-content:center;gap:3px;min-width:112px;min-height:58px;font-weight:900;display:grid}.day-rail button span,.day-rail button small{padding:0 10px}.day-rail button small{color:#6b7773;font-size:12px;font-weight:800}.day-rail button.selected{color:#fff;background:#0f2d28;border-color:#0f2d28}.day-rail button.selected small{color:#c8ddd7}.fixture-list{gap:9px;display:grid}.fixture-card{text-align:left;gap:8px;width:100%;padding:12px;display:grid}.fixture-card:not(.static):hover,.fixture-card:not(.static):focus-visible,.fixture-card.selected{border-color:#2d79ff;box-shadow:inset 4px 0 #2d79ff,0 2px 14px #2d79ff21}.fixture-card.static{cursor:default}.status-pill{color:#3f4b48;background:#edf2f0;padding:4px 8px}.status-pill.live{color:#179044;background:#e7f7ec}.status-pill.finished{background:#f1f1f2}.score-line{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.score-line>strong{font-size:19px}.fixture-card small{color:#68736f}.team-identity{align-items:center;gap:9px;min-width:0;font-weight:900;display:inline-flex}.team-identity>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.flag{color:#1d2b27;background:linear-gradient(135deg,#f6f8fb,#dbe6ee);border:1px solid #141f1b1a;border-radius:5px;flex:none;place-items:center;min-width:34px;height:26px;font-size:10px;font-weight:950;display:inline-grid}.match-centre{overflow:hidden}.match-appbar{color:#fff;background:#1f2022;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 16px;display:flex}.match-appbar span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;min-width:0;font-weight:850;display:inline-flex;overflow:hidden}.scoreboard{text-align:center;padding:22px 28px 18px}.competition-row{text-align:left;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.live-clock{color:#179044;font-weight:950}.scoreboard-grid{grid-template-columns:1fr auto 1fr;align-items:start;gap:22px;display:grid}.scoreboard-team{justify-items:start;gap:8px;display:grid}.scoreboard-team.right{justify-items:end}.scoreboard-team strong{font-size:17px}.scoreboard-team small{color:#303735;background:#e8ebed;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:900}.score-total{grid-template-columns:auto auto auto;align-items:center;gap:24px;font-size:46px;line-height:1;display:grid}.score-total span{color:#777;font-size:28px}.match-stage{color:#6b6f72;margin:18px 0;font-weight:800}.goal-summary{text-align:right;border-top:1px solid #e2e5e4;border-bottom:1px solid #e2e5e4;grid-template-columns:auto 1fr;align-items:start;gap:12px;margin-top:10px;padding:14px 0;display:grid}.goal-summary svg{justify-self:center;margin-top:3px}.goal-summary div{gap:4px;display:grid}.goal-summary span{color:#666;font-weight:800}.detail-tabs{background:#f4f5f6;border-top:1px solid #e0e3e2;border-bottom:1px solid #cfd5d3;grid-template-columns:repeat(3,1fr);display:grid}.detail-tabs button{color:#5e6468;text-transform:uppercase;background:0 0;min-height:56px;font-weight:950}.match-pane{background:#f1f3f4;padding:12px}.panel-stack{gap:12px;display:grid}.google-card{padding:18px}.google-card h2,.lineup-card h2,.bench-card h2,.standings-card h2{text-align:center;margin:0;font-size:22px}.timeline-list{gap:0;margin-top:10px;display:grid}.event-row{border-top:1px solid #e0e3e2;grid-template-columns:56px minmax(0,1fr);gap:12px;padding:12px 0;display:grid}.event-row span{color:#168141;font-weight:950}.event-row p{margin:0;font-weight:800}.card-flags{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:10px;display:grid}.team-stat-list{gap:0;display:grid}.team-stat-row{text-align:center;border-top:1px solid #dfe3e2;grid-template-columns:90px minmax(0,1fr) 90px;align-items:center;gap:12px;min-height:48px;display:grid}.team-stat-row strong{color:#2d3230}.team-stat-row>span{justify-self:center;font-weight:900}.stat-bubble{color:#fff;background:#ff5b12;border-radius:999px;min-width:34px;padding:5px 8px}.lineup-card{padding:0;overflow:hidden}.lineup-toggle{background:#dfe3e2;grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.lineup-toggle button{background:#f7f8f8;justify-content:center;align-items:center;gap:8px;min-width:0;padding:12px;font-weight:900;display:inline-flex}.lineup-toggle button.active{background:#fff;box-shadow:inset 0 -3px #168141}.pitch{background:linear-gradient(#74c88beb,#66c184eb),repeating-linear-gradient(90deg,#ffffff0f 0 60px,#0000 60px 120px);border-radius:8px;min-height:720px;position:relative;overflow:hidden}.pitch-lines{border:3px solid #ffffff73;border-bottom:0;border-radius:0 0 22px 22px;position:absolute;inset:0}.pitch-lines:before,.pitch-lines:after{content:"";position:absolute;left:50%;transform:translate(-50%)}.pitch-lines:before{border:3px solid #ffffff57;border-radius:999px;width:180px;height:180px;top:-82px}.pitch-lines:after{border:3px solid #ffffff6b;border-bottom:0;border-radius:16px 16px 0 0;width:420px;height:130px;bottom:64px}.pitch-player{z-index:2;color:#17211e;text-align:center;background:0 0;justify-items:center;gap:6px;width:122px;display:grid;position:absolute;transform:translate(-50%,-50%)}.pitch-player:hover .player-avatar,.pitch-player:focus-visible .player-avatar{box-shadow:0 0 0 4px #2d79ff4d}.player-avatar,.player-photo{color:#fff;background:#78818a;place-items:center;font-weight:950;display:inline-grid}.player-avatar{border-radius:14px;width:58px;height:58px;box-shadow:0 3px 10px #1826202e}.pitch-player strong{text-shadow:0 1px #ffffff73;max-width:128px;font-size:14px;line-height:1.1}.pitch-footer{z-index:3;border-top:3px solid #ffffff6b;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;font-size:18px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.pitch-footer>span:last-child{background:#e3f7e5c7;border-radius:999px;padding:6px 14px;font-weight:950}.bench-card{overflow:hidden}.bench-head{background:#f4f5f6;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:18px 24px;display:grid}.bench-row{border-top:1px solid #e0e3e2;grid-template-columns:1fr 1fr;display:grid}.bench-player{text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:12px 18px;display:grid}.bench-player.away{text-align:right;grid-template-columns:minmax(0,1fr) auto}.bench-player strong,.bench-player small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.bench-player strong{font-size:17px}.bench-player small{color:#68736f;font-weight:800}.single-screen{gap:14px;display:grid}.section-head{padding:8px 2px}.standings-grid{grid-template-columns:1fr;gap:14px;display:grid}.qualification-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.standings-card{overflow:hidden}.standings-title{text-align:center;gap:8px;padding:22px 18px 12px;display:grid}.standings-title span{color:#168141;font-size:18px}.standings-scroll{overflow-x:auto}.standings-table{min-width:760px}.standings-row{text-align:center;border-top:1px solid #dfe3e2;grid-template-columns:minmax(260px,1fr) 46px 42px 42px 42px 46px 46px 46px 54px 160px;align-items:center;gap:6px;min-height:56px;padding:0 18px;display:grid;position:relative}.standings-row.automatic:before,.standings-row.third-race:before{content:"";background:#4285f4;width:4px;position:absolute;top:0;bottom:0;left:0}.standings-header{color:#5f6669;min-height:42px;font-weight:900}.standings-team{text-align:left;align-items:center;gap:12px;min-width:0;display:inline-flex}.standings-team>strong{text-align:right;width:24px}.live-score-pill{color:#fff;border-radius:4px;padding:4px 7px;font-size:12px;font-weight:950}.qualification-chip{white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:950}.qualification-chip.automatic{color:#1958c9;background:#e7f0ff}.qualification-chip.third-race{color:#8a5a00;background:#fff4ce}.form-dots{justify-content:center;align-items:center;gap:5px;display:inline-flex}.form-dot{color:#fff;border-radius:6px;place-items:center;min-width:25px;height:24px;padding:0 6px;font-size:12px;font-weight:950;line-height:1;display:inline-grid}.form-dot.draw{background:#a7a8b2;border-color:#a7a8b2}.form-dot.loss{background:#ea4335;border-color:#ea4335}.form-empty{color:#8b9490;font-weight:900}.round-list{gap:14px;display:grid}.round-card{padding:16px}.round-card h3{margin:0 0 12px}.round-fixtures{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.qualification-card{padding:16px}.qualification-card h3{margin:0 0 12px}.qualification-row{border-top:1px solid #e0e3e2;grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 0;display:grid}.qualification-row:first-of-type{border-top:0}.player-dialog-shell{z-index:30;background:#00000094;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.dialog-close{color:#fff;background:#0000009e;border-radius:999px;place-items:center;width:56px;height:56px;display:grid;position:fixed;top:calc(50% - 310px);left:calc(50% + 345px)}.player-dialog{background:#fff;border-radius:8px;width:min(580px,100%);max-height:min(740px,100svh - 40px);overflow:auto;box-shadow:0 22px 70px #00000047}.player-dialog-head{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding:20px 24px;display:grid}.player-photo{object-fit:cover;border-radius:999px;width:78px;height:78px;font-size:24px}.player-dialog-head h2{margin:0;font-size:28px}.player-dialog-head p{color:#5f6669;align-items:center;gap:9px;margin:4px 0 0;font-size:18px;font-weight:850;display:inline-flex}.player-dialog-head small{color:#68736f;margin-top:6px;font-weight:800;display:block}.player-match-line{border-top:1px solid #dfe3e2;border-bottom:1px solid #dfe3e2;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 24px;display:grid}.player-match-line>strong{white-space:nowrap;font-size:20px}.player-match-line>span:last-child{color:#5f6669;font-weight:900}.player-stat-list{padding:22px 24px 8px}.player-stat-list h3{margin:0 0 12px;font-size:24px}.player-stat-row{border-top:1px solid #dfe3e2;grid-template-columns:minmax(0,1fr) 70px;align-items:center;gap:12px;padding:13px 0;display:grid}.player-stat-row span strong,.player-stat-row span small{display:block}.player-stat-row span strong{font-size:18px}.player-stat-row span small{color:#68736f;margin-top:4px}.player-stat-row>strong{text-align:center;background:#e3e6e9;border-radius:7px;justify-self:end;min-width:54px;padding:10px}.player-dialog .empty{margin:0;padding:0 24px 16px}.player-dialog-foot{color:#0b57d0;border-top:1px solid #dfe3e2;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:18px;font-weight:900;text-decoration:none;display:flex}.app-footer{text-align:center;padding:20px 0 6px;font-size:13px}@media (width<=980px){.match-layout,.standings-grid,.qualification-grid{grid-template-columns:1fr}.fixture-browser{position:static}.fixture-list{scroll-snap-type:x mandatory;padding:2px 2px 8px;display:flex;overflow-x:auto}.fixture-card{scroll-snap-align:start;min-width:275px}.round-fixtures{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.app-shell{padding:12px}.stadium-hero{grid-template-columns:1fr;min-height:260px;padding:18px}.hero-copy h1{font-size:36px}.hero-scoreboard{grid-template-columns:repeat(3,1fr)}.source-pill{align-self:start;position:relative;top:auto;right:auto}.top-tabs span{display:none}.scoreboard{padding:18px 14px}.scoreboard-grid{text-align:center;grid-template-columns:1fr;justify-items:center}.scoreboard-team,.scoreboard-team.right{justify-items:center}.score-total{order:-1;gap:18px}.goal-summary{text-align:left}.match-pane{padding:8px}.pitch{min-height:600px}.pitch-player{width:96px}.player-avatar{border-radius:12px;width:48px;height:48px}.pitch-player strong{font-size:12px}.bench-row{grid-template-columns:1fr}.bench-player.away{text-align:left;grid-template-columns:auto minmax(0,1fr)}.bench-player.away .player-avatar{order:-1}.team-stat-row{grid-template-columns:64px minmax(0,1fr) 64px}.round-fixtures{grid-template-columns:1fr}.dialog-close{top:14px;left:auto;right:14px}.player-dialog-shell{align-items:end;padding:12px}.player-dialog{max-height:calc(100svh - 24px)}.player-match-line{text-align:center;grid-template-columns:1fr}}@keyframes livePulse{0%,to{box-shadow:0 0 #d6ff4b6b}50%{box-shadow:0 0 0 6px #d6ff4b00}}body{background:linear-gradient(135deg,#ffffffd1,#ebf6ede6 34%,#f4f0e6e0 68%,#e8f1fae0),linear-gradient(90deg,#1a7e4c1f 1px,#0000 1px) 0 0/42px 42px,linear-gradient(#1a7e4c14 1px,#0000 1px) 0 0/42px 42px}.stadium-hero{border:0;box-shadow:0 18px 50px #0920193d}.hero-copy h1{text-shadow:0 8px 28px #0000003d}.hero-scoreboard div,.source-pill{background:#0918138a;border-color:#d6ff4b47;box-shadow:inset 0 1px #fff3}.hero-scoreboard strong{color:#d6ff4b}.top-tabs{background:#0b1714;border:0;box-shadow:0 12px 28px #0e282224}.top-tabs button{color:#b9cac5}.top-tabs button.active{color:#092018;background:linear-gradient(135deg,#d6ff4b,#2de08a);box-shadow:0 8px 18px #2de08a3d}.day-rail button{background:#ffffffd1;border-color:#0e2d251f}.day-rail button.today{border-color:#2d79ff;box-shadow:inset 4px 0 #2d79ff,0 8px 20px #2d79ff1f}.day-rail button.selected{background:linear-gradient(135deg,#0f2d28,#1b6d4e);border-color:#0000;box-shadow:0 12px 22px #0f2d2838}.fixture-card{background:linear-gradient(135deg,#fffffff2,#f7fbf6eb),linear-gradient(90deg,#2de08a14,#0000);border:1px solid #0e2d251f}.fixture-card:not(.static):hover,.fixture-card:not(.static):focus-visible,.fixture-card.selected{background:linear-gradient(135deg,#fff,#f1fff4),linear-gradient(90deg,#2d79ff24,#0000);border-color:#2d79ff;box-shadow:inset 5px 0 #2d79ff,0 16px 30px #0f2d2829}.status-pill.live{color:#0d3a24;background:#d6ff4b;animation:2s infinite livePulse}.match-centre{background:#071511;border:0;box-shadow:0 20px 42px #081e1838}.match-appbar{background:linear-gradient(90deg,#071511,#102b22 55%,#17212f),linear-gradient(90deg,#d6ff4b,#2d79ff);border-bottom:1px solid #d6ff4b2e}.scoreboard{color:#fff;background:linear-gradient(#092019f0,#0d4631e0),repeating-linear-gradient(90deg,#ffffff0b 0 70px,#0000 70px 140px);position:relative;overflow:hidden}.scoreboard:before{content:"";border:2px solid #ffffff1f;border-radius:999px;height:180px;position:absolute;inset:-80px 18% auto}.scoreboard:after{content:"";border:2px solid #ffffff24;border-bottom:0;border-radius:16px 16px 0 0;height:150px;position:absolute;inset:auto 22% -70px}.scoreboard>*{z-index:1;position:relative}.competition-row{color:#dbece5}.scoreboard .flag{background:#ffffffe0;border-color:#ffffff42}.scoreboard-team strong{color:#fff}.scoreboard-team small{color:#112018;background:#d6ff4beb}.score-total{background:#0000003d;border:1px solid #d6ff4b3d;border-radius:8px;padding:14px 22px;box-shadow:0 20px 36px #0000002e}.score-total strong{color:#fff;text-shadow:0 0 24px #d6ff4b33;font-size:58px}.score-total span{color:#d6ff4b}.match-stage{color:#d8eee7}.goal-summary{border-color:#ffffff29}.goal-summary span{color:#dbece5}.detail-tabs{background:#071511;border-color:#ffffff1f}.detail-tabs button{color:#a8bdb7}.detail-tabs button.active{color:#fff;background:linear-gradient(#14352b,#0f2d28);box-shadow:inset 0 -4px #d6ff4b}.match-pane{background:linear-gradient(#071511 0,#0c211b 82px,#edf3ef 82px 100%)}.google-card,.standings-card,.lineup-card,.bench-card,.round-card,.qualification-card{border-color:#0a221c14;box-shadow:0 16px 34px #0d26201f}.google-card h2,.bench-card h2,.standings-card h2{color:#11221d}.stat-bubble{background:linear-gradient(135deg,#ff5b12,#ff9c2a)}.lineup-toggle button.active{box-shadow:inset 0 -4px #d6ff4b}.pitch{background:linear-gradient(#62ca82e6,#2aa35ceb),repeating-linear-gradient(90deg,#ffffff17 0 74px,#ffffff05 74px 148px);box-shadow:inset 0 0 90px #01241538}.player-avatar{background:linear-gradient(135deg,#0f2d28,#2d79ff);box-shadow:0 8px 18px #091e183d}.pitch-footer{color:#092018}.bench-head{background:linear-gradient(90deg,#eef7f0,#f8f9fa,#eef4ff)}.standings-title{background:linear-gradient(135deg,#fff,#f3fff1),linear-gradient(90deg,#2d79ff14,#0000)}.standings-title span{color:#168141;font-weight:900}.standings-row.automatic:before{background:linear-gradient(#2d79ff,#2de08a)}.standings-row.third-race:before{background:linear-gradient(#fbbc04,#ff8c1a)}.live-score-pill.home{background:#168141}.live-score-pill.away{background:#ff5b12}.form-dot.win{background:#22a95a;border-color:#22a95a}.round-card h3{color:#d6ff4b;background:#0f2d28;border-radius:999px;padding:7px 12px;display:inline-flex}.qualification-card h3{color:#0f2d28}.player-dialog{border:1px solid #d6ff4b47;box-shadow:0 26px 80px #00000057}.player-dialog-head{background:linear-gradient(135deg,#f7fff2,#fff 52%,#eef4ff)}.player-photo{background:linear-gradient(135deg,#0f2d28,#2d79ff)}@media (width<=720px){.score-total strong{font-size:46px}.match-pane{background:linear-gradient(#071511 0,#0c211b 64px,#edf3ef 64px 100%)}}
