:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--modern-zen-bg:#f6f4ee;--modern-zen-card:#fffdfa;--modern-zen-primary:#1f8a70;--modern-zen-success:#2e8b57;--modern-zen-text:#23302e;--modern-zen-chip:#ece8dd;--ink-950:#e9e2d8;--ink-900:#fbf9f6;--ink-850:#fff;--ink-800:#f4f1ea;--bg-top:var(--modern-zen-bg);--bg-bottom:var(--modern-zen-bg);--bg-wash-1:#d32f2f00;--bg-wash-2:#2e8b5700;--grid-line:transparent;--line:#2c3e5014;--line-soft:#2c3e500f;--inner-line:#2c3e500a;--paper:var(--modern-zen-card);--paper-strong:var(--modern-zen-card);--nav-bg:var(--modern-zen-bg);--surface-wash:linear-gradient(150deg, #fff0, transparent 34%);--surface-sheen:linear-gradient(180deg, #fffffff5, #fffffff5);--control-bg:var(--modern-zen-chip);--control-hover:#ede8df;--track-bg:#f1f3f5;--ring-track:#2c3e501f;--text:var(--modern-zen-text);--muted:#4b5563;--dim:#687076;--gold:#c08a2d;--gold-soft:#c08a2d1f;--jade:var(--modern-zen-primary);--jade-soft:#1f8a701f;--cinnabar:#c2402f;--cinnabar-soft:#c2402f1c;--porcelain:#3f7d9a;--porcelain-soft:#3f7d9a1a;--primary-start:#23997c;--primary-end:#1b7a62;--primary-text:#fff;--selected-text:var(--modern-zen-text);--danger-text:#b3261e;--logo-text:#fff;--focus-ring:#1f8a705c;--shadow:0 6px 28px #23302e12;--badge-strong-text:#0ca678;--badge-strong-bg:#e6fcf5;--badge-weak-text:#fa5252;--badge-weak-bg:#fff5f5;--radius:14px;--phi-minor:.382fr;--phi-major:.618fr;--line-readable:1.62;--line-compact:1.32;--measure:68ch;--font:"Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-cn:"LXGW WenKai", "Noto Sans SC", "Inter", sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--modern-zen-bg:#141313;--modern-zen-card:#1e1d1b;--modern-zen-primary:#34b89a;--modern-zen-success:#3daa6b;--modern-zen-text:#f2efe7;--modern-zen-chip:#2a2824;--ink-950:#0f0e0d;--ink-900:var(--modern-zen-bg);--ink-850:var(--modern-zen-card);--ink-800:var(--modern-zen-chip);--bg-top:var(--modern-zen-bg);--bg-bottom:var(--modern-zen-bg);--bg-wash-1:#e0525200;--bg-wash-2:#3daa6b00;--grid-line:transparent;--line:#f7f2ea17;--line-soft:#f7f2ea12;--inner-line:#f7f2ea0d;--paper:var(--modern-zen-card);--paper-strong:var(--modern-zen-card);--nav-bg:var(--modern-zen-bg);--surface-wash:linear-gradient(150deg, #fff0, transparent 34%);--surface-sheen:linear-gradient(180deg, #ffffff08, #ffffff08);--control-bg:var(--modern-zen-chip);--control-hover:#34312c;--track-bg:#2f3336;--ring-track:#f7f2ea1f;--text:var(--modern-zen-text);--muted:#d4ccc1;--dim:#afa79d;--gold:#d8b069;--gold-soft:#d8b06929;--jade:var(--modern-zen-primary);--jade-soft:#34b89a29;--cinnabar:#e07a5f;--cinnabar-soft:#e07a5f29;--porcelain:#73a7be;--porcelain-soft:#73a7be24;--primary-start:#34b89a;--primary-end:#259079;--primary-text:#07120f;--selected-text:var(--modern-zen-text);--danger-text:#ffb0a8;--logo-text:#07120f;--focus-ring:#34b89a6b;--shadow:0 8px 30px #0000004d;--badge-strong-text:#7be0a4;--badge-strong-bg:#3daa6b2e;--badge-weak-text:#ff9c9c;--badge-weak-bg:#e052522e}*{box-sizing:border-box}html,body,#root{min-height:100%}html{scroll-behavior:smooth}body{color:var(--text);font-family:var(--font);font-size:16px;line-height:var(--line-readable);letter-spacing:0;background:linear-gradient(135deg, var(--bg-wash-1), transparent 28%), linear-gradient(225deg, var(--bg-wash-2), transparent 30%), repeating-linear-gradient(90deg, var(--grid-line) 0 1px, transparent 1px 72px), linear-gradient(180deg, var(--bg-top), var(--bg-bottom));-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;transition:background .22s,color .22s}button,select{font:inherit;line-height:1.2}input,textarea{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.core-app{grid-template-columns:220px minmax(0,1fr);width:100%;min-height:100vh;display:grid}.core-sidebar{z-index:10;background:var(--nav-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-right:0;flex-direction:column;align-items:stretch;gap:10px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.core-logo{aspect-ratio:1;border-radius:var(--radius);width:46px;color:var(--logo-text);background:linear-gradient(145deg, var(--primary-start), var(--primary-end));font:900 1.5rem var(--font-cn);border:1px solid #ffffff29;place-items:center;margin:0 auto 14px;display:grid;overflow:hidden;box-shadow:0 14px 30px #1f8a7042}.core-logo img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.core-sidebar button{border-radius:var(--radius);width:100%;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:flex-start;align-items:center;gap:10px;padding:0 12px;transition:background .18s,color .18s,border-color .18s,transform .18s;display:flex}.core-sidebar button span{font-size:.86rem;font-weight:800}.core-sidebar button:hover,.core-sidebar button.active{color:var(--jade);background:var(--modern-zen-card);box-shadow:var(--shadow);border-color:#0000}.core-sidebar button.active{color:var(--jade);border-color:color-mix(in srgb, var(--jade) 22%, transparent)}.core-shell{background:var(--modern-zen-bg);min-width:0;min-height:100vh;padding:18px clamp(16px,2.4vw,34px) 34px}.core-topbar{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:16px;min-height:70px;margin-bottom:16px;padding:14px 0 18px;display:flex}.core-topbar h2,.core-hero h1,.core-section-head h1,.question-card h2,.result-card h1,.lesson-start-card h2,.core-focus-card h2{letter-spacing:0;margin:0}.core-topbar h2{font-size:1.56rem;line-height:var(--line-compact);text-wrap:balance;margin-top:4px}.core-topbar>div:first-child{min-width:0}.topbar-actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;display:flex}.theme-toggle{border:1px solid var(--line);border-radius:var(--radius);width:42px;height:42px;color:var(--gold);background:var(--control-bg);cursor:pointer;place-items:center;transition:transform .18s,background .18s,border-color .18s,color .18s;display:inline-grid}.theme-toggle:hover{color:var(--text);background:var(--control-hover);border-color:color-mix(in srgb, var(--gold) 36%, transparent);transform:translateY(-1px)}.core-eyebrow{color:var(--gold);font:800 .72rem var(--font-cn);letter-spacing:.06em;text-transform:uppercase}.core-status{white-space:nowrap;color:var(--jade);background:var(--jade-soft);border:1px solid color-mix(in srgb, var(--jade) 30%, transparent);border-radius:999px;padding:7px 12px;font-size:.78rem;font-weight:800}.core-dashboard,.core-page{flex-direction:column;gap:16px;display:flex}.page-enter{animation:none!important}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.core-card,.core-hero,.level-card,.quiz-type-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-wash), var(--surface-sheen), var(--paper);box-shadow:var(--shadow);transition:border-color .18s,transform .18s,box-shadow .18s,background .18s;position:relative;overflow:hidden}.core-card:hover,.core-hero:hover{border-color:color-mix(in srgb, var(--gold) 24%, transparent)}.core-card:after,.core-hero:after,.level-card:after,.quiz-type-card:after{content:"";border:1px solid var(--inner-line);pointer-events:none;border-radius:5px;position:absolute;inset:8px}.core-hero{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(18px,3vw,34px);min-height:278px;padding:clamp(24px,4vw,46px);display:grid}.core-seal{aspect-ratio:1;border-radius:var(--radius);width:clamp(86px,10vw,130px);color:var(--logo-text);background:linear-gradient(145deg, var(--primary-start), var(--cinnabar));font:900 clamp(3rem, 6vw, 5.4rem) var(--font-cn);border:2px solid #ffedc43d;place-items:center;display:grid;box-shadow:0 24px 48px #7f1d1d59}.core-hero h1{text-wrap:balance;max-width:760px;margin-top:8px;font-size:3.15rem;font-weight:850;line-height:1.08}.core-hero--compact{min-height:210px;padding:clamp(20px,3vw,34px)}.core-hero--compact .core-seal{width:clamp(72px,8vw,104px)}.core-hero--compact h1{max-width:780px;font-size:2.85rem}.core-hero p,.core-section-head p,.lesson-start-card p,.core-focus-card p,.result-card p,.quiz-setup p{max-width:var(--measure);color:var(--muted);line-height:var(--line-readable);text-wrap:pretty;margin:10px 0 0}.core-section-head h1,.lesson-start-card h2,.core-focus-card h2{max-width:var(--measure);text-wrap:balance;font-size:2.1rem;font-weight:850;line-height:1.18}.core-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.btn-primary,.btn-secondary{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:800;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s,opacity .18s;display:inline-flex}.btn-primary{color:var(--primary-text);background:linear-gradient(135deg, var(--primary-start), var(--primary-end));border-color:#ffe4b52e}.btn-secondary{color:var(--text);background:var(--control-bg);border-color:var(--line)}.btn-primary:hover,.btn-secondary:hover,.level-card:hover,.quiz-type-card:hover,.option-grid button:hover{border-color:color-mix(in srgb, var(--gold) 32%, transparent);transform:translateY(-1px)}.btn-primary:disabled,.btn-secondary:disabled,.submit-next:disabled{cursor:not-allowed;opacity:.55;transform:none}.btn-secondary:hover{background:var(--control-hover)}.core-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.core-stat{flex-direction:column;justify-content:space-between;gap:10px;min-height:132px;padding:18px;display:flex}.core-stat:first-child{animation:.26s 40ms both softRise}.core-stat:nth-child(2){animation:.26s 80ms both softRise}.core-stat:nth-child(3){animation:.26s .12s both softRise}.core-stat:nth-child(4){animation:.26s .16s both softRise}@keyframes softRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.core-stat svg{color:var(--gold)}.core-stat span{color:var(--muted);font-size:.78rem;font-weight:800}.core-stat strong{font-size:clamp(1.2rem,2.4vw,1.75rem)}.core-stat--gold{border-color:color-mix(in srgb, var(--gold) 28%, transparent)}.core-stat--jade{border-color:#1fb89147}.core-stat--cinnabar{border-color:color-mix(in srgb, var(--cinnabar) 32%, transparent)}.core-stat--blue{border-color:#8ecae642}.core-focus-card,.core-section-head,.lesson-start-card,.result-card,.question-card,.empty-state,.review-item,.progress-panel,.home-plan-card,.home-ring-card,.home-selector-card,.home-flow-card{padding:clamp(18px,2.6vw,28px)}.analytics-panel{border-radius:var(--radius);background:var(--modern-zen-card);border:0;flex-direction:column;gap:18px;padding:clamp(18px,2.6vw,28px);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000000a}.analytics-panel:after{content:none}.analytics-head,.analytics-bottom,.chart-title-row,.recommendation-box{flex:auto;align-items:center;padding:0}.analytics-head h2,.analytics-main-chart h3,.trend-box h3,.recommendation-box h3{letter-spacing:0;margin:6px 0 0}.analytics-head h2{font-size:clamp(1.55rem,2.35vw,2.15rem);line-height:var(--line-compact);text-wrap:balance}.analytics-head p,.recommendation-box p{max-width:680px;color:var(--muted);margin:8px 0 0;font-size:.875rem;line-height:1.5}.analytics-kpis{grid-template-columns:repeat(4,minmax(82px,1fr));gap:8px;min-width:min(470px,100%);display:grid}.analytics-kpis span{border-left:2px solid var(--line);min-height:54px;color:var(--dim);flex-direction:column;justify-content:center;gap:4px;padding:6px 0 6px 14px;font-size:.74rem;font-weight:900;display:flex}.analytics-kpis strong{color:var(--text);font-size:1.35rem;line-height:1}.readiness-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.readiness-cell{border-radius:var(--radius);background:var(--control-bg);border:1px solid var(--line-soft);gap:6px;padding:12px 14px;display:grid}.readiness-cell span{color:var(--muted);font-size:.74rem;font-weight:850}.readiness-cell strong{color:var(--text);font-size:1.32rem;font-weight:900}.readiness-meter{background:var(--line-soft);border-radius:999px;height:6px;overflow:hidden}.readiness-meter span{background:var(--jade);border-radius:999px;height:100%;display:block}.readiness-cell[data-tone=steady] .readiness-meter span{background:var(--gold)}.readiness-cell[data-tone=weak] .readiness-meter span{background:var(--cinnabar)}@media (width<=720px){.readiness-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.analytics-grid{grid-template-columns:minmax(0,1.618fr) minmax(320px,1fr);gap:18px;display:grid}.analytics-main-chart,.trend-box,.level-box,.recommendation-box,.weak-word-strip{background:0 0;border:0;border-radius:0}.analytics-main-chart,.trend-box,.level-box{padding:0}.chart-title-row{align-items:center;margin-bottom:14px}.chart-title-row>span{color:var(--jade);background:var(--jade-soft);border:0;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:.72rem;font-weight:900}.chart-title-row>.metric-badge--strong{color:var(--badge-strong-text);background:var(--badge-strong-bg)}.chart-title-row>.metric-badge--weak{color:var(--badge-weak-text);background:var(--badge-weak-bg)}.skill-bars{gap:10px;display:grid}.skill-row{grid-template-columns:minmax(108px,.52fr) minmax(120px,1fr) 48px;align-items:center;gap:12px;display:grid}.skill-row strong,.skill-row span,.skill-row b{display:block}.skill-row strong{color:var(--text);font-size:.88rem}.skill-row span{color:var(--dim);margin-top:2px;font-size:.72rem;font-weight:800}.skill-row b{color:var(--muted);text-align:right;font-size:.82rem}.skill-meter{background:var(--track-bg);border:0;border-radius:999px;height:12px;overflow:hidden}.skill-meter span{border-radius:inherit;min-width:4px;height:100%;transition:width .26s;display:block}.skill-meter[data-tone=strong] span,.skill-meter[data-tone=steady] span,.skill-meter[data-tone=weak] span{background:var(--jade)}.analytics-side-stack{gap:14px;display:grid}.trend-chart{width:100%;height:168px;display:block;overflow:visible}.trend-chart .trend-area{fill:url(#trendAreaGradient);stroke:none;transition:opacity .3s}.trend-chart .trend-line{stroke-dasharray:1000;stroke-dashoffset:1000px;animation:1.6s cubic-bezier(.4,0,.2,1) forwards drawLine}@keyframes drawLine{to{stroke-dashoffset:0}}.trend-dot-group{cursor:pointer}.trend-dot{fill:var(--jade);stroke:var(--modern-zen-card);stroke-width:2px;transform-origin:50%;transition:transform .25s cubic-bezier(.34,1.56,.64,1),fill .25s}.trend-dot-ring{fill:var(--jade);fill-opacity:0;stroke:var(--jade);stroke-width:1.5px;stroke-opacity:0;transform-origin:50%;transition:stroke-opacity .25s,fill-opacity .25s,transform .25s cubic-bezier(.34,1.56,.64,1);transform:scale(.6)}.trend-dot-group:hover .trend-dot{fill:var(--ink);transform:scale(1.35)translate(0)}.trend-dot-group:hover .trend-dot-ring{stroke-opacity:.65;fill-opacity:.12;transform:scale(1.4)}.trend-labels{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.trend-labels span{color:var(--dim);text-align:center;font-size:.7rem;font-weight:900}.level-bars-mini{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:8px;height:142px;margin-top:12px;display:grid}.level-bars-mini div{min-width:0;height:100%;color:var(--dim);text-align:center;grid-template-rows:auto minmax(58px,1fr) auto;align-items:end;gap:6px;font-size:.68rem;font-weight:900;display:grid}.level-bars-mini strong{background:var(--cinnabar);border:0;border-radius:999px 999px 4px 4px;align-self:end;width:100%;min-height:8px}.level-bars-mini strong[data-empty=true]{background:var(--track-bg)}.level-bars-mini em{color:var(--muted);font-style:normal}.analytics-bottom{align-items:stretch}.recommendation-box{flex:auto;align-items:center;padding:0}.recommendation-box .btn-primary{flex-shrink:0}.today-queue-panel{border-color:color-mix(in srgb, var(--jade) 24%, var(--line));background:linear-gradient(135deg, var(--jade-soft), transparent 34%), var(--surface-wash), var(--surface-sheen), var(--paper);gap:18px;padding:clamp(18px,2.6vw,28px);display:grid}.today-queue-head,.today-queue-bottom,.today-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.today-queue-head h2{letter-spacing:0;text-wrap:balance;margin:6px 0 0;font-size:2rem;line-height:1.24}.today-queue-head p,.today-actions p,.today-mission p{color:var(--muted);line-height:var(--line-readable);margin:8px 0 0}.today-mode-stack{grid-template-columns:repeat(3,minmax(92px,1fr));gap:8px;min-width:min(420px,100%);display:grid}.today-mode-stack button{border:1px solid var(--line-soft);border-radius:var(--radius);min-height:62px;color:var(--muted);background:var(--control-bg);cursor:pointer;place-items:center;gap:4px;transition:transform .17s,border-color .17s,background .17s,color .17s;display:grid}.today-mode-stack button:hover,.today-mode-stack button.active{color:var(--text);border-color:color-mix(in srgb, var(--gold) 34%, transparent);background:var(--gold-soft);transform:translateY(-1px)}.today-mode-stack strong{font-size:.96rem}.today-mode-stack span{color:var(--dim);font-size:.72rem;font-weight:900}.today-mission-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.behavior-nudge{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);grid-template-columns:minmax(0,.9fr) minmax(220px,.7fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.behavior-nudge h3{letter-spacing:0;margin:4px 0 0;font-size:clamp(1.1rem,2vw,1.45rem)}.behavior-nudge p,.behavior-nudge-meta span,.behavior-nudge-meta small{color:var(--muted);margin:6px 0 0;font-size:.82rem;font-weight:800;line-height:1.5;display:block}.behavior-nudge-meta small{color:var(--dim);font-size:.72rem}.behavior-nudge--fragile,.behavior-nudge--overloaded{border-color:color-mix(in srgb, var(--cinnabar) 34%, transparent);background:var(--cinnabar-soft)}.behavior-nudge--returning,.behavior-nudge--ready_short,.behavior-nudge--habit_building{border-color:color-mix(in srgb, var(--gold) 34%, transparent);background:var(--gold-soft)}.behavior-nudge--ready_deep,.behavior-nudge--maintenance{border-color:color-mix(in srgb, var(--jade) 30%, transparent);background:var(--jade-soft)}.today-mission{border:1px solid var(--line-soft);border-radius:var(--radius);background:color-mix(in srgb, var(--paper-strong) 58%, transparent);flex-direction:column;justify-content:space-between;gap:8px;min-height:132px;padding:14px;display:flex}.today-mission>span{color:var(--dim);text-transform:uppercase;font-size:.74rem;font-weight:900}.today-mission strong{font-size:1.7rem;line-height:1}.today-mission p{font-size:.78rem;font-weight:750}.today-mission--gold strong{color:var(--gold)}.today-mission--jade strong{color:var(--jade)}.today-mission--cinnabar strong{color:var(--cinnabar)}.today-mission--blue strong{color:var(--porcelain)}.today-focus-words{flex-wrap:wrap;flex:auto;gap:8px;min-width:0;display:flex}.today-focus-words span{border-radius:var(--radius);background:var(--control-bg);border:1px solid var(--line-soft);align-content:center;gap:2px;min-width:118px;min-height:56px;padding:8px 12px;display:grid}.today-focus-words strong{color:var(--gold);font:900 1.22rem var(--font-cn)}.today-focus-words small{color:var(--muted);font-size:.72rem;font-weight:850}.today-focus-words .focus-word-rung{color:var(--jade);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.66rem;font-style:normal;font-weight:800;overflow:hidden}.today-focus-words .focus-word-stage{letter-spacing:.01em;white-space:nowrap;flex-direction:column;gap:2px;margin-top:3px;font-size:.64rem;font-style:normal;font-weight:850;display:flex}.focus-word-stage--unknown{color:var(--muted)}.focus-word-stage--recognized{color:#c98a1b}.focus-word-stage--understood{color:#1b8ac9}.focus-word-stage--usable{color:var(--jade)}.focus-word-stage--mastered{color:#b8336a}.focus-word-stage .focus-word-stage-bar{background:var(--line-soft);border-radius:2px;width:100%;height:3px;display:block;overflow:hidden}.focus-word-stage .focus-word-stage-bar>span{background:currentColor;border-radius:2px;height:100%;transition:width .3s;display:block}.today-actions{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);flex:0 min(520px,100%);min-width:0;padding:12px}.today-actions>div:first-child{min-width:0}.today-action-buttons{flex-wrap:wrap;flex:280px;justify-content:flex-end;gap:8px;min-width:0;display:flex}.today-action-buttons .btn-primary,.today-action-buttons .btn-secondary{flex:132px;min-width:min(100%,132px)}@media (width<=980px){.today-queue-head,.today-queue-bottom,.today-actions,.behavior-nudge{flex-direction:column;align-items:stretch}.behavior-nudge{display:flex}.today-mode-stack,.today-mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-actions,.today-action-buttons{width:100%}.today-action-buttons{justify-content:flex-start}}@media (width<=720px){.today-mode-stack,.today-mission-grid{grid-template-columns:1fr}.today-focus-words{grid-template-columns:1fr;display:grid}.today-focus-words span{width:100%}}.weak-word-strip span{border-radius:var(--radius);background:color-mix(in srgb, var(--paper-strong) 58%, transparent);border:1px solid var(--line-soft);grid-template-columns:minmax(42px,auto) minmax(0,1fr) auto;align-items:center;gap:8px;min-height:62px;padding:8px;display:grid}.weak-word-strip strong{color:var(--cinnabar);font:900 1.35rem var(--font-cn)}.weak-word-strip small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:800;overflow:hidden}.weak-word-strip em{color:var(--gold);font-size:.72rem;font-style:normal;font-weight:900}.home-command-grid,.home-workspace{gap:16px;display:grid}.home-command-grid{grid-template-columns:minmax(0,1.618fr) minmax(260px,1fr)}.home-workspace{grid-template-columns:minmax(0,1.618fr) minmax(300px,1fr)}.home-plan-card{flex-direction:column;justify-content:space-between;gap:18px;min-height:230px;display:flex}.home-plan-card h2,.home-selector-card h2,.home-flow-card h2{letter-spacing:0;text-wrap:balance;margin:6px 0 0;font-size:1.7rem;line-height:1.2}.home-plan-card p,.home-ring-card p{color:var(--muted);max-width:620px;margin:8px 0 0;line-height:1.65}.mission-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.mission-strip span{border-radius:var(--radius);background:var(--control-bg);border:1px solid var(--line-soft);min-height:72px;color:var(--dim);flex-direction:column;justify-content:center;gap:4px;padding:12px;font-size:.76rem;font-weight:800;display:flex}.mission-strip strong{color:var(--text);font-size:1.05rem}.home-ring-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:230px;display:flex}.home-ring{width:142px}.section-title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.mini-level-grid,.mini-type-grid{gap:10px;display:grid}.mini-level-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.mini-type-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:10px}.mini-level-grid button,.mini-type-grid button{border-radius:var(--radius);border:1px solid var(--line-soft);min-height:46px;color:var(--muted);background:var(--control-bg);cursor:pointer;font-weight:900;transition:transform .17s,border-color .17s,background .17s,color .17s}.mini-type-grid button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.mini-level-grid button:hover,.mini-type-grid button:hover,.mini-level-grid button.active,.mini-type-grid button.active{color:var(--text);border-color:color-mix(in srgb, var(--gold) 32%, transparent);background:var(--gold-soft)}.mini-level-grid button:hover,.mini-type-grid button:hover{transform:translateY(-1px)}.home-flow-card{min-height:260px}.path-list{flex-direction:column;gap:12px;margin-top:18px;display:flex}.path-list div{border-radius:var(--radius);background:var(--control-bg);border:1px solid var(--line-soft);grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;min-height:58px;padding:10px;display:grid}.path-list strong{aspect-ratio:1;width:34px;color:var(--gold);background:var(--gold-soft);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid}.path-list span{color:var(--muted);font-weight:800;line-height:1.45}.core-focus-card{justify-content:space-between;align-items:center;gap:18px;display:flex}.level-grid,.quiz-type-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.level-card,.quiz-type-card{border-color:var(--line-soft);color:var(--text);cursor:pointer;text-align:left;transition:all .16s}.level-card{min-height:116px;padding:18px}.level-card span,.quiz-type-card span,.question-topline span{color:var(--dim);font-size:.76rem;font-weight:800;display:block}.level-card strong{font:900 2.6rem var(--font-cn);margin-top:8px;display:block}.level-card.active,.quiz-type-card.active{background:linear-gradient(145deg, var(--gold-soft), var(--jade-soft)), var(--paper-strong);border-color:color-mix(in srgb, var(--gold) 38%, transparent)}.quiz-type-card{flex-direction:column;gap:10px;min-height:148px;padding:18px;display:flex}.quiz-type-card svg{color:var(--gold)}.quiz-type-card strong{font-size:1.08rem}.quiz-type-card span{line-height:1.45}.lesson-start-card,.quiz-setup{justify-content:space-between;align-items:center;gap:18px;display:flex}.setup-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}select{min-height:42px;color:var(--text);background:var(--control-bg);border:1px solid var(--line);border-radius:var(--radius);outline:none;padding:0 12px}select:focus{border-color:color-mix(in srgb, var(--gold) 45%, transparent)}input,textarea{color:var(--text);background:var(--control-bg)}.quiz-strategy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.quiz-strategy-card{min-height:132px;color:var(--muted);text-align:left;cursor:pointer;border-color:var(--line-soft);align-content:start;gap:8px;padding:16px;display:grid}.quiz-strategy-card span{color:var(--gold);text-transform:uppercase;font-size:.74rem;font-weight:900}.quiz-strategy-card strong{color:var(--text);text-wrap:balance;font-size:1.28rem;line-height:1.18}.quiz-strategy-card small{color:var(--muted);font-size:.8rem;font-weight:800;line-height:1.5}.quiz-strategy-card.active{color:var(--text);background:linear-gradient(135deg, var(--gold-soft), transparent 42%), var(--surface-sheen), var(--paper-strong);border-color:color-mix(in srgb, var(--gold) 38%, transparent)}.quiz-strategy-card:disabled{cursor:default;opacity:.72}.quiz-strategy-strip{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 14px;padding:9px 11px;display:flex}.quiz-strategy-strip span{color:var(--gold);text-transform:uppercase;font-size:.74rem;font-weight:900}.quiz-strategy-strip small{color:var(--muted);font-size:.76rem;font-weight:850}.review-item small{color:var(--dim);font-size:.76rem;font-weight:850;line-height:1.45}.question-card{will-change:transform, opacity;width:100%;max-width:980px;animation:.24s both questionIn}.question-card.is-advancing{opacity:.96;transform:translateY(-2px)scale(.995)}@keyframes questionIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.empty-state{flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;min-height:300px;display:flex}.empty-state svg{color:var(--gold)}.empty-state h2{margin:0;font-size:clamp(1.5rem,3vw,2.4rem)}.empty-state p{max-width:520px;color:var(--muted);margin:0 0 10px;line-height:1.65}.spin{animation:.9s linear infinite spin}.tab-loading{min-height:240px;color:var(--muted);justify-content:center;align-items:center;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.question-topline{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.question-topline strong{aspect-ratio:1;width:38px;color:var(--gold);background:var(--gold-soft);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid}.quiz-progress{background:var(--track-bg);border:1px solid color-mix(in srgb, var(--gold) 18%, transparent);border-radius:999px;height:8px;margin:-4px 0 20px;overflow:hidden}.quiz-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--gold), var(--jade));height:100%;transition:width .26s;display:block}.audio-panel{border-radius:var(--radius);background:var(--control-bg);border:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;margin:8px 0 18px;padding:14px;display:flex}.voice-meta{border:1px solid var(--line-soft);width:fit-content;color:var(--jade);background:var(--jade-soft);border-radius:999px;margin-top:6px;padding:4px 7px;font-size:.68rem;font-weight:900;line-height:1.2;display:inline-flex}.voice-meta--loading,.voice-meta--fallback,.voice-meta--none,.voice-meta--network{color:var(--gold);background:var(--gold-soft)}.recommendation-metrics{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.recommendation-metrics span{border:1px solid var(--line-soft);min-height:28px;color:var(--gold);background:var(--gold-soft);border-radius:999px;align-items:center;padding:4px 9px;font-size:.72rem;font-weight:900;display:inline-flex}.audio-panel--error{border-color:color-mix(in srgb, var(--danger,#c44) 55%, transparent)}.audio-native{border-radius:10px;width:100%;margin-top:.65rem}.audio-panel--focus{background:linear-gradient(135deg, var(--jade-soft), var(--gold-soft));border-color:color-mix(in srgb, var(--jade) 30%, transparent)}.audio-panel p{color:var(--muted);margin:4px 0 0;font-size:.84rem;font-weight:800}.audio-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.question-card h2{overflow-wrap:anywhere;-webkit-user-select:none;user-select:none;margin-bottom:18px;font-size:1.82rem;line-height:1.22}.option-grid{-webkit-user-select:none;user-select:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.option-grid button{border-radius:var(--radius);border:1px solid var(--line-soft);min-height:68px;color:var(--text);background:var(--control-bg);text-align:left;cursor:pointer;overflow-wrap:anywhere;align-items:center;gap:12px;padding:14px 16px;transition:transform .17s,border-color .17s,background .17s,color .17s,opacity .17s;display:flex}.option-grid button span{width:28px;min-width:28px;height:28px;color:var(--gold);background:var(--gold-soft);border:1px solid var(--line);border-radius:50%;place-items:center;font-weight:900;display:grid}.option-grid button.selected{border-color:color-mix(in srgb, var(--jade) 52%, transparent);background:var(--jade-soft);color:var(--selected-text);transform:translateY(-1px)scale(1.01)}.option-grid button:disabled{cursor:default}.option-grid button.muted-option{opacity:.42}.option-grid button.selected span{color:var(--selected-text);background:color-mix(in srgb, var(--jade) 28%, transparent);border-color:color-mix(in srgb, var(--jade) 52%, transparent)}.auto-next-hint{color:var(--dim);margin:14px 0 0;font-size:.82rem;font-weight:800}.submit-next{margin-top:18px}.result-card{flex-direction:column;justify-content:center;align-items:flex-start;min-height:360px;display:flex}.result-card,.review-item,.progress-panel,.home-plan-card,.home-ring-card,.home-selector-card,.home-flow-card{animation:.26s both softRise}.result-card h1{text-wrap:balance;margin-top:8px;font-size:3.2rem;line-height:1.08}.result-summary{align-items:baseline;gap:10px;margin:22px 0;display:flex}.result-summary strong{color:var(--gold);font-size:clamp(3rem,8vw,6rem);line-height:.9}.result-summary span{color:var(--muted);font-weight:800}.result-actions{flex-wrap:wrap;gap:10px;display:flex}.learning-session-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.session-intro-card{flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;min-height:360px;padding:clamp(20px,3vw,34px);display:flex}.session-intro-card h2{letter-spacing:0;text-wrap:balance;margin:0;font-size:2.6rem;line-height:1.1}.session-intro-card p{max-width:720px;color:var(--muted);margin:0;line-height:1.6}.session-pill-grid,.session-result-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;display:grid}.session-pill-grid span,.session-result-grid span{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 10px;min-height:82px;padding:12px;display:grid}.session-pill-grid svg,.session-result-grid svg{color:var(--gold);grid-row:span 2}.session-pill-grid strong,.session-result-grid strong{color:var(--text);font-size:clamp(1.25rem,2.4vw,1.9rem);line-height:1}.session-pill-grid small,.session-result-grid small{color:#687076;font-size:.74rem;font-weight:900}.learning-question-card--repair{border-color:color-mix(in srgb, var(--cinnabar) 34%, var(--line));background:linear-gradient(135deg, var(--cinnabar-soft), transparent 34%), var(--surface-wash), var(--surface-sheen), var(--paper)}.repair-notice{border:1px solid color-mix(in srgb, var(--cinnabar) 34%, transparent);width:fit-content;color:var(--danger-text);background:var(--cinnabar-soft);border-radius:999px;align-items:center;gap:8px;margin-bottom:14px;padding:7px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.confidence-panel,.feedback-panel{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);margin-top:18px;padding:14px}.confidence-panel p{color:var(--muted);margin:4px 0 0;font-size:.84rem;font-weight:800;line-height:1.5}.confidence-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.confidence-grid button{border:1px solid var(--line-soft);border-radius:var(--radius);min-height:84px;color:var(--muted);background:color-mix(in srgb, var(--paper-strong) 58%, transparent);cursor:pointer;align-content:center;gap:4px;padding:10px;transition:transform .17s,border-color .17s,background .17s,color .17s;display:grid}.confidence-grid button:hover{color:var(--text);border-color:color-mix(in srgb, var(--gold) 34%, transparent);background:var(--gold-soft);transform:translateY(-1px)}.confidence-grid strong{color:var(--gold);font-size:1.35rem;line-height:1}.confidence-grid span,.confidence-grid small{overflow-wrap:anywhere;font-weight:900}.confidence-grid small{color:var(--dim);font-size:.68rem}.feedback-panel{gap:10px;display:grid}.feedback-panel--correct{border-color:color-mix(in srgb, var(--jade) 32%, transparent);background:var(--jade-soft)}.feedback-panel--wrong{border-color:color-mix(in srgb, var(--cinnabar) 34%, transparent);background:var(--cinnabar-soft)}.feedback-head{align-items:center;gap:8px;display:flex}.feedback-head svg{color:var(--gold)}.feedback-head strong{font-size:1rem}.feedback-head span{color:var(--muted);margin-left:auto;font-size:.78rem;font-weight:900}.feedback-panel p,.feedback-panel small{color:var(--muted);margin:0;font-weight:800;line-height:1.55}.feedback-panel small{color:var(--text)}.feedback-panel .btn-primary{width:fit-content}.feedback-error-tag{border-radius:var(--radius);color:var(--text);background:color-mix(in srgb, var(--cinnabar) 14%, transparent);border:1px solid color-mix(in srgb, var(--cinnabar) 30%, transparent);padding:7px 11px;font-size:.82rem;font-style:normal;font-weight:850;line-height:1.5;display:block}.feedback-error-tag strong{color:var(--cinnabar);font-weight:950}.result-narrative{gap:9px;margin:0;padding:0;list-style:none;display:grid}.result-narrative li{color:var(--text);align-items:center;gap:9px;font-weight:820;line-height:1.5;display:flex}.result-narrative li svg{color:var(--gold);flex:none}.result-narrative strong{color:var(--gold);font-weight:950}.word-encode-card{border-radius:var(--radius);background:color-mix(in srgb, var(--gold) 7%, transparent);border:1px solid color-mix(in srgb, var(--gold) 22%, transparent);gap:10px;margin-top:4px;padding:12px 14px;display:grid}.word-encode-hero{align-items:center;gap:14px;display:flex}.word-encode-hanzi{font-family:var(--font-cn);color:var(--text);font-size:2.6rem;font-weight:700;line-height:1}.word-encode-meta{gap:3px;display:grid}.word-encode-pinyin{letter-spacing:.01em;font-size:1.15rem;font-weight:850}.word-encode-meaning{color:var(--muted);font-size:.92rem;font-weight:750}.word-encode-hint{color:var(--text);margin:0;font-size:.84rem;font-weight:700;line-height:1.5}.word-encode-confuse{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.word-encode-confuse small{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.74rem;font-weight:800}.word-encode-confuse span{font-family:var(--font-cn);color:var(--cinnabar);font-size:1.15rem;font-weight:700}.toned-pinyin{flex-wrap:wrap;gap:6px;display:inline-flex}.toned-pinyin .tone-1{color:#d11a2a}.toned-pinyin .tone-2{color:#2e8b57}.toned-pinyin .tone-3{color:#1f6feb}.toned-pinyin .tone-4{color:#8957e5}.toned-pinyin .tone-5{color:var(--muted)}.session-result-card{gap:14px}.chinese-practice-card{width:100%;max-width:980px;padding:clamp(18px,2.6vw,28px)}.character-card-body{grid-template-columns:minmax(132px,1fr) minmax(0,1.618fr);align-items:center;gap:18px;display:grid}.hanzi-hero{border:1px solid var(--line);border-radius:var(--radius);min-height:164px;color:var(--gold);background:var(--gold-soft);font:900 clamp(4rem, 10vw, 7rem) var(--font-cn);place-items:center;line-height:1;display:grid}.character-card-body h2,.practice-stack h2{letter-spacing:0;text-wrap:balance;margin:6px 0 0;font-size:2rem;line-height:1.18}.practice-stack h2 small{color:var(--dim);font-size:.9rem}.character-card-body p,.practice-stack p{color:var(--muted);margin:10px 0 0;line-height:1.6}.metadata-strip{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.metadata-strip span{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);align-content:center;gap:3px;min-width:112px;min-height:58px;padding:9px 11px;display:grid}.metadata-strip strong{color:var(--text);font-weight:900}.metadata-strip small{color:var(--dim);font-size:.72rem;font-weight:900}.practice-stack{gap:12px;display:grid}.tone-option-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tone-option-grid button{border:1px solid var(--line-soft);border-radius:var(--radius);min-height:70px;color:var(--text);background:var(--control-bg);cursor:pointer;font-size:1.1rem;font-weight:900;transition:transform .17s,border-color .17s,background .17s}.tone-option-grid button:hover{border-color:color-mix(in srgb, var(--gold) 34%, transparent);background:var(--gold-soft);transform:translateY(-1px)}.practice-input,.practice-textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--text);background:var(--control-bg);font:inherit;outline:none}.practice-input{min-height:48px;padding:0 13px}.practice-textarea{resize:vertical;min-height:112px;padding:12px 13px;line-height:1.5}.practice-input:focus,.practice-textarea:focus{border-color:color-mix(in srgb, var(--gold) 44%, transparent)}.vocab-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.vocab-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.vocab-count{border:1px solid var(--line-soft);min-height:34px;color:var(--jade);background:var(--jade-soft);border-radius:999px;align-items:center;padding:4px 10px;font-size:.74rem;font-weight:900;display:inline-flex}.search-box,.chat-input-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--control-bg);align-items:center;gap:8px;min-height:42px;padding:0 10px;display:flex}.search-box svg{color:var(--gold);flex-shrink:0}.search-box input,.chat-input-row input,.plan-form input{width:100%;min-width:0;font:inherit;border:0;outline:0}.vocab-workspace,.apply-grid,.plan-grid{grid-template-columns:minmax(300px,1fr) minmax(0,1.618fr);gap:18px;display:grid}.vocab-list-panel{align-content:start;gap:8px;max-height:680px;padding:12px;display:grid;overflow:auto}.vocab-list-panel button{border:1px solid var(--line-soft);border-radius:var(--radius);min-height:68px;color:var(--text);background:var(--control-bg);cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 10px;padding:10px;display:grid}.vocab-list-panel button.active,.vocab-list-panel button:hover{border-color:color-mix(in srgb, var(--gold) 34%, transparent);background:var(--gold-soft)}.vocab-list-panel strong{color:var(--gold);font:900 1.45rem var(--font-cn);grid-row:span 2}.vocab-list-panel span,.vocab-list-panel small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vocab-detail-panel,.apply-panel,.chat-panel,.plan-form,.plan-preview{padding:clamp(18px,2.6vw,28px)}.vocab-detail-main{grid-template-columns:minmax(156px,1fr) minmax(0,1.618fr);align-items:start;gap:18px;display:grid}.vocab-detail-main h2,.plan-preview h2{letter-spacing:0;text-wrap:balance;margin:6px 0 0;font-size:2rem;line-height:1.18}.apply-panel h2{letter-spacing:0;overflow-wrap:anywhere;text-wrap:balance;margin:8px 0 0;font-size:1.86rem;line-height:1.2}.vocab-detail-main p,.apply-panel p,.plan-preview p{color:var(--muted);line-height:1.6}blockquote{border-left:3px solid var(--gold);color:var(--text);background:var(--control-bg);border-radius:var(--radius);margin:14px 0;padding:12px;line-height:1.55}blockquote small{color:var(--muted);margin-top:6px;display:block}.vocab-metadata-strip{margin-top:14px}.radical-strip{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;margin-top:14px;display:grid}.radical-strip span{border-radius:var(--radius);background:var(--control-bg);align-content:center;gap:4px;min-height:62px;padding:10px 12px;display:grid}.radical-strip strong{color:var(--gold);font:900 1.35rem var(--font-cn);line-height:1}.radical-strip small,.radical-note{color:var(--muted);font-size:.82rem;line-height:1.5}.radical-note{margin:10px 0 0}.vocab-example-list{gap:8px;margin-top:14px;display:grid}.vocab-example-list blockquote{margin:0}.handwriting-panel{border-top:1px solid var(--line-soft);gap:10px;margin-top:16px;padding-top:16px;display:grid}.handwriting-panel h3{font:900 1.6rem var(--font-cn);margin:4px 0 0}.handwriting-panel canvas{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(90deg, transparent 49.6%, var(--line-soft) 50%, transparent 50.4%), linear-gradient(0deg, transparent 49.6%, var(--line-soft) 50%, transparent 50.4%), var(--control-bg);touch-action:none;width:100%;height:220px}.target-word-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.target-word-row span{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);gap:2px;min-width:92px;padding:9px 11px;display:grid}.target-word-row strong{color:var(--gold);font:900 1.25rem var(--font-cn)}.target-word-row small{color:var(--dim);font-size:.72rem;font-weight:900}.chat-panel{grid-template-rows:auto minmax(220px,auto) auto;gap:12px;display:grid}.chat-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.chat-log{flex-direction:column;gap:8px;min-height:220px;max-height:360px;display:flex;overflow:auto}.chat-bubble{border:1px solid var(--line-soft);border-radius:var(--radius);max-width:86%;margin:0;padding:10px 12px;line-height:1.5}.chat-bubble--assistant{color:var(--muted);background:var(--control-bg);align-self:flex-start}.chat-bubble--user{color:var(--selected-text);background:var(--jade-soft);border-color:color-mix(in srgb, var(--jade) 28%, transparent);align-self:flex-end}.chat-input-row{padding-right:0}.chat-input-row .btn-primary{min-width:44px;padding:0}.plan-form{gap:12px;display:grid}.plan-form label{color:var(--muted);gap:6px;font-size:.82rem;font-weight:900;display:grid}.plan-form label input{border:1px solid var(--line);border-radius:var(--radius);min-height:42px;padding:0 12px}.plan-form .toggle-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px}.plan-form .toggle-row input{width:18px;min-height:18px}.plan-form-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.plan-notify-hint{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.plan-notify-hint--warn{color:var(--cinnabar);font-weight:700}.vocab-load-error{text-align:center;color:var(--muted);flex-direction:column;gap:10px}.vocab-load-error svg{color:var(--cinnabar)}.result-review{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.progress-panel{grid-template-columns:minmax(164px,1fr) minmax(0,1.618fr);align-items:center;gap:24px;display:grid}.progress-ring{aspect-ratio:1;background:radial-gradient(circle at center, var(--paper-strong) 0 56%, transparent 57%), conic-gradient(var(--jade) var(--score), var(--ring-track) 0);border:1px solid color-mix(in srgb, var(--gold) 22%, transparent);border-radius:50%;align-content:center;place-items:center;width:164px;display:grid;box-shadow:inset 0 0 30px #1fb89114}.progress-ring strong{font-size:1.8rem;line-height:1}.progress-ring span{color:var(--muted);margin-top:6px;font-size:.76rem;font-weight:800}.progress-copy h2{text-wrap:balance;margin:6px 0 0;font-size:1.9rem;line-height:1.2}.progress-copy p{color:var(--muted);max-width:620px;margin:10px 0 0;line-height:1.65}.review-item{flex-direction:column;gap:8px;display:flex}.review-state{border-radius:999px;align-items:center;gap:7px;width:fit-content;padding:5px 9px;font-size:.76rem;font-weight:900;display:inline-flex}.review-item.correct .review-state{color:var(--jade);background:var(--jade-soft);border:1px solid color-mix(in srgb, var(--jade) 30%, transparent)}.review-item.wrong .review-state{color:var(--danger-text);background:var(--cinnabar-soft);border:1px solid color-mix(in srgb, var(--cinnabar) 34%, transparent)}.review-item strong{line-height:1.45}.review-item p{color:var(--muted);margin:0;line-height:1.55}@media (width<=980px){.core-stats-grid,.level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-type-grid,.mini-type-grid,.quiz-strategy-grid,.home-command-grid,.home-workspace{grid-template-columns:1fr}.mini-level-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.core-app{grid-template-columns:72px minmax(0,1fr)}.core-sidebar{align-items:center;padding:14px 10px}.core-sidebar button{justify-content:center;width:46px;padding:0}.core-sidebar button span{display:none}.lesson-start-card,.quiz-setup,.core-focus-card,.learning-session-head{flex-direction:column;align-items:stretch}.setup-controls{justify-content:flex-start}.result-review{grid-template-columns:1fr}.session-pill-grid,.session-result-grid,.confidence-grid,.tone-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-card-body,.progress-panel{grid-template-columns:1fr}.vocab-head{flex-direction:column;align-items:stretch}.vocab-controls{justify-content:flex-start}.vocab-workspace,.apply-grid,.plan-grid,.vocab-detail-main{grid-template-columns:1fr}}@media (width<=720px){.core-app{grid-template-columns:1fr;padding-bottom:68px}.core-sidebar{border-right:none;border-top:1px solid var(--line);flex-direction:row;justify-content:center;gap:4px;width:100%;height:60px;padding:8px 6px;position:fixed;inset:auto 0 0}.core-logo{display:none}.core-sidebar button{flex:1 1 0;width:auto;min-width:0;max-width:48px;height:44px}.core-sidebar button span{display:none}.core-sidebar button.active{box-shadow:0 4px 24px #0000000a}.core-sidebar button:hover{transform:translateY(-1px)}.core-shell{padding:14px 12px 24px}.core-topbar{flex-wrap:wrap;align-items:flex-start;min-height:58px}.topbar-actions{justify-content:space-between;gap:8px;width:100%}.theme-toggle{width:40px;height:40px}.core-hero{grid-template-columns:1fr;min-height:auto}.core-seal{width:82px}.core-stats-grid,.level-grid,.option-grid,.mission-strip,.mini-level-grid,.mini-type-grid,.quiz-strategy-grid,.session-pill-grid,.session-result-grid,.confidence-grid,.tone-option-grid{grid-template-columns:1fr}.feedback-head{flex-direction:column;align-items:flex-start}.feedback-head span{margin-left:0}.section-title-row{flex-direction:column}.audio-panel{flex-direction:column;align-items:stretch}.audio-actions{justify-content:flex-start}}@media (width<=980px){.analytics-head,.analytics-bottom{flex-direction:column}.analytics-kpis{width:100%;min-width:0}.analytics-grid{grid-template-columns:1fr}.weak-word-strip{flex:auto;width:100%}}@media (width<=720px){.analytics-kpis,.weak-word-strip{grid-template-columns:1fr}.chart-title-row,.recommendation-box{flex-direction:column;align-items:stretch;padding:0}.skill-row{grid-template-columns:1fr;gap:6px}.skill-row b{text-align:left}.trend-labels{grid-template-columns:repeat(2,minmax(0,1fr))}.level-bars-mini{height:120px}}.focus-panel{grid-template-columns:minmax(0,1fr) minmax(380px,1.618fr);align-items:center;gap:clamp(18px,3vw,34px);padding:clamp(20px,3vw,34px);display:grid}.focus-panel--first{border-color:color-mix(in srgb, var(--jade) 34%, transparent)}.focus-copy h1{letter-spacing:0;text-wrap:balance;max-width:720px;margin:6px 0 0;font-size:2.75rem;font-weight:850;line-height:1.08}.focus-copy p{max-width:640px;color:var(--muted);margin:10px 0 0;line-height:1.65}.focus-controls{gap:12px;display:grid}.focus-level-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.focus-level-grid button{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);min-height:112px;color:var(--muted);cursor:pointer;align-content:center;place-items:center;gap:4px;transition:transform .17s,border-color .17s,background .17s,color .17s;display:grid}.focus-level-grid button:hover,.focus-level-grid button.active{color:var(--text);border-color:color-mix(in srgb, var(--gold) 36%, transparent);background:var(--gold-soft);transform:translateY(-1px)}.focus-level-grid span{color:var(--dim);font-size:.74rem;font-weight:900}.focus-level-grid strong{font:900 clamp(2.2rem, 4vw, 3.4rem) var(--font-cn);line-height:.92}.learning-mode-toggle{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);gap:4px;width:fit-content;padding:4px;display:inline-flex}.learning-mode-toggle button{border-radius:calc(var(--radius) - 4px);color:var(--muted);cursor:pointer;background:0 0;border:0;padding:8px 16px;font-size:.84rem;font-weight:700;transition:background .17s,color .17s}.learning-mode-toggle button.active{color:var(--text);background:var(--gold-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 36%, transparent)}.topic-grid{flex-wrap:wrap;gap:8px;display:flex}.topic-grid button{border:1px solid var(--line-soft);color:var(--muted);background:var(--control-bg);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:transform .17s,border-color .17s,background .17s,color .17s}.topic-grid button:hover,.topic-grid button.active{color:var(--text);border-color:color-mix(in srgb, var(--gold) 36%, transparent);background:var(--gold-soft);transform:translateY(-1px)}.focus-actions{flex-wrap:wrap;gap:10px;display:flex}.general-check-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.general-result-card{min-height:320px}.analytics-head,.analytics-bottom,.chart-title-row,.recommendation-box{justify-content:space-between;gap:16px;display:flex}.analytics-head,.chart-title-row{align-items:flex-start}.analytics-bottom,.recommendation-box{align-items:center}.recommendation-box{flex:auto;padding:0}.weak-word-strip{flex:0 0 min(420px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;display:grid}@media (width<=980px){.focus-panel,.analytics-grid{grid-template-columns:1fr}.analytics-head,.analytics-bottom,.general-check-head{flex-direction:column;align-items:stretch}.analytics-kpis,.weak-word-strip{flex-basis:auto;width:100%;min-width:0}}@media (width<=720px){.focus-level-grid,.analytics-kpis,.weak-word-strip{grid-template-columns:1fr}.chart-title-row,.recommendation-box{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=720px){.core-topbar h2{font-size:1.28rem}.core-hero h1{font-size:2.18rem}.core-hero--compact h1{font-size:2rem}.core-section-head h1,.lesson-start-card h2,.core-focus-card h2,.today-queue-head h2,.question-card h2,.vocab-detail-main h2,.plan-preview h2,.apply-panel h2,.progress-copy h2{font-size:1.52rem}.result-card h1{text-wrap:balance;margin-top:8px;font-size:3.2rem;line-height:1.08}.session-intro-card h2,.focus-copy h1{font-size:2.05rem}.hide-mobile{display:none!important}.core-eyebrow,.auto-next-hint,.core-section-head p,.empty-state p{display:none}.core-topbar h2{font-size:1.15rem;line-height:1.2}.core-card{padding:14px}.question-card h2{margin-bottom:12px;font-size:1.28rem}.quiz-strategy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quiz-strategy-card{text-align:center;min-height:auto;padding:10px 8px}.quiz-strategy-card span{font-size:.82rem}.quiz-strategy-strip{flex-direction:column;align-items:flex-start}.lesson-start-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.lesson-start-card h2{margin:0;font-size:1.1rem}.quiz-type-card span{display:none}.quiz-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.audio-panel--compact{gap:10px;margin:0 0 14px;padding:12px;display:grid}.audio-play-btn{justify-content:center;width:100%}.audio-error-text{color:var(--cinnabar);margin:0;font-size:.78rem;font-weight:700}.confidence-label{margin:0 0 8px;font-size:.9rem;font-weight:800}.confidence-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.confidence-grid button{min-height:56px;padding:10px 6px}.confidence-grid span,.confidence-grid small,.analytics-side-stack,.weak-word-strip{display:none}.analytics-head h2{font-size:1.2rem}.chart-title-row h3{font-size:1rem}.today-action-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.today-action-buttons .btn-primary{grid-column:1/-1}.focus-actions{gap:8px;display:grid}.focus-actions .btn-primary,.focus-actions .btn-secondary{justify-content:center;width:100%}.setup-controls{grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid}.setup-controls .btn-primary{grid-column:1/-1}.strategy-quiz-setup{gap:12px}.strategy-quiz-setup h1{margin:0;font-size:1.2rem}.repair-notice{padding:8px 10px;font-size:.82rem}.feedback-panel p{font-size:.88rem}.review-item small{display:none}}.auth-gate{--u-void:#040208;--u-card-bg:#080514ad;--u-card-border:#8b5cf652;--u-card-border-active:#06b6d466;--u-violet:#7c3aed;--u-cobalt:#2563eb;--u-cyan:#06b6d4;--u-cyan-hi:#00e5ff;--u-magenta:#ec4899;--u-gold:#ffc24b;--u-text:#f1f5f9;--u-text-soft:#c8dcffd9;--u-label:#c0dbfff2;--u-danger:#ff8fa3;place-items:center;min-height:100dvh;padding:24px 16px;display:grid}:root:not([data-theme=dark]) .auth-gate{--u-void:#12122e;--u-card-bg:#1e1b3ab8;--u-card-border:#8b5cf657;--u-card-border-active:#38bdf86b;--u-violet:#8b5cf6;--u-cobalt:#f59e0b;--u-cyan:#38bdf8;--u-cyan-hi:#38bdf8;--u-magenta:#fb7185}.auth-gate .mythical-art-bg{mix-blend-mode:normal!important;opacity:.7!important;filter:brightness(.9)contrast(1.1)!important;background-image:url(/sky-dome.png)!important;background-position:50%!important;background-size:cover!important}[data-theme=dark] .auth-gate .mythical-art-bg{mix-blend-mode:screen!important;opacity:.55!important;filter:brightness(.7)contrast(1.15)!important;background-image:url(/sky-dome.png)!important}.auth-gate__loading{color:var(--gold);place-items:center;display:grid}.auth-gate__card{gap:20px;width:min(420px,100%);padding:28px 24px;display:grid}.auth-gate__card--glass{gap:22px;width:min(420px,100%);padding:32px 28px;animation:8s ease-in-out infinite glassGlowPulse;display:grid;background:var(--u-card-bg)!important;-webkit-backdrop-filter:blur(25px)saturate(1.8)!important;border:1px solid var(--u-card-border)!important;color:var(--u-text)!important;border-radius:20px!important;box-shadow:0 24px 60px #000c,0 0 40px #7c3aed29,0 0 80px #2563eb14,inset 0 1px 1px #ffffff1f!important}.auth-gate__card--glass .auth-gate__brand h1{text-shadow:0 0 12px #ffffff26;color:#fff!important;font-weight:800!important}.auth-gate__card--glass .auth-gate__brand p{color:var(--u-text-soft)!important}.auth-gate__card--glass .auth-form label{color:var(--u-label)!important;text-transform:uppercase!important;letter-spacing:.08em!important;flex-direction:column!important;gap:6px!important;font-size:.82rem!important;font-weight:700!important;display:flex!important}.auth-gate__card--glass .auth-form input{color:#fff!important;background:#06040f8c!important;border:1px solid #8b5cf652!important;border-radius:12px!important;padding:12px 16px!important;font-size:.95rem!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;box-shadow:inset 0 2px 4px #0006!important}.auth-gate__card--glass .auth-form input:focus{transform:translateY(-1px);border-color:var(--u-cyan)!important;background:#06040fb3!important;box-shadow:0 0 15px #06b6d44d,inset 0 2px 4px #0006!important}.auth-gate__card--glass .auth-form input:focus:not(:focus-visible){outline:none!important}.auth-gate__card--glass .auth-form input:focus-visible{outline:2px solid var(--u-cyan-hi)!important;outline-offset:2px!important}.auth-gate__card--glass .auth-form__submit{background:linear-gradient(135deg, var(--u-violet), var(--u-cobalt))!important;color:#fff!important;text-transform:uppercase!important;letter-spacing:.06em!important;cursor:pointer!important;border:none!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;gap:8px!important;margin-top:10px!important;padding:14px 20px!important;font-size:1rem!important;font-weight:700!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;display:flex!important;box-shadow:0 6px 20px #7c3aed73!important}.auth-gate__card--glass .auth-form__submit:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf6,#3b82f6)!important;transform:translateY(-2px)!important;box-shadow:0 8px 26px #7c3aeda6,0 0 18px #06b6d466!important}.auth-gate__card--glass .auth-form__submit:active:not(:disabled){transform:translateY(0)!important;box-shadow:0 3px 12px #7c3aed66!important}.auth-gate__card--glass .auth-form__submit:disabled{opacity:.6!important;cursor:not-allowed!important}.auth-gate__card--glass .auth-modal__switch{color:#a0c8e6b3!important;margin-top:6px!important}.auth-gate__card--glass .auth-modal__switch button{color:var(--u-cyan-hi)!important;cursor:pointer!important;background:0 0!important;border:none!important;padding:0!important;font-weight:700!important;text-decoration:none!important;transition:all .2s!important}.auth-gate__card--glass .auth-modal__switch button:hover{color:#fff!important;text-shadow:0 0 8px #00e5ffb3!important}.auth-gate__card--glass .auth-form__submit:focus-visible,.auth-gate__card--glass .auth-modal__switch button:focus-visible{outline:2px solid var(--u-cyan-hi)!important;outline-offset:3px!important}.auth-gate__vignette{pointer-events:none;z-index:1;position:absolute;inset:0;background:radial-gradient(circle,#0000 30%,#05030a73 70%,#040208f5 100%)!important}@keyframes glassGlowPulse{0%,to{box-shadow:0 24px 60px #000c,0 0 35px #7c3aed1f,0 0 70px #2563eb0d,inset 0 1px 1px #ffffff1f;border-color:#8b5cf652!important}50%{box-shadow:0 24px 60px #000c,0 0 45px #06b6d42e,0 0 80px #7c3aed14,inset 0 1px 1px #ffffff26;border-color:#06b6d466!important}}@media (prefers-reduced-motion:reduce){.auth-gate__card--glass{animation:none!important}}.auth-gate__brand{text-align:center;justify-items:center;gap:8px;display:grid}.auth-gate__brand img{border-radius:var(--radius);object-fit:cover;width:64px;height:64px}.auth-gate__brand h1{margin:0;font-size:1.35rem}.auth-gate__brand p{color:var(--muted);margin:0;font-size:.9rem}.auth-gate__brand p.auth-gate__slogan{letter-spacing:.03em;background:linear-gradient(120deg, var(--gold), var(--primary-start) 55%, var(--gold));-webkit-text-fill-color:transparent;color:var(--gold);-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:800;line-height:1.3}.auth-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14131373;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.auth-modal{gap:16px;width:min(420px,100%);padding:24px;display:grid}.auth-modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-modal__header h3{margin:0;font-size:1.15rem}.auth-modal__close{background:var(--control-bg);border-radius:var(--radius);cursor:pointer;width:34px;height:34px;color:var(--muted);border:none;place-items:center;display:grid}.auth-form{gap:12px;display:grid}.auth-form label{color:var(--muted);gap:6px;font-size:.88rem;display:grid}.auth-form input{border:1px solid var(--line);border-radius:var(--radius);background:var(--control-bg);color:var(--text);font:inherit;padding:10px 12px}.password-input{display:block;position:relative}.password-input input{width:100%;padding-right:40px}.auth-gate__card--glass .password-input input{padding-right:44px!important}.password-input__toggle{color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-input__toggle:hover{color:var(--text)}.auth-form__error{color:var(--danger-text);margin:0;font-size:.88rem}.auth-gate__card--glass .auth-form__error{color:var(--u-danger)!important}.auth-form__submit{justify-content:center;gap:8px;width:100%}.auth-modal__switch{text-align:center;color:var(--muted);margin:0;font-size:.88rem}.auth-modal__switch button{color:var(--gold);cursor:pointer;font:inherit;background:0 0;border:none;font-weight:600}.auth-form__forgot{text-align:right;margin:-4px 0 0}.auth-form__forgot button{color:var(--gold);cursor:pointer;font:inherit;background:0 0;border:none;font-size:.82rem;font-weight:600}.auth-form__hint{color:var(--muted);margin:0 0 4px;font-size:.88rem;line-height:1.5}.auth-form__sent{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:12px;line-height:1.55;display:flex}.auth-form__sent-icon{color:var(--jade,#3ba776)}.auth-controls{align-items:center;gap:8px;display:flex}.auth-controls--loading{color:var(--muted)}.auth-user{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:.85rem;overflow:hidden}.auth-btn{border:1px solid var(--line);border-radius:var(--radius);background:var(--control-bg);color:var(--text);font:inherit;cursor:pointer;align-items:center;gap:6px;padding:7px 12px;font-size:.85rem;display:inline-flex}.auth-btn--primary{background:var(--gold);color:var(--primary-text);border-color:#0000}.leaderboard-page{gap:16px;display:grid}.leaderboard-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.leaderboard-header h3{align-items:center;gap:8px;margin:0 0 4px;display:flex}.leaderboard-subtitle{color:var(--muted);margin:0;font-size:.88rem}.leaderboard-tabs{background:var(--control-bg);border-radius:var(--radius);gap:6px;padding:4px;display:flex}.leaderboard-tabs button{color:var(--muted);border-radius:calc(var(--radius) - 2px);cursor:pointer;font:inherit;background:0 0;border:none;padding:8px 14px;font-size:.88rem}.leaderboard-tabs button.active{background:var(--paper);color:var(--text);box-shadow:var(--shadow)}.leaderboard-me{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:16px 18px;display:grid}.leaderboard-me span:first-child{color:var(--muted);font-size:.88rem}.leaderboard-optin{color:var(--muted);cursor:pointer;grid-column:1/-1;align-items:center;gap:8px;font-size:.88rem;display:flex}.leaderboard-guest,.leaderboard-empty{color:var(--muted);padding:18px}.leaderboard-loading{color:var(--muted);place-items:center;padding:40px;display:grid}.leaderboard-list{gap:8px;display:grid}.leaderboard-row{grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.leaderboard-row--me{border:1px solid var(--gold-soft);background:var(--gold-soft)}.leaderboard-row__info{gap:2px;display:grid}.leaderboard-row__info span{color:var(--muted);font-size:.82rem}.leaderboard-points{color:var(--gold);font-size:1.1rem}.rank-badge{place-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:grid}.rank-badge--gold{color:#d4a017}.rank-badge--silver{color:#9ca3af}.rank-badge--bronze{color:#b87333}.rank-badge--plain{color:var(--muted)}.profile-page{gap:16px;display:grid}.profile-header h3{align-items:center;gap:8px;margin:0 0 4px;display:flex}.profile-subtitle{color:var(--muted);margin:0;font-size:.88rem}.profile-guest{gap:12px;padding:18px;display:grid}.profile-guest p{color:var(--muted);margin:0}.profile-guest__actions{flex-wrap:wrap;gap:8px;display:flex}.profile-loading{color:var(--muted);place-items:center;padding:40px;display:grid}.profile-streak-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.profile-stat{gap:6px;padding:16px;display:grid}.profile-stat span{color:var(--muted);font-size:.82rem}.profile-stat strong{font-size:1.35rem}.profile-stat--gold svg{color:var(--gold)}.profile-stat--jade svg{color:var(--jade)}.profile-stat--porcelain svg{color:var(--porcelain)}.profile-streak-note{color:var(--muted);margin:0;font-size:.88rem}.profile-streak-note--active{color:var(--jade)}.profile-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.profile-summary-item{gap:4px;padding:14px 16px;display:grid}.profile-summary-item span{color:var(--muted);font-size:.82rem}.profile-summary-item strong{font-size:1.2rem}.profile-titles{gap:12px;display:grid}.profile-titles__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-titles__header h4{align-items:center;gap:8px;margin:0;display:flex}.profile-titles__header span{color:var(--muted);font-size:.85rem}.profile-titles__locked-label{color:var(--dim);margin:0;font-size:.82rem}.title-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.title-card{gap:4px;padding:14px 16px;display:grid}.title-card strong{font-size:.95rem}.title-card span{color:var(--muted);font-size:.82rem;line-height:1.4}.title-card--earned{border:1px solid var(--jade-soft);background:var(--jade-soft)}.title-card--locked{opacity:.72}.account-section{gap:12px;margin-top:12px;padding:16px 18px;display:grid}.account-section__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-section__header h4{align-items:center;gap:8px;margin:0;display:flex}.account-section__edit{min-height:34px;padding:0 12px;font-size:.85rem}.account-info{gap:8px;display:grid}.account-info__row{justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;display:flex}.account-info__row span{color:var(--muted)}.account-form{gap:12px;display:grid}.account-form label{color:var(--muted);gap:6px;font-size:.88rem;display:grid}.account-form input{border:1px solid var(--line);border-radius:var(--radius);background:var(--control-bg);color:var(--text);font:inherit;padding:10px 12px}.account-form__actions{flex-wrap:wrap;gap:8px;display:flex}.account-form__error{color:var(--danger-text);margin:0;font-size:.88rem}.account-form__success{color:var(--jade);margin:0;font-size:.88rem}.account-section--danger{border:1px solid color-mix(in srgb, var(--danger-text) 32%, var(--line))}.account-danger__intro{gap:10px;display:grid}.account-danger__intro p{color:var(--muted);margin:0;font-size:.9rem}.account-danger__warning{color:var(--danger-text);margin:0;font-size:.9rem;line-height:1.5}.btn-danger{border-radius:var(--radius);cursor:pointer;min-height:42px;font:inherit;color:#fff;background:var(--danger-text);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:800;transition:transform .18s,box-shadow .18s,opacity .18s;display:inline-flex}.btn-danger:hover:not(:disabled){box-shadow:0 12px 28px color-mix(in srgb, var(--danger-text) 30%, transparent);transform:translateY(-1px)}.btn-danger:disabled{cursor:not-allowed;opacity:.5;transform:none}@media (width<=760px){.profile-streak-grid,.profile-summary-grid{grid-template-columns:1fr 1fr}}@media (width<=520px){.profile-streak-grid,.profile-summary-grid{grid-template-columns:1fr}}.skeleton{background:linear-gradient(90deg, var(--control-bg) 25%, var(--line-soft) 50%, var(--control-bg) 75%);border-radius:var(--radius);background-size:200% 100%;animation:1.4s ease-in-out infinite skeletonShimmer}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{border:1px solid var(--line);border-radius:var(--radius);min-height:180px;padding:clamp(18px,2.6vw,28px)}.skeleton-line{height:16px;margin-bottom:12px}.skeleton-line:last-child{margin-bottom:0}.skeleton-line--lg{width:70%;height:28px}.skeleton-line--md{width:90%;height:16px}.skeleton-line--sm{width:55%;height:12px}.skeleton-avatar{border-radius:50%;width:46px;height:46px;margin-bottom:14px}.achievement-toast-container{z-index:1000;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;top:18px;right:18px}.achievement-toast{pointer-events:auto;border-radius:var(--radius);background:var(--paper-strong);border:1px solid var(--gold);align-items:flex-start;gap:12px;min-width:280px;max-width:380px;padding:14px 16px;animation:.38s cubic-bezier(.16,1,.3,1) both toastSlideIn;display:flex;box-shadow:0 8px 32px #c08a2d2e}.achievement-toast--exit{animation:.26s ease-in forwards toastSlideOut}@keyframes toastSlideIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.achievement-toast-icon{background:var(--gold-soft);width:42px;height:42px;color:var(--gold);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.achievement-toast-body strong{color:var(--text);font-size:.92rem;display:block}.achievement-toast-body small{color:var(--muted);margin-top:3px;font-size:.78rem;line-height:1.45;display:block}.streak-banner{border-radius:var(--radius);background:linear-gradient(135deg, var(--gold-soft), var(--jade-soft));border:1px solid color-mix(in srgb, var(--gold) 32%, transparent);align-items:center;gap:14px;padding:14px 18px;animation:.26s both softRise;display:flex}.streak-banner-icon{background:var(--gold);color:#fff;border-radius:50%;place-items:center;width:46px;height:46px;font-size:1.2rem;display:grid}.streak-banner-body strong{color:var(--text);font-size:1.05rem;display:block}.streak-banner-body small{color:var(--muted);margin-top:2px;font-size:.82rem;display:block}.confetti-canvas{pointer-events:none;z-index:999;width:100%;height:100%;position:fixed;inset:0}.drag-drop-zone{border:2px dashed var(--line);border-radius:var(--radius);background:var(--control-bg);flex-wrap:wrap;gap:8px;min-height:56px;padding:12px;transition:border-color .18s,background .18s;display:flex}.drag-drop-zone--over{border-color:var(--jade);background:var(--jade-soft)}.drag-chip{background:var(--paper-strong);border:1px solid var(--line);font-family:var(--font-cn);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;padding:6px 12px;font-size:1.05rem;transition:transform .14s,box-shadow .14s;display:inline-flex}.drag-chip:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.drag-chip:active{cursor:grabbing;transform:scale(1.05)}.drag-chip--placed{background:var(--jade-soft);border-color:color-mix(in srgb, var(--jade) 40%, transparent)}.voice-record-btn{border:2px solid var(--cinnabar);background:var(--cinnabar-soft);width:72px;height:72px;color:var(--cinnabar);cursor:pointer;border-radius:50%;place-items:center;transition:transform .17s,box-shadow .17s,border-color .17s;display:grid}.voice-record-btn:hover{box-shadow:0 4px 20px var(--cinnabar-soft);transform:scale(1.06)}.voice-record-btn--recording{border-color:var(--cinnabar);background:var(--cinnabar);color:#fff;animation:1.2s ease-in-out infinite voicePulse}@keyframes voicePulse{0%,to{box-shadow:0 0 #c2402f66}50%{box-shadow:0 0 0 14px #c2402f00}}.voice-feedback{border-radius:var(--radius);background:var(--control-bg);border:1px solid var(--line-soft);margin-top:12px;padding:12px}.voice-feedback--good{border-color:color-mix(in srgb, var(--jade) 36%, transparent);background:var(--jade-soft)}.voice-feedback--needs-work{border-color:color-mix(in srgb, var(--cinnabar) 36%, transparent);background:var(--cinnabar-soft)}.pron-practice,.vchat{gap:16px;animation:.26s both softRise;display:grid}.pron-head h3,.vchat-head h3{letter-spacing:0;text-wrap:balance;margin:0;font-size:1.7rem;line-height:1.2}.pron-sub,.vchat-sub{color:var(--muted);margin:6px 0 0;font-size:.9rem;line-height:1.55}.pron-levels{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.level-button{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--control-bg);min-height:60px;color:var(--muted);cursor:pointer;align-content:center;place-items:center;gap:2px;transition:transform .17s,border-color .17s,background .17s,color .17s,box-shadow .17s;display:grid}.level-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--gold) 32%, transparent);background:var(--gold-soft);color:var(--text);transform:translateY(-1px)}.level-button:disabled{cursor:not-allowed;opacity:.55}.level-button-tag{letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:900}.level-button-num{font:900 1.5rem var(--font-cn);line-height:1}.level-button.active{color:var(--primary-text);background:linear-gradient(135deg, var(--primary-start), var(--primary-end));border-color:#0000;box-shadow:0 10px 24px #1f8a7042}.pron-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);justify-items:center;gap:12px;padding:clamp(20px,3vw,32px);display:grid;position:relative}.pron-hanzi{font:700 clamp(3rem, 8vw, 4.6rem) var(--font-cn);color:var(--text);text-align:center;line-height:1.05}.pron-pinyin{color:var(--jade);font-size:1.2rem;font-weight:850}.pron-meaning{color:var(--muted);text-align:center;font-weight:750}.pron-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.pron-warn,.vchat-warn{color:var(--gold);text-align:center;margin:0;font-size:.82rem;font-weight:800}.pron-wave{justify-content:center;align-items:center;gap:3px;width:100%;max-width:360px;height:48px;display:flex}.pron-wave-bar{background:var(--cinnabar);opacity:.5;border-radius:999px;width:4px;height:20%}.pron-wave.is-active .pron-wave-bar{animation:1s ease-in-out infinite waveBar;animation-delay:calc(var(--bar-index) * 60ms);opacity:1}@keyframes waveBar{0%,to{height:18%}50%{height:92%}}.pron-rings{flex-wrap:wrap;justify-content:center;gap:18px;width:100%;display:flex}.score-ring{justify-items:center;gap:8px;display:grid}.score-ring-dial{border-radius:50%;place-items:center;display:grid}.score-ring-hole{background:var(--paper);border-radius:50%;align-content:center;place-items:center;width:72%;height:72%;display:grid}.score-ring-hole strong{font-size:1.4rem;line-height:1}.score-ring-hole small{color:var(--dim);font-size:.68rem;font-weight:800}.score-ring-label{color:var(--muted);font-size:.78rem;font-weight:850}.pron-scoring-skeleton{justify-items:center;gap:14px;width:100%;display:grid}.pron-result{gap:16px;width:100%;margin-top:6px;display:grid}.pron-result-body{gap:8px;display:grid}.pron-line{color:var(--text);margin:0;line-height:1.5}.pron-line i{color:var(--jade);font-style:normal;font-weight:800}.pron-muted{color:var(--muted);font-size:.84rem}.pron-tip{border-radius:var(--radius);background:var(--gold-soft);border:1px solid color-mix(in srgb, var(--gold) 26%, transparent);color:var(--text);margin:0;padding:10px 12px;font-weight:700;line-height:1.5}.pron-tip--dsp{background:var(--jade-soft);border-color:color-mix(in srgb, var(--jade) 28%, transparent)}.pron-macro{flex-wrap:wrap;gap:8px;margin:4px 0 2px;display:flex}.pron-macro-chip{background:var(--surface-2,#0000000a);border:1px solid color-mix(in srgb, var(--muted) 22%, transparent);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.82rem;font-weight:600}.pron-errs{gap:6px;display:grid}.pron-errs ul{gap:4px;margin:4px 0 0;padding-left:18px;display:grid}.pron-errs li{color:var(--muted);font-size:.88rem;line-height:1.45}.pron-syl--ok{color:var(--jade)}.pron-syl--bad{color:var(--cinnabar)}.pron-empty{gap:14px}.vchat-log{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:280px;max-height:52vh;box-shadow:var(--shadow);flex-direction:column;gap:12px;padding:clamp(14px,2vw,20px);display:flex;overflow-y:auto}.vchat-empty{color:var(--dim);text-align:center;margin:auto;font-weight:700}.chat-row{align-items:flex-end;gap:6px;max-width:86%;display:flex}.chat-row--ai{align-self:flex-start}.chat-row--user{flex-direction:row-reverse;align-self:flex-end}.chat-bubble2{border:1px solid var(--line-soft);border-radius:16px;gap:4px;padding:10px 13px;line-height:1.5;animation:.22s both bubbleIn;display:grid}.chat-bubble2--ai{color:var(--text);background:var(--control-bg);border-bottom-left-radius:5px}.chat-bubble2--user{color:var(--selected-text);background:var(--jade-soft);border-color:color-mix(in srgb, var(--jade) 28%, transparent);border-bottom-right-radius:5px}@keyframes bubbleIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-cn{font-family:var(--font-cn);font-size:1.15rem}.chat-vi{color:var(--muted);font-size:.84rem;font-weight:700}.chat-replay{border:1px solid var(--line);background:var(--control-bg);width:30px;height:30px;color:var(--jade);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:transform .16s,background .16s,color .16s;display:grid}.chat-replay:hover{background:var(--jade-soft);transform:scale(1.08)}.hanzi-tip{cursor:help;border-radius:3px;transition:background .14s,color .14s;position:relative}.hanzi-tip:hover,.hanzi-tip.is-open,.hanzi-tip:focus-visible{background:var(--gold-soft);color:var(--gold);outline:none}.hanzi-pop{z-index:20;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-strong);text-align:center;pointer-events:none;gap:2px;min-width:96px;max-width:220px;padding:8px 10px;animation:.16s both bubbleIn;display:grid;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0000002e}.hanzi-pop:after{content:"";border:6px solid #0000;border-top-color:var(--paper-strong);position:absolute;top:100%;left:50%;transform:translate(-50%)}.hanzi-pop strong{color:var(--jade);font-size:.92rem;font-family:var(--font)}.hanzi-pop small{color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.4}.typing-indicator{align-items:center;gap:5px;padding:2px 0;display:inline-flex}.typing-dot{background:var(--dim);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite typingBlink}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBlink{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.vchat-actions{flex-wrap:wrap;gap:10px;display:flex}.speech-toast{z-index:1000;border-radius:var(--radius);background:var(--paper-strong);border:1px solid color-mix(in srgb, var(--cinnabar) 42%, transparent);max-width:min(360px,100vw - 36px);color:var(--text);align-items:center;gap:12px;padding:12px 14px;font-weight:750;animation:.32s cubic-bezier(.16,1,.3,1) both toastSlideIn;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 10px 30px #0000002e}.speech-toast button{background:var(--control-bg);width:26px;height:26px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.pron-recording,.vchat-recording{animation:1.6s ease-in-out infinite recPulse;background:linear-gradient(135deg, var(--cinnabar), color-mix(in srgb, var(--cinnabar) 80%, #000))!important;box-shadow:0 0 0 0 color-mix(in srgb, var(--cinnabar) 55%, transparent)!important}.pron-recording:hover,.vchat-recording:hover{transform:translateY(-2px)!important}@keyframes recPulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--cinnabar) 50%, transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb, var(--cinnabar) 0%, transparent)}}.pron-result .score-ring{animation:.42s cubic-bezier(.16,1,.3,1) both ringPop}.pron-result .score-ring:first-child{animation-delay:40ms}.pron-result .score-ring:nth-child(2){animation-delay:.12s}.pron-result .score-ring:nth-child(3){animation-delay:.2s}@keyframes ringPop{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.pron-result-body{animation:.32s .22s both softRise}@media (width<=720px){.pron-levels{grid-template-columns:repeat(3,minmax(0,1fr))}.chat-row{max-width:94%}.pron-rings{gap:12px}}@media (prefers-reduced-motion:reduce){.page-enter,.skeleton,.achievement-toast,.drag-chip,.voice-record-btn--recording,.pron-recording,.vchat-recording,.pron-result .score-ring,.pron-result-body,.pron-practice,.vchat,.pron-wave.is-active .pron-wave-bar,.chat-bubble2,.hanzi-pop,.typing-dot,.speech-toast,.core-stat:first-child,.core-stat:nth-child(2),.core-stat:nth-child(3),.core-stat:nth-child(4){animation:none!important}}.admin-page{max-width:1080px;min-height:100dvh;margin:0 auto;padding:24px 20px 64px}.admin-topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;display:flex}.admin-topbar__brand{color:var(--jade);align-items:center;gap:14px;display:flex}.admin-topbar__brand h3{color:var(--text);margin:0;font-size:20px;font-weight:700}.admin-topbar__brand p{color:var(--muted);margin:2px 0 0;font-size:13px}.admin-body{flex-direction:column;gap:24px;display:flex}.admin-section{padding:22px}.admin-section__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.admin-section__header h4{color:var(--text);align-items:center;gap:8px;margin:0;font-size:16px;font-weight:700;display:flex}.admin-section__header-actions{align-items:center;gap:12px;display:flex}.admin-refresh-btn{align-items:center;gap:6px;display:inline-flex}.admin-stat-strip{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;display:grid}.admin-stat{border:1px solid var(--line);border-radius:var(--radius);background:var(--control-bg);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.admin-stat span{color:var(--muted);font-size:12px}.admin-stat strong{font-variant-numeric:tabular-nums;color:var(--text);font-size:26px;font-weight:700;line-height:1.1}.admin-stat--active strong{color:var(--jade)}.admin-stat--locked strong{color:var(--cinnabar)}.admin-stat--online strong{color:var(--gold)}.admin-user-list{flex-direction:column;gap:10px;display:flex}.admin-user-row{border:1px solid var(--line);border-left:3px solid var(--jade);border-radius:var(--radius);background:var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;transition:border-color .2s,opacity .2s,background .2s;display:flex}.admin-user-row--locked{border-left-color:var(--cinnabar);background:var(--cinnabar-soft)}.admin-user-row--busy{opacity:.55;pointer-events:none}.admin-user-info{flex-direction:column;gap:4px;min-width:0;display:flex}.admin-user-name{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.admin-user-name strong{color:var(--text);font-size:15px;font-weight:600}.admin-user-handle{color:var(--muted);font-size:13px}.admin-user-email{color:var(--muted);word-break:break-all;font-size:13px}.admin-user-meta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:2px;display:flex}.admin-user-date{color:var(--dim);font-size:12px}.admin-user-actions{flex-shrink:0;gap:8px;display:flex}.admin-action{align-items:center;gap:6px;min-height:40px;display:inline-flex}.admin-action--unlock{color:var(--jade);border-color:color-mix(in srgb, var(--jade) 40%, transparent)}.admin-badge{border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.admin-badge--active{color:var(--badge-strong-text);background:var(--jade-soft);border-color:color-mix(in srgb, var(--jade) 26%, transparent)}.admin-badge--locked{color:var(--cinnabar);background:var(--cinnabar-soft);border-color:color-mix(in srgb, var(--cinnabar) 30%, transparent)}.admin-badge--online{color:var(--gold);background:color-mix(in srgb, var(--gold) 14%, transparent);border-color:color-mix(in srgb, var(--gold) 32%, transparent)}.admin-badge--online svg{animation:2s ease-in-out infinite admin-online-pulse}@keyframes admin-online-pulse{0%,to{opacity:1}50%{opacity:.45}}.admin-badge--offline{color:var(--dim);background:var(--control-bg);border-color:var(--line)}.admin-badge--offline svg{fill:currentColor;opacity:.6}.admin-user-activity{color:var(--dim);align-items:center;gap:5px;font-size:12px;display:inline-flex}@media (prefers-reduced-motion:reduce){.admin-badge--online svg{animation:none}}.admin-dirty-count{color:var(--gold);background:var(--gold-soft);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.admin-config-form{flex-direction:column;gap:20px;display:flex}.admin-config-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.admin-config-field{border:1px solid var(--line);border-radius:var(--radius);background:var(--control-bg);flex-direction:column;gap:6px;padding:12px;transition:border-color .2s,background .2s;display:flex}.admin-config-field--dirty{border-color:color-mix(in srgb, var(--gold) 50%, transparent);background:var(--gold-soft)}.admin-config-label{color:var(--muted);word-break:break-all;justify-content:space-between;align-items:center;gap:8px;font-family:Fira Code,ui-monospace,monospace;font-size:12px;font-weight:600;display:flex}.admin-field-flag{color:var(--gold);background:var(--gold-soft);border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:11px;font-style:normal;font-weight:600}.admin-config-input{align-items:center;gap:8px;display:flex}.admin-config-input input{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:40px;color:var(--text);border-radius:10px;flex:1;padding:8px 12px;font-family:Fira Code,ui-monospace,monospace;font-size:14px}.admin-config-input input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--jade)}.admin-field-reset{border:1px solid color-mix(in srgb, var(--gold) 36%, transparent);width:34px;height:34px;color:var(--gold);cursor:pointer;background:0 0;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;transition:background .16s;display:inline-flex}.admin-field-reset:hover{background:var(--gold-soft)}.admin-config-actions{flex-wrap:wrap;gap:12px;display:flex}.admin-config-actions .btn-primary,.admin-config-actions .btn-secondary{align-items:center;gap:8px;display:inline-flex}.admin-loading{color:var(--jade);justify-content:center;padding:40px 0;display:flex}.admin-empty{color:var(--muted);flex-direction:column;align-items:center;gap:10px;padding:40px 0;display:flex}.admin-login-card{max-width:420px}@media (width<=720px){.admin-stat-strip,.admin-config-grid{grid-template-columns:1fr}.admin-user-row{flex-direction:column;align-items:stretch}.admin-user-actions{width:100%}.admin-action{flex:1;justify-content:center}}@media (prefers-reduced-motion:reduce){.admin-user-row,.admin-config-field,.admin-config-input input,.admin-field-reset{transition:none!important}}:root{--shadow-color:20, 26, 24;--bg-pattern:url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.184 20c.392-5.33 4.28-9.8 9.86-11.56 3.146-1.01 6.64-1.02 9.77.01 5.56 1.83 9.42 6.27 9.81 11.55h2.02c-.39-6.38-4.88-11.45-11.19-13.52-3.6-1.18-7.66-1.16-11.24-.03-6.28 2-10.74 7.07-11.18 13.52h2.15zM50 20c.39-5.33 4.28-9.8 9.86-11.56 3.14-1.01 6.64-1.02 9.77.01 5.56 1.83 9.42 6.27 9.81 11.55h2.02c-.39-6.38-4.88-11.45-11.19-13.52-3.6-1.18-7.66-1.16-11.24-.03-6.28 2-10.74 7.07-11.18 13.52h2.15zM0 20c.39-5.33 4.28-9.8 9.86-11.56 3.14-1.01 6.64-1.02 9.77.01 5.56 1.83 9.42 6.27 9.81 11.55h2.02c-.39-6.38-4.88-11.45-11.19-13.52-3.6-1.18-7.66-1.16-11.24-.03-6.28 2-10.74 7.07-11.18 13.52h2.15z' fill='%23127a5d' fill-opacity='0.025' fill-rule='evenodd'/%3E%3C/svg%3E");--modern-zen-bg:#f8f6f0!important;--modern-zen-card:#fff!important;--modern-zen-primary:#127a5d!important;--modern-zen-success:#1e6b4e!important;--modern-zen-text:#1a1e1c!important;--modern-zen-chip:#eae5da!important;--shadow-sm:0 2px 8px rgba(var(--shadow-color), .04), 0 1px 2px rgba(var(--shadow-color), .02)!important;--shadow-md:0 8px 24px rgba(var(--shadow-color), .06), 0 2px 8px rgba(var(--shadow-color), .04)!important;--shadow-lg:0 24px 48px rgba(var(--shadow-color), .08), 0 8px 16px rgba(var(--shadow-color), .04)!important;--radius-sm:8px!important;--radius:16px!important;--radius-lg:24px!important;--gold:#d4a359!important;--gold-soft:#d4a3591f!important;--gold-gradient:linear-gradient(135deg, #e3ba78, #d4a359)!important;--jade-gradient:linear-gradient(135deg, #189874, #127a5d)!important;--jade:var(--modern-zen-primary)!important;--jade-soft:#127a5d1f!important;--cinnabar:#c2402f!important;--cinnabar-soft:#c2402f1c!important;--porcelain:#3f7d9a!important;--porcelain-soft:#3f7d9a1a!important;--primary-start:#189874!important;--primary-end:#127a5d!important;--primary-text:#fff!important;--danger-text:#b3261e!important;--logo-text:#fff!important;--focus-ring:#127a5d5c!important;--shadow:0 6px 28px #141a1812!important;--badge-strong-text:#0ca678!important;--badge-strong-bg:#e6fcf5!important;--badge-weak-text:#fa5252!important;--badge-weak-bg:#fff5f5!important;--text:var(--modern-zen-text)!important;--ink:var(--modern-zen-text)!important;--muted:#4b5563!important;--dim:#687076!important;--control-bg:var(--modern-zen-chip)!important;--control-hover:#e5e0d4!important;--track-bg:#f1f3f5!important;--ring-track:#2c3e501f!important;--paper:var(--modern-zen-card)!important;--nav-bg:var(--modern-zen-bg)!important;--line:#2c3e5014!important;--line-soft:#2c3e500f!important;--selected-text:var(--modern-zen-text)!important;--transition-bounce:.5s cubic-bezier(.34, 1.56, .64, 1)!important;--transition-fluid:.4s cubic-bezier(.2, .8, .2, 1)!important;--transition-smooth:.4s cubic-bezier(.16, 1, .3, 1)!important;--transition-snappy:.2s cubic-bezier(.4, 0, .2, 1)!important}[data-theme=dark]{--shadow-color:0, 0, 0;--bg-pattern:url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.184 20c.392-5.33 4.28-9.8 9.86-11.56 3.146-1.01 6.64-1.02 9.77.01 5.56 1.83 9.42 6.27 9.81 11.55h2.02c-.39-6.38-4.88-11.45-11.19-13.52-3.6-1.18-7.66-1.16-11.24-.03-6.28 2-10.74 7.07-11.18 13.52h2.15zM50 20c.39-5.33 4.28-9.8 9.86-11.56 3.14-1.01 6.64-1.02 9.77.01 5.56 1.83 9.42 6.27 9.81 11.55h2.02c-.39-6.38-4.88-11.45-11.19-13.52-3.6-1.18-7.66-1.16-11.24-.03-6.28 2-10.74 7.07-11.18 13.52h2.15zM0 20c.39-5.33 4.28-9.8 9.86-11.56 3.14-1.01 6.64-1.02 9.77.01 5.56 1.83 9.42 6.27 9.81 11.55h2.02c-.39-6.38-4.88-11.45-11.19-13.52-3.6-1.18-7.66-1.16-11.24-.03-6.28 2-10.74 7.07-11.18 13.52h2.15z' fill='%23EBE5DB' fill-opacity='0.015' fill-rule='evenodd'/%3E%3C/svg%3E");--modern-zen-bg:#1a1918!important;--modern-zen-card:#242220!important;--modern-zen-primary:#2dba91!important;--modern-zen-text:#ebe5db!important;--modern-zen-chip:#2e2b27!important;--shadow-sm:0 2px 8px rgba(var(--shadow-color), .2), 0 1px 2px rgba(var(--shadow-color), .1)!important;--shadow-md:0 8px 24px rgba(var(--shadow-color), .3), 0 2px 8px rgba(var(--shadow-color), .2)!important;--shadow-lg:0 24px 48px rgba(var(--shadow-color), .4), 0 8px 16px rgba(var(--shadow-color), .2)!important;--gold:#e8c17a!important;--gold-soft:#e8c17a29!important;--gold-gradient:linear-gradient(135deg, #f2d299, #e8c17a)!important;--jade-gradient:linear-gradient(135deg, #37d6a8, #2dba91)!important;--jade:var(--modern-zen-primary)!important;--jade-soft:#2dba9129!important;--cinnabar:#e07a5f!important;--cinnabar-soft:#e07a5f29!important;--porcelain:#73a7be!important;--porcelain-soft:#73a7be24!important;--primary-start:#37d6a8!important;--primary-end:#2dba91!important;--primary-text:#07120f!important;--danger-text:#ffb0a8!important;--logo-text:#07120f!important;--focus-ring:#2dba916b!important;--shadow:0 8px 30px #0000004d!important;--badge-strong-text:#7be0a4!important;--badge-strong-bg:#3daa6b2e!important;--badge-weak-text:#ff9c9c!important;--badge-weak-bg:#e052522e!important;--text:var(--modern-zen-text)!important;--muted:#d4ccc1!important;--dim:#afa79d!important;--control-bg:var(--modern-zen-chip)!important;--control-hover:#3d3832!important;--track-bg:#2f3336!important;--ring-track:#f7f2ea1f!important;--paper:var(--modern-zen-card)!important;--nav-bg:var(--modern-zen-bg)!important;--line:#f7f2ea17!important;--line-soft:#f7f2ea12!important;--selected-text:var(--modern-zen-text)!important}.core-sidebar{background:var(--modern-zen-card)!important;box-shadow:1px 0 24px rgba(var(--shadow-color), .02)!important;border-right:1px solid #00000008!important;gap:8px!important;padding:24px 16px!important}[data-theme=dark] .core-sidebar{border-right:1px solid #ffffff05!important}.core-logo{border-radius:var(--radius-lg)!important;background:var(--jade-gradient)!important;transition:transform var(--transition-smooth), box-shadow var(--transition-smooth)!important;margin-bottom:24px!important;transform:scale(1)!important;box-shadow:0 8px 24px #127a5d40!important}.core-logo:hover{transform:scale(1.05)translateY(-2px)!important;box-shadow:0 12px 32px #127a5d59!important}.core-sidebar button{border-radius:var(--radius-sm)!important;height:48px!important;color:var(--muted)!important;transition:all var(--transition-bounce)!important;margin-bottom:4px!important;font-weight:600!important;position:relative!important;overflow:hidden!important}.core-sidebar button:active{transform:scale(.96)!important}.core-sidebar button:before{content:""!important;background:var(--modern-zen-primary)!important;transform-origin:50%!important;width:3px!important;transition:transform var(--transition-snappy)!important;border-radius:0 4px 4px 0!important;position:absolute!important;top:0!important;bottom:0!important;left:0!important;transform:scaleY(0)!important}.core-sidebar button:hover{background:rgba(var(--shadow-color), .03)!important;color:var(--modern-zen-text)!important;transform:translate(4px)!important}.core-sidebar button.active{color:var(--modern-zen-primary)!important;box-shadow:none!important;background:#127a5d0f!important;border:none!important;font-weight:700!important}[data-theme=dark] .core-sidebar button.active{background:#2dba911a!important}.core-sidebar button.active:before{transform:scaleY(1)!important}.core-card,.analytics-panel,.today-queue-panel,.result-card{background-color:var(--modern-zen-card)!important;background-image:var(--bg-pattern)!important;border:1px solid rgba(var(--shadow-color), .04)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow-md)!important;transition:transform var(--transition-bounce), box-shadow var(--transition-smooth), border-color var(--transition-smooth)!important}[data-theme=dark] .core-card,[data-theme=dark] .analytics-panel,[data-theme=dark] .today-queue-panel{border:1px solid #ffffff08!important}.core-card:hover,.analytics-panel:hover{box-shadow:var(--shadow-lg)!important;border-color:rgba(var(--shadow-color), .08)!important;transform:translateY(-4px)scale(1.01)!important}.core-card:active,.analytics-panel:active{box-shadow:var(--shadow-sm)!important}[data-theme=dark] .core-card:hover{border-color:#ffffff0f!important}.core-card:after,.level-card:after,.quiz-type-card:after{display:none!important}.btn-primary{background:var(--jade-gradient)!important;color:#fff!important;letter-spacing:.02em!important;transition:all var(--transition-bounce)!important;border:none!important;border-radius:999px!important;padding:0 24px!important;font-weight:600!important;box-shadow:0 4px 12px #127a5d33!important}.btn-primary:hover{transform:translateY(-2px)scale(1.02)!important;box-shadow:0 8px 24px #127a5d4d!important}.btn-primary:active{transform:scale(.95)!important;box-shadow:0 2px 8px #127a5d66!important}.btn-secondary{color:var(--modern-zen-text)!important;border:1px solid rgba(var(--shadow-color), .1)!important;transition:all var(--transition-bounce)!important;background:0 0!important;border-radius:999px!important;padding:0 24px!important;font-weight:600!important}.btn-secondary:hover{background:rgba(var(--shadow-color), .03)!important;border-color:rgba(var(--shadow-color), .2)!important;transform:translateY(-2px)scale(1.02)!important}.btn-secondary:active{transform:scale(.95)!important}.core-topbar{border-bottom:1px solid rgba(var(--shadow-color), .04)!important;margin-bottom:24px!important;padding-bottom:20px!important}[data-theme=dark] .core-topbar{border-bottom:1px solid #ffffff0a!important}.core-topbar h2{letter-spacing:-.02em!important;background:var(--jade-gradient)!important;-webkit-text-fill-color:transparent!important;-webkit-background-clip:text!important;font-weight:800!important}.theme-toggle{background:rgba(var(--shadow-color), .03)!important;color:var(--modern-zen-text)!important;border:1px solid #0000!important;border-radius:50%!important}.theme-toggle:hover{background:rgba(var(--shadow-color), .06)!important;transform:rotate(15deg)scale(1.1)!important}.theme-toggle:active{transform:rotate(0)scale(.9)!important}h1,h2,h3{letter-spacing:-.01em!important}.core-stats-grid>*{animation:fadeUp var(--transition-smooth) backwards!important}.core-stats-grid>:first-child{animation-delay:50ms!important}.core-stats-grid>:nth-child(2){animation-delay:.1s!important}.core-stats-grid>:nth-child(3){animation-delay:.15s!important}.core-stats-grid>:nth-child(4){animation-delay:.2s!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.focus-panel,.today-queue-panel{padding:32px!important}.focus-copy h1{margin-bottom:12px!important;font-size:2.5rem!important;font-weight:800!important}.learning-mode-toggle{background:rgba(var(--shadow-color), .03)!important;border-radius:999px!important;padding:4px!important;display:inline-flex!important}.learning-mode-toggle button{color:var(--muted)!important;background:0 0!important;border:none!important;border-radius:999px!important;padding:8px 24px!important;font-weight:600!important}.learning-mode-toggle button.active{background:var(--modern-zen-card)!important;color:var(--modern-zen-text)!important;box-shadow:var(--shadow-sm)!important}.option-grid{gap:12px!important;display:grid!important}.option-grid button{border:2px solid rgba(var(--shadow-color), .06)!important;border-radius:var(--radius-lg)!important;transition:all var(--transition-bounce)!important;background:var(--modern-zen-card)!important;cursor:pointer!important;color:var(--modern-zen-text)!important;align-items:center!important;gap:16px!important;padding:16px 24px!important;font-size:1.1rem!important;font-weight:600!important;display:flex!important}.option-grid button>span:not(.clickable-text){background:rgba(var(--shadow-color), .04)!important;border-radius:50%!important;flex:none!important;justify-content:center!important;align-items:center!important;width:32px!important;height:32px!important;font-size:.9rem!important;font-weight:700!important;display:flex!important}.option-grid button>.clickable-text{place-items:initial!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important;background:0 0!important;border:0!important;border-radius:0!important;flex:auto!important;width:auto!important;min-width:0!important;height:auto!important;display:inline!important}.option-grid button .tap-char{place-items:initial!important;background:0 0!important;border-radius:0!important;width:auto!important;min-width:0!important;height:auto!important;display:inline!important}.option-grid button .tap-char.has-dict{border-bottom:1px dashed var(--line)!important}.option-grid button:hover{border-color:var(--modern-zen-primary)!important;background:#127a5d05!important;transform:translateY(-2px)scale(1.01)!important;box-shadow:0 4px 12px #127a5d14!important}.option-grid button:active{transform:scale(.98)!important}.option-grid button.selected{border-color:var(--modern-zen-primary)!important;background:#127a5d0d!important}.learning-question-card h2{font-size:2.2rem!important;font-family:var(--font-cn)!important;text-align:center!important;color:var(--modern-zen-text)!important;margin:40px 0!important;font-weight:700!important;line-height:1.2!important}.pinyin-container .pinyin{font-size:1.5rem!important;font-weight:500!important}.core-stat{background:var(--modern-zen-card)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow-md)!important;border:none!important;padding:24px!important;position:relative!important;overflow:hidden!important}.core-stat:before{content:""!important;background:var(--jade-gradient)!important;opacity:0!important;height:4px!important;transition:opacity var(--transition-snappy)!important;position:absolute!important;top:0!important;left:0!important;right:0!important}.core-stat:hover:before{opacity:1!important}.core-stat--gold:before{background:var(--gold-gradient)!important}.core-stat--blue:before{background:linear-gradient(135deg,#73a7be,#3f7d9a)!important}.core-stat--cinnabar:before{background:linear-gradient(135deg,#e07a5f,#c2402f)!important}.core-stat:hover svg{transition:transform var(--transition-snappy)!important;transform:scale(1.1)rotate(5deg)!important}.core-dashboard{gap:24px!important}.sidebar-brand{align-items:center;gap:12px;margin-bottom:32px;padding:0 8px;display:flex}.sidebar-brand .core-logo{width:40px!important;height:40px!important;margin:0!important;font-size:1.5rem!important;box-shadow:0 4px 12px #127a5d33!important}.brand-text{flex-direction:column;display:flex}.brand-text strong{letter-spacing:-.02em;color:var(--modern-zen-text);font-size:1.1rem;font-weight:800;line-height:1}.brand-text span{color:var(--modern-zen-primary);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;font-size:.75rem;font-weight:600}.sidebar-nav{flex-direction:column;gap:24px;display:flex}.nav-group{flex-direction:column;gap:4px;display:flex}.nav-group-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px;padding-left:12px;font-size:.7rem;font-weight:800}.premium-topbar{justify-content:space-between;align-items:center;padding:8px 0 24px;display:flex}.topbar-title-stack{flex-direction:column;gap:4px;display:flex}.topbar-subtitle{color:var(--muted);font-size:.85rem;font-weight:500;margin:0!important}.premium-content-area{animation:fadeUp var(--transition-smooth)}.premium-card{position:relative;overflow:hidden;background-color:var(--modern-zen-card)!important;background-image:var(--bg-pattern)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-md)!important;border:1px solid rgba(var(--shadow-color), .05)!important;transition:all var(--transition-smooth)!important;padding:32px!important}.premium-card:before{content:""!important;background:var(--jade-gradient)!important;transform-origin:0!important;height:4px!important;transition:transform var(--transition-smooth)!important;position:absolute!important;top:0!important;left:0!important;right:0!important;transform:scaleX(0)!important}.premium-card:hover:before{transform:scaleX(1)!important}.focus-panel{flex-direction:column!important;gap:24px!important;display:flex!important}.focus-copy h1{letter-spacing:-.03em!important;color:var(--modern-zen-text)!important;margin-bottom:8px!important;font-size:2.75rem!important;font-weight:800!important}.topic-grid,.focus-level-grid{flex-wrap:wrap!important;gap:12px!important;display:flex!important}.topic-grid button,.focus-level-grid button{border:2px solid rgba(var(--shadow-color), .08)!important;border-radius:var(--radius-lg)!important;color:var(--modern-zen-text)!important;transition:all var(--transition-snappy)!important;cursor:pointer!important;background:0 0!important;padding:12px 24px!important;font-weight:600!important}.topic-grid button:hover,.focus-level-grid button:hover{border-color:var(--modern-zen-primary)!important;background:#127a5d05!important;transform:translateY(-2px)!important}.topic-grid button.active,.focus-level-grid button.active{background:var(--jade-gradient)!important;color:#fff!important;border-color:#0000!important;box-shadow:0 8px 24px #127a5d40!important}.focus-actions{gap:16px!important;margin-top:16px!important;display:flex!important}.quiz-container{width:100%;max-width:800px;margin:0 auto}.learning-question-card{flex-direction:column;gap:32px;display:flex;position:relative;border-radius:var(--radius-lg)!important;box-shadow:0 16px 48px rgba(var(--shadow-color), .06), 0 4px 16px rgba(var(--shadow-color), .03)!important;background-color:var(--modern-zen-card)!important;background-image:var(--bg-pattern)!important;border:none!important;padding:40px!important;overflow:visible!important}.question-topline{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;margin-bottom:-16px;font-size:.85rem;font-weight:700;display:flex}.quiz-progress{background:rgba(var(--shadow-color), .04)!important;border-radius:999px!important;height:6px!important;overflow:hidden!important}.quiz-progress span{background:var(--jade-gradient)!important;border-radius:999px!important;transition:width .6s cubic-bezier(.16,1,.3,1)!important}.learning-question-card h2{text-align:center;color:var(--modern-zen-text)!important;font-size:2.2rem!important;font-weight:800!important;font-family:var(--font-cn), var(--font)!important;margin:24px 0!important;line-height:1.25!important}.learning-question-card h2.prompt--passage{overflow-wrap:anywhere;word-break:break-word;-webkit-overflow-scrolling:touch;max-height:42vh;overflow-y:auto;text-align:left!important;white-space:normal!important;max-width:100%!important;margin:16px 0!important;font-size:1.35rem!important;font-weight:600!important;line-height:1.7!important}.learning-question-card h2.cloze-prompt{overflow-wrap:anywhere;word-break:break-word;white-space:normal!important;margin:18px 0!important;font-size:1.5rem!important;font-weight:700!important;line-height:1.6!important}.learning-question-card h2.cloze-prompt .cloze-blank{height:1em}.option-grid{grid-template-columns:1fr!important;gap:16px!important;display:grid!important}@media (width>=768px){.option-grid{grid-template-columns:1fr 1fr!important}}.option-grid button{background:var(--modern-zen-bg)!important;border-radius:var(--radius-lg)!important;color:var(--modern-zen-text)!important;transition:all var(--transition-smooth)!important;box-shadow:0 4px 12px rgba(var(--shadow-color), .02)!important;border:2px solid #0000!important;align-items:center!important;gap:16px!important;padding:20px 24px!important;font-size:1.1rem!important;font-weight:600!important;display:flex!important}.option-grid button>span:not(.clickable-text){background:rgba(var(--shadow-color), .04)!important;width:36px!important;height:36px!important;color:var(--muted)!important;transition:all var(--transition-snappy)!important;border-radius:50%!important;flex:none!important;justify-content:center!important;align-items:center!important;font-weight:700!important;display:flex!important}.option-grid button .clickable-text{font-size:1.6rem!important;font-family:var(--font-cn), var(--font)!important;text-align:left!important;line-height:1.5!important}.option-grid button:not(:disabled):hover{box-shadow:0 12px 24px rgba(var(--shadow-color), .06)!important;border-color:rgba(var(--shadow-color), .1)!important;background:var(--modern-zen-card)!important;transform:translateY(-4px)!important}.option-grid button.selected{border-color:var(--modern-zen-primary)!important;background:#127a5d0a!important;transform:translateY(-2px)!important;box-shadow:0 8px 24px #127a5d1a!important}.option-grid button.selected>span:not(.clickable-text){background:var(--jade-gradient)!important;color:#fff!important}.option-grid button.option-correct{border-color:var(--modern-zen-primary)!important;background:#127a5d14!important;box-shadow:0 8px 24px #127a5d1f!important}.option-grid button.option-correct>span:not(.clickable-text){background:var(--modern-zen-primary)!important;color:#fff!important}.option-grid button.option-wrong{background:#c2402f14!important;border-color:#c2402f!important;box-shadow:0 8px 24px #c2402f1f!important}.option-grid button.option-wrong>span:not(.clickable-text){color:#fff!important;background:#c2402f!important}.cloze-blank{border-bottom:3px solid rgba(var(--shadow-color), .2);vertical-align:bottom;min-width:60px;height:1.2em;color:var(--modern-zen-primary);text-align:center;margin:0 8px;transition:all .3s;display:inline-block}.cloze-blank.filled{border-bottom-color:var(--modern-zen-primary);font-weight:800;animation:.4s ease-out pulse-anim}.drag-drop-area{flex-direction:column;gap:20px;width:100%;display:flex}.drag-drop-prompt{flex-direction:column;gap:6px;display:flex}.drag-drop-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:.92rem;font-weight:600}.drag-drop-hint-vi{color:var(--text);opacity:.78;margin:0;font-size:1rem;font-style:italic}.drag-answer-zone{border-radius:var(--radius);border:2px dashed rgba(var(--shadow-color,0 0 0), .18);background:rgba(var(--shadow-color,0 0 0), .02);flex-wrap:wrap;align-items:center;gap:6px 0;min-height:64px;padding:14px 18px;transition:border-color .2s,background .2s;display:flex}.drag-answer-zone:has(.drag-chip--selected){border-color:color-mix(in srgb, var(--modern-zen-primary,#127a5d) 40%, transparent);background:#127a5d0a}.drag-hint{color:var(--muted);font-size:.92rem;font-style:italic}.drag-source-zone{flex-wrap:wrap;align-items:center;gap:6px 0;padding:4px 0;display:flex}.drag-slash{color:var(--muted);-webkit-user-select:none;user-select:none;padding:0 8px;font-size:1.1rem;font-weight:300;transition:opacity .2s}.drag-slash--faded{opacity:.3}.drag-chip{border:1.5px solid rgba(var(--shadow-color,0 0 0), .14);background:var(--modern-zen-card,#fff);color:var(--text);font-size:1.15rem;font-family:var(--font-cn,serif);cursor:pointer;border-radius:8px;align-items:center;padding:8px 16px;font-weight:500;line-height:1.3;transition:all .16s;display:inline-flex}.drag-chip--available:hover{border-color:var(--modern-zen-primary,#127a5d);background:#127a5d12;transform:translateY(-2px);box-shadow:0 4px 12px #127a5d26}.drag-chip--available:active{transform:translateY(0)}.drag-chip--selected{background:var(--jade-soft,#127a5d1a);border-color:var(--modern-zen-primary,#127a5d);color:var(--modern-zen-primary,#127a5d);font-weight:600}.drag-chip--selected:hover{border-color:var(--cinnabar,#c2402f);color:var(--cinnabar,#c2402f);background:#c2402f14;transform:translateY(-1px)}.drag-chip--used{opacity:.28;cursor:not-allowed;transform:none!important}.drag-drop-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.btn-ghost{border-radius:var(--radius);border:1.5px solid rgba(var(--shadow-color,0 0 0), .18);color:var(--muted);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:8px 16px;font-size:.9rem;transition:all .16s;display:inline-flex}.btn-ghost:hover:not(:disabled){background:rgba(var(--shadow-color,0 0 0), .05);color:var(--text);border-color:rgba(var(--shadow-color,0 0 0), .3)}.btn-ghost:disabled{opacity:.4;pointer-events:none}.drag-reset-btn{padding:6px 14px;font-size:.88rem}.voice-area{flex-direction:column;align-items:center;gap:16px;padding:16px 0;display:flex}.voice-word-hero{font-family:var(--font-cn);color:var(--text);font-size:3.5rem;font-weight:900;line-height:1.2}.voice-pinyin{font-size:1.2rem}.voice-meaning{color:var(--muted);font-size:1rem}.voice-rating-grid{grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:360px;display:grid}.voice-rating-btn{border-radius:var(--radius-sm);border:1.5px solid rgba(var(--shadow-color), .12);background:var(--modern-zen-card);color:var(--text);cursor:pointer;transition:all var(--transition-snappy);padding:12px 16px;font-size:.95rem;font-weight:600}.voice-rating-btn:hover{border-color:var(--modern-zen-primary);background:#127a5d0d}.voice-rating-btn--done{background:var(--jade-soft);border-color:var(--modern-zen-primary);color:var(--modern-zen-primary)}.daily-progress-ring{animation:fadeUp var(--transition-smooth);flex-shrink:0;margin-right:16px}.daily-progress-ring svg{display:block}.recent-words-grid{border-top:1px solid rgba(var(--shadow-color), .05);margin-top:16px;padding-top:16px}.recent-chips{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.recent-word-chip{background:var(--modern-zen-bg);border:1px solid rgba(var(--shadow-color), .08);box-shadow:0 2px 4px rgba(var(--shadow-color), .02);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-width:64px;padding:8px 12px;display:inline-flex}.recent-word-chip strong{color:var(--ink);font-family:Noto Sans SC,sans-serif;font-size:1.25rem;line-height:1.2}.confidence-panel{animation:.3s ease-out forwards fadeUp;background:var(--modern-zen-bg)!important;border-radius:var(--radius-lg)!important;margin-top:16px!important;padding:24px!important}.confidence-panel p{text-align:center!important;color:var(--modern-zen-text)!important;margin-bottom:16px!important;font-weight:700!important}.confidence-grid{gap:12px!important;display:flex!important}.confidence-grid button{background:var(--modern-zen-card)!important;border:1px solid rgba(var(--shadow-color), .05)!important;border-radius:var(--radius)!important;transition:all var(--transition-snappy)!important;flex-direction:column!important;flex:1!important;align-items:center!important;gap:4px!important;padding:16px!important;display:flex!important}.confidence-grid button:hover{border-color:var(--modern-zen-primary)!important;background:#127a5d05!important;transform:translateY(-2px)!important}.confidence-grid button strong{color:var(--modern-zen-primary)!important;font-size:1.5rem!important;font-weight:800!important}.confidence-grid button span{font-size:.9rem!important;font-weight:600!important}.feedback-panel{border-radius:var(--radius-lg)!important;margin-top:16px!important;padding:32px!important;animation:.4s cubic-bezier(.16,1,.3,1) forwards fadeUp!important}.feedback-panel--correct{background:#127a5d0f!important;border:1px solid #127a5d1a!important}.feedback-panel--wrong{background:#c2402f0f!important;border:1px solid #c2402f1a!important}.feedback-head{align-items:center!important;gap:12px!important;margin-bottom:16px!important;font-size:1.25rem!important;font-weight:800!important;display:flex!important}.feedback-panel--correct .feedback-head{color:var(--modern-zen-success)!important}.feedback-panel--wrong .feedback-head{color:#c2402f!important}.tone-pinyin-group{flex-wrap:wrap;gap:4px;display:inline-flex}.pinyin-syllable.tone-1{color:#e74c3c!important}.pinyin-syllable.tone-2{color:#e67e22!important}.pinyin-syllable.tone-3{color:#27ae60!important}.pinyin-syllable.tone-4{color:#2980b9!important}.pinyin-syllable.tone-0{color:var(--muted)!important}.feedback-panel button.btn-primary{background:var(--modern-zen-text)!important;width:100%!important;color:var(--modern-zen-bg)!important;border-radius:var(--radius-lg)!important;margin-top:24px!important;padding:16px!important;font-size:1.1rem!important}.feedback-panel button.btn-primary:hover{box-shadow:0 8px 24px rgba(var(--shadow-color), .15)!important;transform:translateY(-2px)!important}.learning-question-card,.learning-question-card *,.question-card,.question-card *,.chinese-practice-card,.chinese-practice-card *{-webkit-user-select:none!important;user-select:none!important}.learning-question-card input,.learning-question-card textarea,.question-card input,.question-card textarea,.chinese-practice-card input,.chinese-practice-card textarea,.practice-input,.practice-textarea{-webkit-user-select:text!important;user-select:text!important}.quiz-container,.quiz-container *{-webkit-user-select:none!important;user-select:none!important}.quiz-container input,.quiz-container textarea{-webkit-user-select:text!important;user-select:text!important}:root{--px:0px;--py:0px;--glass-bg:#ffffff9e;--glass-border:#ffffff8c;--glass-blur:18px;--celadon:#5fd6b4;--tech-blue:#0e2a4a;--teal:#0f7d8c;--aurora-1:#5fd6b44d;--aurora-2:#0f7d8c47;--aurora-3:#0e2a4a4d;--stream-color:#5fd6b48c}[data-theme=dark]{--modern-zen-bg:#091320!important;--modern-zen-card:#0f1c2d!important;--modern-zen-primary:#93b4cc!important;--modern-zen-success:#7da5bf!important;--modern-zen-text:#e1edf8!important;--modern-zen-chip:#15273d!important;--jade:var(--modern-zen-primary)!important;--jade-gradient:linear-gradient(135deg, #b2c9db, #93b4cc)!important;--jade-soft:#93b4cc29!important;--primary-start:#b2c9db!important;--primary-end:#93b4cc!important;--primary-text:#0b1c2b!important;--logo-text:#0b1c2b!important;--focus-ring:#93b4cc73!important;--porcelain:#73a4cc!important;--muted:#a4b7c8!important;--dim:#798d9f!important;--line:#93b4cc1a!important;--line-soft:#93b4cc12!important;--glass-bg:#0f1c2d8c!important;--glass-border:#93b4cc29!important;--glass-blur:20px!important;--aurora-1:#93b4cc38!important;--aurora-2:#246e963d!important;--aurora-3:#28508c38!important;--stream-color:#93b4cc73!important}.immersive-bg{background:radial-gradient(120% 120% at 80% -10%, color-mix(in srgb, var(--teal) 14%, transparent), transparent 55%), radial-gradient(120% 120% at -10% 110%, color-mix(in srgb, var(--tech-blue) 18%, transparent), transparent 55%);z-index:0!important;pointer-events:none!important;position:fixed!important;inset:0!important;overflow:hidden!important}[data-theme=dark] .immersive-bg{background:radial-gradient(130% 130% at 80% -10%,#93b4cc26,#0000 55%),radial-gradient(130% 130% at -10% 110%,#0f1c2da6,#0000 55%)}.immersive-bg .orb{filter:blur(60px)!important;opacity:.9!important;will-change:transform!important;border-radius:50%!important;transition:transform .6s cubic-bezier(.16,1,.3,1)!important;position:absolute!important}.immersive-bg .orb-1{width:46vw;height:46vw;transform:translate3d(calc(var(--px) * 1.4), calc(var(--py) * 1.4), 0);top:-8vw;left:-6vw;background:var(--aurora-1)!important;animation:26s ease-in-out infinite orbDrift1!important}.immersive-bg .orb-2{width:40vw;height:40vw;transform:translate3d(calc(var(--px) * -1.1), calc(var(--py) * -1.1), 0);bottom:-10vw;right:-6vw;background:var(--aurora-2)!important;animation:32s ease-in-out infinite orbDrift2!important}.immersive-bg .orb-3{width:34vw;height:34vw;transform:translate3d(calc(var(--px) * .7), calc(var(--py) * .7), 0);top:28%;left:38%;background:var(--aurora-3)!important;animation:38s ease-in-out infinite orbDrift3!important}@keyframes orbDrift1{0%{border-radius:50%;translate:0;scale:1}33%{border-radius:60% 40% 50% 50%/40% 60% 50% 50%;translate:6vw -3vw;scale:1.05}66%{border-radius:40% 60% 60% 40%/60% 40% 40% 60%;translate:-3vw 4vw;scale:.95}to{border-radius:50%;translate:0;scale:1}}@keyframes orbDrift2{0%{border-radius:50%;translate:0;scale:1}33%{border-radius:50% 50% 40% 60%/50% 50% 60% 40%;translate:-5vw -3vw;scale:.96}66%{border-radius:60% 40%/40% 60%;translate:4vw 2vw;scale:1.04}to{border-radius:50%;translate:0;scale:1}}@keyframes orbDrift3{0%{border-radius:50%;translate:0;scale:1}33%{border-radius:45% 55%/55% 45%;translate:3vw -5vw;scale:1.08}66%{border-radius:55% 45%/45% 55%;translate:-4vw 1vw;scale:.92}to{border-radius:50%;translate:0;scale:1}}.immersive-bg .stream{background:linear-gradient(90deg, transparent, var(--stream-color), transparent)!important;width:18%!important;height:1px!important;box-shadow:0 0 8px var(--stream-color)!important;opacity:.6!important;position:absolute!important;left:-20%!important}.immersive-bg .stream-1{top:22%;animation:9s linear infinite streamFlow!important}.immersive-bg .stream-2{top:48%;width:24%!important;animation:13s linear 2s infinite streamFlow!important}.immersive-bg .stream-3{top:71%;width:14%!important;animation:11s linear 4s infinite streamFlow!important}.immersive-bg .stream-4{top:86%;animation:15s linear 1s infinite streamFlow!important}@keyframes streamFlow{0%{opacity:0;transform:translate(0)}10%{opacity:.7}90%{opacity:.7}to{opacity:0;transform:translate(700%)}}.core-app{z-index:1!important;background:0 0!important;position:relative!important}.core-shell{background:0 0!important}.core-card,.analytics-panel,.today-queue-panel,.result-card{background-color:var(--glass-bg)!important;background-image:var(--bg-pattern)!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%)!important;backdrop-filter:blur(var(--glass-blur)) saturate(140%)!important;border:1px solid var(--glass-border)!important;box-shadow:0 24px 48px #08142629,inset 0 1px #ffffff2e!important}.core-sidebar{background:var(--glass-bg)!important;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%)!important;backdrop-filter:blur(var(--glass-blur)) saturate(140%)!important;border-right:1px solid var(--glass-border)!important}.btn-primary{position:relative!important;box-shadow:0 4px 14px #2fae9e47,inset 0 0 #fff0!important}.btn-primary:hover{box-shadow:0 10px 28px #2fae9e6b,inset 0 0 20px #ffffff47!important}.core-sidebar button{transition:transform var(--transition-snappy), background var(--transition-smooth), color var(--transition-smooth)!important}.core-sidebar button:hover{transform:scale(1.06)!important}.core-sidebar button.active{box-shadow:inset 0 0 0 1px var(--jade-soft), 0 0 18px var(--jade-soft)!important}.question-card.learning-question-card{animation:.52s cubic-bezier(.16,1,.3,1) both glassMergeIn!important}@keyframes glassMergeIn{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.immersive-bg .orb,.immersive-bg .stream{animation:none!important;transform:none!important}.core-page{transform:none!important}.page-enter,.question-card.learning-question-card{animation:none!important}}.clickable-text{line-height:1.8;display:inline-block;position:relative}.tap-char{cursor:default;padding:0 1px;transition:all .2s;position:relative}.tap-char.has-dict{cursor:pointer;border-bottom:1px dashed var(--line)}.tap-char.has-dict:hover,.tap-char.has-dict.active{background:var(--porcelain-soft);border-bottom-color:var(--porcelain);color:var(--porcelain)}.tap-tooltip{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-md);z-index:100;pointer-events:auto;border-radius:8px;flex-direction:column;align-items:center;min-width:100px;padding:8px 12px;display:flex;position:absolute;bottom:110%;left:50%;transform:translate(-50%);-webkit-user-select:text!important;user-select:text!important}.tap-tooltip:after{content:"";border-style:solid;border-width:6px;border-color:var(--paper) transparent transparent transparent;position:absolute;top:100%;left:50%;transform:translate(-50%)}.tap-tooltip strong{color:var(--text);margin-bottom:4px;font-size:1.25rem;line-height:1}.tap-tooltip em{color:var(--porcelain);margin-bottom:2px;font-size:.9rem;font-style:normal;font-weight:500}.tap-tooltip small{color:var(--muted);text-align:center;font-size:.85rem}.mythical-art-bg{mix-blend-mode:overlay;opacity:.09;z-index:1;will-change:transform;filter:grayscale()brightness(1.18)contrast(.65)blur(1px)drop-shadow(1px 1px 1px #ffffffb3);transition:opacity .5s,filter .5s;pointer-events:none!important;width:110vw!important;height:140vh!important;transform:translate3d(0, calc(var(--scroll-y,0px) * -.08), 0)!important;background-image:url(/assets/dragon-phoenix-DOaQaStP.webp)!important;background-position:50%!important;background-repeat:no-repeat!important;background-size:cover!important;position:fixed!important;top:-20vh!important;left:-5vw!important}[data-theme=dark] .mythical-art-bg{mix-blend-mode:soft-light;opacity:.12;filter:grayscale()invert()sepia()hue-rotate(175deg)saturate(160%)brightness(.82)contrast(.6)blur(1.5px)drop-shadow(0 0 15px #93b4cc59)!important}@media (prefers-reduced-motion:reduce){.mythical-art-bg{transform:none!important}}@media (width<=768px){.core-app{padding-bottom:80px!important;display:block!important}.core-sidebar{border-right:none!important;border-top:1px solid var(--glass-border)!important;z-index:100!important;width:100%!important;height:auto!important;min-height:64px!important;box-shadow:0 -4px 24px rgba(var(--shadow-color), .08)!important;background:var(--modern-zen-card)!important;flex-direction:row!important;justify-content:space-around!important;align-items:center!important;padding:8px 12px!important;position:fixed!important;top:auto!important;bottom:0!important;left:0!important}.core-logo{display:none!important}.core-sidebar button{flex-direction:column!important;flex:1!important;justify-content:center!important;gap:4px!important;height:auto!important;margin:0!important;padding:6px 4px!important}.core-sidebar button:before{display:none!important}.core-sidebar button span{white-space:nowrap!important;text-overflow:ellipsis!important;max-width:100%!important;font-size:.62rem!important;font-weight:700!important;display:block!important;overflow:hidden!important}.core-sidebar button.active{color:var(--modern-zen-primary)!important;background:0 0!important}.core-sidebar button.active svg{filter:drop-shadow(0 2px 4px #127a5d66)}.core-shell{padding:12px 16px 24px!important}.core-card,.learning-question-card,.analytics-panel,.today-queue-panel{border-radius:var(--radius)!important;padding:20px 16px!important}.today-action-buttons button{white-space:normal!important;height:auto!important;min-height:48px!important;padding:10px 12px!important;font-size:.9rem!important;line-height:1.3!important}.learning-question-card h2{margin:16px 0!important;font-size:1.8rem!important}.core-topbar h2{font-size:1.35rem!important}.option-grid button{padding:16px 20px!important;font-size:1rem!important}}main.core-page{position:relative!important}.vocab-hsk-tabs{gap:2px;display:inline-flex;background:var(--modern-zen-chip)!important;border:1px solid rgba(var(--shadow-color), .05)!important;border-radius:12px!important;padding:4px!important}.vocab-hsk-tabs button{cursor:pointer;color:var(--muted)!important;transition:all var(--transition-snappy)!important;background:0 0!important;border:none!important;border-radius:8px!important;padding:6px 14px!important;font-size:.82rem!important;font-weight:700!important}.vocab-hsk-tabs button.active{background:var(--modern-zen-card)!important;color:var(--modern-zen-primary)!important;box-shadow:var(--shadow-sm)!important}.search-box{border:1.5px solid rgba(var(--shadow-color), .08)!important;background:var(--modern-zen-card)!important;box-shadow:var(--shadow-sm)!important;transition:border-color var(--transition-snappy)!important;border-radius:12px!important;padding:0 16px!important}.search-box:focus-within{border-color:var(--modern-zen-primary)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}.search-box input{font-size:.9rem!important}.vocab-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))!important;gap:16px!important;max-height:calc(100vh - 240px)!important;padding:8px 2px!important;display:grid!important;overflow-y:auto!important}.vocab-card{background:var(--modern-zen-card)!important;border:1px solid rgba(var(--shadow-color), .05)!important;border-radius:var(--radius)!important;text-align:center!important;cursor:pointer!important;min-height:124px!important;box-shadow:var(--shadow-sm)!important;transition:transform var(--transition-bounce), box-shadow var(--transition-smooth), border-color var(--transition-smooth)!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;width:100%!important;padding:20px 14px!important;display:flex!important}.vocab-card:hover{border-color:var(--modern-zen-primary)!important;box-shadow:var(--shadow-md)!important;transform:translateY(-4px)scale(1.02)!important}.vocab-card.active{border-color:var(--modern-zen-primary)!important;background:#127a5d0a!important;box-shadow:0 4px 16px #127a5d14!important}.vocab-card strong{color:var(--text)!important;font-size:1.86rem!important;font-family:var(--font-cn)!important;margin-bottom:6px!important;font-weight:700!important}.vocab-card span{color:var(--modern-zen-primary)!important;font-size:.88rem!important;font-weight:600!important}.vocab-card small{color:var(--muted)!important;text-overflow:ellipsis!important;white-space:nowrap!important;max-width:90%!important;margin-top:4px!important;font-size:.78rem!important;display:block!important;overflow:hidden!important}.vocab-drawer-backdrop{-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;z-index:1000!important;border-radius:var(--radius)!important;background:#0000004d!important;animation:.24s both fadeIn!important;position:absolute!important;inset:0!important}.vocab-drawer{background:var(--modern-zen-card)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;width:100%!important;max-width:100%!important;box-shadow:var(--shadow)!important;z-index:1001!important;animation:slideInRight var(--transition-bounce) both!important;flex-direction:column!important;display:flex!important;position:absolute!important;inset:0!important;overflow:hidden!important}.vocab-drawer-header{border-bottom:1px solid var(--line-soft)!important;justify-content:space-between!important;align-items:flex-start!important;gap:16px!important;width:100%!important;max-width:800px!important;margin:0 auto!important;padding:24px 28px 18px!important;display:flex!important}.vocab-drawer-header h2{color:var(--modern-zen-primary)!important;margin:4px 0!important;font-size:2.1rem!important;font-weight:800!important}.vocab-drawer-header p{color:var(--muted)!important;margin:4px 0 0!important;font-size:1.02rem!important}.vocab-drawer-close{background:var(--modern-zen-chip)!important;color:var(--muted)!important;cursor:pointer!important;width:36px!important;height:36px!important;transition:all var(--transition-bounce)!important;border:none!important;border-radius:50%!important;place-items:center!important;font-size:1.5rem!important;line-height:1!important;display:grid!important}.vocab-drawer-close:hover{background:var(--cinnabar-soft)!important;color:var(--cinnabar)!important;transform:rotate(90deg)!important}.vocab-drawer-body{flex-direction:column!important;flex:1!important;gap:24px!important;width:100%!important;max-width:800px!important;margin:0 auto!important;padding:24px 28px 40px!important;display:flex!important;overflow-y:auto!important}.vocab-drawer-section{flex-direction:column!important;display:flex!important}.vocab-section-title{color:var(--dim)!important;text-transform:uppercase!important;letter-spacing:.05em!important;margin-bottom:10px!important;font-size:.8rem!important;font-weight:800!important;display:block!important}.hanzi-hero{background:var(--modern-zen-bg)!important;border:1px solid rgba(var(--shadow-color), .05)!important;border-radius:var(--radius-lg)!important;width:100%!important;min-height:170px!important;box-shadow:inset 0 0 16px rgba(var(--shadow-color), .01), var(--shadow-sm)!important;flex-flow:wrap!important;justify-content:center!important;align-items:center!important;gap:12px!important;padding:16px!important;display:flex!important}[data-theme=dark] .hanzi-hero{background:#242220!important;border-color:#ffffff05!important}.hanzi-writer-char{border-radius:var(--radius)!important;background:var(--modern-zen-card)!important;cursor:pointer!important;width:110px!important;height:110px!important;transition:transform var(--transition-bounce), border-color var(--transition-bounce)!important;border:1.5px dashed #d4a3594d!important;place-items:center!important;display:grid!important}[data-theme=dark] .hanzi-writer-char{border-color:#e8c17a40!important}.hanzi-writer-char:hover{border-color:var(--modern-zen-primary)!important;transform:scale(1.05)translateY(-2px)!important}.radical-strip{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))!important;gap:8px!important}.radical-strip span{background:rgba(var(--shadow-color), .02)!important;border:1px solid rgba(var(--shadow-color), .04)!important;border-radius:8px!important;align-items:center!important;min-height:auto!important;padding:8px 12px!important}.radical-strip strong{color:var(--gold)!important;font-size:1.15rem!important}.radical-strip small{font-size:.78rem!important}.vocab-example-list blockquote{border-left:3px solid var(--modern-zen-primary)!important;border-radius:var(--radius-sm)!important;transition:transform var(--transition-snappy)!important;background:#127a5d05!important;padding:14px 16px!important}.vocab-example-list blockquote:hover{transform:translate(4px)}.handwriting-panel{border-top:1px solid rgba(var(--shadow-color), .05)!important;margin-top:8px!important;padding-top:24px!important}.handwriting-panel h3{color:var(--muted)!important;margin-bottom:8px!important;font-size:1rem!important;font-weight:800!important}.handwriting-hint-text{color:var(--muted)!important;opacity:.8!important;margin:0 0 12px!important;font-size:.8rem!important}.handwriting-char-tabs{flex-wrap:wrap!important;gap:6px!important;margin-bottom:8px!important;display:flex!important}.handwriting-char-tabs button{border:1.5px solid rgba(var(--shadow-color), .12)!important;border-radius:var(--radius)!important;background:var(--modern-zen-card)!important;min-width:40px!important;height:40px!important;color:var(--text)!important;cursor:pointer!important;transition:border-color var(--transition-bounce), transform var(--transition-bounce)!important;font-size:1.15rem!important}.handwriting-char-tabs button.active{border-color:var(--modern-zen-primary)!important;color:var(--modern-zen-primary)!important;transform:translateY(-1px)!important}.handwriting-quiz-wrap{flex-direction:column!important;align-items:center!important;gap:10px!important;display:flex!important}.handwriting-quiz-grid{cursor:crosshair;aspect-ratio:1!important;border:1.5px dashed rgba(var(--shadow-color), .15)!important;border-radius:var(--radius)!important;touch-action:none!important;background:#fafaf8!important;width:min(220px,100%)!important}.handwriting-quiz-grid svg{width:100%!important;height:100%!important}[data-theme=dark] .handwriting-quiz-grid{background:#242220!important;border-color:#ffffff0f!important}.handwriting-stats{color:var(--muted)!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;font-size:.85rem!important;display:flex!important}.handwriting-stats strong{color:var(--modern-zen-primary)!important}.handwriting-miss{color:#d9534f!important}.handwriting-done{color:var(--modern-zen-primary)!important;font-weight:800!important}.handwriting-actions{justify-content:center!important;gap:8px!important;margin-top:14px!important;display:flex!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@media (width<=768px){.vocab-head{flex-direction:column!important;align-items:stretch!important}.vocab-controls{flex-direction:column!important;align-items:stretch!important;width:100%!important}.vocab-hsk-tabs{white-space:nowrap;justify-content:flex-start!important;max-width:100%!important;padding:6px!important;display:flex!important;overflow-x:auto!important}.vocab-hsk-tabs button{flex:none!important}.vocab-drawer{width:100%!important}.vocab-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.vocab-card{min-width:0!important}.level-grid,.mini-level-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.level-card{text-align:center!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;min-height:64px!important;padding:8px!important;display:flex!important}.level-card span{font-size:.65rem!important}.level-card strong{margin-top:2px!important;font-size:1.5rem!important}.quiz-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.quiz-type-card{text-align:center!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:6px!important;min-height:84px!important;padding:12px!important;display:flex!important}.quiz-type-card strong{font-size:.92rem!important}.quiz-strategy-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.quiz-strategy-card{text-align:center!important;justify-content:center!important;align-items:center!important;padding:10px 8px!important;display:flex!important}.quiz-strategy-card span{white-space:nowrap!important;font-size:.82rem!important;font-weight:700!important}.session-result-grid,.session-pill-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.session-result-grid span,.session-pill-grid span{min-height:72px!important;padding:8px 10px!important}}.grammar-lab .core-section-head h1{align-items:center;gap:10px;display:flex}.grammar-summary{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.grammar-summary-stat{flex-direction:column;gap:2px;min-width:88px;display:flex}.grammar-summary-stat strong{color:var(--jade);font-size:1.5rem;line-height:1.1}.grammar-summary-stat small{color:var(--muted);font-size:.78rem}.grammar-review-cta{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.grammar-level-grid{gap:10px;display:flex}.grammar-level-grid .level-card{flex:1}.grammar-lesson-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.grammar-lesson-card{flex-direction:column;gap:12px;display:flex}.grammar-lesson-head{align-items:flex-start;gap:10px;display:flex}.grammar-lesson-head>div{flex-direction:column;flex:1;gap:2px;display:flex}.grammar-lesson-head strong{font-size:1rem}.grammar-lesson-head small{color:var(--muted);font-size:.8rem;line-height:1.35}.grammar-emoji{font-size:1.5rem;line-height:1}.grammar-due-badge{background:var(--gold-soft);color:var(--gold);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.grammar-mastery-bar{background:var(--track-bg);border-radius:99px;height:8px;overflow:hidden}.grammar-mastery-bar>span{background:var(--jade-gradient);height:100%;transition:width var(--transition-smooth);border-radius:99px;display:block}.grammar-lesson-actions{gap:8px;display:flex}.grammar-lesson-actions button{flex:1;justify-content:center;align-items:center;gap:6px;display:inline-flex}.grammar-back,.quiz-back{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:.85rem;display:inline-flex}.grammar-back:hover,.quiz-back:hover{color:var(--jade)}.grammar-level-badge{background:var(--jade-soft);color:var(--jade);border-radius:var(--radius-sm);padding:3px 10px;font-size:.75rem;font-weight:600}.grammar-theory{flex-direction:column;gap:16px;display:flex}.grammar-theory-title{align-items:center;gap:10px;margin:0;display:flex}.grammar-theory-desc{color:var(--muted);margin:0}.grammar-structure{background:var(--jade-soft);border-radius:var(--radius);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.grammar-structure small{text-transform:uppercase;letter-spacing:.04em;color:var(--jade);font-size:.7rem;font-weight:700}.grammar-structure strong{font-size:1.15rem}.grammar-explain{margin:0;line-height:1.6}.grammar-examples{flex-direction:column;gap:10px;display:flex}.grammar-examples>small{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.7rem;font-weight:700}.grammar-example{border-left:3px solid var(--jade-soft);flex-direction:column;gap:2px;padding-left:12px;display:flex}.grammar-example-cn{font-size:1.15rem}.grammar-example-pinyin{font-size:.9rem}.grammar-example-vi{color:var(--muted);font-size:.9rem}.grammar-note{background:var(--gold-soft);border-radius:var(--radius);color:var(--text);align-items:flex-start;gap:8px;padding:12px 14px;font-size:.9rem;line-height:1.5;display:flex}.grammar-note svg{color:var(--gold);flex-shrink:0;margin-top:2px}.grammar-theory-cta{align-self:flex-start;align-items:center;gap:8px;display:inline-flex}@media (width<=768px){.grammar-lesson-grid{grid-template-columns:1fr}.grammar-summary{gap:12px}.grammar-review-cta{justify-content:center;width:100%;margin-left:0}}.behavior-nudge--fragile h3,.behavior-nudge--overloaded h3{color:var(--cinnabar)!important}.behavior-nudge--fragile p,.behavior-nudge--overloaded p,.behavior-nudge--fragile .behavior-nudge-meta span,.behavior-nudge--overloaded .behavior-nudge-meta span{color:color-mix(in srgb, var(--cinnabar) 80%, var(--text))!important}.behavior-nudge--returning h3,.behavior-nudge--ready_short h3,.behavior-nudge--habit_building h3{color:var(--gold)!important}.behavior-nudge--returning p,.behavior-nudge--ready_short p,.behavior-nudge--returning .behavior-nudge-meta span,.behavior-nudge--ready_short .behavior-nudge-meta span,.behavior-nudge--habit_building p,.behavior-nudge--habit_building .behavior-nudge-meta span{color:color-mix(in srgb, var(--gold) 80%, var(--text))!important}.behavior-nudge--ready_deep h3,.behavior-nudge--maintenance h3{color:var(--jade)!important}.behavior-nudge--ready_deep p,.behavior-nudge--maintenance p,.behavior-nudge--ready_deep .behavior-nudge-meta span,.behavior-nudge--maintenance .behavior-nudge-meta span{color:color-mix(in srgb, var(--jade) 80%, var(--text))!important}.today-mission--gold p{color:color-mix(in srgb, var(--gold) 80%, var(--text))!important}.today-mission--jade p{color:color-mix(in srgb, var(--jade) 80%, var(--text))!important}.today-mission--cinnabar p{color:color-mix(in srgb, var(--cinnabar) 80%, var(--text))!important}.today-mission--blue p{color:color-mix(in srgb, var(--porcelain) 80%, var(--text))!important}.readiness-cell[data-tone=steady] strong{color:var(--gold)!important}.readiness-cell[data-tone=weak] strong{color:var(--cinnabar)!important}.readiness-cell strong{color:var(--jade)!important}
