/* AW 9.7.1: semantic colors, final screen layer. Print/canvas colors stay with their tools. */
@media screen{
html[data-aw-theme]{
 --aw-bg:#F3F7FE;--aw-panel:#FFFFFF;--aw-raised:#F8FAFF;--aw-ink:#182B49;--aw-muted:#526581;--aw-line:#CCD9ED;
 --aw-blue:#2455D6;--aw-link:#2455D6;--aw-on-blue:#FFFFFF;--aw-soft:#EAF1FF;--aw-focus:#2455D6;
 --aw-purple:#6845C4;--aw-purple-soft:#F0EAFF;--aw-teal:#087366;--aw-teal-soft:#E2F5EF;--aw-orange:#9C530D;--aw-orange-soft:#FFF0DB;
 --aw-green:#176744;--aw-green-soft:#E2F5EA;--aw-red:#AC3042;--aw-red-soft:#FDE9ED;--aw-shadow:0 12px 32px #153E900D;
 color-scheme:light;
}
html[data-aw-theme=dark]{
 --aw-bg:#101A2B;--aw-panel:#1A2940;--aw-raised:#22344D;--aw-ink:#EDF3FF;--aw-muted:#B6C7E0;--aw-line:#405878;
 --aw-blue:#3264DC;--aw-link:#A9C8FF;--aw-on-blue:#FFFFFF;--aw-soft:#263F68;--aw-focus:#A9C8FF;
 --aw-purple:#D0BBFF;--aw-purple-soft:#3B2D59;--aw-teal:#83DFCB;--aw-teal-soft:#153E3D;--aw-orange:#FFD09A;--aw-orange-soft:#49351F;
 --aw-green:#9AE4B9;--aw-green-soft:#1C4034;--aw-red:#FFB0BB;--aw-red-soft:#4B2836;--aw-shadow:0 12px 32px #00000024;
 color-scheme:dark;
}
/* Map the established token names, so games and tools keep their own layout. */
html[data-aw-theme]:not([data-aw-theme-page=copybook]){
 --bg:var(--aw-bg);--canvas:var(--aw-bg);--paper:var(--aw-panel);--panel:var(--aw-panel);--card:var(--aw-panel);--white:var(--aw-panel);
 --ink:var(--aw-ink);--text:var(--aw-ink);--muted:var(--aw-muted);--line:var(--aw-line);--stroke:var(--aw-line);--soft:var(--aw-soft);--tint:var(--aw-soft);
 --blue:var(--aw-link);--primary:var(--aw-link);--navy:var(--aw-link);--green:var(--aw-green);--red:var(--aw-red);--success:var(--aw-green);--bad:var(--aw-red);--focus:var(--aw-focus);--shadow:var(--aw-shadow);
 --aw-cloud-canvas:var(--aw-bg);--aw-cloud-paper:var(--aw-panel);--aw-cloud-text:var(--aw-ink);--aw-cloud-subtext:var(--aw-muted);--aw-cloud-mist:var(--aw-soft);--aw-cloud-border:var(--aw-line);
 --aw92-surface:var(--aw-panel);--aw92-bg:var(--aw-bg);--aw92-ink:var(--aw-ink);--aw92-sub:var(--aw-muted);--aw92-edge:var(--aw-line);--aw92-soft:var(--aw-soft);--aw92-blue:var(--aw-link);
 --aw95-paper:var(--aw-bg);--aw95-ink:var(--aw-ink);--aw95-quiet:var(--aw-muted);--aw95-blue:var(--aw-link);--aw95-border:var(--aw-line);
 --aw9-card:var(--aw-panel);--aw9-muted:var(--aw-soft);--aw9-text:var(--aw-ink);--aw9-border:var(--aw-line);--aw9-blue:var(--aw-link);
}
html[data-aw-theme] .aw96-vocab,html[data-aw-theme] .aw97-explorer{--v-ink:var(--aw-ink);--v-muted:var(--aw-muted);--v-line:var(--aw-line);--v-panel:var(--aw-panel);--v-soft:var(--aw-raised)}
html[data-aw-theme] body{background:radial-gradient(ellipse at 0 0,var(--aw-soft),transparent 55%),var(--aw-bg)!important;color:var(--aw-ink)!important}
html[data-aw-theme] :is(.topbar,.game-header,.header,.context-wrap,.site-footer,.game-footer,.v6-mobile-nav,#sidebar){background:var(--aw-panel)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme] :is(.card,.panel,.setup-card,.play-card,.summary-card,.v8-panel,.v8-memory-panel,.lesson-card,.tool-card,.grammar-card,.reading-card,.studycard,.aw96-workspace,.aw96-summary-cell,.aw97-explorer,.aw-cloud-dialog,.auth-card){background:var(--aw-panel)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important;box-shadow:var(--aw-shadow)}
html[data-aw-theme] :is(.muted,.description,.source-note,.aside,.data-status,.breadcrumb,.sectiontop small,.field-label,.game-top .description){color:var(--aw-muted)!important}
html[data-aw-theme] :is(.eyebrow,.hero-eyebrow,.aw96-eyebrow,.section-label,.summary-kicker,.result-number,.aw96-pinyin,.inline-word){color:var(--aw-link)!important}
html[data-aw-theme] :is(a.nav-item,.v6-more-links a,.game-header-links a,.brand,.identity,.aw9-identity a){color:var(--aw-ink)!important}
html[data-aw-theme] :is(.nav-item.active,.v6-mobile-nav .is-active,.aw97-tabs button[aria-current=page],.mode.selected){background:var(--aw-soft)!important;color:var(--aw-link)!important;border-color:var(--aw-link)!important}
html[data-aw-theme] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){background:var(--aw-panel)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme] ::placeholder{color:var(--aw-muted);opacity:1}
html[data-aw-theme] :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--aw-focus)!important;outline-offset:3px}
html[data-aw-theme] :is(.button-primary,.primary-btn,button.primary,.aw96-practice,.listen-btn,.pro-mark){background:linear-gradient(120deg,#2455D6,#543CC4)!important;color:#FFFFFF!important;border-color:#2455D6!important}
html[data-aw-theme] :is(.button-primary,.primary-btn,button.primary,.aw96-practice,.listen-btn) :is(span,small,b){color:inherit!important}
html[data-aw-theme] :is(.button-secondary,.ghost-btn,.secondary,.icon-btn,.theme,.back,.aw96-actions button,.aw97-explorer button,.aw97-tabs button,.token-btn,.built-token){background:var(--aw-raised)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme] :is(.answer-btn,.match-btn,.reading-choice,.game-options button):not(.correct):not(.wrong):not(.matched):not(.is-correct):not(.is-wrong){background:var(--aw-panel)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme] :is(.logo,.brand-mark){background:linear-gradient(135deg,#2455D6,#543CC4)!important;color:#FFFFFF!important}
html[data-aw-theme] .finishicon{background:var(--aw-green-soft)!important;color:var(--aw-green)!important}
html[data-aw-theme][data-aw-theme-page=admin] :is(header.bg-slate-950,button.bg-slate-900){background:linear-gradient(120deg,#153E90,#2455D6)!important;color:#FFFFFF!important}
/* Color carries meaning, with text/symbols preserved. */
html[data-aw-theme] :is(.correct,.is-correct,.matched,.rate.good,.rate.easy,.aw96-status[data-status=ON_TRACK],.aw92-status[data-status=ON_TRACK]){background:var(--aw-green-soft)!important;color:var(--aw-green)!important;border-color:var(--aw-green)!important}
html[data-aw-theme] :is(.wrong,.is-wrong,.rate.again,.aw96-status[data-status=RECOVERY],.aw92-status[data-status=RECOVERY]){background:var(--aw-red-soft)!important;color:var(--aw-red)!important;border-color:var(--aw-red)!important}
html[data-aw-theme] :is(.rate.hard,.aw96-status[data-status=DUE],.aw92-status[data-status=DUE],.aw96-summary-cell.aw96-attention){background:var(--aw-orange-soft)!important;color:var(--aw-orange)!important;border-color:var(--aw-orange)!important}
html[data-aw-theme] :is(.aw96-status[data-status=LEARNING],.aw92-status[data-status=LEARNING]){background:var(--aw-purple-soft)!important;color:var(--aw-purple)!important;border-color:var(--aw-purple)!important}
html[data-aw-theme] :is(.aw96-status[data-status=NEW],.aw96-status[data-status=NEAR_DUE],.chip,.pill,.tier){background:var(--aw-soft)!important;color:var(--aw-link)!important;border-color:var(--aw-line)!important}
html[data-aw-theme] :is(.hero,.learning-note,.notice,.aw96-help,.aw97-example,.reading-paragraph,.locked-content){background:linear-gradient(120deg,var(--aw-soft),var(--aw-panel))!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme] :is(.hero p,.learning-note p,.notice p,.aw96-help p,.aw97-example p,.reading-paragraph p){color:var(--aw-muted)!important}
html[data-aw-theme] :is(.lesson-card,.practice-grid>.card,.tool-grid>.card,.lesson-grid>.card,.aw96-summary-cell){border-top:3px solid var(--aw-link)!important}
html[data-aw-theme] :is(.lesson-grid,.practice-grid,.tool-grid)>:nth-child(3n+2){border-top-color:var(--aw-purple)!important}
html[data-aw-theme] :is(.lesson-grid,.practice-grid,.tool-grid)>:nth-child(3n){border-top-color:var(--aw-teal)!important}
html[data-aw-theme] :is(.aw96-table,.aw96-word,.aw97-table-head,.aw96-pagination,.aw96-options,.aw97-explorer section){border-color:var(--aw-line)!important}
html[data-aw-theme] :is(.aw97-table-head,.aw96-word:hover,.aw97-explorer .aw97-example){background:var(--aw-raised)!important}
/* Tailwind-based legacy/account/admin screens. Explicit surfaces, never a blanket color on all descendants. */
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.bg-white,.bg-slate-50,.bg-slate-100,.bg-slate-200,.bg-gray-50,.bg-gray-100,.bg-gray-200){background-color:var(--aw-panel)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-slate-900,.text-slate-800,.text-slate-700,.text-gray-900,.text-gray-800,.text-gray-700){color:var(--aw-ink)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-slate-600,.text-slate-500,.text-slate-400,.text-gray-600,.text-gray-500,.text-gray-400){color:var(--aw-muted)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.border-slate-100,.border-slate-200,.border-slate-300,.border-gray-200){border-color:var(--aw-line)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-blue-600,.text-blue-700,.text-brand-500,.text-brand-600){color:var(--aw-link)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.bg-blue-50,.bg-blue-100,.bg-brand-50,.bg-brand-100){background-color:var(--aw-soft)!important}
html[data-aw-theme=dark] :is(.aw-cloud-dialog-search,.aw-cloud-dialog-footer,.aw-cloud-entry,.aw-word-example,.exbox,.reading-question,.game-explain){background:var(--aw-raised)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme=dark] :is(.grammar-card,.reading-card) :is(span,p,small){color:var(--aw-muted)!important}
html[data-aw-theme] :is(.aw96-status,.rate,.answer-btn.correct,.answer-btn.wrong) :is(span,b,small){color:inherit!important}
/* Semantic utility colors used by account/admin and legacy learning screens. */
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.bg-red-50,.bg-red-100,.bg-rose-50,.bg-rose-100){background-color:var(--aw-red-soft)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-red-600,.text-red-700,.text-red-800,.text-rose-600,.text-rose-700,.text-rose-800){color:var(--aw-red)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.bg-green-50,.bg-green-100,.bg-emerald-50,.bg-emerald-100){background-color:var(--aw-green-soft)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-green-600,.text-green-700,.text-green-800,.text-emerald-600,.text-emerald-700,.text-emerald-800){color:var(--aw-green)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.bg-amber-50,.bg-amber-100,.bg-orange-50,.bg-orange-100){background-color:var(--aw-orange-soft)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-amber-600,.text-amber-700,.text-orange-600,.text-orange-700){color:var(--aw-orange)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.bg-purple-50,.bg-purple-100,.bg-violet-50,.bg-violet-100){background-color:var(--aw-purple-soft)!important}
html[data-aw-theme=dark]:not([data-aw-theme-page=copybook]) :is(.text-purple-600,.text-purple-700,.text-violet-600,.text-violet-700){color:var(--aw-purple)!important}
/***** Copybook screen controls only; A4 .page and print retain original palette. *****/
html[data-aw-theme-page=copybook] :is(.controls,.topbar){background:var(--aw-panel)!important;color:var(--aw-ink)!important;border-color:var(--aw-line)!important}
html[data-aw-theme-page=copybook] .controls :is(h1,h2,strong,label,.section-title){color:var(--aw-ink)!important}
html[data-aw-theme-page=copybook] :is(.controls small,.preview-head,.topbar-note){color:var(--aw-muted)!important}
.aw-theme-switch{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:44px;min-height:44px;border-radius:14px;background:var(--aw-soft)!important;color:var(--aw-link)!important;border:1px solid var(--aw-line)!important;font:700 22px system-ui;cursor:pointer;margin-inline-start:8px}
.aw-theme-switch-floating{position:fixed;top:max(16px,env(safe-area-inset-top));right:16px;z-index:80;box-shadow:var(--aw-shadow)}
html[data-aw-theme] ::selection{background:var(--aw-link);color:var(--aw-bg)}
}
@media print{html[data-aw-theme]{color-scheme:light!important}.aw-theme-switch{display:none!important}}
