/* Final surface contract: themes change accents, never text/background independently. */
body[data-sport]{--ui-bg:#101827;--ui-panel:#1b2b42;--ui-raised:#263b56;--ui-ink:#f2f6ff;--ui-line:#56718f;--ui-accent:#aed4ff;background:var(--ui-bg)!important;color:var(--ui-ink)!important}
body[data-sport=mets],body[data-sport=baseball]{--ui-accent:#ffb77c;--ui-bg:#101a2b;--ui-panel:#192d47}
body[data-sport=basketball]{--ui-accent:#ffc28a;--ui-bg:#201b26;--ui-panel:#332a3c}
body[data-sport=soccer]{--ui-accent:#afe5b7;--ui-bg:#13251f;--ui-panel:#213e32}
body[data-sport=office]{--ui-accent:#bad0ff;--ui-bg:#151d2c;--ui-panel:#233149}
body[data-sport=forest]{--ui-accent:#b7edbd;--ui-bg:#13251c;--ui-panel:#23432f}
body[data-sport=ocean]{--ui-accent:#a1e5f0;--ui-bg:#102631;--ui-panel:#1b3d4b}
body[data-sport] #app main{color:var(--ui-ink)!important;background:transparent!important;padding-bottom:140px!important}
body[data-sport] #app main *{color:var(--ui-ink)!important}
body[data-sport] #app :is(.panel,.plan-card,.question-card,.cage-card,.event-card,.skill-patch,.reward-tile,.roster-toolbar,.next-card,.next-signing,.family-player,.activity-student,.parent-toolbar,.report-metrics>div,.parent-metrics>div,.league-record,.season-ticker,.schedule-row,.game-focus,.focus-drawer,.learning-tiles button,.home-missions button,.tournament-card,.break-card,.study-steps,.arena-stats>div,.live-family-card,.quick-content-entry,.weekly-skill-list,.report-filters,.stat-row,.bracket-round,.family-goal-card,.room-links button,.simple-choices button,.settings-panel){--ui-ink:#f2f6ff;background:var(--ui-panel)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
body[data-sport] #app :is(.profile-bar,.academy-breadcrumb,.page-heading,.section-title,.healthy-note,.room-rule,.roster-toolbar,.sport-switch){--ui-ink:#e3ecfa;color:var(--ui-ink)!important}
body[data-sport] #app :is(.milestone-road button,.card-name,.player-card,.draft-fact,.room-game-card,.quest-node,.teen-skills,.teen-last){--ui-ink:#f2f6ff;background-color:var(--ui-panel)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
body[data-sport] #app :is(.lesson-example,.lesson-hint,.board-question,.passage,.board-passage,.feedback,.quest-feedback,.review-question,.word-result,.report-miss){--ui-ink:#14283e;background:#eef4fc!important;color:var(--ui-ink)!important;border-color:#63809f!important}
body[data-sport] #app :is(input,select,textarea){--ui-ink:#f3f7ff;background:#152339!important;color:var(--ui-ink)!important;border-color:#7390b1!important;max-width:100%;min-width:0}
body[data-sport] #app input::placeholder,body[data-sport] #app textarea::placeholder{color:#c4d3e5!important;opacity:1}
body[data-sport] #app button,body[data-sport] #app .world-nav button{--ui-ink:#f2f6ff;background-color:var(--ui-raised)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
body[data-sport] #app button :is(span,strong,small,b,em,i){color:var(--ui-ink)!important}
body[data-sport] #app button.primary,body[data-sport] #app .world-nav button.active,body[data-sport] #app .top-navigation button[aria-current=page],body[data-sport] #app .parent-tabs button.selected{--ui-ink:#102238;background:var(--ui-accent)!important;color:var(--ui-ink)!important;border-color:var(--ui-accent)!important}
body[data-sport] #app :is(.answer-good,.correct,.answer.correct){--ui-ink:#113a2b;background:#caf2df!important;border-color:#34765c!important}
body[data-sport] #app :is(.answer-miss,.wrong,.answer.wrong){--ui-ink:#542314;background:#ffe2ca!important;border-color:#925936!important}
body[data-sport] #app .board-answers button:disabled,body[data-sport] #app .answer:disabled{opacity:1!important}
body[data-sport] #app :is(.franco-season,.ballpark-hero,.venue-heading,.matchup-screen,.event-poster,.discovery-hero,.quest-banner,.auth-art){--ui-ink:#fff;color:var(--ui-ink)!important}
body[data-sport] #app .franco-season-shade{background:linear-gradient(90deg,rgba(3,16,39,.95),rgba(3,16,39,.72))!important}
body[data-sport] #app :is(.hero-copy,.park-copy,.matchup-content,.venue-copy,.stage-caption){--ui-ink:#fff;background:linear-gradient(90deg,#071727e8,#071727bf)!important;color:#fff!important}
body[data-sport] #app main a{color:var(--ui-accent)!important;text-decoration:underline;text-underline-offset:3px}
body[data-sport] #app :is(.lesson-example,.board-question,.passage,.feedback,.review-question,.report-miss) a{color:#124e87!important}
body[data-sport] #app :is(.world-nav,.parent-tabs,.top-navigation,.world-header){--ui-ink:#f2f6ff;background:var(--ui-bg)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
body[data-sport] #app :is(.world-nav,.top-navigation,.world-header) :is(span,strong,small,a){color:var(--ui-ink)!important}
body[data-sport] #app :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #f1c962!important;outline-offset:4px!important}
body[data-sport] #app :is(.panel,.question-card,.plan-card,.simple-choices button,.parent-toolbar,.report-columns>*,.journey-layout>*,.board-layout>*){min-width:0;overflow-wrap:anywhere}
body[data-sport] #app .parent-tabs button{white-space:normal;overflow-wrap:normal;font-size:14px!important;line-height:1.3}
body[data-sport] #app .world-nav{padding-bottom:max(8px,env(safe-area-inset-bottom));z-index:40}
body[data-sport] #app .journey-map button.here{--ui-ink:#102238;background:#c9efa1!important}
body[data-sport] #app .journey-map button.blocked{--ui-ink:#a9bad0;background:#17273d!important}
@media(max-width:600px){body[data-sport] #app main{padding-bottom:155px!important}body[data-sport] #app .parent-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}body[data-sport] #app .world-nav{width:calc(100% - 16px);left:8px;right:8px;bottom:8px}body[data-sport] #app .simple-season-score{flex-wrap:wrap}.chat-launch{bottom:105px!important}}
@media print{body[data-sport] #app main,body[data-sport] #app main *{--ui-ink:#111;color:#111!important;background:#fff!important}body[data-sport] #app :is(.world-nav,.top-navigation,.world-header){display:none!important}}

body[data-sport] #app :is(.auth-panel,.auth-tabs,.report-table th,.report-table td,.report-focus,.report-metrics>div,.report-filters,.parent-stat,.study-card){--ui-ink:#f2f6ff;background:var(--ui-panel)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
body[data-sport] #app .auth-art{background:linear-gradient(145deg,#182b48,#123b42)!important}

body[data-sport] #app .board-answers button>span{background:transparent!important;color:var(--ui-ink)!important;border-color:currentColor!important}
body[data-sport][data-view=auth] #app main{padding-bottom:40px!important}body[data-sport].academy-focus #app main,body[data-sport].board-focus #app main{padding-bottom:45px!important}
@media(max-width:600px){body[data-sport] #app .auth-art{min-height:0!important;height:auto!important;padding:24px!important}body[data-sport] #app .auth-art h1{font-size:30px!important}body[data-sport] #app .auth-art .auth-grades{display:none}body[data-sport] #app .auth-panel{padding:24px!important}}

body[data-sport] #app .answer>span{background:transparent!important;color:var(--ui-ink)!important;border-color:currentColor!important}
body[data-sport] #app :is(.save-answer-status,.notice,.update-notice,.reading-ready,.question-clock){--ui-ink:#162d43;background:#e7eff9!important;color:var(--ui-ink)!important;border:1px solid #7188a3!important}
body[data-sport] #app .read-aloud{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:130px;max-width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--ui-line);border-radius:10px;white-space:normal;overflow:visible;font-size:16px}
body[data-sport] #app :is(.answer.incorrect,.answer.quest-wrong){--ui-ink:#542314;background:#ffe2ca!important;border-color:#925936!important}
body[data-sport] #app .answer.quest-correct{--ui-ink:#113a2b;background:#caf2df!important;border-color:#34765c!important}

.school-plan-card .primary{width:100%;margin:8px 0}.school-plan-card h2{overflow-wrap:anywhere}.school-progress{font-size:1rem}.school-season-note{margin-top:18px}.school-plan-card progress{width:100%}.school-plan-card .study-notes{margin-top:14px}
body[data-sport] #app .study-notes{--ui-ink:#f2f6ff;background:var(--ui-raised)!important;border:1px solid var(--ui-line);border-radius:12px;padding:14px}body[data-sport] #app .study-notes summary{background:transparent!important;color:var(--ui-ink)!important}
