:root{--surface:#192127;--surface-soft:#202c34;--ink:#e5eef3;--secondary:#88a0af;--border:#32424c;--field:#121e27}
.reading-dialog #reading-close{position:sticky;float:right;top:8px;right:0;z-index:3;background:var(--surface);margin-top:-13px;margin-right:-13px}
.english{font-size:var(--subtitle-en,20px)}.chinese{font-size:var(--subtitle-zh,12px)}.cinema{color:#edf2f4}
#page-home,#page-settings{max-width:1320px;width:100%;margin:0 auto}.home-welcome{padding:5px 0 28px}.home-welcome .eyebrow{font-size:11px;letter-spacing:1px}.home-welcome h1{font-size:34px;font-weight:550;letter-spacing:.5px}.home-welcome h1 span{color:var(--accent)}.home-welcome p{color:var(--secondary);font-size:12px;margin:10px 0 0}.home-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px}.home-main,.home-aside{display:flex;flex-direction:column;gap:24px}.home-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px}.section-kicker{font-size:11px;color:var(--secondary);letter-spacing:.5px}.home-review{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:174px}.home-review h2{font-size:21px;font-weight:550;margin:12px 0 13px}.home-word-tags{display:flex;flex-wrap:wrap;gap:7px}.home-word-tags span{font-size:12px;padding:3px 11px;border-radius:18px;background:var(--surface-soft);color:var(--secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-review>.button{padding:8px 12px;min-height:36px}.home-feature{flex:1;min-height:250px;background:radial-gradient(ellipse at 100% 0,#347a8326,transparent 70%),var(--surface);position:relative;overflow:hidden}.home-feature h2{font-size:27px;letter-spacing:1px;margin:20px 0 8px}.home-feature p{font-size:12px;color:var(--secondary);max-width:400px;line-height:2}.home-feature-actions{display:flex;gap:10px;margin:23px 0}.feature-pills{display:flex;flex-wrap:wrap;gap:18px;font-size:10px;color:var(--secondary)}.feature-pills span::before{content:'·';color:var(--accent);margin-right:8px}.goal-card{min-height:220px}.goal-body{display:flex;align-items:center;gap:20px;margin:22px 0}.goal-ring,.assessment-ring{background:conic-gradient(var(--accent) var(--progress),var(--surface-soft) 0);border-radius:50%;width:92px;height:92px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}.goal-ring::before,.assessment-ring::before{content:'';position:absolute;inset:7px;background:var(--surface);border-radius:50%}.goal-ring strong{position:relative;font-size:23px;font-weight:500}.goal-body h3{margin:0 0 7px;font-size:20px}.goal-body h3 span{font-size:12px;font-weight:400;color:var(--secondary)}.goal-body p{font-size:11px;color:var(--secondary);margin:0}.goal-body small{font-size:10px;color:var(--secondary)}.goal-card>.text-button{border-top:1px solid var(--border);width:100%;padding:15px 0 0;text-align:left;display:flex;align-items:center;gap:10px}.goal-card>.text-button svg{width:14px}.home-card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.continue-card{min-height:200px}.continue-item{display:flex;align-items:center;width:100%;gap:12px;padding:10px 0;background:none;text-align:left;color:var(--ink)}.continue-art{width:42px;height:42px;border-radius:10px;background:var(--surface-soft);display:grid;place-items:center;color:var(--accent);flex-shrink:0}.continue-item>span:nth-child(2){min-width:0;flex:1}.continue-item strong{font-size:11px;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:225px}.continue-item small{font-size:9px;color:var(--secondary);display:block;margin-top:4px}.continue-item>svg{width:14px;color:var(--secondary)}.home-statistics{grid-column:1/-1}.home-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0 18px;gap:20px}.home-stats small,.home-stats span{display:block;font-size:10px;color:var(--secondary)}.home-stats strong{font-size:23px;font-weight:500;display:block;margin:7px 0 4px;font-variant-numeric:tabular-nums}.week-bars{display:flex;align-items:flex-end;gap:20px;border-top:1px solid var(--border);padding-top:20px;height:130px}.week-bars>div{height:100%;flex:1;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:9px}.week-bars span{display:block;width:35%;min-width:14px;max-width:45px;background:linear-gradient(var(--accent),#518ea8);border-radius:5px 5px 2px 2px;opacity:.8}.week-bars small{font-size:9px;color:var(--secondary)}
.settings-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:26px;align-items:start}.settings-categories{display:flex;flex-direction:column;gap:6px}.settings-categories button{background:none;border:1px solid transparent;border-radius:8px;color:var(--secondary);padding:12px 16px;text-align:left;font-size:12px}.settings-categories button:hover{background:var(--surface)}.settings-categories button.active{color:var(--accent);background:var(--surface-soft);border-color:var(--border)}.settings-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:30px;max-width:900px;min-width:0}.settings-card h2{font-size:20px;margin:0 0 8px}.settings-card>.quiet{margin:0 0 25px}.setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.setting-field{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--secondary);min-width:0}.setting-field input,.setting-field select{color:var(--ink);border:1px solid var(--border);background:var(--field);border-radius:7px;padding:9px 11px;width:100%;min-width:0;font-size:12px}.setting-switch{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--border);padding:18px 0}.setting-switch strong{display:block;font-size:12px;font-weight:500;color:var(--ink)}.setting-switch small{display:block;color:var(--secondary);font-size:10px;margin-top:5px}.setting-switch input{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}.settings-save{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--border);padding-top:22px;margin-top:26px}.settings-save span{font-size:10px;color:var(--secondary)}.shortcut-row{flex-direction:row;align-items:center;justify-content:space-between;margin:18px 0}.shortcut-row input{max-width:130px;text-align:center}.appearance-preview{margin:30px 0;background:var(--field);border:1px solid var(--border);padding:30px;border-radius:10px;display:flex;align-items:center;gap:14px}.appearance-preview small{color:var(--secondary);margin-left:auto;font-size:10px}.preview-dot{width:12px;height:12px;border-radius:4px;background:var(--accent)}
dialog.word-card{position:fixed;margin:0;inset:auto;width:370px;max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:13px;box-shadow:0 14px 55px #0006;z-index:70;padding:0;overflow:auto}.word-card-inner{padding:19px}.word-top{display:flex;align-items:center;gap:5px}.word-top h2{flex:1;font-size:25px;margin:0;overflow-wrap:anywhere}.word-top button{width:27px;height:27px}.word-top svg{width:15px;height:15px}.word-phonetics{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0 17px}.word-phonetics button{display:flex;align-items:center;gap:5px;background:none;color:var(--secondary);padding:0;font-size:10px}.word-phonetics span{color:var(--ink);font-size:12px}.word-phonetics svg{width:13px;height:13px;color:var(--accent)}.word-action-row{display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--border);padding-bottom:15px}.word-action-row .button{font-size:10px;min-height:30px;padding:6px 9px}.word-action-row .button.saved{color:var(--accent);border-color:var(--accent)}.word-action-row .icon-button{margin-left:auto}.word-tabs{display:flex;margin:14px 0 12px;background:var(--field);padding:3px;border-radius:7px}.word-tabs button{background:none;color:var(--secondary);font-size:11px;flex:1;padding:5px;border-radius:5px}.word-tabs button.active{color:var(--ink);background:var(--surface-soft);box-shadow:0 1px 4px #0002}.word-definition{font-size:13px;line-height:1.9;white-space:pre-line;max-height:178px;overflow:auto;color:var(--ink);overflow-wrap:anywhere}.word-card .word-context{font-size:11px;line-height:1.8;color:var(--secondary);border-left:2px solid var(--border);padding-left:10px;margin:15px 0 9px;max-height:77px;overflow:auto;font-style:normal}.word-context mark{color:var(--accent);background:#68d1e815;border-radius:2px;padding:0 2px}.word-bottom{display:flex;align-items:center;gap:8px}.word-bottom small{font-size:9px;color:var(--secondary);flex:1}.word-bottom .text-button{font-size:9px;padding:3px 0}.word-note{font-size:10px;color:var(--secondary);margin-top:9px}.word-note input{display:block;background:var(--field);border:1px solid var(--border);color:var(--ink);font-size:11px;padding:7px;border-radius:5px;width:100%;margin-top:7px}
.reading-dialog{max-width:590px;background:var(--surface);color:var(--ink);border-color:var(--border)}.reading-dialog .dialog-content{padding:32px}.reading-dialog h2{font-size:23px}.reading-reference{background:var(--field);border:1px solid var(--border);border-radius:10px;padding:16px;margin:20px 0}.reading-reference label{font-size:10px;color:var(--secondary);margin:0}.reading-reference textarea{display:block;resize:vertical;width:100%;border:0;background:none;color:var(--ink);font-size:17px;line-height:1.7;margin:8px 0;min-height:75px;max-height:150px}.reading-reference p{font-size:12px;line-height:1.7;color:var(--secondary);margin:7px 0 14px}.reading-reference>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.reading-reference .button{font-size:10px;padding:6px 10px;min-height:32px}.reading-reference .button:nth-child(2){margin-right:auto}.recording-zone{display:flex;align-items:center;flex-direction:column;padding:5px 0 0;gap:8px}.record-button{height:65px;width:65px;display:grid;place-items:center;background:var(--accent);color:#102e37;border-radius:50%;box-shadow:0 0 25px #68d1e826;margin:8px 0}.record-button svg{height:28px;width:28px}.record-button.recording{background:#ed7f84;box-shadow:0 0 0 7px #ed7f841c}.recording-zone strong{font-size:12px;font-weight:500}.recording-zone>span{font-size:11px;color:var(--secondary);font-variant-numeric:tabular-nums}.recording-zone .quiet{font-size:10px;text-align:center;margin:3px 0 12px}.record-meter{height:4px;width:120px;background:var(--surface-soft);border-radius:5px;overflow:hidden}.record-meter span{display:block;height:100%;background:var(--accent);width:0;transition:width .15s}#reading-audio{display:block;width:100%;height:35px;margin:15px 0}.reading-actions{display:flex;justify-content:center;gap:10px}.reading-status{font-size:12px;color:var(--secondary);text-align:center;margin:15px 0;min-height:20px}.reading-privacy{font-size:9px!important;line-height:1.8;margin-bottom:0}.assessment-summary{display:flex;gap:23px;align-items:center;background:var(--field);border-radius:10px;padding:22px;margin-top:18px}.assessment-ring{width:115px;height:115px;flex-direction:column;gap:0}.assessment-ring::before{background:var(--field)}.assessment-ring strong{position:relative;font-size:32px;font-weight:500}.assessment-ring span{position:relative;font-size:9px;color:var(--secondary)}.assessment-metrics{flex:1;min-width:0}.assessment-metrics>div{display:flex;align-items:center;gap:10px;margin:8px 0}.assessment-metrics span{font-size:10px;min-width:50px;color:var(--secondary)}.assessment-metrics progress{flex:1;min-width:20px;max-width:150px;height:5px;accent-color:var(--accent);border-radius:3px}.assessment-metrics strong{font-size:11px;font-weight:500;min-width:23px}.assessed-sentence{font-size:17px;line-height:2;background:var(--field);padding:16px 18px;border-radius:8px;margin-top:20px}.assessed-word{background:none;font:inherit;padding:0}.assessed-word.good{color:#74cc9d}.assessed-word.fair{color:#dbbf73}.assessed-word.poor{color:#ee8b89}.assessed-word.missing{color:#89979e;text-decoration:line-through}.score-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:9px;color:var(--secondary);padding:9px 2px}.score-legend span:nth-child(1){color:#74cc9d}.score-legend span:nth-child(2){color:#dbbf73}.score-legend span:nth-child(3){color:#ee8b89}.assessment-details{padding:15px 2px;font-size:11px;color:var(--secondary)}.assessment-details small{font-size:10px}
:root[data-theme=light]{color-scheme:light;--bg:#f5f7fa;--panel:#fff;--line:#dde4ea;--text:#1c2c39;--muted:#778794;--accent:#209db9;--accent-ink:#fff;--surface:#fff;--surface-soft:#edf3f6;--ink:#20313f;--secondary:#718596;--border:#dce5eb;--field:#f5f8fa}
[data-theme=light] .sidebar{background:#f0f4f7;border-color:#dce5eb}[data-theme=light] .brand>span{color:#153244}[data-theme=light] .workspace-label,[data-theme=light] .brand small{color:#77909e}[data-theme=light] .nav{color:#5c7586}[data-theme=light] .nav:hover{background:#e4eef3;color:#173c50}[data-theme=light] .nav.active{background:#fff;border:1px solid #d9e5ec;color:#168ca8;box-shadow:0 1px 3px #102a3c04}[data-theme=light] .mini-progress strong{color:#203846}[data-theme=light] .progress-track{background:#dce6ec}[data-theme=light] .account-switch{border-color:#dce6ed}[data-theme=light] .account-switch strong{color:#264253}[data-theme=light] .avatar{background:#e1f2f6;color:#218fac;border-color:#c8e5ed}[data-theme=light] .topbar,[data-theme=light] .app-footer{border-color:#dce5eb}[data-theme=light] .breadcrumb strong{color:#335163}[data-theme=light] .button:not(.primary){background:#fff;color:#446173;border-color:#d4e0e8}[data-theme=light] .button:not(.primary):hover{background:#edf5f8}[data-theme=light] .button.primary{color:#fff}[data-theme=light] .quiet,[data-theme=light] .page-heading p{color:#778e9f}[data-theme=light] .study-panel{background:#fff;border-color:#d7e3eb}[data-theme=light] .panel-tabs,[data-theme=light] .transcript-toolbar,[data-theme=light] .panel-footer{border-color:#dce6ed}[data-theme=light] .panel-tabs button{color:#8399a7}[data-theme=light] .panel-tabs button.active{color:#178fac}[data-theme=light] .search{background:#f6f9fb;border-color:#dce6ec}[data-theme=light] .search input{color:#2e5369}[data-theme=light] .offset-label input{background:#eff4f7;border-color:#d9e4eb;color:#4c738c}[data-theme=light] .panel-empty h3{color:#3d6178}[data-theme=light] .empty-icon{background:#e9f3f8;border-color:#d5e7f0;color:#4b99b7}[data-theme=light] .cue-row .cue-en{color:#32566f}[data-theme=light] .cue-row .cue-zh{color:#7e9bae}[data-theme=light] .cue-row:hover{background:#f3f8fb}[data-theme=light] .cue-row.active{background:#e9f4f9;border-color:#b8ddeb}[data-theme=light] .cue-row.active .cue-en{color:#16728f}[data-theme=light] .ai-intro h3{color:#28566f}[data-theme=light] .context-label input,[data-theme=light] .chat-form{background:#f7fafc;border-color:#d3e2ec;color:#30556e}[data-theme=light] .quick-prompts button{background:#eef6fa;border-color:#d6e7f0;color:#4e819c}[data-theme=light] .chat-message{background:#edf6fb;color:#315e77}[data-theme=light] .chat-message.assistant{background:#f7fafc;border-color:#d7e7ef;color:#305b74}[data-theme=light] .chat-form textarea{color:#325f78}[data-theme=light] .saved-card,[data-theme=light] .media-card,[data-theme=light] .stat-card,[data-theme=light] .product-card,[data-theme=light] .redeem-row{background:#fff;border-color:#dce6ee}[data-theme=light] .saved-card h3,[data-theme=light] .media-card h3,[data-theme=light] .stat-card strong,[data-theme=light] .product-card .price{color:#284b62}[data-theme=light] .account-hero{background:linear-gradient(110deg,#f0f8fb,#fff);border-color:#d0e6ee}[data-theme=light] .account-hero h2{color:#29516a}[data-theme=light] .notice{background:#eef7fb;color:#56849c;border-color:#d0e6f0}[data-theme=light] .filter-group button.active{background:#e7f5fa;border-color:#c7e5f0;color:#3188a7}[data-theme=light] dialog:not(.word-card):not(.reading-dialog){background:#fff;border-color:#d3e3ee;color:#284d65}[data-theme=light] .dialog-content>p{color:#6e8ea3}[data-theme=light] .dialog-content input,[data-theme=light] .redeem-row input{background:#f6f9fc;border-color:#d8e5ee;color:#375c76}[data-theme=light] .dialog-content label{color:#688aa2}[data-theme=light] .word-note input{background:var(--field);color:var(--ink)}[data-theme=light] .reading-reference textarea{color:var(--ink)}[data-theme=light] .help-steps strong{color:#3a6d88}[data-theme=light] .help-steps p{color:#7a9aaf}[data-theme=light] .word-context{color:#6489a0}[data-theme=light] .icon-button{color:#7b97a8}[data-theme=light] .toast{background:#31596f;color:#f3fbff;border-color:#6794ac}
@media(max-width:1100px){.home-grid{grid-template-columns:minmax(0,1.45fr) minmax(250px,1fr);gap:18px}.home-main,.home-aside{gap:18px}.home-card{padding:22px}.home-welcome h1{font-size:30px}.home-review{flex-wrap:wrap}.home-feature h2{font-size:24px}.goal-body{gap:12px}.goal-ring{width:78px;height:78px}.settings-layout{grid-template-columns:160px minmax(0,1fr);gap:18px}.settings-card{padding:24px}.appearance-preview{flex-wrap:wrap}.appearance-preview small{margin-left:0}}
@media(max-width:820px){.home-grid{grid-template-columns:1fr}.home-statistics{grid-column:auto}.home-welcome h1{font-size:28px}.home-aside{display:grid;grid-template-columns:1fr 1fr;align-items:start}.home-review{flex-wrap:nowrap}.home-review h2{font-size:19px}.home-feature{min-height:235px}.home-feature p{max-width:100%}.goal-body{flex-wrap:wrap}.home-card{padding:22px}.settings-layout{grid-template-columns:1fr}.settings-categories{flex-direction:row;overflow:auto;white-space:nowrap;gap:5px;padding-bottom:5px}.settings-categories button{padding:8px 12px;font-size:11px}.settings-card{padding:22px}.appearance-preview small{width:100%}}
@media(max-width:540px){.sidebar nav{gap:3px;padding:5px 8px}.nav{font-size:8px;padding:6px 3px}.home-welcome{padding:2px 0 22px}.home-welcome h1{font-size:25px}.home-welcome p{font-size:11px}.home-grid,.home-main,.home-aside{gap:15px}.home-aside{display:flex;flex-direction:column}.home-aside>.home-card{width:100%}.home-card{padding:21px;border-radius:12px}.home-review{align-items:flex-start;flex-direction:column;gap:17px;min-height:175px}.home-review h2{font-size:20px}.home-feature h2{font-size:24px}.home-feature-actions{gap:8px}.feature-pills{font-size:9px;gap:10px}.goal-body{flex-wrap:nowrap}.home-stats{grid-template-columns:1fr 1fr;gap:24px}.home-stats strong{font-size:21px}.settings-card{padding:19px}.setting-grid{grid-template-columns:1fr;gap:17px}.settings-save{align-items:flex-start;flex-direction:column}.settings-save .button{width:100%}#page-settings .page-heading{flex-direction:column;align-items:flex-start;gap:18px}.word-card-inner{padding:16px}.reading-dialog .dialog-content{padding:28px 20px}.reading-reference{padding:13px}.reading-reference textarea{font-size:15px}.reading-reference .button{font-size:9px;padding:5px 8px}.assessment-summary{padding:16px;gap:14px}.assessment-ring{height:88px;width:88px}.assessment-ring strong{font-size:26px}.assessment-metrics>div{gap:6px}.assessment-metrics span{font-size:9px;min-width:43px}.assessed-sentence{font-size:15px}.settings-layout{gap:14px}}
