/* Sideout screen composition. Game state remains owned by the career engine. */
:root{--screen-bg:#081018;--screen-panel:#101e2b;--screen-raised:#182b39;--screen-line:#2c4353;--screen-ink:#f4f7fb;--screen-muted:#b9c8d3;--screen-accent:#d6ff4e;--screen-dark:#10180a;--screen-gold:#edc785}
body{margin:0;color:var(--screen-ink);background:var(--screen-bg);font-family:Barlow,system-ui,sans-serif;font-size:16px;line-height:1.45}
*,*:before,*:after{box-sizing:border-box}button,a,summary,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:1!important}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--screen-gold);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,3vw,40px);line-height:1.08}h2{font-size:22px}h3{font-size:18px}small,.so-kicker,.so-w-kicker{font-size:14px}.so-kicker,.so-w-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--screen-muted)}
.career-header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--screen-line);background:#081018}.sideout-brand{font-size:30px;font-weight:950;letter-spacing:-.06em;text-decoration:none;color:var(--screen-ink)}.sideout-brand span{display:block;font-size:11px;letter-spacing:.2em;color:var(--screen-accent)}.career-header nav{display:flex;align-items:center;gap:8px}.career-header nav a,.career-header nav button{color:var(--screen-muted);border:0;background:none;padding:12px;text-decoration:none;font-size:16px}.career-header nav a:hover,.career-header nav button:hover{color:white;background:var(--screen-panel)}#app{max-width:1560px;margin:auto;padding:24px 32px}#status:empty{display:none}.career-footer{padding:16px 32px;border-top:1px solid var(--screen-line);display:flex;gap:20px;justify-content:space-between;color:var(--screen-muted);font-size:14px}.career-footer button{background:none;border:0;color:var(--screen-muted);font-size:14px}
/* Start menu: choices and continue, against an arena rather than a settings document. */
body.is-career-menu #app{max-width:none;padding:0}.game-start.so-setup{position:relative;min-height:640px;isolation:isolate;padding:54px 7vw 44px;margin:0;max-width:none;border:0;background:none}.game-start-scene{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#081018 6%,#081018d9 40%,#08101830 80%),linear-gradient(0deg,#081018,transparent 45%),url('assets/japan-arena-v80.png') center/cover}.game-start-content{max-width:760px}.game-start h1{font-size:clamp(48px,6vw,88px);letter-spacing:-.06em;font-weight:950;margin-bottom:32px}.game-start h1 span{color:var(--screen-accent)}.game-continue{padding:20px 24px;background:#101e2bed;border-left:4px solid var(--screen-accent);display:grid;grid-template-columns:1fr auto;gap:0 24px;align-items:center;margin-bottom:32px}.game-continue .so-kicker,.game-continue h2,.game-continue p{grid-column:1;margin-bottom:6px}.game-continue button{grid-column:2;grid-row:1/4;min-width:140px}.game-career-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.game-career-heading h2{margin:0}.game-start-settings{font-size:14px;margin:8px 0 18px;color:var(--screen-muted)}.game-start-settings label{display:flex;gap:16px;align-items:center;margin-top:12px}.game-start-settings select{padding:8px}.game-start .so-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.game-start .so-mode-card{padding:24px;background:#101e2be8;border:1px solid var(--screen-line);border-radius:2px;display:flex;flex-direction:column;gap:0}.game-start .so-mode-card h2{font-size:32px;font-weight:850;letter-spacing:-.03em}.game-start .so-mode-card p{color:var(--screen-muted)}.game-start .so-mode-card button{margin-top:auto;width:100%}.so-button--primary,.room-primary,.so-w-primary{background:var(--screen-accent)!important;color:var(--screen-dark)!important;border:1px solid transparent!important;text-shadow:none!important;box-shadow:none!important;font-weight:800}.game-save-drawer{padding:24px 7vw;background:#0b1620}.game-save-drawer>summary{font-size:20px;font-weight:750;cursor:pointer;display:flex;justify-content:space-between}.game-save-drawer>summary span{font-size:14px;color:var(--screen-muted)}.saved-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.saved-list li{display:flex;justify-content:space-between;gap:16px;background:var(--screen-panel);border:1px solid var(--screen-line);padding:20px}.saved-list p{font-size:14px;color:var(--screen-muted);margin:6px 0}.game-save-actions{display:flex;gap:8px;align-items:center}
/* Roster workbench: player selection has priority; physical/evidence details are on demand. */
.so-setup:not(.game-start){max-width:none;background:none;padding:0}.so-head{display:flex;gap:24px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--screen-line);padding-bottom:20px;margin-bottom:20px}.so-head h1{margin-bottom:8px}.so-head .so-subtitle{color:var(--screen-muted);margin:0}.so-workspace{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:24px}.so-team-panel{background:var(--screen-panel);padding:20px;border:1px solid var(--screen-line);align-self:start}.so-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.so-player-card{background:var(--screen-panel)!important;border:1px solid var(--screen-line)!important;border-radius:3px!important;padding:20px!important}.so-player-card.is-selected{border-color:var(--screen-accent)!important;box-shadow:inset 4px 0 var(--screen-accent)!important}.so-player-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.game-player-role{color:var(--screen-accent);font-size:14px;font-weight:800;letter-spacing:.12em;margin-bottom:8px}.so-player-name h3{font-size:20px;margin:0 0 6px}.so-country{font-size:14px;color:var(--screen-muted)}.game-player-height{font-size:22px;font-weight:750;margin:12px 0 0}.game-player-height span{font-size:14px;font-weight:400;color:var(--screen-muted)}.so-rating{background:transparent!important;border:0!important;padding:0!important;min-width:48px}.so-rating strong{font-size:36px!important;color:var(--screen-gold)!important}.so-rating span{font-size:14px;color:var(--screen-muted)}.game-player-details{font-size:14px;color:var(--screen-muted);border-top:1px solid var(--screen-line);margin-top:16px;padding-top:10px}.game-player-details summary{cursor:pointer}.game-player-details p{font-size:14px}.so-purchase,.so-player-choices{border-top:1px solid var(--screen-line);padding-top:16px;margin-top:16px}.so-filters{position:sticky;top:0;z-index:2;background:var(--screen-bg);padding:12px 0}.so-filters input,.so-filters select{min-height:44px}.so-budget{display:flex;flex-wrap:wrap;gap:32px;background:var(--screen-panel);padding:20px;border-left:4px solid var(--screen-gold)}.so-stat strong{font-size:28px}.so-stat span{font-size:14px}.so-national-top{display:flex;gap:24px;align-items:center;background:var(--screen-panel);padding:20px}.so-jump-nav{padding:12px 0;border-bottom:1px solid var(--screen-line);margin-bottom:24px}.so-footer{position:sticky;bottom:0;background:#101e2bf5!important;border-top:1px solid var(--screen-line);padding:16px!important;z-index:3}.so-lineup-court{background:#153c39!important}.game-rules{font-size:14px}.game-rules label{display:flex;flex-direction:column;gap:8px}.game-rules select{padding:8px}
/* Team centre: next action on the left, competition/team workspace on the right. */
.game-team-identity{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--screen-line);padding:16px 0 24px;margin-bottom:24px}.game-team-identity h1{margin:0}.game-hub-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px}.game-next-match{padding:24px;background:var(--screen-panel);border-top:3px solid var(--screen-accent)}.game-next-match h2{font-size:26px}.game-fixture-date{display:block;color:var(--screen-gold);font-size:20px;margin-bottom:16px}.game-next-match .so-w-action-wrap button{width:100%;padding:14px}.game-next-match .so-w-pace{margin:24px 0}.game-next-match .so-w-segmented{display:flex;flex-wrap:wrap}.game-hub-main{min-width:0}.game-hub-main .so-w-score{margin-top:0}.so-w-tabs{display:flex;gap:4px;border-bottom:1px solid var(--screen-line);margin:24px 0}.so-w-tabs button{border-radius:0;background:none;padding:16px;border:0;color:var(--screen-muted)}.so-w-tabs button[aria-pressed=true]{color:var(--screen-accent);border-bottom:3px solid var(--screen-accent);background:var(--screen-panel)}.so-w-court-layout{grid-template-columns:minmax(0,1fr)!important}.so-w-coach{display:grid;grid-template-columns:1fr 1fr;gap:16px}.so-w-zone{min-height:110px}.career-tools{background:var(--screen-panel);padding:12px 16px;margin-bottom:16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
/* Match broadcast with a dedicated coach bench, not controls piled below the court. */
.game-match-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;margin-top:16px}.game-match-stage,.game-match-console{min-width:0}.game-match-console{padding:20px;background:var(--screen-panel);border:1px solid var(--screen-line)}.game-match-console .room-action-rail{display:flex;flex-direction:column;align-items:stretch;border:0;padding:0;background:none;gap:12px;position:static}.game-match-console .room-control-group{flex-wrap:wrap}.game-match-console .room-plans{margin:0;display:flex}.game-match-console .room-live-coaching{display:block}.game-match-console .room-sideline,.game-match-console .room-timeout-conversation{margin:20px 0 0;padding:16px 0;border:0;border-top:1px solid var(--screen-line);background:none}.game-match-console .room-coaching{margin-top:20px}.game-match-console p{font-size:14px}.game-match-console h3{font-size:18px}.room-arena{min-height:0;padding:20px!important}.room-court{width:100%!important;max-width:none!important}.room-live-strip{padding:16px!important;background:var(--screen-panel)}.room-scorebug{border-radius:0;border-top:3px solid var(--screen-accent);padding:20px}.room-score{font-size:48px!important}.room-competition-nav{padding:8px 0}.room-tabs{gap:4px}.room-tab{border-radius:0!important}.room-target-caption:empty{display:none}.room-coaching-grid{grid-template-columns:1fr!important}
/* Full-time report: one decisive result, details beneath and continue visible at entry. */
.room-summary .room-result-panel{max-width:none;width:100%;padding:32px}.game-report-heading{display:flex;gap:16px;align-items:center;border-bottom:1px solid var(--screen-line);padding-bottom:24px}.game-report-heading .so-kicker{margin:0}.game-report-heading h1{margin:0}.game-report-heading button{margin-left:auto;min-width:140px}.room-result-hero{padding:32px!important;background:linear-gradient(100deg,#15382f,#101e2b)!important;border-radius:0!important;text-align:center}.game-result-teams{display:flex;justify-content:center;align-items:center;gap:24px}.game-result-teams h2{font-size:26px}.game-result-teams span{font-size:14px;color:var(--screen-muted)}.room-final-score{font-size:80px!important;line-height:1.1}.room-summary-grid{grid-template-columns:1fr 1fr!important;gap:24px}.room-set-scores{justify-content:center}.room-summary-report{min-width:0}.room-summary .room-continue{width:auto;min-width:180px;margin:24px 0 0}
@media(max-width:1100px){.game-match-layout{grid-template-columns:minmax(0,1fr) 270px}.game-hub-layout{grid-template-columns:270px minmax(0,1fr)}.so-workspace{grid-template-columns:300px minmax(0,1fr)}.so-player-grid{grid-template-columns:1fr}.room-arena{padding:12px!important}}
@media(max-width:760px){.career-header{height:auto;min-height:72px;padding:16px}.career-header nav{gap:0}.career-header nav a,.career-header nav button{padding:8px;font-size:14px}.sideout-brand{font-size:24px}.sideout-brand span{font-size:9px}#app{padding:20px 16px}.game-start.so-setup{padding:36px 20px;min-height:0}.game-start-scene{background:linear-gradient(90deg,#081018ed,#081018a8),url('assets/japan-arena-v80.png') center/cover}.game-start h1{font-size:58px}.game-career-heading{align-items:flex-start;flex-direction:column}.game-start .so-mode-grid{grid-template-columns:1fr}.game-continue{grid-template-columns:1fr}.game-continue button{grid-column:1;grid-row:auto;margin-top:12px}.game-save-drawer{padding:20px}.saved-list{grid-template-columns:1fr}.saved-list li{flex-wrap:wrap}.so-workspace,.game-hub-layout,.game-match-layout,.room-summary-grid{grid-template-columns:1fr!important}.so-head{flex-wrap:wrap}.so-national-top{flex-wrap:wrap}.so-player-grid{grid-template-columns:1fr}.so-w-coach{grid-template-columns:1fr}.game-team-identity h1{font-size:28px}.game-report-heading{flex-wrap:wrap}.game-report-heading button{margin:0}.room-summary .room-result-panel{padding:16px}.game-result-teams{gap:12px}.game-result-teams h2{font-size:20px}.room-scorebug{padding:12px;gap:8px}.room-score{font-size:36px!important}.room-team-label{font-size:16px!important}.career-footer{padding:16px;flex-wrap:wrap}.so-w-tabs{overflow:auto}.room-coaching-grid{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(forced-colors:active){button,a,select,input,.so-player-card,.game-continue{border:1px solid ButtonText!important}.game-start-scene{display:none}}
.so-stat--balance strong{color:var(--screen-accent)!important}.so-actions{position:sticky;bottom:0;z-index:4;background:#101e2bf7!important;border-top:1px solid var(--screen-line);padding:16px!important}.so-setup:not(.game-start){border:0!important}.so-squad-guide{background:none!important;border:0!important;padding:0!important}.so-squad-guide p{font-size:14px;color:var(--screen-muted)}.game-lineup-court{padding:12px;background:#153b38;border:1px solid #568075}.game-net{border-top:3px solid #c7d5d4;text-align:center;font-size:14px;margin:0 0 12px;letter-spacing:.2em}.game-lineup-front,.game-lineup-back{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.game-lineup-front{padding-bottom:12px;border-bottom:1px dashed #568075}.game-lineup-back{padding-top:12px}.game-lineup-court .so-lineup-slot{padding:0;border:0;background:none}.game-lineup-court label span{font-size:14px}.game-lineup-court select{padding:8px 4px;min-width:0;width:100%;font-size:14px}.so-national .so-player-grid{display:block}.so-national .so-player-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;margin-bottom:8px;padding:14px 16px!important}.so-national .so-player-head{grid-column:1}.so-national .game-player-details{grid-column:1/3;grid-row:2;margin:0;padding-top:8px}.so-national .so-player-choices{grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:center;padding:0;border:0;margin:0}.so-national .game-player-role{margin:0}.so-national .game-player-height{font-size:18px;margin:4px 0}.so-national .so-rating strong{font-size:30px!important}.so-national .so-rating{margin-right:16px}.so-national .so-player-name h3{font-size:18px}.so-national .so-player-head{align-items:center}.so-player-head .so-rating{flex-shrink:0}.so-player-name{min-width:0;overflow-wrap:anywhere}.so-national .so-player-choices label{font-size:14px}.so-national .so-workspace{grid-template-columns:380px minmax(0,1fr)}
@media(max-width:1000px){.so-national .so-workspace{grid-template-columns:1fr}.so-national .so-team-panel{display:grid;grid-template-columns:1fr 1.5fr;gap:20px}.game-lineup-front,.game-lineup-back{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.so-national .so-team-panel{display:block}.so-national .so-player-card{grid-template-columns:1fr}.so-national .so-player-choices{grid-column:1;grid-row:2;flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.so-national .game-player-details{grid-column:1;grid-row:3}.game-lineup-court select{font-size:14px}}
.so-world .so-w-court-workspace{grid-template-columns:minmax(0,1fr)!important}.so-world .so-w-coach{display:block}.game-squad-reserves{background:var(--screen-panel);border:1px solid var(--screen-line);padding:20px;margin-top:16px}.game-squad-reserves ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.game-squad-reserves li{display:flex;flex-direction:column;border-left:2px solid var(--screen-line);padding-left:12px}.game-squad-reserves span{font-size:14px;color:var(--screen-muted)}.so-setup .so-pool{grid-row:auto}.so-setup .so-team-panel{order:-1}.so-setup .so-selection-counts .so-stat--balance strong{color:var(--screen-accent)!important}.career-practice .practice-layout{grid-template-columns:minmax(0,1fr);gap:20px}.career-practice .practice-context{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.career-practice .practice-context label{min-width:240px}.career-practice .practice-context p{margin:0;max-width:400px}.career-practice .practice-context details{margin-left:auto}.career-practice .practice-heading{padding:24px 0;border-bottom:1px solid var(--screen-line)}.career-practice .practice-stage{grid-template-columns:minmax(0,1fr) 310px}.career-practice .practice-primary{background:var(--screen-accent);color:var(--screen-dark);font-weight:800}.room-scorebug .room-team-label{overflow-wrap:anywhere}.so-setup .so-head{border:0;border-bottom:1px solid var(--screen-line);background:none;padding:0 0 24px}.so-setup .so-notice{margin-bottom:20px}
@media(max-width:760px){.game-squad-reserves ul{grid-template-columns:1fr}.career-practice .practice-stage{grid-template-columns:1fr}.so-setup .so-team-panel{grid-template-columns:1fr}.game-match-console .room-live-coaching{display:block}}
#status:not(:empty):not(.is-error){font-size:14px;padding:8px 32px;background:#0b1923;color:var(--screen-muted);border-bottom:1px solid var(--screen-line)}#status.is-error{padding:16px 32px;background:#49281f;color:#fff0e9;border-bottom:2px solid #ed9e86}.so-setup .so-notice--info{display:none}.so-setup .so-notice--error{display:block}.game-start .so-button--primary:disabled{color:var(--screen-dark)!important}.game-team-hub .so-w-score{background:var(--screen-panel)!important;box-shadow:none!important}.so-world.game-team-hub{padding:0;background:none}.so-world .so-w-score-context{min-width:130px}.so-world .so-w-score{grid-template-columns:140px 1fr}.game-match-console .room-sideline-status{color:var(--screen-gold)}
.sideout-room .game-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px}.game-scoreboard .room-team{display:flex;gap:12px;align-items:center}.game-scoreboard .room-team--opponent{justify-content:flex-end}.game-score-centre{min-width:240px}.game-points{display:flex;align-items:center;justify-content:center;gap:20px}.game-score-divider{font-size:24px;color:var(--screen-muted)}.game-points .room-score{line-height:1;text-shadow:none}.game-score-own{color:var(--screen-accent)!important}.game-score-opponent{color:var(--screen-gold)!important}.game-sets{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;text-align:center;align-items:center;margin-top:8px;font-size:14px;color:var(--screen-muted)}.game-sets .room-match-phase{font-size:14px;min-width:80px}.game-sets .room-match-phase strong{font-size:14px}
@media(max-width:760px){.sideout-room .game-scoreboard{grid-template-columns:1fr auto 1fr;gap:8px}.game-score-centre{min-width:150px}.game-points{gap:12px}.game-sets{gap:6px;font-size:14px}.game-scoreboard .room-team{flex-direction:column;gap:4px}.game-scoreboard .room-team-label{text-align:center;font-size:14px!important}.game-sets .room-match-phase{min-width:45px}.game-scoreboard .room-serving{font-size:14px}}
.room-summary .room-result-hero{display:flex;flex-direction:column;align-items:center;max-width:none;margin:0;gap:12px}.room-summary .room-result-hero>*{grid-area:auto;margin:0}.room-summary .room-result-hero .room-result-label{align-self:center}.room-summary .room-result-hero .game-result-teams h2{margin:0}.room-summary .room-result-hero .room-final-score{color:var(--screen-accent);font-size:72px!important}.room-summary .room-result-hero .room-set-scores{margin-top:12px}
/* Broadcast art direction: one font family, strong score hierarchy, fabric kit sprites. */
@font-face{font-family:Barlow;src:url('assets/fonts/Barlow-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:BarlowCondensed;src:url('assets/fonts/BarlowCondensed-Bold.ttf') format('truetype');font-weight:700 950;font-display:swap}
body,.so-setup,.so-world,.sideout-room,.career-practice{font-family:Barlow,system-ui,sans-serif!important}
h1,h2,h3,.sideout-brand,.room-score,.room-final-score,.so-rating strong,.so-stat strong,.game-fixture-date{font-family:BarlowCondensed,system-ui,sans-serif!important;font-weight:700!important;letter-spacing:.01em!important;text-transform:uppercase}
button,.so-button,.room-button,.so-w-button,.so-w-primary,.room-primary{font-family:BarlowCondensed,system-ui,sans-serif!important;font-size:19px!important;letter-spacing:.045em!important;border-radius:2px!important;text-transform:uppercase;box-shadow:none!important}
.career-header{height:66px;padding-block:8px;background:#080f17}.sideout-brand{font-size:34px}.career-header nav a,.career-header nav button{font-family:BarlowCondensed,system-ui,sans-serif;font-size:19px!important;text-transform:uppercase;letter-spacing:.06em}.game-start h1{font-size:clamp(70px,8vw,112px);line-height:.9;margin:0 0 34px;max-width:600px}.game-start-content{max-width:680px}.game-start-scene{background-position:center;background-image:linear-gradient(90deg,#081018ef 0%,#081018b8 35%,#08101800 68%),linear-gradient(0deg,#081018 0%,transparent 55%),url('assets/japan-arena-v80.png')}.game-start .so-mode-card{border:0;border-top:2px solid #ffffff35;background:#0a1420e8;padding:22px}.game-start .so-mode-card h2{font-size:42px}.game-start .so-mode-card p{font-size:16px}.game-continue{background:#0a1420ed}.game-start .so-button--primary{min-height:52px}.game-start .so-mode-card:hover{border-top-color:var(--screen-accent);background:#142232f0}.game-start-settings summary{cursor:pointer}.game-start .so-subtitle{max-width:420px}.game-match-layout{gap:12px}.game-match-console{border:0;border-top:3px solid var(--screen-accent);border-radius:0;background:#101c2b}.game-match-console>h2{font-size:28px;margin-bottom:18px}.sideout-room{max-width:none!important;padding:0!important;border-radius:0!important;background:transparent!important;color:var(--screen-ink)!important}.sideout-room .room-scorebug{background:#0b1622!important;border:0!important;border-bottom:1px solid #3b4c5c!important;padding:16px 24px!important;min-height:112px}.game-scoreboard .room-team-label{font-size:32px!important;font-family:BarlowCondensed,system-ui,sans-serif;text-transform:uppercase;line-height:1}.game-points .room-score{font-size:72px!important;color:#fff!important;min-width:68px;text-align:center}.game-points{gap:12px}.game-sets{font-family:Barlow,system-ui,sans-serif}.sideout-room .room-arena{background:#175676!important;background-image:none!important;border-radius:0!important;padding:32px 38px 38px!important;border-bottom:4px solid #071d2d}.sideout-room .room-wood{fill:#e7a276}.sideout-room .room-wood-grain{opacity:.12}.sideout-room .room-court{border-radius:0!important;box-shadow:0 6px 20px #0005!important;border:3px solid #fff!important}.sideout-room .room-player.game-shirt-player{background:none!important;border:0!important;box-shadow:none!important;width:78px;min-height:88px;padding:0;border-radius:0!important;display:flex;align-items:center;flex-direction:column;overflow:visible;gap:0;color:#fff!important}.game-shirt{position:relative;display:block;width:54px;height:64px;background:var(--kit);mask:url('assets/jersey-v80.png') center/100% 100% no-repeat;-webkit-mask:url('assets/jersey-v80.png') center/100% 100% no-repeat}.game-shirt-texture{position:absolute;inset:0;background:var(--kit);background-image:url('assets/jersey-v80.png');background-size:100% 100%;background-blend-mode:multiply}.game-shirt-position{position:absolute;left:0;right:0;top:20px;font-family:BarlowCondensed,system-ui,sans-serif;font-size:20px;line-height:1;color:var(--kit-ink,#10180a);text-shadow:none}.game-court-name{display:block;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;line-height:1.2;background:#071625e8;color:#fff;padding:2px 5px;border-radius:2px}.game-shirt-player .room-player-number{position:absolute;left:2px;top:0;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-family:Barlow,system-ui,sans-serif;font-size:14px;background:#0c1926;color:white;border:1px solid #fff}.sideout-room .room-player.game-shirt-player.is-active{outline:none!important}.game-shirt-player.is-active .game-shirt-player.is-active .game-court-name{color:#10180a;background:var(--screen-accent)}.sideout-room .room-serving{background:var(--screen-accent)!important;color:#10180a!important;border-radius:0;font-family:BarlowCondensed,system-ui,sans-serif;font-size:16px;letter-spacing:.06em;text-transform:uppercase}.room-live-strip{border-radius:0!important}.room-commentary{font-size:17px}.room-result-panel{background:#0b1622!important;border-radius:0!important}.room-result-label{font-family:BarlowCondensed,system-ui,sans-serif;font-size:28px!important;text-transform:uppercase}.room-summary .room-result-hero{background:linear-gradient(110deg,#183e57,#0c1723)!important;border-top:2px solid var(--screen-accent)}.room-summary .room-final-score{font-size:104px!important;color:#fff!important}.game-result-teams h2{font-size:36px!important}.room-set-scores li{border-radius:0!important}.game-team-identity h1{font-size:48px}.game-next-match h2{font-size:32px}.so-player-name h3{font-size:24px!important}.so-national .so-player-card{border-radius:0!important}.so-w-tabs button,.room-tab{font-size:19px!important}.game-report-heading h1{font-size:36px}.so-national .game-player-details summary{font-size:14px}
@media(max-width:760px){.career-header{padding:8px 14px}.career-header nav a,.career-header nav button{font-size:16px!important;padding:8px}.sideout-brand{font-size:28px}.game-start-scene{background-image:linear-gradient(90deg,#081018e8,#08101880),linear-gradient(0deg,#081018,transparent),url('assets/japan-arena-v80.png');background-position:65% center}.game-start h1{font-size:76px}.sideout-room .room-scorebug{padding:12px 8px!important;min-height:100px}.game-scoreboard .room-team-label{font-size:21px!important}.game-points .room-score{font-size:56px!important;min-width:40px}.sideout-room .room-arena{padding:32px 18px!important}.sideout-room .room-player.game-shirt-player{width:54px;min-height:66px}.game-shirt{width:36px;height:44px}.game-shirt-position{font-size:16px;top:14px}.game-court-name{font-size:12px;max-width:66px}.game-shirt-player .room-player-number{font-size:12px;width:18px;height:18px;left:0}.game-result-teams h2{font-size:26px!important}.game-sets .room-match-phase,.game-sets .room-match-phase strong{font-size:12px}.game-team-identity h1{font-size:38px}.game-match-console>h2{font-size:26px}}
/* Screen architecture: compact task panels, shared serious arena styling. */
:root{--screen-bg:#091320;--screen-panel:#122238;--screen-raised:#20344b;--screen-line:#38516b;--screen-accent:#53e0cf;--screen-dark:#082d32;--screen-gold:#ffc0af;--screen-ink:#f0f5fc;--screen-muted:#b6c8db}
body{background:linear-gradient(100deg,#091320fa,#091320f2),url('assets/japan-arena-v80.png') center/cover fixed}.career-header{position:static;height:60px;border-bottom:1px solid #38516b;background:#091320}.career-header nav a,.career-header nav button{font-size:18px!important}.career-footer{padding:6px 24px;font-size:14px;height:34px;align-items:center;background:#091320}.career-footer button{font-size:14px!important;text-transform:none}.sideout-brand{color:#f4f7fb}#app{padding:14px 24px;max-width:1560px}.so-setup,.so-world{color:var(--screen-ink)!important;font-family:Barlow,system-ui,sans-serif!important}.so-setup{--so-ink:var(--screen-ink);--so-muted:var(--screen-muted)}button,input,select{border-radius:4px!important}.so-button--primary,.room-primary,.so-w-primary{color:var(--screen-dark)!important;background:var(--screen-accent)!important}.so-button:disabled,.room-button:disabled,.so-w-button:disabled,.room-primary:disabled,.so-w-primary:disabled{color:#c9d4df!important;background:#20344b!important;border-color:#71869a!important;-webkit-text-fill-color:#c9d4df!important;opacity:1!important}.so-gender button[aria-pressed=true],.so-w-segmented button[aria-pressed=true],.room-option[aria-pressed=true]{color:#082d32!important;background:var(--screen-accent)!important}.so-gender,.so-w-segmented{background:#122238!important;border-color:var(--screen-line)!important}.so-head{padding-bottom:8px!important;margin-bottom:10px!important}.so-head h1{font-size:32px!important;margin-bottom:4px}.so-head .so-kicker{font-size:14px;margin-bottom:4px}.so-subtitle{font-size:16px!important}.game-start.so-setup{padding:28px 5vw;min-height:calc(100dvh - 94px);display:flex;align-items:center}.game-start-content{width:680px;max-width:58vw}.game-start h1{font-size:80px;margin-bottom:22px}.game-start h1 span{color:var(--screen-accent)}.game-start .so-kicker{margin-bottom:8px}.game-continue{padding:14px 20px;margin-bottom:22px;border-left-color:var(--screen-accent)}.game-start .so-mode-card{padding:16px 20px;border-top-color:var(--screen-line);background:#0b192be8}.game-start .so-mode-card h2{font-size:34px;margin-bottom:8px}.game-start .so-mode-card p{margin-bottom:14px}.game-start .so-mode-card button{min-height:44px}.game-start-settings{margin:8px 0 12px}.game-save-drawer{position:absolute;left:5vw;bottom:44px;padding:0;background:none;font-size:14px;z-index:10}.game-save-drawer>summary{font-size:16px;gap:16px}.game-save-drawer[open]{padding:20px;bottom:42px;background:#13243bf5;border:1px solid var(--screen-line);width:min(760px,90vw);max-height:65vh;overflow:auto;box-shadow:0 12px 50px #0009}.game-save-drawer .saved-list{grid-template-columns:1fr}.game-save-drawer li{padding:12px}.game-page-controls,.game-console-tabs,.game-tactic-tabs,.game-report-tabs{display:flex;gap:6px;align-items:center}.game-page-controls{justify-content:space-between;margin:8px 0;font-size:14px}.game-page-controls button{padding:7px 12px;min-height:36px;font-size:16px!important;color:var(--screen-ink);background:#20344b;border:1px solid var(--screen-line)}.game-console-tabs,.game-report-tabs{border-bottom:1px solid var(--screen-line);padding-bottom:8px;margin-bottom:12px}.game-console-tabs button,.game-report-tabs button,.game-tactic-tabs button{flex:1;padding:8px 4px;background:#20344b;border:0;color:var(--screen-muted);font-size:17px!important}.game-console-tabs button[aria-pressed=true],.game-report-tabs button[aria-pressed=true],.game-tactic-tabs button[aria-pressed=true]{background:var(--screen-accent);color:var(--screen-dark)}.game-tactic-tabs{margin-bottom:12px;flex-wrap:wrap}.game-tactic-tabs button{font-size:16px!important}.game-console-panel{min-height:0}.game-match-console .room-sideline{margin:0;padding:0;border:0}.game-match-console .room-sideline h3{font-size:22px;margin-bottom:8px}.game-match-console .room-sideline .room-control-group{display:grid;gap:8px}.game-match-console .room-live-coaching{display:block}.game-match-console .room-coaching{margin:0;padding:0;border:0;background:none}.game-match-console .room-coaching summary{font-size:18px}.game-match-console .room-coaching-grid{display:block}.game-match-console .room-coaching-grid section{background:none;border:0;padding:8px 0}.game-match-console .room-coaching-grid h3{display:none}.game-match-console .room-coaching-grid p{font-size:14px;margin:4px 0 10px;color:var(--screen-muted)}.game-match-console .room-timeout-conversation{margin:0;padding:0;border:0}.game-match-console .room-timeout-conversation[open] .room-timeout-preview{display:none}.game-match-console .room-timeout-conversation p{font-size:14px}.game-match-console .room-coaching-intro{font-size:14px;padding:8px 0;color:var(--screen-muted)}.game-match-console .room-action-rail{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.game-match-console .room-primary{grid-column:1/-1;min-height:44px}.game-match-console .room-plans{grid-column:1/-1}.game-match-console .room-action-rail .room-control-group{gap:4px}.game-match-console .room-action-rail .room-button{font-size:17px!important;padding:8px}.game-match-console{padding:14px}.game-match-console>.so-kicker{margin-bottom:10px}.sideout-room .room-scorebug{padding:10px 20px!important;min-height:90px}.game-points .room-score{font-size:60px!important}.game-scoreboard .room-team-label{font-size:28px!important}.game-sets{margin-top:4px}.sideout-room .room-arena{padding:20px!important}.sideout-room .room-player.game-circle-player{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;width:86px;min-height:70px;display:flex;flex-direction:column;align-items:center;padding:0;gap:3px;color:white!important}.game-circle{width:44px;height:44px;border-radius:50%;background:var(--kit);border:2px solid #fff;box-shadow:0 3px 6px #0005;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;position:relative;color:var(--kit-ink,#10180a);text-shadow:none}.game-circle strong{font-size:18px}.game-circle span{font-size:12px;margin-top:2px}.sideout-room .room-player.game-circle-player.is-active{outline:none}.game-circle-player.is-active .game-circle{outline:3px solid var(--screen-accent);outline-offset:3px}.game-circle-player.is-active .game-court-name{background:var(--screen-accent);color:var(--screen-dark)}.game-court-name{font-family:Barlow,system-ui,sans-serif;text-transform:none;font-size:14px!important}.game-flag{display:inline-block;vertical-align:middle;object-fit:cover;width:28px;height:21px;border-radius:2px;box-shadow:0 1px 4px #0005;margin-right:6px}.room-team-label{display:flex;gap:5px;align-items:center}.room-live-strip{padding:10px!important;min-height:54px!important;display:flex;gap:16px;align-items:center}.room-commentary{font-size:16px!important;margin:0!important}.room-actor-strip{font-size:14px;flex-shrink:0}.room-target-caption:empty,.room-target-caption:not(:has(*)):empty{display:none}.room-competition-nav{padding:4px 0!important;margin-bottom:6px;min-height:32px}.room-competition-nav button{font-size:16px!important}.game-match-layout{margin-top:8px}.room-tabs{min-height:36px}.room-tab{padding:8px 12px!important}.game-workbench .so-workspace{grid-template-columns:380px minmax(0,1fr);gap:16px}.game-workbench .so-team-panel{padding:12px;background:#122238!important;border-color:var(--screen-line)}.game-workbench .so-pool{padding:0;background:none!important;border:0!important}.game-workbench .so-section-heading{margin-bottom:6px}.game-workbench h2{font-size:24px;margin:0 0 8px}.game-workbench .so-national-top{padding:10px 16px;gap:16px;margin-bottom:10px}.game-workbench .so-national-top h2{margin:0;margin-right:auto}.game-workbench .so-national-top label{display:flex;align-items:center;gap:10px;font-size:14px}.game-workbench .so-national-top select{min-height:40px;max-width:170px}.game-workbench .so-selection-counts{gap:20px}.game-workbench .so-stat strong{font-size:24px}.game-workbench .so-stat span{font-size:14px}.game-workbench .so-budget{padding:10px 16px;gap:32px;margin-bottom:10px}.game-workbench .so-filters{position:static;background:none;padding:0;margin:0;gap:10px}.game-workbench .so-filters label{font-size:14px}.game-workbench .so-filters input,.game-workbench .so-filters select{min-height:38px;padding:8px}.game-workbench .so-player-grid{gap:8px}.game-workbench .so-player-card{padding:10px 14px!important;margin-bottom:6px!important}.game-workbench .so-player-name h3{font-family:Barlow,system-ui,sans-serif!important;font-size:18px!important;text-transform:none!important;font-weight:600!important;margin:0 0 3px}.game-workbench .game-player-role{font-size:14px;letter-spacing:.06em;margin-bottom:2px}.game-workbench .so-country{font-size:14px}.game-workbench .game-player-height{font-family:Barlow,system-ui,sans-serif;font-size:16px;margin:4px 0}.game-workbench .game-player-height span{font-size:14px}.game-workbench .so-rating strong{font-size:28px!important}.game-workbench .so-rating span{font-size:12px}.game-workbench .game-player-details{border:0;padding:0;margin:4px 0 0}.game-workbench .game-player-details summary{color:var(--screen-accent);font-size:14px}.game-workbench .so-player-head{gap:10px}.game-workbench .so-purchase{margin-top:8px;padding-top:8px}.game-workbench .so-purchase label{font-size:14px}.game-workbench .so-purchase select{padding:5px;min-height:32px}.game-workbench .so-purchase-bottom{margin-top:6px}.game-workbench .so-price{font-size:16px}.game-workbench .so-purchase button{font-size:17px!important;padding:8px 10px}.game-workbench .so-reason{font-size:14px;margin:4px 0}.game-workbench .so-national .so-player-choices{margin:0}.game-workbench .so-lineup{background:none!important;border:0!important;padding:0!important;margin:0!important}.game-workbench .so-lineup .so-help{font-size:14px;margin-bottom:8px}.game-workbench .so-section-heading h2{margin:0}.game-workbench .game-lineup-court{background:#1b4e68;padding:8px;--kit:#174bbb;--kit-trim:#df263d}.game-lineup-shirt{display:flex;justify-content:center}.game-lineup-shirt .game-shirt{width:36px;height:44px}.game-lineup-shirt .game-shirt-position{font-size:15px;top:15px}.game-lineup-court .so-lineup-slot label>span:not(.game-lineup-shirt){font-size:12px;text-align:center}.game-lineup-court .so-lineup-slot label{display:flex;flex-direction:column;gap:4px}.game-lineup-court select{font-size:14px;padding:5px 3px;min-height:32px;background:#122238;color:white;border:1px solid #52738f}.game-lineup-front{padding-bottom:8px}.game-lineup-back{padding-top:8px}.game-net{margin-bottom:8px;font-size:12px}.game-workbench .so-libero-slot .game-lineup-shirt{display:none}.game-workbench .so-libero-slot{padding:8px 0;margin:0}.game-workbench .so-libero-slot label{display:flex;gap:8px;align-items:center}.game-workbench .so-libero-slot select{font-size:14px;min-height:32px}.game-workbench .so-validation{font-size:14px;margin:4px 0}.game-workbench .so-actions{padding:10px 14px!important;position:static;margin-top:10px}.game-workbench .so-role-summary{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;margin:10px 0}.game-owned-list{padding:0;margin:0;list-style:none}.game-owned-list li{padding:10px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--screen-line);gap:10px}.game-owned-list strong{font-size:16px}.game-owned-list span{display:block;font-size:14px;color:var(--screen-muted)}.game-owned-list button{padding:7px;font-size:16px!important}.room-summary .room-result-panel{padding:18px!important}.game-report-heading{padding-bottom:12px;margin-bottom:14px}.game-report-heading h1{font-size:32px}.room-summary .room-result-hero{padding:16px!important;gap:4px}.room-summary .room-final-score{font-size:72px!important}.room-summary .room-result-label{font-size:24px!important}.game-result-teams h2{font-size:28px!important}.room-summary .room-set-scores{margin-top:6px!important}.room-summary-grid[data-report-tab=overview]{grid-template-columns:1fr!important}.room-summary .room-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.room-summary .room-stat{padding:12px!important;background:#122238!important;border:1px solid var(--screen-line)}.game-report-tabs{margin:14px 0}.room-summary-grid:not([data-report-tab=overview]){grid-template-columns:1fr!important}.room-result-panel .room-change-note{font-size:16px}.room-summary .room-credit-changes{margin-top:10px}.room-report-section details{max-height:50vh;overflow:auto}#player-detail{max-width:800px;width:90vw;max-height:85vh;background:var(--screen-panel);color:var(--screen-ink);border:1px solid var(--screen-line);border-radius:8px;padding:24px}#player-detail::backdrop{background:#030a13cc}#close-detail{float:right;background:var(--screen-accent);color:var(--screen-dark);border:0;padding:10px 16px}#status:not(:empty){position:fixed!important;bottom:8px;left:50%;transform:translateX(-50%);z-index:30;padding:8px 16px!important;border:1px solid var(--screen-line)!important;border-radius:6px;font-size:14px;box-shadow:0 4px 15px #0007;pointer-events:none}
@media(min-width:1001px){.is-match .room-court{width:min(100%,calc((100dvh - 370px)*2))!important}.is-match .room-arena{min-height:0}.game-start-content{padding-bottom:26px}.game-workbench .so-market .so-player-grid{grid-template-columns:1fr 1fr}}
@media(max-width:1000px){.game-workbench .so-workspace{grid-template-columns:1fr!important}.game-workbench .so-team-panel{display:block}.game-workbench .so-player-grid{grid-template-columns:1fr 1fr}.game-start-content{max-width:72vw}.game-save-drawer{position:relative;bottom:auto;left:auto;padding:14px 20px;background:#091320}.game-start.so-setup{min-height:0;padding:36px 24px}.game-save-drawer[open]{width:auto;max-height:none;bottom:auto}.career-footer{height:auto}.game-workbench .so-national-top{flex-wrap:wrap}.game-workbench .so-national-top h2{font-size:22px}.game-workbench .so-selection-counts{width:100%}}
@media(max-width:760px){#app{padding:14px}.career-header nav a,.career-header nav button{font-size:15px!important}.game-start-content{max-width:100%;width:100%}.game-start h1{font-size:64px}.game-start .so-mode-grid{grid-template-columns:1fr}.game-workbench .so-player-grid{grid-template-columns:1fr}.game-workbench .so-player-card{min-width:0}.game-match-console .room-action-rail{grid-template-columns:1fr auto}.game-scoreboard .room-team-label{font-size:20px!important;display:flex;flex-direction:column;gap:4px}.game-points .room-score{font-size:48px!important}.game-flag{width:24px;height:18px}.sideout-room .room-arena{padding:26px 14px!important}.sideout-room .room-player.game-circle-player{width:64px;min-height:56px}.game-circle{width:34px;height:34px}.game-circle strong{font-size:15px}.game-circle span{font-size:11px}.game-court-name{font-size:12px!important;max-width:64px}.room-live-strip{display:block;min-height:0!important}.room-commentary{margin-top:8px!important}.room-summary .room-stats{grid-template-columns:1fr 1fr}.room-summary .room-final-score{font-size:64px!important}.game-result-teams h2{font-size:24px!important}.room-competition-nav{flex-wrap:wrap}.game-workbench .so-head{display:block}.game-workbench .so-head .so-gender{margin-top:10px;display:none}.game-workbench .so-actions{display:flex;flex-wrap:wrap}.game-workbench .so-actions .so-start-reason{max-width:100%}.game-workbench .so-team-panel .so-role-summary{gap:10px}.game-report-heading h1{font-size:26px}.game-report-heading{gap:8px}.game-report-heading button{min-width:110px}#status:not(:empty){max-width:90vw;width:max-content}}
@media(min-width:1001px){.game-start.so-setup{min-height:calc(100dvh - 94px);padding:20px 5vw}.game-start h1{font-size:64px;margin-bottom:16px}.game-start .so-kicker{margin-bottom:5px}.game-start .game-continue{padding:12px 18px;margin-bottom:16px}.game-start .game-continue h2{font-size:22px}.game-start .game-career-heading{margin-bottom:6px}.game-start .so-mode-card{padding:12px 18px}.game-start .so-mode-card h2{font-size:30px;margin-bottom:5px}.game-start .so-mode-card .so-kicker{font-size:14px}.game-start .so-mode-card p{margin-bottom:10px}.game-start-settings{margin:5px 0 10px}.game-save-drawer{position:fixed;right:24px;top:72px;left:auto;bottom:auto;background:#102138e8;padding:10px 14px;border:1px solid var(--screen-line);border-radius:4px}.game-save-drawer[open]{top:72px;bottom:auto;padding:18px}.game-save-drawer>summary{font-size:14px}}
.career-header .sideout-brand{color:var(--screen-ink)}
body.is-match{background:var(--screen-bg)}.is-match main{max-width:1560px}.sideout-room{--room-green:var(--screen-ink);--room-cream:var(--screen-panel);--room-lime:var(--screen-accent);--room-muted:var(--screen-muted);--room-arena:#1b4e68}.sideout-room .room-tab{color:var(--screen-muted);background:none;border:0}.sideout-room .room-tab[aria-selected=true]{color:var(--screen-accent);border-bottom:2px solid var(--screen-accent)}.sideout-room .room-button{background:#20344b;color:var(--screen-ink);border:1px solid var(--screen-line);min-height:36px}.sideout-room .room-option[aria-pressed=true]{background:var(--screen-accent);color:var(--screen-dark)}.sideout-room .room-primary{background:var(--screen-accent);color:var(--screen-dark)}.career-footer{margin:0 auto;max-width:1560px}.game-match-options{position:absolute;left:250px;top:18px;z-index:15;font-size:14px}.game-match-options summary{cursor:pointer}.game-match-options[open]{background:#13243bf7;border:1px solid var(--screen-line);padding:12px;top:8px;border-radius:4px}.game-match-options .room-competition-nav{display:flex;flex-wrap:wrap;max-width:480px;background:none;color:var(--screen-ink);gap:8px}.game-match-options .room-competition-nav span{margin-left:0;font-size:14px}.game-match-options .room-competition-nav button,.game-match-options .room-competition-nav select{background:#20344b;color:var(--screen-ink);border-color:var(--screen-line)}.game-match-console .room-sideline-status{margin:8px 0}.game-match-console .room-sideline p{font-size:14px;margin:0 0 8px}.game-match-console .room-sideline .room-button{min-height:36px;padding:8px;font-size:17px!important}.sideout-room .room-set-scores li{background:#20344b;color:var(--screen-ink);border-color:var(--screen-line)}.sideout-room .room-result-hero,.sideout-room .room-summary-grid>section{color:var(--screen-ink)}
@media(min-width:1001px){.is-match .room-court{width:min(100%,calc((100dvh - 320px)*2))!important}.game-match-stage .room-live-strip{max-width:100%}}
@media(max-width:760px){.game-match-options{position:static;margin-bottom:8px}.game-match-options[open]{padding:12px}.sideout-room .room-actor-strip{max-width:100%}}
.game-sets .room-match-phase{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;max-width:none}.game-sets .room-match-phase span,.game-sets .room-match-phase strong{font-family:Barlow,system-ui,sans-serif;font-size:14px;line-height:1.2}.game-score-centre{min-width:270px}.game-points .room-score{font-size:52px!important}.game-sets{line-height:1.2}.sideout-room .room-scorebug{min-height:88px;margin-bottom:6px}.career-footer button{min-height:24px;padding:2px 6px}.game-match-console .room-explanation{margin-top:8px;font-size:14px}
@media(min-width:1001px){.is-match .room-court{width:min(100%,calc((100dvh - 400px)*2))!important}}
@media(max-width:760px){.game-score-centre{min-width:140px}.game-sets .room-match-phase{display:grid;gap:0}.game-sets .room-match-phase span,.game-sets .room-match-phase strong{font-size:12px}.game-points .room-score{font-size:44px!important}}
.game-team-identity{padding:0 0 10px;margin-bottom:12px}.game-team-identity h1{font-size:36px;margin:0}.game-team-identity .so-w-kicker{font-size:14px;margin-bottom:3px}.game-hub-meta{font-size:14px;color:var(--screen-muted);margin:3px 0 0}.game-hub-layout{grid-template-columns:280px minmax(0,1fr);gap:16px}.game-next-match{padding:18px}.game-next-match h2{font-size:28px;margin:0 0 10px}.game-next-match .game-fixture-date{font-size:22px;margin-bottom:12px}.game-next-match p{font-size:16px;margin-bottom:12px}.game-next-match .so-w-pace{margin:14px 0}.game-latest-result{padding:12px 16px;background:var(--screen-panel);border-left:3px solid var(--screen-accent);display:flex;flex-direction:column;gap:4px;font-size:16px}.game-latest-result>span{font-size:14px;color:var(--screen-muted)}.game-hub-main .so-w-tabs{margin:12px 0}.game-hub-main .so-w-tabs button{padding:10px 16px}.game-hub-main .so-w-court-workspace{display:block}.game-hub-main .game-hub-extra{display:none}.game-hub-main .so-w-court-column h2{font-size:22px}.game-hub-main .so-w-section-title{margin-bottom:8px}.game-hub-main .so-w-court{background:#1b4e68!important;padding:10px;border:2px solid #e7ecf1;border-radius:4px}.game-hub-main .so-w-actor{position:relative;min-height:80px!important;background:#122238!important;color:var(--screen-ink)!important;border:1px solid var(--screen-line)!important;border-radius:4px!important;padding:10px 8px 10px 48px!important;text-align:left}.game-hub-main .so-w-own-grid{gap:6px;padding:6px 0}.game-hub-main .so-w-opponent-row{gap:6px;padding:6px 0}.game-hub-main .so-w-actor-top{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.game-hub-main .so-w-actor-name{font-family:Barlow,system-ui,sans-serif;font-size:16px!important;text-transform:none}.game-hub-main .so-w-rating{font-size:14px}.game-hub-main .so-w-rating strong{font-family:Barlow,system-ui,sans-serif;font-size:16px!important}.game-hub-main .so-w-position{font-size:12px;margin-top:3px}.game-hub-main .so-w-actor .so-w-country{display:none}.game-hub-main .so-w-actor-description{display:none}.game-hub-main .so-w-evidence{font-size:12px}.game-hub-shirt{position:absolute;left:7px;top:12px}.game-hub-shirt .game-shirt{width:32px;height:40px}.game-hub-shirt .game-shirt-position{font-size:14px;top:14px}.game-hub-main .so-w-team-label{font-size:14px;padding:4px}.game-hub-main .so-w-team-label span{font-size:12px}.game-hub-main .so-w-net{margin:6px 0;height:10px}.game-hub-main .so-w-net span{font-size:12px}.game-hub-main .game-squad-reserves{margin:0;padding:16px}.game-hub-main .game-squad-reserves li{padding:12px}.career-tools{padding:8px 12px;font-size:14px;background:var(--screen-panel);border:1px solid var(--screen-line);margin-bottom:12px;align-items:center}.career-tools button{background:#20344b;color:var(--screen-ink);font-size:17px!important;padding:8px 12px}.career-tools select{background:#20344b;color:var(--screen-ink);border-color:var(--screen-line)}.game-team-hub .so-w-table-panel,.game-team-hub .so-w-log-panel,.game-team-hub .so-w-bracket-panel{padding:12px;background:var(--screen-panel);color:var(--screen-ink);border:0}.game-team-hub .so-w-table-panel h2{font-size:22px}.game-team-hub .so-w-table-panel table{font-size:14px}.game-team-hub .so-w-table-panel td,.game-team-hub .so-w-table-panel th{padding:9px 8px;background:var(--screen-panel);border-color:var(--screen-line);color:var(--screen-ink)}.game-team-hub .so-w-table-panel tr.is-selected>*{background:#214b59}.game-team-hub .so-w-table-badges{font-size:12px}.game-team-hub .so-w-table-panel .so-w-country{font-size:12px;color:var(--screen-muted)}.game-table-rules{font-size:14px;margin-bottom:8px}.game-table-rules p{font-size:14px}.game-team-hub .so-w-log-match{padding:10px;background:#20344b;border-color:var(--screen-line);color:var(--screen-ink)}.game-team-hub .so-w-log-panel .so-w-section-title p{font-size:14px}.game-team-hub .so-w-bracket{gap:10px}.game-team-hub .so-w-match-card{padding:10px;color:var(--screen-ink);background:#20344b;border-color:var(--screen-line)}.game-team-hub .so-w-match-card h3,.game-team-hub .so-w-round h3{font-size:20px}.game-team-hub .so-w-match-card p,.game-team-hub .so-w-bracket-team .so-w-country{font-size:12px;margin:4px 0}.game-team-hub .so-w-bracket-team{padding:4px;font-size:14px}.game-team-hub .so-w-match-card-heading{font-size:14px}.game-team-hub .so-w-workload{background:#122238;color:var(--screen-ink);border-color:var(--screen-line);padding:12px}.game-team-hub .so-w-workload summary{font-size:14px}.game-team-hub .so-w-path{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.game-team-hub .so-w-path li{padding:18px;background:#20344b}.game-team-hub .so-w-path span{display:block;font-size:14px;color:var(--screen-muted)}
@media(max-width:1000px){.game-hub-layout{grid-template-columns:1fr}.game-hub-meta{font-size:14px}.game-hub-main .so-w-path{grid-template-columns:1fr}.game-hub-main .so-w-actor{padding-left:8px!important}.game-hub-shirt{display:none}.game-hub-main .so-w-actor-name{font-size:14px!important}.game-next-match .so-w-segmented{flex-wrap:wrap}.game-hub-main .so-w-actor .so-w-country{display:none}.game-hub-main .so-w-position{font-size:12px}}
.so-setup{--so-ink:#f0f5fc;--so-muted:#b6c8db;--so-line:#38516b;--so-cream:#122238;--so-green:#122238}.game-workbench.so-national .so-national-top{display:flex!important;align-items:center;flex-wrap:nowrap;gap:20px}.game-workbench.so-national .so-selection-counts{display:flex;background:none;border:0;border-radius:0;gap:20px;overflow:visible}.game-workbench .so-selection-counts .so-stat{padding:0}.game-workbench .so-stat--balance{background:transparent!important;color:var(--screen-ink)!important}.game-workbench .so-stat--balance>span{color:var(--screen-muted)!important}.game-workbench .so-filters input,.game-workbench .so-filters select,.game-workbench .so-national-top select,.game-workbench .so-libero-slot select,.game-workbench .so-purchase select{color:var(--screen-ink)!important;background:#20344b!important;border:1px solid var(--screen-line)!important}.game-workbench .so-filters input::placeholder{color:#a9bdd1}.game-workbench .so-check{padding:4px 8px;min-height:36px;background:#20344b!important;color:var(--screen-ink)!important;border-color:var(--screen-line)}.game-workbench .so-check:has(input:checked){background:#1f4a54!important;border-color:#53e0cf;color:white!important}.game-workbench .so-check input{accent-color:#53e0cf;width:20px;height:20px}.game-workbench.so-national .so-player-card{padding:8px 12px!important;gap:3px 14px}.game-workbench.so-national .so-player-head .so-player-name{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center}.game-workbench.so-national .game-player-role{grid-column:1;grid-row:1;margin:0}.game-workbench.so-national .so-player-name h3{grid-column:2;grid-row:1;margin:0}.game-workbench.so-national .so-player-head .so-country{display:none}.game-workbench.so-national .game-player-height{grid-column:1/-1;grid-row:2;margin:0;font-size:16px;line-height:1.2}.game-workbench.so-national .game-player-details{border-top:0;margin:0;padding:0;font-size:14px;line-height:1.2}.game-workbench.so-national .so-player-choices{gap:3px}.game-workbench .so-rating{min-height:0!important;line-height:1.1;padding:0!important;background:transparent!important;color:var(--screen-ink)!important}.game-workbench .so-rating span{color:var(--screen-muted)!important}.game-workbench.so-national .so-rating strong{font-size:26px!important}.game-workbench.so-national .so-filters{margin:0 0 6px}.game-workbench .so-gender{display:none}.game-workbench .so-head .so-kicker{display:none}.game-workbench .so-head h1{font-size:30px!important}.game-workbench .so-head{padding-bottom:8px!important;margin-bottom:8px!important}.game-workbench .so-pool .so-section-heading h2{font-size:22px}.game-workbench .so-team-panel{align-self:start}.game-workbench .so-actions .so-button{min-height:42px;padding:8px 16px}.game-workbench .so-actions{padding:8px 12px!important}.game-workbench .so-lineup .so-pill{background:#20344b;color:var(--screen-accent);border-color:var(--screen-line)}.game-workbench .game-lineup-court .game-shirt{mask-size:100% 100%;width:42px;height:50px}.game-workbench .game-lineup-court .game-shirt-texture{background-size:100% 100%}.game-workbench .game-lineup-court .game-shirt-position{font-size:16px;top:18px;text-align:center;white-space:nowrap;overflow:visible}.game-workbench .game-lineup-court .so-lineup-slot label>.game-lineup-shirt{font-size:16px}.game-workbench .so-purchase{background:none;color:var(--screen-ink)}.game-workbench .so-budget{background:#122238;color:var(--screen-ink)}
@media(max-width:1000px){.game-workbench.so-national .so-national-top{flex-wrap:wrap!important}.game-workbench.so-national .so-selection-counts{width:auto}.game-workbench.so-national .so-national-top h2{margin-right:0}.game-workbench.so-national .so-player-head .so-player-name{grid-template-columns:auto 1fr}}
.game-workbench .game-pool-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 115px;gap:8px;align-items:end;margin-bottom:8px}.game-workbench .game-pool-toolbar .game-page-controls{margin:0 0 6px;gap:5px;font-size:14px}.game-workbench .game-pool-toolbar .game-page-controls button{width:34px;min-width:34px;height:38px;min-height:38px;padding:4px;font-size:24px!important}.game-workbench .game-pool-toolbar .game-page-controls span{white-space:nowrap}.game-workbench .so-actions{padding:6px 12px!important}.game-workbench .so-validation:empty{display:none}.game-workbench .so-validation{background:transparent!important;padding:0!important;border:0!important;color:var(--screen-ink)!important}
@media(min-width:1001px){.game-workbench .so-head>div{display:flex;gap:16px;align-items:baseline}.game-workbench .so-head .so-subtitle{margin:0;font-size:14px!important}.game-workbench .so-head h1{margin:0}.game-workbench .so-national-top{padding:6px 16px}.game-workbench .so-national-top select{min-height:34px;padding:5px 8px}.game-workbench .so-selection-counts .so-stat strong{font-size:22px!important}.game-workbench .so-filters label{font-size:0}.game-workbench .so-filters input,.game-workbench .so-filters select{font-size:16px!important;min-height:38px;height:38px;margin:0}.game-workbench .so-filters{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;height:38px}.game-workbench .so-filters select{max-width:100%}.game-workbench .so-pool .so-section-heading{margin-bottom:8px}.game-workbench .so-pool .so-section-heading h2{margin:0;font-size:20px}.game-workbench .so-pool .so-section-heading>span{font-size:14px}}
@media(max-width:760px){.game-workbench .game-pool-toolbar{grid-template-columns:1fr}.game-workbench .game-pool-toolbar .game-page-controls{justify-content:flex-end}.game-workbench .so-filters label{font-size:14px}}
.so-setup .so-button--secondary{background:#20344b!important;color:var(--screen-ink)!important;border:1px solid var(--screen-line)!important}.so-setup .so-actions{box-shadow:none!important;background:#122238!important}.game-workbench .so-team-panel .so-section-heading{margin-bottom:8px}.game-workbench .so-head .so-gender{display:none!important}
/* Scouting uses a roster and a selected-player inspector, not a wide audit table. */
.game-database-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin:14px 0}.game-database-filters label{font-size:14px;color:var(--screen-muted)}.game-database-filters input,.game-database-filters select{display:block;width:100%;margin-top:4px;min-height:42px;background:#20344b;color:var(--screen-ink);border:1px solid var(--screen-line);padding:8px}.game-database-workspace{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.game-section-heading{display:flex;align-items:center;justify-content:space-between;height:42px}.game-section-heading h2{font-size:22px;margin:0}.game-section-heading nav{display:flex;align-items:center;gap:10px}.game-section-heading button{min-height:36px;min-width:36px;padding:4px;font-size:24px}.game-database-row{width:100%;display:grid;grid-template-columns:48px 1fr 48px;gap:12px;align-items:center;text-align:left;padding:10px 14px!important;background:#14263a!important;color:var(--screen-ink)!important;border:1px solid var(--screen-line);margin:4px 0;font-family:Barlow,sans-serif!important;font-size:16px!important}.game-database-row[aria-pressed=true]{border-color:var(--screen-accent);background:#1c3c4e!important}.game-database-row strong{font-size:17px}.game-database-row small{display:block;font-size:14px;color:var(--screen-muted)}.game-database-row b{font-size:26px;color:var(--screen-coral)}.game-role{font-family:'Barlow Condensed',sans-serif;color:var(--screen-accent);font-size:22px}.game-player-inspector{padding:24px;background:linear-gradient(145deg,#20344bee,#101e2bf5);border-top:3px solid var(--screen-accent);align-self:start}.game-inspector-title{display:flex;align-items:center;gap:16px;margin:20px 0}.game-inspector-title h1{font-size:32px!important;line-height:1.05;flex:1}.game-inspector-title .game-shirt{width:64px;height:80px;flex-shrink:0}.game-inspector-ovr{font:48px 'Barlow Condensed',sans-serif;color:var(--screen-coral)}.game-inspector-ovr small{display:block;font:14px Barlow,sans-serif;color:var(--screen-muted)}.game-inspector-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.game-inspector-facts div{padding:14px;background:#0e1c2c}.game-inspector-facts span{display:block;font-size:14px;color:var(--screen-muted);margin-bottom:6px}.game-inspector-facts strong{font-size:18px}.game-muted{color:var(--screen-muted);font-size:14px}button:disabled:not(.room-player){background:#20344b!important;color:#c9d4df!important;-webkit-text-fill-color:#c9d4df!important;opacity:1!important}.sideout-room .room-player:disabled{opacity:1!important}.game-workbench.so-national .so-player-card{margin-bottom:6px}.game-workbench.so-national .so-player-head{line-height:1.1}.game-workbench .so-player-name h3{line-height:1.1}.game-workbench.so-national .game-player-details{line-height:1.1}.game-workbench.so-national .so-player-card{padding:6px 12px!important}.game-workbench.so-national .game-player-height{line-height:1.1}.game-workbench .so-actions{margin-top:6px}
@media(max-width:760px){.game-database-filters{grid-template-columns:1fr 1fr}.game-database-workspace{grid-template-columns:1fr}.game-inspector-title h1{font-size:28px!important}.game-database-row{min-height:56px}.game-database .so-head{margin:0}}
@media(min-width:1001px){body:has(.game-workbench) #app{padding-top:10px;padding-bottom:8px}.game-workbench .so-actions{margin-top:4px}}
/* Team centre: compact lineup board, focused competition workspace. */
.game-team-hub .game-team-identity{display:block;padding:0 0 8px;margin:0 0 10px}.game-team-hub .game-team-identity h1{font-size:30px!important;line-height:1;margin:0!important}.game-team-hub .game-team-identity p{margin:4px 0!important}.game-team-hub .so-w-tabs button,.game-team-hub .so-w-pace button{background:#20344b;color:var(--screen-ink);border:1px solid var(--screen-line);min-height:38px;padding:6px 14px}.game-team-hub .so-w-tabs button[aria-pressed=true],.game-team-hub .so-w-pace button[aria-pressed=true]{background:var(--screen-accent);color:var(--screen-dark);border-color:var(--screen-accent)}.game-team-hub .so-w-pace{padding:8px}.game-team-hub .so-w-pace legend{font-size:14px}.game-team-hub .so-w-pace .so-w-segmented{flex-wrap:nowrap}.game-team-hub .so-w-court-column h2{margin:0 0 6px!important}.game-team-hub .so-w-team-label{color:var(--screen-ink)!important;line-height:1.1}.game-team-hub .so-w-actor{display:grid!important;grid-template-columns:1fr auto;gap:2px!important;min-height:76px!important;padding:8px 8px 8px 48px!important;align-content:center}.game-team-hub .so-w-actor-top{display:contents!important}.game-team-hub .so-w-actor-name{grid-column:1;line-height:1.05;align-self:center}.game-team-hub .so-w-rating{grid-column:2;grid-row:1/3;display:flex!important;flex-direction:column;line-height:1.1;align-self:center}.game-team-hub .so-w-rating strong{font-size:24px!important}.game-team-hub .so-w-position{grid-column:1;font-size:14px;margin:0;line-height:1.1}.game-team-hub .so-w-evidence{grid-column:1;font-size:14px;line-height:1}.game-team-hub .game-hub-shirt{top:50%;transform:translateY(-50%)}.game-team-hub .so-w-actor .so-w-evidence{display:none}.game-team-hub .so-w-section-title{margin:0 0 6px}.career-tools{justify-content:flex-end;margin:0 0 6px;padding:4px;background:transparent;border:0}.career-tools>span,.career-tools>.so-w-help{display:none}.career-tools button{padding:6px 12px;min-height:36px}.game-team-hub .so-w-kicker{display:none}.game-team-hub .so-w-court{padding:6px}.game-team-hub .so-w-net{margin:3px 0}.game-team-hub .game-latest-result{padding:8px 12px}.game-team-hub .game-next-match .so-w-pace{margin:10px 0}.game-team-hub .game-next-match p{font-size:16px;line-height:1.3}.game-team-hub .so-w-tabs{margin:8px 0}.game-team-hub .game-hub-subnav{margin-bottom:6px}
@media(max-width:760px){.game-team-hub .so-w-actor{padding-left:8px!important;min-height:76px}.game-team-hub .so-w-position{font-size:14px}.game-team-hub .so-w-own-grid{gap:4px}.game-team-hub .so-w-opponent-row{gap:4px}.game-team-hub .so-w-rating strong{font-size:20px!important}}
.game-team-hub .so-w-pace button{padding:6px 8px;flex:1;white-space:nowrap;word-break:normal}.game-team-hub .so-w-tabs button{background:#20344b!important;color:var(--screen-ink)!important}.game-team-hub .so-w-tabs button[aria-pressed=true]{background:var(--screen-accent)!important;color:var(--screen-dark)!important}.game-team-hub .game-console-tabs button{min-width:0;font-size:17px}.game-team-hub .so-w-table-panel{min-width:0}.game-team-hub .so-w-table-scroll{overflow-x:auto}.game-team-hub .so-w-bracket{grid-template-columns:repeat(4,minmax(0,1fr))}.game-team-hub .so-w-match-card{margin:5px 0;padding:6px}.game-team-hub .so-w-bracket-team .so-w-country{display:none}.game-team-hub .so-w-match-card-heading{font-size:14px}.game-team-hub .so-w-match-date{margin:2px 0}.game-team-hub .game-squad-reserves ul{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none}.game-team-hub .game-squad-reserves li{padding:8px!important;background:#20344b}.game-team-hub .game-squad-reserves li span{display:block;color:var(--screen-muted);font-size:14px}
@media(max-width:760px){.game-team-hub .so-w-bracket{grid-template-columns:1fr 1fr}.game-team-hub .game-squad-reserves ul{grid-template-columns:1fr}}
.game-database-row{padding:6px 12px!important;text-transform:none!important;letter-spacing:0!important;min-height:56px}.game-database-row strong{font-family:Barlow,sans-serif;font-size:17px!important;font-weight:700;line-height:1.1}.game-database-row small{line-height:1.1}.game-database-row .game-flag{height:16px;width:22px}.game-database .so-head{margin-bottom:8px!important;padding-bottom:8px!important}.game-database .so-head p{display:none}.game-database .so-head h1{font-size:30px;margin:0}.game-player-inspector button,.game-section-heading button{background:#20344b;color:var(--screen-ink);border:1px solid var(--screen-line);min-height:40px}.game-player-inspector .game-shirt-position{color:var(--kit-ink,#fff)}.game-player-inspector .game-shirt{--kit:#1657b8;--kit-ink:#fff}.game-inspector-title h1{text-transform:none;font-family:Barlow,sans-serif!important;font-size:28px!important}.game-player-inspector .so-kicker{font-family:Barlow,sans-serif;letter-spacing:0;text-transform:none}
/* Training is a drill board with one coach console. */
.career-practice{padding:0}.career-practice .practice-heading{padding:4px 0 10px;margin-bottom:10px}.career-practice .practice-heading p{margin:4px 0;font-size:14px}.career-practice .practice-heading h1{font-size:30px}.career-practice .practice-heading .so-kicker{display:none}.career-practice .practice-context{padding:8px 12px;background:#122238;border:1px solid var(--screen-line);border-radius:0;gap:12px}.career-practice .practice-context label{font-size:14px;min-width:200px}.career-practice .practice-context select{min-height:36px;background:#20344b;color:var(--screen-ink);border-color:var(--screen-line);padding:5px}.career-practice .practice-context>p{font-size:14px;line-height:1.2}.career-practice .practice-context .practice-note{display:none}.career-practice .practice-context details{font-size:14px}.career-practice .practice-context details[open]{position:relative;width:100%;background:#20344b;padding:10px}.career-practice .practice-layout{gap:10px}.career-practice .practice-game{background:#122238;border-color:var(--screen-line);border-radius:0}.career-practice .practice-score{padding:6px 12px;background:#1b3449}.career-practice .practice-score span{font-size:14px}.career-practice .practice-stage{padding:10px;gap:12px;grid-template-columns:minmax(0,1fr) 310px}.career-practice .practice-court{height:310px;max-width:100%;background:#d89057;border-color:#e7ecf1}.career-practice .practice-coach{color:var(--screen-ink)}.career-practice button{font-family:Barlow,sans-serif!important;letter-spacing:0!important;text-transform:none!important;min-height:40px;background:#20344b;color:var(--screen-ink);border-color:var(--screen-line);border-radius:4px}.career-practice .practice-coach [aria-pressed=true]{background:#225365;color:var(--screen-ink);border-color:var(--screen-accent)}.career-practice .practice-primary{background:var(--screen-accent)!important;color:var(--screen-dark)!important}.career-practice .practice-feedback,.career-practice .practice-recap,.career-practice .practice-quality{background:#20344b;color:var(--screen-ink);border-color:var(--screen-line);padding:8px}.career-practice .practice-feedback h2{font-size:19px;margin:0 0 4px}.career-practice .practice-feedback p{font-size:16px;margin:0;line-height:1.2}.career-practice #practice-probability,.career-practice #practice-comparison{font-size:14px;line-height:1.2;margin:6px 0}.career-practice .practice-blocks{font-size:14px;line-height:1.1}.career-practice .practice-recap p{font-size:14px;margin:2px}.career-practice .practice-coach [data-practice=plan]{padding:8px;margin-bottom:6px}.career-practice .practice-coach [data-practice=plan] span{font-family:Barlow,sans-serif;font-size:14px}.career-practice .practice-coach legend{font-size:18px;margin-bottom:6px}.career-practice .practice-coach fieldset{margin:0}
@media(max-width:760px){.career-practice .practice-stage{grid-template-columns:1fr}.career-practice .practice-heading{padding:0;gap:10px}.career-practice .practice-context{display:block}.career-practice .practice-context select{width:100%}.career-practice .practice-context p{margin:8px 0}.career-practice .practice-court{height:300px}.career-practice .practice-heading p{font-size:16px}.career-practice button{min-height:44px}}
@media(min-width:1001px){.career-practice .practice-court{height:280px}.career-practice .practice-score button{min-height:36px;padding:5px 10px}.career-practice .practice-heading{padding-bottom:6px}.career-practice .practice-heading p{margin:2px 0}.career-practice .practice-layout{gap:8px}}
.career-practice .practice-athlete.ours{background:#1657b8}.career-practice .practice-athlete.focus{outline-color:var(--screen-accent)}.career-practice .practice-athlete.committed{background:#19498b;color:white}.career-practice .practice-athlete{color:#243242}.career-practice .practice-athlete.ours{color:white}
.game-team-hub .so-w-table-panel caption{font-size:14px;background:#20344b;color:var(--screen-muted);padding:6px;text-align:left}.game-team-hub .so-w-table-panel th[scope=row] .so-w-country{display:none}.game-team-hub .so-w-table-panel td,.game-team-hub .so-w-table-panel th{padding:8px!important;line-height:1.2;font-size:16px}.game-team-hub .so-w-table-panel .game-page-controls{margin:8px 0}.game-team-hub .so-w-section-title h2{margin:0;font-size:22px}.game-team-hub .so-w-table-panel .so-w-section-title{align-items:center}.game-team-hub .so-w-table-panel .so-w-section-title details{margin-left:auto}.game-team-hub .so-w-log-index{display:grid;gap:6px}.game-team-hub .so-w-log-match{margin:0;padding:6px}.game-team-hub .so-w-log-match summary{min-height:40px}
.game-team-hub .so-w-bracket-panel p,.game-team-hub .so-w-log-panel p{color:var(--screen-muted);font-size:16px;line-height:1.3}.game-team-hub .so-w-path li{border:1px solid var(--screen-line);border-radius:4px}.game-team-hub .so-w-path li strong{font-family:Barlow,sans-serif;font-size:18px}
/* The report places the result and six match facts in one viewport. */
.room-summary .room-result-label{color:var(--screen-coral)!important}.room-summary .room-result-hero{display:grid!important;grid-template-columns:1fr 170px;gap:6px!important;text-align:left;padding:12px 18px!important}.room-summary .room-result-label{grid-column:1;grid-row:1;font-size:20px!important;text-align:left;margin:0}.room-summary .game-result-teams{grid-column:1;grid-row:2;justify-content:flex-start;gap:16px}.room-summary .game-result-teams h2{font-size:26px!important;margin:0}.room-summary .room-final-score{grid-column:2;grid-row:1/3;font-size:64px!important;align-self:center}.room-summary .room-set-scores{grid-column:1/-1;grid-row:3;justify-content:flex-start;margin:4px 0!important}.room-summary .room-summary-report{padding:12px!important;border-radius:4px}.room-summary .room-summary-report h2{font-size:20px!important;margin:0 0 8px}.room-summary .room-stat{padding:8px 12px!important;min-height:0;border-radius:4px}.room-summary .room-stat strong{font-size:26px!important;line-height:1.1}.room-summary .room-stat span{font-size:16px;line-height:1.1}.room-summary .game-report-heading{margin-bottom:8px;padding-bottom:8px}.room-summary .room-result-panel{padding:8px!important}.room-summary .room-credit-changes{padding:4px 0;margin-top:6px}.room-summary .room-credit-delta{background:#245365!important;color:var(--screen-ink)!important}.room-summary .room-stats{gap:8px}.room-summary .game-report-tabs{margin:10px 0}.room-summary .room-summary-grid{margin:0}
@media(max-width:760px){.room-summary .room-result-hero{grid-template-columns:1fr 100px;padding:12px!important}.room-summary .game-result-teams{gap:8px;flex-wrap:wrap}.room-summary .room-final-score{font-size:48px!important}.room-summary .room-stats{grid-template-columns:1fr 1fr}.room-summary .game-result-teams h2{font-size:22px!important}.room-summary .room-set-scores{flex-wrap:wrap}}
/* Market: two candidate cards, four owned players and budget on the same screen. */
.so-market .so-roster{background:#122238!important;color:var(--screen-ink)!important;padding:8px!important;border:0}.so-market .so-roster h2{display:none}.so-market .so-role-summary{color:var(--screen-muted);font-size:14px;margin:4px 0 12px}.so-market .so-role-summary strong{color:var(--screen-ink)}.so-market .so-budget{padding:8px 16px!important;margin-bottom:10px}.so-market .so-stat strong{font-size:24px!important}.so-market .so-stat span{font-size:14px}.so-market .so-player-card{padding:12px!important}.so-market .so-player-card h3{font-family:Barlow,sans-serif;font-size:20px!important;line-height:1.2}.so-market .so-player-card .so-country{margin:4px 0}.so-market .so-purchase{padding-top:8px;margin-top:8px}.so-market .so-purchase label{font-size:14px}.so-market .so-purchase select{min-height:36px;padding:5px 8px}.so-market .game-player-height{font-size:16px;margin:6px 0}.so-market .game-player-details{margin-top:6px;padding-top:6px;line-height:1.1}.so-market .so-reason{font-size:14px;line-height:1.15;padding:0;margin:6px 0 0}.so-market .game-owned-list li{padding:8px 0}.so-market .game-page-controls{margin-top:8px}.so-market .so-team-panel{padding:12px!important}.career-tools label{font-size:14px;display:flex;align-items:center;gap:8px}.career-tools select{min-height:34px;padding:4px 8px;margin:0}.so-market .so-player-grid{grid-template-columns:1fr 1fr!important}
@media(max-width:760px){.so-market .so-player-grid{grid-template-columns:1fr!important}.career-tools{justify-content:flex-start;flex-wrap:wrap}.career-tools label{flex:1}.so-market .so-budget{flex-wrap:wrap}.so-market .game-owned-list li{min-height:48px}}
.so-market .so-budget .so-stat{padding:4px!important;min-height:0}.so-market .so-budget .so-stat strong{margin:2px 0;font-size:22px!important}.so-market .so-player-card .game-player-details{padding-top:0;margin-top:4px;margin-bottom:4px;min-height:20px}.so-market .so-player-card .game-player-height{margin:4px 0}.so-market .so-player-card .so-purchase{padding-top:6px;margin-top:4px}.so-market .so-player-card .so-purchase-bottom{margin-top:6px}.so-market .so-player-card .so-country{line-height:1.1}.so-market .so-player-card .so-flag img{height:18px;width:24px}.so-market .so-player-card .so-button{min-height:38px;padding:6px 12px}.so-market .so-actions .so-reason{color:var(--screen-muted)}
.so-market .so-budget{display:grid!important;grid-template-columns:repeat(3,1fr);gap:16px}.so-market .so-budget .so-stat{display:flex!important;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;line-height:1.1}.so-market .so-budget .so-stat>*{margin:0!important}.so-market .so-budget .so-stat strong{line-height:1.1}.so-market .so-budget .so-stat span{line-height:1.1}
@media(max-width:760px){.so-market .so-budget{grid-template-columns:1fr;gap:6px}.so-market .so-budget .so-stat strong{font-size:24px!important}}
.career-footer a{color:var(--screen-muted);font-size:14px}#player-detail a{color:var(--screen-accent)}
.career-practice .practice-game.resolved .practice-coach fieldset,.career-practice .practice-game.resolved .practice-primary{display:none}.career-practice #practice-probability{display:none}.career-practice .practice-game.resolved .practice-coach [data-practice=compare],.career-practice .practice-game.resolved .practice-coach [data-practice=next]{width:100%;margin:8px 0 0}.career-practice .practice-court-wrap:has(.practice-recap:not([hidden])) .practice-court,.career-practice .practice-court-wrap:has(.practice-recap:not([hidden])) .practice-blocks{display:none}.career-practice .practice-recap:not([hidden]){min-height:280px}
@media(min-width:1001px){body:not(.is-career-menu) #app{padding-top:10px;padding-bottom:10px}}

.game-market-policy{position:relative;align-self:end;font-size:13px;color:var(--muted);margin:0 0 6px}.game-market-policy summary{cursor:pointer}.game-market-policy[open] p{position:absolute;z-index:5;max-width:480px;background:#142235;color:#eef3fa;border:1px solid #526077;padding:14px;box-shadow:0 8px 30px #0008;margin:6px 0}.game-market-policy summary:focus-visible{outline:3px solid var(--so-focus-inner);outline-offset:2px;box-shadow:0 0 0 5px var(--so-focus-outer)}
@media(max-width:760px){.room-sideline .room-control-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.room-sideline .room-button{white-space:normal;overflow-wrap:anywhere;min-height:44px}}
@media(max-width:380px){.room-sideline .room-control-group{grid-template-columns:minmax(0,1fr)}}

.career-practice .practice-court:before,.career-practice .practice-court:after{color:#132236;background:#f7f2e7}
.game-team-hub .game-next-match{padding:16px}.game-team-hub .game-fixture-date{margin-bottom:8px}.game-team-hub .game-next-match h2{margin-bottom:10px;font-size:24px}.game-team-hub .game-next-match .so-w-rest-gap{color:var(--screen-muted)}.game-team-hub .so-w-workload{margin:8px 0;background:#122238;color:var(--screen-ink);border-color:var(--screen-line);border-radius:4px}.game-team-hub .so-w-workload>summary{padding:8px 12px;min-height:48px}.game-team-hub .so-w-workload>summary span:first-child{display:block}.game-team-hub .so-w-workload>summary small{display:block;color:var(--screen-muted);font-size:14px}.game-team-hub .so-w-workload>p,.game-team-hub .so-w-workload-actions,.game-team-hub .so-w-workload-actions small{color:var(--screen-muted);font-size:14px}.game-team-hub .so-w-workload-row{background:#172a3b;border-color:var(--screen-line)}.game-team-hub .so-w-workload[open]{max-height:300px;overflow:auto}
@media(min-width:1001px){.game-team-hub .game-hub-layout{grid-template-columns:310px minmax(0,1fr)}body:has(.game-team-hub) #app{padding-top:8px;padding-bottom:8px}}
/* The team-edit action belongs beside the team heading, not on a separate desktop row. */
@media(min-width:1001px){.career-tools:has(+.game-team-hub){position:absolute;top:76px;right:24px;margin:0;z-index:2}}
/* Competition status is a game signal, not a pale information badge. */
.game-team-hub .so-w-table-badges{display:flex;flex-wrap:wrap;gap:4px}.game-team-hub .so-w-table-badges>span,.game-team-hub .so-w-badge{background:#203448;color:#c9d9e7;border:1px solid #4a6579;border-radius:3px;padding:4px 7px;font:600 13px/1.15 Barlow,sans-serif;letter-spacing:.02em;box-shadow:none}.game-team-hub .so-w-badge.is-qualifier{background:#163e3b;color:#8fe4cb;border-color:#468d7d}.game-team-hub .so-w-badge.is-host{background:#3d3020;color:#efd29d;border-color:#9a7946}.game-team-hub .so-w-badge.is-relegation{background:#422735;color:#ffb7c7;border-color:#9d566f}.game-team-hub .so-w-table-badges>span:only-child{max-width:150px}
/* Set-break and substitution workspaces share the same game components. */
.set-preparation,.room-bench-panel{background:#122238;color:var(--screen-ink);padding:12px;border:1px solid var(--screen-line);border-radius:4px}.set-preparation h2{font-family:BarlowCondensed,sans-serif;font-size:23px}.set-unit-grid{gap:8px}.set-unit-grid>div{background:#1b2d42;padding:8px;border-left:2px solid var(--screen-accent)}.set-preparation select,.room-bench-panel select{background:#20344b;color:var(--screen-ink);border:1px solid var(--screen-line);min-height:38px;padding:6px;font-size:14px}.set-preparation button,.room-bench-panel button{background:#20344b;color:var(--screen-ink);border:1px solid var(--screen-line)}.set-preparation>button{background:var(--screen-accent);color:var(--screen-dark);font-weight:800}.set-preparation .game-player-details{font-size:13px;margin-top:4px}.room-tab-panel:has(.set-preparation)>.room-roster{display:none}.room-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px}.room-roster-player{background:#20344b!important;color:var(--screen-ink)!important;min-height:44px!important;padding:6px!important;font-size:14px!important}.room-bench-panel .so-w-bench{background:transparent;padding:8px 0;margin:0;border:0}.room-bench-panel .so-w-bench h3{display:none}.room-bench-panel .so-w-bench-selects{gap:8px}.room-bench-panel .so-w-bench-selects label{font-size:14px}.room-bench-panel .so-w-double-sub{margin:6px 0;padding:8px;border-color:var(--screen-line)}.room-bench-panel p{font-size:14px;margin:6px 0;line-height:1.25}.room-bench-panel .game-console-tabs{flex-wrap:wrap}.room-bench-panel .game-console-tabs button{font-size:14px;padding:6px}.room-bench-panel[data-bench-section=single] .so-w-double-sub,.room-bench-panel[data-bench-section=single] .interruption-panel{display:none}.room-bench-panel:not([data-bench-section=single]) .so-w-bench>:not(.so-w-double-sub){display:none}.room-bench-panel:not([data-bench-section=double]) .so-w-double-sub{display:none}.room-bench-panel[data-bench-section=double] .interruption-panel{display:none}.room-bench-panel[data-bench-section=batch] .libero-replacement,.room-bench-panel[data-bench-section=libero] .batch-substitutions{display:none}.room-bench-panel .interruption-panel{margin:6px 0}.room-bench-panel .interruption-panel details{background:#1b2d42;border-color:var(--screen-line);padding:8px;color:var(--screen-ink)}.room-bench-panel .interruption-panel details>summary{font-size:16px;min-height:34px}
/* A challenged decision occupies its own screen, rather than pushing the match down. */
.review-panel{font-family:Barlow,sans-serif;background:#122238;border-color:var(--screen-line);border-radius:4px;margin:0;padding:16px}.review-panel h2{font-family:BarlowCondensed,sans-serif;text-transform:uppercase}.review-court{background:#0b1726;max-height:300px}.review-zoom{background:#1b2d42;padding:8px;border-left:2px solid var(--screen-accent)}.review-zoom svg{width:130px;height:130px}.review-panel .review-time{font-size:14px}.review-controls .review-primary{background:var(--screen-accent);color:var(--screen-dark);border-color:var(--screen-accent)}
@media(min-width:1001px){.review-panel{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:10px 16px}.review-panel>header{grid-column:1/-1}.review-panel .review-court{grid-column:1;grid-row:2/5;width:100%;height:290px}.review-panel .review-time{grid-column:2;margin:0}.review-panel .review-zoom{grid-column:2;display:block}.review-panel .review-zoom svg{width:100px;height:100px;float:left;margin-right:8px}.review-panel .review-controls{grid-column:1/-1;margin:0}.review-panel>p:last-child{grid-column:1/-1;margin:0}.review-panel>header>p:first-child{font-size:14px}.review-panel>header p{margin:4px 0}.review-panel h2{margin:0}.room-bench-panel .interruption-panel[open]{max-height:320px;overflow:auto}}
@media(max-width:760px){.set-unit-grid{grid-template-columns:1fr 1fr}.room-roster{grid-template-columns:1fr 1fr}.room-bench-panel button,.set-preparation button,.set-preparation select,.room-bench-panel select{min-height:44px}.game-team-hub .so-w-table-badges>span{font-size:13px}}

/* v82: all native selects and enabled substitution actions use explicit ink. */
body select,body select option{background:#15283d;color:#f1f5fa;color-scheme:dark}
body button[data-action="world-substitute"],body button[data-action="batch-submit"],body button[data-action="room-substitute"]{background:#b9f36b;color:#122119;border-color:#b9f36b}
body button:disabled,body select:disabled{background:#293b4c!important;color:#c6d1db!important;opacity:1!important}
.room-final-score{white-space:nowrap}.room-tab{word-break:normal;white-space:nowrap}.room-coach-response{padding:12px;border-left:3px solid #b9f36b;background:#18354a;color:#f1f5fa}
@media(max-width:600px){.is-match .room-court{aspect-ratio:1/2!important;min-height:460px;width:100%!important}.room-tabs{overflow-x:auto;flex-wrap:nowrap}.room-final-score{font-size:56px!important}}

.player-skill-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.player-skill-grid>div{padding:12px;background:#1b344d}.player-skill-grid span,.player-skill-grid small{display:block}.player-skill-grid span{font-size:24px;color:#b9f36b}.player-skill-grid small{font-size:14px;color:#c6d1db}.player-skill-overview p{font-size:14px}@media(max-width:600px){.player-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.so-w-own-grid.is-zones{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr));gap:10px}.so-w-own-grid.is-zones .so-w-actor{min-width:0}.so-w-own-grid .so-w-actor-name{overflow-wrap:anywhere}.room-action-rail .room-next{white-space:normal}

@media(max-width:600px){.career-header{height:auto!important;min-height:110px;flex-wrap:wrap;align-content:center;gap:8px}.career-header nav{width:100%;flex-wrap:nowrap}.game-match-options{position:static!important;margin:8px 0!important}.game-scoreboard .room-team-label{font-size:16px!important;overflow-wrap:normal!important;word-break:normal!important;white-space:nowrap}.game-scoreboard .room-team{min-width:0}.room-points-cluster{gap:6px}}

.room-report-grid button span{display:block;font-family:Barlow,system-ui,sans-serif;font-size:14px;font-weight:400;text-transform:none;margin-top:4px}.game-court-name{overflow-wrap:normal}.room-report-button{background:#b9f36b!important;color:#122119!important;opacity:1!important}

@media(max-width:600px){.room-actor-strip{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:8px!important}.room-actor-strip>strong{overflow-wrap:normal;word-break:normal}.room-actor-strip .room-report-button{grid-column:1/-1;width:100%}.game-player-inspector .player-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Match reward values retain dark ink on their pale score badge. */
.room-summary .room-credit-changes dd{background:#dae99e!important;color:#081018!important;text-shadow:none!important}

/* v88: compact, read-only setter history in the existing pre-match agenda. */
.game-setter-prep{margin:8px 0;padding:0;border:1px solid #35516a;border-radius:7px;background:#122337;color:#edf5ff}.game-setter-prep>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;cursor:pointer;list-style:none}.game-setter-prep>summary::-webkit-details-marker{display:none}.game-setter-prep>summary>span:first-child{display:grid;gap:2px}.game-setter-prep>summary strong{font-size:16px;color:#fff}.game-setter-prep>summary small{font-size:14px;color:#c6d5e3}.game-setter-prep__note,.game-setter-prep__empty{margin:5px 10px 8px;color:#c6d5e3;font-size:14px;line-height:1.35}.game-setter-prep__matches{display:flex;flex-wrap:wrap;gap:5px;margin:6px 10px;padding:0;list-style:none}.game-setter-prep__matches li{padding:3px 7px;border:1px solid #49657d;border-radius:4px;background:#1a3045;color:#f3f7ff;font-size:14px}.game-setter-prep__matches span{color:#aeece2}.game-setter-prep__setters{display:grid;gap:6px;margin:0 8px 8px}.game-setter-prep__setter{display:grid;grid-template-columns:minmax(70px,1fr) auto;gap:4px 8px;padding:7px;border:1px solid #35516a;border-radius:5px;background:#182c40}.game-setter-prep__setter>strong{color:#fff;font-size:15px;overflow-wrap:anywhere}.game-setter-prep__setter>span{color:#c6d5e3;font-size:14px}.game-setter-prep__setter .game-setter-prep__empty,.game-setter-prep__routes{grid-column:1/-1;margin:0}.game-setter-prep__routes{display:grid;gap:4px;padding:0;list-style:none}.game-setter-prep__routes li{display:flex;justify-content:space-between;gap:8px;color:#f3f7ff;font-size:14px}.game-setter-prep__routes li strong{color:#8fe6d8}.game-setter-prep__routes li span{color:#e1eaf3;text-align:right}@media(max-width:680px){.game-setter-prep__setter{grid-template-columns:1fr}.game-setter-prep__routes li{flex-wrap:wrap}}

/* v89: match exposure remains secondary to the selected lineup and readable on every surface. */
.game-team-hub .so-w-player-exposure{font-size:14px;color:#d2dfeb;line-height:1.2}.game-team-hub .so-w-workload-list{max-height:34vh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.game-team-hub .game-squad-reserves li .so-w-player-exposure{display:block;margin-top:4px}.game-team-hub .so-w-actor .so-w-player-exposure{grid-column:1/-1}

.so-w-scout{margin:10px 0 16px;padding:14px;background:#102438;border:1px solid #46627a;border-left:4px solid #57dfce;color:#eef5fc}.so-w-scout-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.so-w-scout h2{margin:0;font-size:22px}.so-w-scout-level{color:#c5d5e4;font-size:14px}.so-w-scout p{margin:8px 0;color:#d6e0eb}.so-w-scout ul{list-style:none;margin:8px 0;padding:0;max-height:180px;overflow:auto}.so-w-scout li{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;padding:8px 0;border-top:1px solid #385268}.so-w-scout li strong{grid-row:span 2;color:#73efdd}.so-w-scout li span{font-size:14px}.so-w-scout button{width:100%;margin-top:6px;min-height:42px}
.so-w-scout-report{margin-top:10px;padding-top:9px;border-top:1px solid #385268}.so-w-scout-subhead{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:4px}.so-w-scout-subhead>strong{min-width:0;overflow-wrap:normal;word-break:normal;color:#73efdd;font-size:16px}.so-w-scout-subhead>span,.so-w-scout-note{min-width:0;overflow-wrap:anywhere;font-size:14px;color:#c5d5e4}.so-w-scout-report ul{max-height:none;margin:5px 0;overflow:visible}.so-w-scout-report li{display:block;padding:6px 0}.so-w-scout-report li strong{display:inline-block;min-width:45px;color:#73efdd}.so-w-scout-report li span{font-size:14px}.so-w-scout-report button{min-height:38px}.so-w-scout-unknown{font-size:14px;margin:4px 0;color:#d6e0eb}
@media(min-width:900px){.so-w-scout{max-height:min(55vh,440px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.so-w-scout>ul{max-height:none;overflow:visible}}
