/* AIL readability patch | 2026-11-06
   Original light-theme controls were painted charcoal during migration,
   but some retained black ink. Keep all small text readable on dark panels.
   White = information, red = selected/alerts, green = positive outcomes. */
body[data-ail-new-course]{
 --ail-readable-ink:#f6f6f8;
 --ail-readable-secondary:#d1d3da;
 --ail-readable-muted:#b9bdc5;
 --ail-readable-field:#1b1d21;
 --ail-readable-border:#484b53;
 color-scheme:dark;
}

/* AI Coding: mode switches, sorting tools, answer cards and code editor tabs. */
body[data-ail-course="ai-coding"] :is(.mode-button,.quiz-option,.sort-button,.code-tabs button){
 background:#1b1d21!important;
 color:#f6f6f8!important;
 border-color:#484b53!important;
}
body[data-ail-course="ai-coding"] :is(.mode-button,.quiz-option,.sort-button,.code-tabs button):is(:hover,:focus-visible){
 background:#292c31!important;
 border-color:#FC0701!important;
}
body[data-ail-course="ai-coding"] :is(.mode-button.active,.quiz-option.chosen,.sort-button.used,.code-tabs button.active){
 background:#331317!important;
 color:#fff!important;
 border-color:#FC0701!important;
}
body[data-ail-course="ai-coding"] .quiz-option.correct{background:#14291f!important;border-color:#428b61!important;color:#f2fff6!important;}
body[data-ail-course="ai-coding"] .quiz-option.wrong{background:#34191c!important;border-color:#FC0701!important;color:#fff!important;}
body[data-ail-course="ai-coding"] :is(.mode-button,.quiz-option,.sort-button,.code-tabs button) :is(span,strong,b,small){color:inherit!important;}

/* Strength Lab: body part selectors and planner/weekday chips. */
body[data-ail-course="strength-lab"] :is(.zone-button,.day,.daybtn){
 background:#1b1d21!important;color:#f5f5f7!important;border-color:#484b53!important;
}
body[data-ail-course="strength-lab"] .zone-button.is-on,
body[data-ail-course="strength-lab"] :is(.day.active,.daybtn.active){
 background:#331317!important;color:#fff!important;border-color:#FC0701!important;
}
body[data-ail-course="strength-lab"] .zone-button :is(b,strong,span,small){color:inherit!important;}

/* Private AI Lab: quiz answers, sequencing tasks, local setup examples. */
body[data-ail-course="private-ai-lab"] :is(.test-q button,.sequence button){
 background:#1b1d21!important;color:#f5f5f7!important;border:1px solid #484b53!important;
}
body[data-ail-course="private-ai-lab"] :is(.test-q button,.sequence button):hover{
 background:#292c31!important;border-color:#FC0701!important;
}
body[data-ail-course="private-ai-lab"] :is(.test-q button.selected,.test-q button.chosen,.sequence button.used,.sequence button.selected){
 background:#331317!important;color:#fff!important;border-color:#FC0701!important;
}
body[data-ail-course="private-ai-lab"] :is(.test-q button,.sequence button) :is(b,strong,small,span){color:inherit!important;}

/* Deal Room: reveal and negotiation buttons. */
body[data-ail-course="the-deal-room"] .revealBtns button{
 background:#1b1d21!important;color:#f5f5f7!important;border:1px solid #484b53!important;
}
body[data-ail-course="the-deal-room"] .revealBtns button:hover{
 background:#292c31!important;border-color:#FC0701!important;
}
body[data-ail-course="the-deal-room"] .revealBtns button.picked{
 background:#331317!important;color:#fff!important;border-color:#FC0701!important;
}

/* Trading Simulator: the old pale green box clashes with the newly light text. */
body[data-ail-course="trading-simulator"] :is(.callout.greenbox,.greenbox){
 background:#14291e!important;color:#e6f5eb!important;border-color:#3f7d59!important;
}
body[data-ail-course="trading-simulator"] :is(.callout.greenbox,.greenbox) :is(p,b,strong,small,span){color:#e6f5eb!important;}

/* Consistent legibility for nested text inside selected, choice and feedback surfaces. */
body[data-ail-new-course] :is(.choice-card,.option,.missionTile,.quiz-option,.test-q,.sequence,.zone-button,.revealBtns,.mode-list,.code-tabs,.sort-grid) :is(button,span,b,strong,label,small){
 text-shadow:none;
}
body[data-ail-new-course] :is(.quiz-option,.test-q button,.sequence button,.zone-button,.revealBtns button) :focus-visible{
 outline:2px solid #FC0701!important;outline-offset:2px;
}

/* Small-print readability: the brand red is strongest as a border/large accent,
   but not all ten-pixel labels meet body-text contrast at this exact shade. */
body[data-ail-new-course] :is(.micro,.section-label,.section-kicker,.labelcap,.lesson-number){
 color:#eff0f3!important;
}
body[data-ail-course="strength-lab"] .zones .zone-button.is-on{color:#fff!important;border-color:#FC0701!important;}
body[data-ail-course="strength-lab"] .day.active small{color:#fff!important;}
body[data-ail-course="trading-simulator"] .callout:not(.greenbox) strong{color:#f4f4f6!important;}
body[data-ail-course="trading-simulator"] .loss{color:#ff6460!important;}
body[data-ail-course="the-deal-room"] .nav.active .num{color:#fff!important;}
