:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#eef7f4;background:#172e30}*{box-sizing:border-box}body{margin:0}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,canvas:focus-visible{outline:2px solid #b9f2bf;outline-offset:4px}main{height:100svh;min-height:600px;position:relative;overflow:hidden}#stadium{position:absolute;inset:0;width:100%;height:100%;touch-action:none}main:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#071b22a6 0%,transparent 32%,transparent 65%,#04130edf 100%)}.site-nav,header,.scene-status,.bottom,.penalty,#loading{z-index:2;position:absolute}.site-nav{top:0;left:0;right:0;padding:23px 34px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff1d;background:#061a1630}.site-nav a{text-decoration:none;font-size:14px}.site-nav .wordmark{font-size:17px;font-weight:750;letter-spacing:3px}.wordmark span{font-size:12px;color:#afc6be;font-weight:450;letter-spacing:2px}.site-nav>div{display:flex;gap:24px}.site-nav a[aria-current]{color:#cbfcae}.site-nav a:hover{color:#cbfcae}header{top:95px;left:36px;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:2px;color:#ccded7;margin:0 0 14px}h1{font-size:clamp(40px,5vw,70px);font-weight:550;line-height:.98;letter-spacing:-3px;margin:0;text-shadow:0 2px 30px #10292560}h1 span{display:block;font-size:.53em;letter-spacing:-1px;margin-top:10px;font-weight:350;color:#d6e8df}.intro{font-size:14px;color:#d4e3dd;margin-top:20px}.scene-status{right:35px;top:103px;display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:1px;text-transform:uppercase}#light-dot{width:6px;height:6px;background:#d6f6a1;border-radius:50%;box-shadow:0 0 14px #cef399}.bottom{bottom:19px;left:30px;right:30px;display:flex;flex-direction:column;align-items:center}.orbit-hint{font-size:12px;letter-spacing:1.6px;color:#d1e3d9;margin:0 0 15px}.orbit-hint span{padding:0 10px}.dock{display:flex;gap:20px;padding:9px;background:#091f1cf0;border:1px solid #c0e3ce38;border-radius:15px;box-shadow:0 12px 60px #03120f80;backdrop-filter:blur(20px)}.dock>div{display:flex;align-items:center;gap:3px}.actions{border-left:1px solid #ffffff26;padding-left:18px}button{border:1px solid transparent;border-radius:8px;background:transparent;padding:12px 14px;font-size:14px;color:#c3d5ce;white-space:nowrap}button:hover{background:#e0ffe710;color:white}button[aria-pressed=true]{background:#c1eac317;color:#e7f9df;border-color:#c1eac330}.primary{background:#c9efa2;color:#123521;font-weight:650}.primary:hover{background:#deffbc;color:#102f1b}.night-button span{color:#d9ecba;margin-right:6px}.footnote{width:100%;margin-top:16px;display:flex;justify-content:space-between;font-size:12px;color:#a6beb1;letter-spacing:1px}.footnote details{max-width:380px;text-align:right;letter-spacing:0}.footnote summary{cursor:pointer}.footnote p{position:absolute;right:0;bottom:25px;background:#0b201ff5;padding:18px;text-align:left;max-width:380px;border:1px solid #ffffff30;border-radius:12px;line-height:1.7;color:#d9e5e0;font-size:14px;box-shadow:0 8px 30px #0005}.penalty{width:290px;right:30px;bottom:164px;padding:19px;background:#08211ded;backdrop-filter:blur(20px);border:1px solid #d9f6e040;border-radius:14px;box-shadow:0 15px 60px #00140a70}.panel-heading{display:flex;align-items:center;justify-content:space-between}.panel-heading h2{font-size:19px;font-weight:500;margin:0;letter-spacing:-.5px}.panel-heading button{padding:0 4px;font-size:25px;line-height:1;color:#d6e3dc}.penalty p{font-size:14px;line-height:1.5;color:#c6d9cd;margin:12px 0 16px;min-height:21px}.penalty label{font-size:14px;display:flex;justify-content:space-between;margin-top:14px}.penalty output{color:#d6f6a1}.penalty input{width:100%;margin:15px 0 0;accent-color:#caeda8;cursor:pointer}.range-ends{display:flex;justify-content:space-between;font-size:12px;color:#97b0a3}.shoot{width:100%;margin-top:17px;display:flex;justify-content:space-between}.shoot:disabled{opacity:.6;cursor:wait}.penalty .penalty-hint{font-size:12px;color:#a9bfb3;margin:12px 0 0}.penalty[hidden]{display:none}#loading{top:50%;left:50%;transform:translate(-50%,-50%);padding:18px 24px;background:#09211f;border:1px solid #b8e3c450;border-radius:12px;max-width:85%;text-align:center;line-height:1.6}#loading[hidden]{display:none}@media(max-width:1050px){.dock{gap:8px}.actions{padding-left:8px}button{padding:11px 9px}.penalty{bottom:166px}}@media(max-width:800px){.site-nav{padding:19px 20px}.wordmark span{display:none}.site-nav>div{gap:18px}header{left:21px;top:85px}.intro{display:none}.scene-status{right:20px;top:88px;font-size:10px;max-width:105px;line-height:1.5}h1{font-size:43px}.eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:12px}.bottom{left:14px;right:14px;bottom:15px}.dock{flex-direction:column;gap:5px;padding:7px;width:min(100%,500px)}.dock>div{justify-content:center}.dock button{flex:1;padding:11px 6px;font-size:13px}.actions{padding-left:0;border-left:0;border-top:1px solid #ffffff15;padding-top:5px}.orbit-hint{font-size:10px;letter-spacing:.8px;margin-bottom:10px}.footnote{font-size:10px;margin-top:13px}.penalty{right:15px;bottom:190px;width:245px;padding:15px}.panel-heading h2{font-size:17px}.penalty p{margin:9px 0}.penalty label{margin-top:9px}.penalty input{margin-top:10px}.penalty .penalty-hint{display:none}.penalty .shoot{margin-top:12px}body:has(.penalty:not([hidden])) header{display:none}}@media(max-height:680px) and (min-width:801px){header{top:86px}h1{font-size:45px}.intro{display:none}.penalty{bottom:145px}.bottom{bottom:12px}.penalty p{margin:8px 0}.penalty label{margin-top:9px}}
@media(max-width:800px){.penalty:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:5px 18px;left:15px;right:15px;width:auto;bottom:190px}.penalty .panel-heading,.penalty #result,.penalty .shoot{grid-column:1/-1}.penalty .panel-heading{grid-row:1}.penalty #result{grid-row:2;margin:4px 0}.penalty label[for=aim]{grid-column:1;grid-row:3}.penalty label[for=power]{grid-column:2;grid-row:3}.penalty #aim{grid-column:1;grid-row:4}.penalty #power{grid-column:2;grid-row:4}.penalty .range-ends{display:none}.penalty .shoot{grid-row:5;margin-top:10px}.penalty label{font-size:13px}.penalty input{min-width:0;margin:8px 0}.site-nav a{font-size:13px}} 

.sound-toggle{position:absolute;right:30px;top:137px;z-index:3;background:#09251dd9;border:1px solid #b8d7c23a;font-size:13px;padding:9px 13px}.sound-toggle[aria-pressed=true]{color:#d6f6a1;background:#153c30}@media(max-width:800px){.sound-toggle{right:15px;top:132px;padding:8px 10px;font-size:12px}}

/* Match-day controls and a compact five-shot scorecard. */
.scene-options{position:absolute;right:35px;top:141px;z-index:3;display:flex;gap:7px}.scene-options button{position:static;padding:9px 12px;font-size:12px;letter-spacing:.2px;border:1px solid #c4e6d22a;background:#09251ebd;backdrop-filter:blur(16px)}.scene-options button[aria-pressed=true]{background:#c1eac324;color:#e1f8cb;border-color:#c1eac355}.penalty-modes{display:flex;gap:4px;background:#02140e55;padding:4px;margin-top:15px;border-radius:9px}.penalty-modes button{flex:1;font-size:12px;padding:8px}.scorecard{margin-top:16px}.scorecard[hidden]{display:none}.score-heading{display:flex;align-items:center;justify-content:space-between;color:#9dbaab;font-size:9px;letter-spacing:1.1px}.score-heading strong{color:#d9f8b6;font-size:17px;letter-spacing:0;font-weight:550}#shot-markers{display:flex;gap:7px;list-style:none;padding:0;margin:10px 0 2px}#shot-markers li{display:grid;place-items:center;flex:1;height:29px;border:1px solid #bedfc329;border-radius:6px;color:#79998a;font-size:12px}#shot-markers .scored{color:#133e28;background:#c9efa2;border-color:#c9efa2;font-size:17px}#shot-markers .missed{color:#ffc9b4;background:#8e47343b;border-color:#d8a38a55;font-size:17px}.penalty input:disabled{opacity:.45}.penalty-modes button:disabled{opacity:.6;cursor:wait}@media(max-width:800px){.scene-options{right:20px;top:127px;gap:5px}.scene-options button{padding:8px 9px;font-size:11px}.penalty-modes{margin-top:11px}.scorecard{margin-top:10px}.penalty{max-height:calc(100svh - 220px);overflow-y:auto}.score-heading{font-size:8px}#shot-markers{margin-top:7px}#shot-markers li{height:25px}}@media(max-height:680px) and (min-width:801px){.penalty{max-height:calc(100svh - 195px);overflow-y:auto}.scene-options{top:130px}}

/* The opening is an optional presentation layer; normal controls remain available. */
#arrival-curtain{position:absolute;inset:0;background:#06130f;opacity:0;pointer-events:none;z-index:1}.arrival{position:absolute;z-index:3;left:36px;bottom:176px;max-width:min(500px,calc(100% - 72px));padding:20px 24px;border-left:2px solid #c9efa2;background:linear-gradient(90deg,#051b17eb,#051b1740);border-radius:0 12px 12px 0;pointer-events:none}.arrival[hidden]{display:none}.arrival-chapter{margin:0 0 12px;font-size:12px;letter-spacing:2.5px;color:#c9efa2}.arrival h2{font-size:clamp(23px,3vw,38px);font-weight:450;line-height:1.18;letter-spacing:-1px;margin:0;max-width:430px;text-wrap:balance}.arrival-footer{display:flex;align-items:center;gap:22px;margin-top:18px}.arrival progress{width:130px;max-width:35%;height:3px;appearance:none;border:0;background:#d8efde33;color:#c9efa2}.arrival progress::-webkit-progress-bar{background:#d8efde33}.arrival progress::-webkit-progress-value{background:#c9efa2}.arrival progress::-moz-progress-bar{background:#c9efa2}.arrival button{pointer-events:auto;background:#09211bcc;border:1px solid #c9efa25c;color:#e1f1d2;font-size:14px;padding:9px 13px}.arrival button:hover{background:#254b37}.arriving header{opacity:0}.replay-arrival{font-size:13px;color:#d5ecb6;padding:6px 12px;margin-bottom:7px;border:1px solid #b5d4bd38;background:#0a241dc9}.replay-arrival[hidden]{display:none}.arriving .orbit-hint{visibility:hidden}@media(max-width:800px){.arrival{left:18px;bottom:191px;max-width:calc(100% - 36px);padding:17px 19px}.arrival h2{font-size:27px}.arrival-footer{margin-top:12px;gap:16px}.arrival-chapter{font-size:12px;letter-spacing:1.5px}.replay-arrival{font-size:12px}}@media(max-height:650px){.arrival{bottom:152px;padding:12px 18px}.arrival h2{font-size:23px}.arrival-chapter{margin-bottom:7px}.arrival-footer{margin-top:8px}.arrival button{padding:7px 10px}}@media(prefers-reduced-motion:reduce){#arrival-curtain{display:none}}

/* Floating match archive and pitch-linked performance cards. */
[hidden]{display:none!important}header h1 span{font-size:.42em;letter-spacing:-.6px}header .intro{font-size:16px}.season-panel{position:absolute;z-index:3;left:30px;right:30px;bottom:174px}.season-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:16px}.season-bar h2{font-size:24px;letter-spacing:-.7px;margin:0;text-shadow:0 2px 12px #001f15}.season-bar p{font-size:14px;margin:5px 0 0;color:#d8e8df;text-shadow:0 2px 7px #001f15}.match-filters{display:flex;background:#09241def;border-radius:12px;border:1px solid #b9e2c345;padding:4px}.fixture-list{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 2px 13px;scrollbar-color:#91b795 #16332a}.fixture-card{flex:0 0 235px;scroll-snap-align:start;padding:17px 19px;text-align:left;white-space:normal;background:linear-gradient(145deg,#153c32ed,#061c18eb);border:1px solid #d1edc34a;border-radius:15px;box-shadow:0 10px 30px #00130d40;backdrop-filter:blur(18px);transition:transform .2s,border-color .2s}.fixture-card:hover{transform:translateY(-2px);border-color:#d7ffad;background:#184436f2}.fixture-meta{font-size:12px;letter-spacing:.8px;display:flex;align-items:center;justify-content:space-between;color:#d1e2da}.result-badge{border-radius:5px;background:#6e867a;color:white;padding:3px 7px;font-weight:750;font-size:12px}.result-badge.win{background:#c9efa2;color:#123b29}.result-badge.loss{background:#754a44;color:#ffd6c5}.fixture-opponent{display:flex;align-items:center;gap:9px;min-height:56px;font-size:16px;color:#eff8f1}.team-crest{width:34px;height:34px;object-fit:contain}.fixture-score{display:block;font-size:32px;font-weight:650;letter-spacing:-1px;color:#fff}.fixture-caption{display:block;color:#b0cabb;font-size:12px;line-height:1.5;margin-top:5px}.match-open header,.match-open .scene-status{display:none}.match-detail{position:absolute;top:80px;left:26px;right:26px;z-index:5;pointer-events:none}.match-detail button,.match-detail details,.match-detail select{pointer-events:auto}.match-toolbar{display:flex;align-items:center;gap:20px;font-size:12px;color:#d0e7d5}.match-toolbar button{background:#08251fed;border:1px solid #bad7c63a}.match-toolbar #match-title{letter-spacing:1.5px;color:#ccf5a2}.match-toolbar #match-meta{margin-left:auto;font-size:14px;text-shadow:0 2px 8px #000}.match-scoreboard{display:flex;align-items:center;justify-content:center;gap:22px;width:fit-content;max-width:100%;margin:8px auto;background:#07241feb;border:1px solid #c4e2cc38;border-radius:14px;padding:12px 24px;box-shadow:0 12px 30px #001a1440;backdrop-filter:blur(18px)}.match-team{display:grid;grid-template-columns:42px auto;gap:4px 10px;align-items:center;min-width:150px}.match-team .team-crest{grid-row:1/3;width:39px;height:39px}.match-team strong{font-size:16px}.match-team span{font-size:12px;color:#b0c9b9}.match-score-centre{display:flex;flex-direction:column;text-align:center;min-width:85px}.match-score-centre strong{font-size:32px;letter-spacing:-1px;line-height:1.2;color:#e5ffb9}.match-score-centre span{font-size:12px;color:#b9d4c5}.match-tools{display:flex;gap:7px;align-items:center;justify-content:center}.match-tools button,.match-tools summary{background:#0a2a20ef;border:1px solid #c4e2cc38;border-radius:8px;padding:9px 13px;font-size:14px;cursor:pointer}.match-tools #match-venue-note{font-size:12px;padding-left:12px;color:#d5e8de;text-shadow:0 2px 8px #000}.match-settings,.roster{position:relative}.match-settings>div,.roster>#match-roster{position:absolute;right:0;top:42px;background:#08281ff7;border:1px solid #b9ddc85c;box-shadow:0 15px 40px #0007;border-radius:12px;padding:18px;min-width:250px;max-height:50svh;overflow-y:auto;pointer-events:auto}.match-settings label{display:flex;align-items:center;gap:9px;font-size:14px;margin:0 0 14px}.match-settings input{accent-color:#bdf293;width:18px;height:18px}.match-settings select{width:100%;font:inherit;font-size:14px;padding:9px;color:white;background:#163e31;border:1px solid #75977f;border-radius:6px}.roster>#match-roster{min-width:320px}.roster h3{font-size:16px;margin:0 0 10px}.roster section+section{margin-top:20px}.roster-player{display:block;width:100%;text-align:left;margin:4px 0;white-space:normal}.match-detail #lineup-note{font-size:12px;text-align:center;max-width:720px;margin:8px auto;color:#d9e6dc;text-shadow:0 1px 7px #000;background:#0a251c88;padding:5px;border-radius:5px}#player-labels{position:absolute;inset:0;z-index:4;pointer-events:none}.player-label{position:absolute;transform:translate(-50%,-5%);padding:3px 6px;pointer-events:auto;background:#03261fe6;border:1px solid #c7e4c43a;border-radius:6px;box-shadow:0 3px 10px #00180c66;text-align:center;min-width:65px;max-width:130px}.player-label:hover,.player-label.selected{background:#e0ffbc;color:#103729;border-color:#ebffdd;z-index:2}.player-name{display:block;font-size:14px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}.player-badges{display:block;font-size:12px;line-height:1.3;color:#e1f7b6}.player-badges:empty{display:none}.selected .player-badges,.player-label:hover .player-badges{color:#214f35}.player-card{position:absolute;right:22px;top:282px;width:330px;max-height:calc(100svh - 450px);min-height:150px;z-index:7;background:linear-gradient(150deg,#112e27f7,#071c19fa);backdrop-filter:blur(22px);border:1px solid #c9efa27c;border-radius:16px;padding:18px;overflow:auto;box-shadow:0 20px 70px #00120fc0}.player-card.anchored{right:auto}.performance-heading{display:flex;align-items:center;gap:10px}.performance-number{font-size:25px;border:1px solid #d5ba87;border-radius:7px;padding:8px;min-width:43px;text-align:center}.performance-heading .team-crest{width:27px;height:30px}.performance-heading h2{font-size:20px;line-height:1.2;margin:0}.performance-heading p{font-size:12px;margin:5px 0;color:#bcd1c7}.player-close{margin-left:auto;align-self:flex-start;padding:0 5px;font-size:24px}.performance-context{font-size:14px;color:#ceefb1;line-height:1.5}.performance-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.performance-stats>div{background:#deffdb0c;border:1px solid #daf7df20;border-radius:9px;padding:10px 6px;text-align:center}.performance-stats dt{font-size:12px;color:#b6cdc0;min-height:28px}.performance-stats dd{font-size:22px;font-weight:700;margin:3px 0 0;color:#f0fae5}.player-card .muted{font-size:12px;line-height:1.5;color:#a4bead}.player-event{font-size:14px;line-height:1.5;padding:9px 0;border-top:1px solid #c8e5cb26}.player-card>.primary{width:100%}#player-connector{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}.analytics-key{position:absolute;z-index:5;left:26px;bottom:167px;max-width:370px;padding:14px 18px;border:1px solid #d1efce45;background:#06271eef;border-radius:12px}.analytics-key strong{font-size:12px;letter-spacing:1px;color:#d4efaf}.analytics-key p{font-size:14px;margin:5px 0;line-height:1.5}.analytics-key small{display:block;font-size:12px;line-height:1.5;color:#b9cbbc;margin-top:8px}.arriving .season-panel{display:none}
@media(max-width:800px){.season-panel{left:15px;right:15px;bottom:205px}.season-bar h2{font-size:21px}.season-bar p{font-size:12px;max-width:210px;line-height:1.4}.season-bar{gap:8px}.fixture-card{flex-basis:205px;padding:13px 15px}.fixture-score{font-size:26px}.fixture-opponent{min-height:48px}.match-detail{top:72px;left:12px;right:12px}.match-toolbar{gap:8px;flex-wrap:wrap}.match-toolbar #match-title{display:none}.match-toolbar #match-meta{font-size:12px;max-width:58%;text-align:right}.match-scoreboard{gap:12px;padding:10px 12px}.match-team{min-width:0;grid-template-columns:28px auto;gap:3px 6px}.match-team .team-crest{width:27px;height:27px}.match-team strong{font-size:14px}.match-team span{font-size:12px}.match-score-centre{min-width:52px}.match-score-centre strong{font-size:26px}.match-tools{flex-wrap:wrap;gap:5px}.match-tools button,.match-tools summary{font-size:12px;padding:8px}.match-tools #match-venue-note{width:100%;text-align:center;padding:0}.match-detail #lineup-note{display:none}.match-settings>div{right:0;min-width:210px}.roster>#match-roster{position:fixed;top:245px;right:12px;left:12px;min-width:0}.player-label{max-width:85px;min-width:40px;padding:2px 4px}.player-name{font-size:12px}.player-badges{font-size:12px}.player-card{right:12px;left:12px;top:auto;bottom:194px;width:auto;max-height:35svh;padding:13px}.performance-stats{grid-template-columns:repeat(4,1fr)}.performance-stats dt{min-height:0}.analytics-key{left:12px;bottom:195px;max-width:calc(100% - 24px);padding:10px 12px}.analytics-key:has(+*){font-size:12px}body:has(.player-card:not([hidden])) .analytics-key{display:none}.scene-options{top:127px}.match-open .scene-options{top:auto;bottom:170px;right:15px}.match-open .replay-arrival{display:none}}
@media(max-height:800px) and (min-width:801px){.player-card{max-height:calc(100svh - 390px);top:242px}.season-panel{bottom:165px}.fixture-card{padding:12px 16px}.fixture-opponent{min-height:42px}.fixture-score{font-size:27px}.match-scoreboard{padding:8px 20px}.match-detail #lineup-note{max-width:620px}}
@media(prefers-reduced-motion:reduce){.fixture-card{transition:none}}

/* Match explorer refinement: clearer cards, deliberate controls and league context. */
#take-penalty{display:none!important}.scene-status{top:97px}.match-open .match-tools{flex-wrap:wrap;max-width:1100px;margin:auto}.match-tools .rating-source{display:flex;border:1px solid #c4e2cc38;border-radius:8px;padding:2px;background:#08241fed}.match-tools .rating-source button{border:0;padding:7px 11px}.rating-source button[aria-pressed=true]{background:#d4f2ae;color:#113b26}.match-tools #match-venue-note{width:100%;padding:0;text-align:center}.panel-close{display:block!important;width:100%;margin-bottom:14px;text-align:right;border-bottom:1px solid #adccb73d!important;border-radius:0!important;color:#e6f7d2!important}.roster>.roster-content{position:absolute;right:0;top:42px;min-width:330px;max-height:50svh;overflow:auto;background:#08281ff7;border:1px solid #b9ddc85c;box-shadow:0 15px 40px #0007;border-radius:12px;padding:16px;pointer-events:auto}.match-settings summary,.roster summary{list-style:none}.match-settings summary:after,.roster summary:after{content:' ⌄';color:#d4f2ae}.match-settings[open] summary:after,.roster[open] summary:after{content:' ⌃'}.player-card{background:linear-gradient(145deg,#f8ffef,#e9f2e1);color:#123526;border:2px solid #b9e879;box-shadow:0 0 0 5px #c8fa931a,0 22px 70px #00190ede;max-height:calc(100svh - 405px);width:365px;top:263px}.performance-heading h2{color:#123b28}.performance-heading p{color:#4d6b56}.player-close{color:#25462f;background:#d5e6cc}.player-close:hover{color:#112a1d;background:#bed8ae}.performance-context{color:#42662e}.performance-number{border-width:2px}.performance-stats>div{background:#fff9;border:1px solid #b4c9a8}.performance-stats dt{color:#4e6953}.performance-stats dd{color:#143b26}.performance-stats>.rating-tile{background:#d7edaf;border-color:#a8c677}.player-card .muted{color:#52664d}.player-event{border-color:#abc79a;color:#21462f}.player-card .primary{background:#164e36;color:#f0ffdd;border:1px solid #164e36}.player-card .primary:hover{background:#236849}.public-vote{padding:15px;background:#dcebd1;border:1px solid #b3cba1;border-radius:12px;margin:16px 0}.public-vote h3{font-size:17px;line-height:1.3;margin:0 0 8px;color:#1e4b32}.public-vote>strong{display:block;font-size:20px;color:#245037}.public-vote label{display:flex;justify-content:space-between;font-size:14px;margin:14px 0 8px}.public-vote input{width:100%;accent-color:#225c35;min-height:28px}.public-vote button{width:100%;margin-top:8px}.public-vote small{display:block;margin-top:8px;font-size:12px;line-height:1.5;color:#506844}.public-vote p{font-size:14px;line-height:1.4}.public-vote button:disabled{opacity:.6;cursor:wait}.league-context{position:fixed;right:30px;top:184px;width:410px;padding:13px 16px;border:1px solid #b6d9bc45;border-radius:14px;background:#09271fec;backdrop-filter:blur(18px);box-shadow:0 12px 40px #00140f3d}.league-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px}.league-heading strong{font-size:14px;color:#e8f8df}.league-heading span{font-size:12px;color:#bad0ba;white-space:nowrap}.league-mini{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.league-mini th{font-size:12px;color:#9ebda7;font-weight:500;padding:3px}.league-mini td{text-align:center;padding:6px 3px;border-top:1px solid #bad9c018}.league-mini th:nth-child(2),.league-mini td:nth-child(2){text-align:left}.league-mini .argyle-row{background:#cff8a81c;color:#dbffa8;font-weight:650}.league-context small{display:block;font-size:12px;line-height:1.4;color:#c9d1ae;margin-top:8px}.stats-panel{position:absolute;z-index:6;left:25px;bottom:165px;width:390px;max-height:calc(100svh - 440px);overflow:auto;background:linear-gradient(145deg,#123c30f7,#05221df7);border:1px solid #ceefac80;border-radius:16px;padding:17px;backdrop-filter:blur(20px);box-shadow:0 20px 60px #00190b99}.stats-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.stats-heading h2{font-size:20px;font-weight:600;margin:0;letter-spacing:-.4px}.stats-heading button{font-size:25px;padding:0 6px}.stat-groups{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:16px}.stat-groups button{font-size:12px;padding:8px 9px;border:1px solid #bce2b935}.stat-groups button[aria-pressed=true]{color:#123520;background:#d7f5ad}.stat-title{font-size:17px;color:#edffd0}.stat-team-legend{display:flex;justify-content:space-between;gap:14px;font-size:12px;margin:10px 0}.home-stat{color:#c5ff91}.away-stat{color:#83beff}.metric-choices{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0}.metric-choice{display:flex;flex-direction:column;align-items:flex-start;white-space:normal;text-align:left;padding:10px 12px;border:1px solid #c3e3ce26;background:#ffffff06}.metric-choice span{font-size:12px;color:#c0d4c6}.metric-choice strong{font-size:20px;line-height:1.5;color:white}.metric-choice[aria-pressed=true]{border-color:#c3ed935e;background:#c3ed9317}.stat-ratio{display:flex;width:100%;min-height:32px;border-radius:8px;overflow:hidden;margin:12px 0;gap:2px}.stat-ratio span{min-width:28px;display:grid;place-items:center;font-weight:700;color:#09231c;font-size:14px}.home-stat-fill{background:#c5ff91}.away-stat-fill{background:#83beff}#analytics-key small{display:block;font-size:12px;line-height:1.5;color:#bacfc1}.victory-banner{position:absolute;z-index:8;pointer-events:none;top:36%;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;background:linear-gradient(110deg,#062b2290,#123e2990);border-top:1px solid #cffca688;border-bottom:1px solid #cffca688;padding:18px 45px;box-shadow:0 0 100px #baff6620;backdrop-filter:blur(8px);animation:victory-entrance .6s ease-out}.victory-banner strong{font-size:clamp(30px,5vw,60px);letter-spacing:2px;color:#e0ffa9;text-shadow:0 3px 25px #96dd5260;white-space:nowrap}.victory-banner span{font-size:14px;letter-spacing:2px;color:#e7f6df}.victory-banner span:last-child{letter-spacing:0;margin-top:5px}@keyframes victory-entrance{from{opacity:0;transform:translate(-50%,15px) scale(.95)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@media(max-height:800px) and (min-width:801px){.league-context{top:93px}.season-panel{bottom:159px}.stats-panel{max-height:calc(100svh - 420px);bottom:153px}.player-card{top:254px;max-height:calc(100svh - 405px)}}
@media(max-width:1050px){.league-context{width:355px;right:22px}.stats-panel{width:330px}.player-card{width:330px}.match-tools #match-venue-note{display:none}}
@media(max-width:800px){.season-panel{max-height:calc(100svh - 285px);overflow-y:auto;overflow-x:hidden}.league-context{position:static;width:100%;margin:0 0 12px;padding:10px 12px}.league-mini{font-size:12px}.league-mini td{padding:5px 2px}.league-heading strong{font-size:14px}.fixture-card{flex-basis:200px}.season-bar{position:sticky;top:0;z-index:1;background:#09281ee8;border-radius:10px;padding:8px}.match-open .match-tools{max-width:100%}.match-tools .rating-source button{padding:7px 10px;font-size:12px}.roster>.roster-content{position:fixed;top:270px;left:12px;right:12px;min-width:0;max-height:calc(100svh - 465px)}.match-settings>div{position:fixed;left:12px;right:12px;top:270px;min-width:0;max-height:calc(100svh - 465px)}.player-card{right:12px;left:12px;top:auto;bottom:190px;width:auto;max-height:38svh}.stats-panel{left:12px;right:12px;bottom:190px;width:auto;max-height:35svh;padding:13px}.stat-groups{flex-wrap:nowrap;overflow-x:auto}.stat-groups button{flex:1}.stats-heading h2{font-size:18px}.metric-choices{grid-template-columns:repeat(3,1fr)}.metric-choice{padding:7px}.metric-choice span{font-size:12px}.metric-choice strong{font-size:18px}.victory-banner{top:40%;padding:15px 30px}.player-card:not([hidden])~.stats-panel{display:none}}
@media(prefers-reduced-motion:reduce){.victory-banner{animation:none}}

/* Compact match views: the pitch remains the main canvas. */
.player-label{transform:translate(-50%,-100%);border-radius:14px;padding:7px 10px;max-width:170px;border:1px solid #bfe9c99c;box-shadow:0 5px 20px #001e13a6;background:#052d26f5}
.player-label:after{content:'';position:absolute;top:100%;left:calc(50% - 5px);border:5px solid transparent;border-top-color:#bfe9c9}
.player-label.selected{box-shadow:0 0 0 3px #dfffaf38,0 6px 24px #001e13b3}.player-name{font-weight:650}.player-badges{font-size:13px;margin-top:2px}
.player-card{width:340px;top:255px;padding:14px;max-height:calc(100svh - 345px);overflow:auto;scrollbar-width:thin}.player-close{min-width:36px;min-height:36px}.performance-number{font-size:23px;padding:6px}.performance-context{font-size:12px;margin:9px 0}.performance-heading h2{font-size:19px}
.player-tabs{display:flex;gap:3px;border-bottom:1px solid #abc79a;padding-bottom:8px}.player-tabs button{flex:1;padding:10px 5px;min-height:42px;font-size:12px;color:#36533f}.player-tabs button[aria-selected=true]{background:#174e35;color:#f4ffe7;font-weight:650}.player-tab-content{padding-top:2px}.player-tab-content .summary-stats{grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0}.summary-stats dt{min-height:0}.summary-stats dd{font-size:25px}.player-tab-content .primary,.explore-player{width:100%;min-height:42px}.explore-player{margin-top:5px;color:#234c32;font-size:13px}.explore-player:hover{color:#123826;background:#cee3bd}.player-tab-content #player-page-details{max-height:250px;overflow:auto;overscroll-behavior:contain}.performance-stats{grid-template-columns:repeat(3,1fr)}
.public-vote{margin:8px 0 0;padding:10px;background:#e3efd6}.public-vote h3{display:none}.public-vote>strong{font-size:15px}.public-vote p{font-size:12px;margin:7px 0}.public-vote p:empty{display:none}.public-vote small{font-size:11px;line-height:1.3;margin-top:7px}.vote-scores{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.vote-scores button{width:auto;min-height:44px;padding:6px;margin:0;background:#f8fff0;border:1px solid #a7c78d;color:#24492d;font-size:18px;font-weight:700}.vote-scores button[aria-pressed=true]{background:#155037;border-color:#155037;color:#efffd7}.vote-scores button:hover{background:#bfe896;color:#123520}.vote-guide{display:flex;justify-content:space-between;font-size:10px;color:#46613c;margin-top:5px}
.view-menu{position:relative}.view-menu summary,.stadium-menu>summary,.league-menu>summary{list-style:none;cursor:pointer}.view-menu summary:after{content:' ⌄'}.view-menu-content{position:absolute;top:45px;left:0;min-width:210px;display:grid;padding:12px;border:1px solid #b9ddc85c;border-radius:12px;background:#08281ffa;box-shadow:0 15px 40px #0007}.view-menu-content button{text-align:left;min-height:44px}.match-settings .rating-source{margin:10px 0 16px}.match-tools button,.match-tools summary{min-height:42px}
.stadium-menu{position:relative}.stadium-menu>summary{background:#09281feb;border:1px solid #c3e6ce70;border-radius:12px;padding:12px 24px;font-size:13px}.stadium-menu .dock{position:absolute;bottom:52px;left:50%;transform:translateX(-50%);flex-direction:column;width:360px;max-width:calc(100vw - 28px);gap:8px}.stadium-menu .dock>div{display:grid;grid-template-columns:repeat(2,1fr);border:0;padding:0;gap:5px}.stadium-menu .dock button{position:static;min-height:44px;font-size:13px}.stadium-menu .dock .panel-close{margin:0}.bottom{z-index:8}.match-open .orbit-hint,.match-open .replay-arrival{display:none}.match-open .scene-options{display:none}.match-open .bottom{bottom:14px}.match-open .footnote{display:none}.season-panel{bottom:140px}.league-menu{position:absolute;right:0;bottom:calc(100% + 12px)}.league-menu>summary{padding:10px 14px;background:#08281fe8;border:1px solid #badabe66;border-radius:10px;font-size:13px}.league-menu .league-context{position:absolute;top:auto;bottom:48px;right:0;width:min(410px,calc(100vw - 30px));margin:0}
.stats-provider{display:flex;align-items:center;gap:9px}.stats-provider>span{font-size:11px;color:#bfd4c6;max-width:90px;line-height:1.3}.stats-provider img{width:128px;height:55px;object-fit:contain}.season-provider{position:absolute;left:0;bottom:calc(100% + 7px)}.season-provider .stats-provider{padding:0 12px;background:#09281fd9;border-radius:10px}.season-provider .stats-provider img{width:112px;height:48px}
.stats-panel{left:50%;right:auto;bottom:76px;transform:translateX(-50%);width:min(760px,calc(100% - 36px));max-height:none;padding:5px 16px 10px;overflow:visible;box-shadow:0 12px 40px #00190b66}.stats-heading{margin:0}.stats-heading button{font-size:12px;min-height:40px;padding:8px 10px;border:1px solid #c5e7cb45}.stat-groups{margin:0;gap:5px;flex-wrap:nowrap;overflow:auto}.stat-groups button{flex:1;min-height:40px}.stat-team-legend{margin:8px 0 3px;font-size:12px;font-weight:650;justify-content:flex-start;gap:20px}.stat-team-legend span:before{content:'● ';font-size:12px}.stat-values{position:absolute;right:16px;bottom:12px;font-size:12px}.stat-values summary{cursor:pointer;color:#e4fbcf;padding:7px;border:1px solid #a8d9bb40;border-radius:7px}.stat-values-list{position:absolute;bottom:40px;right:0;width:260px;padding:9px;background:#08281ffa;border:1px solid #bfe9c966;border-radius:10px;max-height:45svh;overflow:auto}.stat-values-list button{display:block;text-align:left;width:100%;min-height:44px;white-space:normal;font-size:13px}#analytics-key .stat-hint{font-size:11px;padding-right:90px}.stats-mode #lineup-note{display:none}
@media(max-width:800px){main{min-height:0;height:100svh}.site-nav{padding:13px 16px}.site-nav a{font-size:12px}.site-nav .wordmark{font-size:14px}.match-detail{top:53px;left:10px;right:10px}.match-toolbar button{padding:7px 10px;min-height:36px}.match-scoreboard{gap:8px;margin:5px auto;padding:7px 9px}.match-team strong{font-size:12px;max-width:96px}.match-team span{font-size:10px}.match-score-centre strong{font-size:24px}.match-tools{gap:4px}.match-tools button,.match-tools summary{font-size:11px;padding:8px 9px;min-height:40px}.match-tools #match-venue-note{display:none}.view-menu-content,.match-settings>div,.roster>.roster-content{position:fixed;left:10px;right:10px;top:205px;min-width:0;max-height:calc(100svh - 290px);overflow:auto}.view-menu-content button,.match-settings button,.roster-player{min-height:44px;font-size:13px}.player-label{max-width:125px;min-width:60px;padding:5px 7px}.player-name{font-size:12px}.player-badges{font-size:12px}.player-card,.player-card.anchored{left:10px!important;right:10px;top:auto!important;bottom:68px;width:auto;max-height:calc(100svh - 274px);padding:11px;border-radius:15px}.player-card .performance-stats{grid-template-columns:repeat(3,1fr)}.performance-stats>div{padding:7px 4px}.player-tab-content #player-page-details{max-height:185px}.player-tabs button{font-size:12px;min-height:40px}.public-vote{padding:8px}.public-vote small{font-size:10px}.vote-scores button{min-height:42px}.bottom{bottom:max(10px,env(safe-area-inset-bottom));left:12px;right:12px}.match-open .bottom{bottom:max(10px,env(safe-area-inset-bottom))}.stadium-menu>summary{padding:10px 18px;min-height:40px}.orbit-hint,.replay-arrival{display:none}.footnote{margin-top:7px}.season-panel{bottom:120px;left:12px;right:12px;overflow:visible;max-height:none}.season-provider{bottom:calc(100% + 6px)}.season-provider .stats-provider{gap:4px;padding:0 8px}.season-provider .stats-provider span{font-size:10px;max-width:68px}.season-provider .stats-provider img{width:90px;height:40px}.league-menu{bottom:calc(100% + 7px)}.league-menu>summary{font-size:11px;padding:11px 8px}.season-bar{padding:7px;position:static}.season-bar h2{font-size:18px}.season-bar p{font-size:10px;max-width:185px}.match-filters button{font-size:11px;padding:10px}.fixture-card{flex-basis:185px}.league-menu .league-context{bottom:44px;max-height:45svh;overflow:auto;padding:10px}.league-heading{flex-wrap:wrap}.league-mini{font-size:11px}.scene-options{top:157px;right:15px}.stats-panel{left:10px;right:10px;bottom:65px;transform:none;width:auto;padding:3px 10px 8px;max-height:none}.stats-provider img{width:108px;height:44px}.stats-provider>span{font-size:10px;max-width:78px}.stats-heading button{font-size:11px;padding:7px}.stat-groups button{font-size:11px;padding:8px;min-height:40px}.stat-team-legend{font-size:11px;gap:10px;margin-top:6px;padding-right:58px}.stat-values{right:9px;bottom:10px;font-size:10px}.stat-values summary{padding:5px}.stat-values-list{width:240px}#analytics-key .stat-hint{font-size:10px;line-height:1.3;padding-right:70px}.stats-mode .match-tools .match-settings,.stats-mode .match-tools .roster{display:none}}
@media(max-height:540px){.match-scoreboard{padding:3px 9px}.match-detail{top:48px}.match-toolbar{display:none}.player-card{top:115px!important;bottom:60px;left:auto!important;right:10px;width:min(340px,48vw);max-height:calc(100svh - 175px)}.stats-panel{width:60%;left:20%;right:auto;transform:none}.stats-provider img{height:34px}.stats-provider>span{font-size:10px}.stat-hint{display:none!important}.season-bar p{display:none}.fixture-card{padding:8px 12px}.season-panel{bottom:102px}.season-provider{display:none}header{top:65px}h1{font-size:30px}}

/* Home Park is a VantaCue experience, with roomier match performance panels. */
.site-nav{height:68px;padding:0 28px;background:#06251eea}.site-nav .vantacue-brand{display:flex;align-items:center;height:64px}.vantacue-brand img{width:150px;height:68px;object-fit:contain}.site-nav .block9-link{font-size:14px;color:#e2f4d3}.footnote{letter-spacing:0;gap:15px;align-items:center}.footnote a{color:#def4c8;text-underline-offset:3px}.match-open .footnote{display:flex}.match-open .bottom{bottom:12px}.match-open .stadium-menu{margin-bottom:0}.match-open .stats-panel{bottom:103px}
.match-team{display:flex;align-items:center;gap:12px;min-width:190px}.match-team-name{display:flex;flex-direction:column;gap:4px}.match-team.home{justify-content:flex-end;text-align:right}.match-team.away{flex-direction:row-reverse;justify-content:flex-end;text-align:left}.match-team .team-crest{width:43px;height:43px;flex:none}.match-scoreboard{gap:16px}.match-score-centre{min-width:74px}
.player-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;z-index:19;background:#001a1470;backdrop-filter:blur(3px);cursor:default}.player-backdrop:hover{background:#001a1470}.player-card,.player-card.anchored{position:absolute;z-index:20;left:50%!important;right:auto;top:50%!important;bottom:auto;width:min(940px,calc(100% - 48px));transform:translate(-50%,-50%);padding:22px;max-height:calc(100svh - 40px);border-radius:20px;overflow:auto;scrollbar-width:thin}.performance-heading h2{font-size:25px}.performance-heading .team-crest{width:36px;height:40px}.performance-number{font-size:30px;min-width:52px}.player-close{min-width:44px;min-height:44px}.performance-context{margin:9px 0 17px;font-size:13px}.full-stats-heading{font-size:15px;margin:8px 0;color:#2b5335}.stats-pagination{display:flex;align-items:center;justify-content:center;gap:18px;font-size:12px}.stats-pagination button{min-width:44px;min-height:38px;color:#23482f;border:1px solid #a0be8c}.stats-pagination button:disabled{opacity:.35}.player-tab-content #player-page-details{max-height:none;overflow:visible}.player-tab-content .full-player-stats{margin-top:10px}.player-card .public-vote{margin:0;padding:14px}.player-card .public-vote h3{display:block;margin-bottom:8px;font-size:16px}.public-vote .vote-slider-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin:16px 0 3px}.vote-slider-label output{font-weight:750;font-size:22px;color:#1d5436}.public-vote input[type=range]{width:100%;min-height:38px;margin:0;accent-color:#235c3d}.public-vote .primary{min-height:44px;margin-top:12px}.public-vote .vote-guide{font-size:11px}.public-vote small{font-size:11px}.public-vote p{min-height:15px}.public-vote p:empty{display:none}
@media(min-width:700px){.player-tabs{display:none}.player-tab-content{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px 22px}.player-tab-content>#player-page-summary[hidden],.player-tab-content>#player-page-vote[hidden],.player-tab-content>#player-page-details[hidden]{display:block!important}.player-tab-content #player-page-summary{grid-column:2;grid-row:1}.player-tab-content #player-page-vote{grid-column:2;grid-row:2}.player-tab-content #player-page-details{grid-column:1;grid-row:1/3}.player-tab-content #player-page-summary>.primary{display:none}.player-tab-content .full-player-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.full-player-stats>div{padding:10px 5px}.full-player-stats dt{font-size:11px;min-height:29px}.full-player-stats dd{font-size:23px}.full-player-stats .player-event{font-size:12px}.player-tab-content .summary-stats{margin:0 0 7px}.player-tab-content .summary-stats dt{font-size:11px}.player-tab-content .summary-stats dd{font-size:22px}.explore-player{margin:0}.player-tab-content #player-page-details .muted{margin-bottom:0}}
@media(min-width:700px) and (max-width:950px){.player-card,.player-card.anchored{width:calc(100% - 32px);padding:18px}.player-tab-content{grid-template-columns:minmax(0,1fr) 235px;gap:10px 16px}.player-tab-content .full-player-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.match-team{min-width:140px}}
@media(max-width:699px){.site-nav{height:56px;padding:0 14px}.site-nav .vantacue-brand,.vantacue-brand img{height:55px;width:122px}.site-nav .block9-link{font-size:12px}.match-detail{top:62px}.match-team{min-width:0;gap:6px}.match-team-name{gap:2px}.match-team strong{font-size:11px;max-width:95px}.match-team .team-crest{width:28px;height:30px}.match-scoreboard{gap:7px;padding:8px}.match-score-centre{min-width:47px}.match-score-centre strong{font-size:24px}.match-score-centre span{font-size:10px}.match-team span{font-size:10px}.player-card,.player-card.anchored{left:50%!important;top:50%!important;right:auto;bottom:auto;width:calc(100% - 24px);padding:14px;max-height:calc(100svh - 24px)}.performance-heading h2{font-size:20px}.performance-number{font-size:24px;min-width:44px}.performance-context{margin:7px 0 10px;font-size:12px}.player-tabs{margin-bottom:6px}.player-tab-content #player-page-details{max-height:none;overflow:visible}.player-card .performance-stats{grid-template-columns:repeat(3,1fr)}.full-player-stats dt{font-size:11px;min-height:26px}.full-player-stats dd{font-size:23px}.player-card .public-vote{padding:12px}.player-card .public-vote h3{display:none}.player-card .public-vote>strong{font-size:14px}.full-stats-heading{display:none}.player-card .muted{font-size:11px;margin:7px 0}.match-open .footnote{font-size:9px;margin-top:7px}.match-open .stats-panel{bottom:92px}.match-open .bottom{bottom:max(7px,env(safe-area-inset-bottom))}.match-open .stadium-menu>summary{padding:8px 14px;min-height:34px}}
@media(max-height:600px) and (min-width:700px){.player-card,.player-card.anchored{padding:14px;max-height:calc(100svh - 20px)}.performance-heading h2{font-size:20px}.performance-number{font-size:22px;min-width:40px;padding:4px}.performance-context{margin:5px 0 8px}.player-tab-content{gap:6px 14px}.full-player-stats>div{padding:5px}.full-player-stats dd{font-size:20px}.full-player-stats dt{min-height:25px}.player-card .public-vote{padding:9px}.public-vote .vote-slider-label{margin-top:7px}.public-vote .primary{margin-top:7px}.player-card .performance-stats{margin-top:4px;margin-bottom:4px}}
.bench-team-switch{display:flex;align-items:center;justify-content:center;gap:7px;margin:9px auto 0;width:fit-content;max-width:100%;padding:5px 9px;border-radius:12px;background:#08281ff5;border:1px solid #bfd9b65c;pointer-events:auto}.bench-team-switch>span{font-size:12px;color:#cee3c1;padding:0 5px}.bench-team-switch button{min-height:44px;font-size:13px;padding:9px 14px;white-space:normal}.bench-team-switch button[aria-pressed=true]{background:#d4f2ae;color:#123d28;font-weight:650}@media(max-width:699px){.bench-team-switch{gap:4px;padding:4px;margin-top:6px}.bench-team-switch>span{display:none}.bench-team-switch button{font-size:11px;min-height:40px;padding:7px 10px}}

.model-retry{position:absolute;z-index:9;left:50%;bottom:100px;transform:translateX(-50%);background:#163e31;border:1px solid #bade9f;font-size:12px;max-width:90%;white-space:normal}

/* Keep exploration controls reachable without occupying the pitch. */
.free-navigation{position:absolute;z-index:31;left:18px;bottom:82px;width:250px;padding:14px;background:#092c24f2;border:1px solid #a5ce82;border-radius:16px;color:#efffe4;box-shadow:0 8px 30px #001b2260}
.free-navigation[hidden]{display:none}.free-navigation>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px}.free-navigation p{font-size:11px;line-height:1.5;margin:9px 0}.free-navigation button{color:#efffe4;background:#234d3b;border:1px solid #8db99b66;border-radius:9px;padding:9px;cursor:pointer;touch-action:none}.movement-pad{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:5px}.movement-pad button{min-height:44px}.movement-pad button:active{background:#528947}.free-moving .orbit-hint{visibility:hidden}
#lineup-note{max-width:560px;margin:5px auto 0;font-size:10px;line-height:1.3;padding:0 12px;background:transparent}
@media(max-width:699px){.free-navigation{left:12px;bottom:76px;width:220px;padding:10px}.free-navigation p{font-size:10px}.free-moving .stats-panel{display:none}.free-moving #lineup-note{display:none}main{min-height:0}}

.player-label:after{left:clamp(8px,calc(50% - 5px + var(--pointer-offset,0px)),calc(100% - 18px))}
.stat-overview{font-size:12px;border:1px solid #91bc86;margin-top:6px;padding:6px 10px;background:#24513b}

/* Match stories and deliberate player focus. */
.recent-form{display:flex;align-items:center;gap:6px;padding:0 8px 7px;font-size:12px;color:#d4e8d3}.form-caption{margin-right:5px;font-weight:650}.form-latest{font-size:10px;margin-left:5px;color:#b0c5b1}.form-result{width:29px;height:29px;min-height:29px;padding:0;border-radius:7px;font-size:12px;font-weight:750;border:1px solid #b4d2ad66}.result-W{background:#c6efa2;color:#173924}.result-L{background:#743a3d;color:#fff}.result-D{background:#597272;color:#fff}
#share-match{margin-left:auto;white-space:nowrap}.match-toolbar{gap:10px}#match-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-moments{position:absolute;left:50%;transform:translateX(-50%);bottom:102px;z-index:14;width:min(880px,calc(100% - 32px));padding:14px 16px;background:#082b23f5;border:1px solid #b7dca16e;border-radius:18px;box-shadow:0 12px 45px #001d1b88;backdrop-filter:blur(16px)}.moments-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.moments-heading strong{font-size:17px}.moments-heading button{min-height:40px;min-width:40px;font-size:23px}.moment-filters{display:flex;gap:5px;margin:4px 0 12px}.moment-filters button{min-height:36px;font-size:12px;border:1px solid #86bba25e}.moment-filters button[aria-pressed=true]{background:#d6f4af;color:#153c2b}.moment-timeline{display:flex;gap:10px;overflow-x:auto;overscroll-behavior:contain;scroll-snap-type:x proximity;padding:10px 0 8px;scrollbar-width:thin;border-top:1px solid #698a7166}.moment-item{flex:0 0 180px;scroll-snap-align:start}.moment-button{width:100%;height:100%;min-height:115px;padding:12px;text-align:left;border-radius:12px;border:1px solid #c5ff9160;background:#15472f}.moment-item.away .moment-button{border-color:#83beff75;background:#143d40}.moment-button:hover{border-color:#fff;background:#24543e}.moment-button>span,.moment-button>.moment-player{display:block}.moment-top{display:flex!important;align-items:center;justify-content:space-between;gap:6px;margin-bottom:10px}.moment-top>strong{font-size:20px}.moment-type{font-size:10px;padding:4px 6px;border-radius:5px;background:#2f694c}.moment-type.yellowCard{background:#ebd46b;color:#342f13}.moment-type.redCard,.moment-type.secondYellowCard{background:#bb444e;color:#fff}.moment-player{font-size:13px}.moment-team,.moment-replacement{font-size:11px;color:#c7dfd1;margin-top:4px}.moment-note{display:block;font-size:10px;margin-top:8px;color:#bdd1c6}.moment-empty{font-size:13px;padding:10px}
.player-focus{position:absolute;right:26px;bottom:110px;z-index:17;width:310px;padding:17px;background:#f4faeafa;color:#17412e;border:2px solid #cdf69b;border-radius:18px;box-shadow:0 12px 44px #001c2677}.focus-heading{display:flex;align-items:center;gap:10px}.focus-heading>div{flex:1;min-width:0}.focus-heading>div>strong{display:block;font-size:19px}.focus-heading>div>span{display:block;font-size:11px;margin-top:4px}.focus-heading button{color:#254934;background:#d7e8c8;min-width:36px;min-height:36px;padding:4px;font-size:23px}.focus-number{font-size:25px;padding:9px 12px;border:1px solid #b7ac6d;border-radius:8px}.focus-rating{padding:11px 0 10px;border-bottom:1px solid #abc790;font-size:13px;font-weight:650}.focus-actions{display:flex;gap:7px}.focus-actions button{flex:1;white-space:normal;min-height:44px;font-size:12px;border:1px solid #b4cb9c;color:#214c32;background:#e3efd4}.focus-actions button.primary{background:#154c37;color:#fff}.player-label.muted-player{opacity:.45}.player-label.selected{opacity:1;border:2px solid #e2ffae;background:#092f27;box-shadow:0 0 0 4px #d8ff9c22,0 7px 22px #00221a99}#player-connector{z-index:16;pointer-events:none}.share-player{font-size:12px;width:100%;min-height:40px;color:#214c32;border:1px solid #abc594;margin-top:7px}.share-feedback{position:absolute;z-index:35;left:50%;top:76px;transform:translateX(-50%);width:min(580px,calc(100% - 28px));display:flex;gap:6px;padding:10px;background:#143f30;border:1px solid #b5d89e;border-radius:12px}.share-link{min-width:0;flex:1;background:#eef8e2;color:#173e2b;padding:10px;border:0;border-radius:7px;font-size:13px}.share-feedback button{min-height:44px}.stat-value-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;min-height:36px;padding:4px;border-bottom:1px solid #a3caaa30}.stat-value-row strong{white-space:nowrap;color:#e9facf}
.return-pitch{position:absolute;right:0;bottom:32px;min-height:42px;background:#d2efa7;color:#163d29;border:1px solid #e0f7bb;padding:10px 16px;border-radius:10px;box-shadow:0 4px 20px #00191155;font-size:12px;font-weight:650}.return-pitch:hover{background:#e4ffc0;color:#163d29}.orientation-map{position:absolute;left:18px;bottom:48px;z-index:10;font-size:12px}.orientation-map>summary{padding:11px 14px;border:1px solid #a5bf9570;border-radius:10px;background:#0a3024ee;cursor:pointer}.map-content{position:absolute;bottom:48px;left:0;width:196px;padding:16px 10px 10px;border-radius:15px;border:1px solid #8ead85;background:#092b24f5;text-align:center}.map-content svg{width:100%;height:auto}.map-content text{font:9px Arial;fill:#ddedcc}.map-content>span{font-size:10px;color:#bed9c9}.movement-modes{display:flex;gap:5px;margin-top:8px}.movement-modes button{flex:1;font-size:12px;min-height:36px}.movement-modes button[aria-pressed=true]{background:#d2efa7;color:#163d29}.walk-mode [data-move=q],.walk-mode [data-move=e]{visibility:hidden}.free-moving .orientation-map{display:none}.free-navigation{bottom:104px}.free-moving .stats-panel,.free-moving .match-moments{display:none}
@media(min-width:700px){.player-card{overflow:visible}.player-tab-content .full-player-stats{gap:7px}.player-tab-content .full-player-stats dt{min-height:24px}.player-tab-content .full-player-stats>div{padding:7px 5px}}
@media(max-width:699px){.recent-form{gap:5px;padding-bottom:5px}.form-result{width:28px;height:28px}.form-latest{display:none}#share-match{font-size:11px;padding:7px}.match-toolbar{gap:5px}.match-toolbar #match-title{display:none}.match-tools #toggle-moments{font-size:11px;padding:8px 7px}.match-moments{bottom:98px;padding:10px;max-width:calc(100% - 20px)}.moments-heading strong{font-size:15px}.moment-item{flex-basis:160px}.moment-filters{margin-bottom:7px}.moment-note{font-size:9px}.player-focus{left:12px;right:12px;bottom:99px;width:auto;padding:12px}.focus-heading>div>strong{font-size:18px}.focus-rating{margin:8px 0;padding:0 0 8px}.focus-actions button{min-height:40px}.return-pitch{right:0;bottom:25px;padding:9px 10px;min-height:36px;font-size:10px}.orientation-map{left:12px;bottom:33px}.orientation-map>summary{font-size:10px;padding:10px}.map-content{width:165px}.stadium-menu{max-width:fit-content;margin:0 auto}.match-open .stadium-menu>summary{font-size:10px;padding:8px 10px}.free-navigation{bottom:99px}.view-menu-content,.match-settings>div,.roster>.roster-content{top:min(228px,38svh);max-height:calc(100svh - 305px)}.scene-status{display:none}}
@media(max-height:580px){.match-moments{bottom:84px;padding:8px;width:65%;left:50%}.moment-note{display:none}.moment-filters{margin:0 0 4px}.moment-button{min-height:90px;padding:8px}.moment-top{margin-bottom:5px}.moment-timeline{padding:6px 0}.match-toolbar{display:flex}.match-toolbar #match-meta,.match-toolbar #match-title{display:none}.match-detail{top:61px}.match-scoreboard{margin:0 auto}.match-detail #lineup-note{display:none}.player-focus{bottom:88px;left:auto;right:12px;width:280px}.free-navigation{bottom:87px}.free-navigation p{display:none}.movement-pad button{min-height:36px;padding:5px}.player-card,.player-card.anchored{overflow:auto}.orientation-map .map-content{width:140px}.stats-panel .stat-team-legend{margin:3px 0}.stats-panel .stats-provider{display:none}.stats-heading{justify-content:flex-end}.stats-panel{padding:5px 10px}.match-tools{margin-top:3px}}
@media(prefers-reduced-motion:reduce){.player-label,.player-focus{transition:none}}
.player-label.selected,.player-label.selected .player-badges{color:#e8ffc9}.player-label.selected:hover{background:#163f30;color:#fff}
.player-card .public-vote>p{margin:7px 0;font-size:11px;line-height:1.35}.player-card .public-vote>small{display:block;margin-top:8px;line-height:1.35}.player-card .public-vote>strong{font-size:14px;line-height:1.3}.player-card .public-vote h3{margin-top:0}.player-card .public-vote .vote-slider-label{margin-top:9px}.player-card .public-vote .vote-guide{display:flex;justify-content:space-between}.walk-mode [data-move=q],.walk-mode [data-move=e]{display:none}.walk-mode [data-move=s]{grid-column:2}
@media(max-height:580px) and (min-width:700px){.player-card .public-vote>p,.player-card .public-vote>small{font-size:10px;margin:5px 0}.player-card .public-vote h3{font-size:14px;margin-bottom:5px}.player-card .public-vote input[type=range]{min-height:30px}.player-card .public-vote .primary{min-height:38px;padding:7px}.explore-player,.share-player{min-height:34px;padding:7px}.stats-panel .stats-heading{display:none}.stats-panel .stat-team-legend,.stats-panel .stat-hint{display:none}.stats-panel{width:calc(100% - 260px);left:130px;right:130px;bottom:87px;transform:none;padding:7px 10px}.stats-panel .stat-groups{padding-right:50px}.stats-panel .stat-values{bottom:10px}.stat-groups button{min-height:32px;padding:6px;font-size:10px}.match-scoreboard{padding:4px 12px}.match-team-name>span{display:none}.match-score-centre span{display:none}.match-score-centre strong{font-size:25px}.match-team .team-crest{width:30px;height:30px}.match-tools button,.match-tools summary{min-height:32px;padding:7px 11px;font-size:11px}}
.free-moving .season-panel,.free-moving header{display:none}

.stat-team-legend button{min-height:40px;padding:6px 10px;border:1px solid currentColor;border-radius:8px;background:#163e3038;font:inherit;white-space:normal;text-align:left}.stat-team-legend button:hover,.stat-team-legend button[aria-pressed=true]{background:#e5ffd522;box-shadow:inset 0 0 0 1px currentColor}.stat-team-legend button:focus-visible{outline:2px solid #fff;outline-offset:3px}.stat-team-legend .home-stat{color:#c5ff91}.stat-team-legend .away-stat{color:#83beff}

/* Charcoal controls separate the interface from the green playing surface. */
:root{--panel:#151d2bf5;--panel-raised:#263246;--panel-line:#a6b5ca55;--accent:#e8d9aa}
.site-nav{background:#111927f5;border-color:var(--panel-line)}
.match-scoreboard,.match-toolbar button,.match-tools button,.match-tools summary,
.stadium-menu>summary,.orientation-map>summary,.match-filters,.bench-team-switch,
.match-moments,.free-navigation,.map-content,.league-context,.stats-panel,
.match-settings>div,.view-menu-content,.roster-content,.stadium-menu-content,
.stat-values-list,.share-feedback{background:var(--panel);border-color:var(--panel-line);box-shadow:0 8px 28px #07101e55}
.match-tools button:hover,.match-tools summary:hover,.match-toolbar button:hover,
.stadium-menu>summary:hover,.moment-button:hover{background:var(--panel-raised);color:#fff}
.match-tools button[aria-expanded=true],.stat-groups button[aria-pressed=true],
.moment-filters button[aria-pressed=true],.movement-modes button[aria-pressed=true],
.bench-team-switch button[aria-pressed=true]{background:var(--accent);color:#172032;border-color:var(--accent)}
.stat-groups button,.moment-filters button,.movement-modes button,.bench-team-switch button{background:#263246;color:#ecf1fa;border-color:#a6b5ca40}
.player-label{background:#151e2df5;border-color:#b4c2d6a6;padding:5px 8px;max-width:180px}
.player-label.selected{background:#202b3b;border-color:#f3dfa6;box-shadow:0 0 0 4px #f1d89325,0 8px 24px #08101b80}
.player-name{font-size:13px;overflow:visible;text-overflow:clip;white-space:nowrap}
.player-label:after{border-top-color:#b4c2d6}
.player-label.selected:after{border-top-color:#f3dfa6}
#match-attendance{font-size:10px;white-space:nowrap;color:#bcc8d8;margin-top:3px}
.match-detail #lineup-note{background:#151d2bbf;color:#d4deec}
.match-score-centre strong{color:#f3dfa6}
.player-focus{background:#f6f7fbea;color:#202b3b;border-color:#e8d9aa;box-shadow:0 14px 45px #070e2160}
.focus-heading button{background:#e1e5ee;color:#202b3b}
.focus-rating{border-color:#c6cedb;color:#35445e}
.focus-actions button{background:#e8edf5;border-color:#c3cddc;color:#26364f}
.focus-actions button.primary{background:#24344f;color:#fff;border-color:#24344f}
#player-connector line{stroke:#ffedb7;stroke-width:2;filter:drop-shadow(0 1px 2px #111827)}
#player-connector circle{fill:#ffedb7}
/* Keep the statistics, rather than their controls, at the centre of the scene. */
.stats-mode .match-detail{top:77px}
.stats-mode .match-toolbar{position:absolute;left:0;right:0;top:0;justify-content:space-between}
.stats-mode .match-toolbar #match-title,.stats-mode .match-toolbar #match-meta{display:none}
.stats-mode .match-scoreboard{margin:0 auto 7px;padding:7px 18px}
.stats-mode .match-tools{gap:5px}
.stats-mode #match-venue-note{display:none}
.stats-panel .stats-heading,.stats-panel .stat-hint{display:none}
.match-open .stats-panel{bottom:91px;width:min(840px,calc(100% - 36px));left:50%;right:auto;transform:translateX(-50%);padding:9px 12px}
.stats-panel .stat-groups{padding:0;gap:5px}
.stats-panel .stat-groups button{min-height:38px;padding:8px 12px;font-size:13px}
.stats-panel .stat-team-legend{display:flex;margin:7px 0 0;padding-right:92px;gap:7px}
.stat-team-legend button{min-height:34px;font-size:12px}
.stats-panel .stat-values{bottom:12px;right:12px}
.stats-panel .stat-overview{margin-top:6px;padding:5px 10px;min-height:30px;background:#263246;color:#f4f6fb}
@media(max-width:699px){
 .stats-mode .match-detail{top:63px}
 .stats-mode .match-toolbar{position:relative;margin-bottom:5px}
 .stats-mode .match-scoreboard{padding:6px 9px}
 .match-open .stats-panel{bottom:87px;width:calc(100% - 20px);padding:8px}
 .stats-panel .stat-groups button{font-size:11px;padding:7px 8px;min-height:38px}
 .stats-panel .stat-team-legend{padding-right:76px;gap:5px}
 .stat-team-legend button{font-size:10px;padding:5px 6px}
 .stats-panel .stat-values{right:8px;bottom:12px}
 .player-label{max-width:150px;padding:4px 6px}
 .player-name{font-size:12px}
 .player-focus{left:12px;right:12px;top:auto;bottom:96px;width:auto}
}
@media(max-height:580px) and (min-width:700px){
 .stats-mode .match-detail{top:61px}
 .stats-mode .match-tools{position:absolute;right:0;top:42px}
 .stats-mode .match-tools #toggle-moments,.stats-mode .view-menu{display:none}
 .stats-mode .match-scoreboard{padding:4px 12px}
 .stats-mode #match-attendance{display:block}
 .match-open .stats-panel{bottom:80px;padding:6px 10px;width:min(660px,calc(100% - 250px))}
 .stats-panel .stat-groups button{min-height:30px;font-size:10px;padding:5px}
 .stats-panel .stat-team-legend{margin-top:4px}
 .stat-team-legend button{min-height:28px;font-size:10px;padding:4px 6px}
 .stats-panel .stat-overview{position:absolute;right:100%;bottom:0;margin-right:6px;white-space:nowrap}
}
/* Match insights keep the stadium visible while giving numbers room to breathe. */
#insight-backdrop{z-index:70;background:rgba(8,12,19,.65);backdrop-filter:blur(5px)}
.match-insight{position:absolute;z-index:71;top:50%;left:50%;transform:translate(-50%,-50%);width:min(780px,calc(100% - 32px));max-height:calc(100svh - 100px);overflow:auto;box-sizing:border-box;padding:24px;border:1px solid #657080;border-radius:22px;background:#202631;color:#f7f8fb;box-shadow:0 24px 90px #0009}
.insight-heading,.replay-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.insight-heading h2{font-size:23px;margin:0}.insight-heading button,.replay-heading button{min-width:44px;min-height:44px;font-size:23px}.match-insight button,.lineup-replay button{background:#303a49;color:#f7f8fb;border:1px solid #667286;border-radius:10px;min-height:44px;padding:8px 12px;cursor:pointer}.match-insight .primary,.match-insight [aria-pressed=true]{background:#f2d497;color:#202631;border-color:#f2d497}.match-insight button:disabled{opacity:.6;cursor:default}.match-insight h3{font-size:15px;margin:0 0 10px}.insight-caption{color:#bfc8d5;font-size:12px;line-height:1.5}.recap-result{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:18px 0 6px;text-align:center}.recap-result>div{display:flex;align-items:center;justify-content:center;gap:12px}.recap-result img{width:40px;height:40px;object-fit:contain}.recap-score{font-size:42px;color:#f2d497;white-space:nowrap}.recap-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin:20px 0}.recap-goal{display:block;text-align:left;width:100%;margin:4px 0;font-size:14px}.recap-goal small,.recap-player small{display:block;color:#bfc8d5;font-size:11px;margin-top:3px}.recap-player{display:grid;text-align:left;gap:5px;width:100%;margin-bottom:8px}.recap-player>b{font-size:29px;color:#f2d497}.recap-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.recap-stats>div,.season-totals>div{background:#303a49;border-radius:12px;padding:12px}.recap-stats span,.season-totals span{display:block;font-size:12px;color:#c9d2df}.recap-stats strong{display:block;font-size:23px;margin-top:7px}.insight-actions{display:flex;gap:10px;margin-top:18px}.insight-actions>*{flex:1}.compare-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.compare-choices label{font-size:13px;min-width:0}.compare-choices select{display:block;width:100%;min-height:44px;background:#303a49;color:#fff;border:1px solid #7a8799;border-radius:8px;padding:8px;margin-top:7px}.comparison-table{width:100%;border-collapse:collapse;font-size:14px}.comparison-table th,.comparison-table td{text-align:left;padding:12px 8px;border-bottom:1px solid #465163}.comparison-table td{text-align:center;font-variant-numeric:tabular-nums}.comparison-table thead{color:#f2d497}.season-totals{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:20px}.season-totals strong{font-size:26px}.insight-tabs{display:flex;gap:8px;margin:16px 0}.insight-tabs button{flex:1}.season-results{display:grid;gap:7px}.season-result{display:flex;align-items:center;text-align:left;gap:12px}.season-result b{padding:7px;border-radius:6px;background:#586172}.season-result .result-W{background:#365d4c}.season-result .result-L{background:#7a444d}.season-insights{background:#303a49;color:#fff;border:1px solid #7a8799;border-radius:9px;padding:10px 15px;min-height:44px;margin:5px 0 8px}.lineup-replay{position:absolute;z-index:24;bottom:90px;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 24px));padding:12px 16px;box-sizing:border-box;background:#202631f5;color:#f7f8fb;border:1px solid #7a8799;border-radius:16px;box-shadow:0 8px 32px #0006}.replay-heading button{min-height:30px;font-size:20px}.replay-buttons{display:flex;gap:6px;margin:7px 0}.replay-buttons button{flex:1;padding:6px;font-size:12px}.replay-slider{display:flex;align-items:center;gap:12px;font-size:12px}.replay-slider input{flex:1;min-width:0;accent-color:#f2d497;min-height:30px}.lineup-replay p{font-size:12px;line-height:1.4;margin:5px 0;max-height:52px;overflow:auto}.lineup-replay small{display:block;color:#bfc8d5;font-size:10px}.focus-actions{flex-wrap:wrap}.focus-actions button{flex:1;white-space:nowrap}
@media(max-width:699px){.match-insight{padding:16px;max-height:calc(100svh - 32px);width:calc(100% - 20px);border-radius:16px}.insight-heading h2{font-size:19px}.recap-result{gap:10px;margin-top:12px}.recap-result>div{flex-direction:column;gap:6px;font-size:13px}.recap-result img{width:32px;height:32px}.recap-score{font-size:34px}.recap-columns{gap:12px;margin:14px 0}.recap-stats{gap:6px}.recap-stats>div{padding:9px}.recap-stats strong{font-size:19px}.recap-stats span{font-size:10px}.insight-actions{gap:7px}.insight-actions button{font-size:12px}.season-totals{gap:4px}.season-totals>div{padding:8px 5px}.season-totals strong{font-size:21px}.season-totals span{font-size:10px}.insight-tabs button{font-size:12px;padding:6px}.comparison-table{font-size:12px}.comparison-table th,.comparison-table td{padding:10px 4px}.lineup-replay{bottom:76px;padding:9px 12px}.match-toolbar #match-title{display:none}#match-recap{font-size:12px;padding:8px}#stats-panel .stat-hint{display:none}}
@media(max-height:600px){.match-insight{max-height:calc(100svh - 24px)}.lineup-replay{bottom:55px}.lineup-replay small{display:none}}
@media(max-width:699px){.match-toolbar #match-meta{display:none}.recap-stats strong{font-size:16px;white-space:nowrap}}
.player-focused .lineup-replay{visibility:hidden;pointer-events:none}

/* Keep the main website links available above the stadium controls. */
.site-nav.block9-site-header{gap:16px;background:#061b15}
.site-nav .block9-brand{display:flex;flex-shrink:0;align-items:center;gap:12px;color:#f5f5f4}
.site-nav .block9-brand img{width:48px;height:48px;border:1px solid #ffffff26;border-radius:4px;object-fit:contain}
.site-nav .block9-brand span{display:none;font-size:18px;font-weight:900;text-transform:uppercase;white-space:nowrap}
.site-nav .block9-brand:focus-visible{outline:2px solid #bef264;outline-offset:2px}
.site-nav .primary-navigation{display:flex;min-width:0;align-items:center;gap:8px;margin-left:auto;overflow-x:auto;font-size:14px;font-weight:600}
.site-nav .primary-navigation .nav-link{display:inline-flex;flex-shrink:0;align-items:center;box-sizing:border-box;min-height:40px;padding:9px 12px;border:1px solid #ffffff1f;border-radius:4px;color:#f0fdf4d1;font-size:14px;white-space:nowrap;transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease}
.site-nav .primary-navigation .nav-link:hover,.site-nav .primary-navigation .nav-link:focus-visible{border-color:#bef26499;background:#bef2641f;color:#ecfccb;outline:none}
@media(min-width:1280px){.site-nav .block9-brand span{display:block}}
@media(max-width:800px){.site-nav .block9-brand img{width:40px;height:40px}}

/* First-visit guide for the interactive stadium. */
.home-park-welcome{position:absolute;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#07101bbd;backdrop-filter:blur(9px)}
.home-park-welcome-card{position:relative;width:min(510px,100%);padding:30px;border:1px solid #a6b5ca88;border-radius:22px;background:linear-gradient(145deg,#202b3bf7,#121a29fb);box-shadow:0 26px 90px #020711d9;color:#f7f8fb}
.home-park-welcome-close{position:absolute;top:14px;right:14px;width:38px;height:38px;padding:0;border:1px solid #a6b5ca66;border-radius:50%;background:#2c384a;color:#f7f8fb;font-size:25px;line-height:1}
.home-park-welcome-close:hover{background:#3a485e}.home-park-welcome-eyebrow{margin:0 0 11px;color:#f2d497;font-size:11px;font-weight:750;letter-spacing:1.9px;text-transform:uppercase}.home-park-welcome h2{max-width:400px;margin:0;color:#fff;font-size:clamp(30px,5vw,43px);font-weight:550;letter-spacing:-1.6px;line-height:1}.home-park-welcome p{max-width:445px;margin:15px 0 0;color:#d3dbe7;font-size:15px;line-height:1.55}.home-park-welcome-how{margin-top:20px;padding:16px 18px;border:1px solid #a6b5ca3d;border-radius:14px;background:#101a2ae0}.home-park-welcome-how h3{margin:0;color:#f2d497;font-size:13px;letter-spacing:.8px;text-transform:uppercase}.home-park-welcome-how ul{display:grid;gap:8px;margin:12px 0 0;padding-left:19px;color:#edf1f7;font-size:14px;line-height:1.4}.home-park-welcome-how strong{color:#f2d497}.home-park-welcome-device{color:#f2d497!important;font-size:13px!important;font-weight:700}.home-park-welcome-preference{display:flex;align-items:center;gap:9px;margin-top:19px;color:#d9e1ec;font-size:14px}.home-park-welcome-preference input{width:18px;height:18px;margin:0;accent-color:#f2d497}.home-park-welcome-start{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:20px;padding:13px 16px;border:1px solid #f2d497;border-radius:10px;background:#f2d497;color:#202631;font-weight:800}.home-park-welcome-start:hover{background:#ffebbb;color:#111927}@media(max-width:560px){.home-park-welcome{padding:12px}.home-park-welcome-card{max-height:calc(100svh - 24px);overflow:auto;padding:24px 20px;border-radius:17px}.home-park-welcome h2{font-size:31px}.home-park-welcome-how{margin-top:15px;padding:13px 15px}.home-park-welcome-how ul{gap:6px;margin-top:9px;font-size:13px}.home-park-welcome p{margin-top:12px;font-size:14px}.home-park-welcome-preference{margin-top:15px}.home-park-welcome-start{margin-top:16px}}
