/* Research English uses the existing 科研小盒 colors and native controls. */
.english .primary{background:#128a81;box-shadow:none}.english .primary:hover{background:#0c726a}
.en-hub-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0 18px}.en-hub-heading h2{font-size:24px;letter-spacing:.02em;margin:0 0 5px}.en-hub-heading .help-text{font-size:12px;color:#708294;margin:0}.en-hub-heading>button{white-space:nowrap;flex:none}
.en-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:4px;border:1px solid #e1e9ef;border-radius:11px;background:#eef3f7;margin-bottom:18px}
.en-tabs button{flex:1 1 auto;background:transparent;border:0;padding:10px 11px;color:#64778b;font-size:12px;border-radius:7px;cursor:pointer;white-space:nowrap}
.en-tabs button.is-on{background:white;color:#137c73;box-shadow:0 1px 4px #24445d12;font-weight:600}.en-tabs button span{font-size:10px;background:#e3ecf0;color:#657d88;padding:2px 5px;border-radius:4px;margin-left:3px;font-variant-numeric:tabular-nums}.en-tabs button.is-on span{background:#e4f4f0;color:#137c73}
.english .en-library-panel{padding:20px}.en-library-panel>.list-heading,.en-library-panel #enCatalog>.list-heading{align-items:flex-start}.en-library-panel .list-heading h3{font-size:15px;line-height:1.5}.en-library-panel .list-heading>span{white-space:nowrap;padding-top:3px}.en-library-panel .help-text{margin-top:3px}.en-section-count{font-size:11px;color:#7b8b99;font-weight:400;margin-left:5px}
.en-filters{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin:14px 0}.en-courses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;align-items:stretch}
.en-course{min-width:0;border:1px solid #e0e8ef;border-radius:11px;background:#fff;padding:17px;text-align:left;color:var(--text);display:flex;flex-direction:column;gap:10px;cursor:pointer;transition:border-color .15s,background .15s}
button.en-course:hover{border-color:#57b6aa;background:#f7fcfa}.en-course strong{font-size:16px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}.en-course .en-course-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;color:#738396;font-size:12px;line-height:1.75;min-height:3.5em}.en-course-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.en-course .en-tag{color:#438479;font-size:11px;line-height:1.5}.en-course-count{flex:none;font-size:10px;color:#667e8b;line-height:1.6;background:#f0f5f8;border-radius:5px;padding:2px 6px;font-variant-numeric:tabular-nums}.en-card-progress{border-top:1px solid #edf1f4;padding-top:11px;margin-top:auto;font-size:11px;color:#7a8b99;display:flex;flex-direction:column;gap:9px}.en-card-status{display:flex;align-items:center;justify-content:space-between;gap:8px}.en-card-cta{color:#148a7e;white-space:nowrap;font-weight:600}.en-course-meter{height:3px;background:#edf3f4;border-radius:3px;overflow:hidden;display:block}.en-course-meter>span{display:block;height:100%;background:#32a393;border-radius:3px}.en-empty{grid-column:1/-1;color:#7b8b99;font-size:12px;padding:22px 0;line-height:1.8;margin:0}
#enLibraryActions{margin-top:8px;justify-content:flex-end}.english #enPreferences>h3{margin-bottom:12px}
/* A steady practice frame: the answer and player do not move when panels open. */
body:has(#view-english:not([hidden]).is-practicing) .app{padding-bottom:12px}.en-hidden-fab{display:none!important}
.english .en-workspace{height:calc(100dvh - 74px);min-height:430px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding-top:12px;position:relative}
.english .en-workspace>.panel{margin:0}.en-toolbar{display:flex;align-items:center;gap:14px;min-height:46px}.en-toolbar .en-course-heading{flex:1;min-width:0}.en-toolbar h3{font-size:15px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.en-toolbar .panel-caption{display:none}.en-toolbar select,.en-stage-meta select,.en-player select{width:auto}.en-toolbar #enTimer{font-variant-numeric:tabular-nums;min-width:55px;padding:6px}.en-toolbar #enDone{font-size:11px;color:#78869a;white-space:nowrap}
.english .en-stage{padding:20px 24px;text-align:center;display:flex;flex-direction:column;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.en-stage-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#738095;flex:none}.en-stage-meta>div{display:flex;align-items:center;gap:8px}
.en-exercise{flex:none;min-height:0;display:flex;flex-direction:column;justify-content:flex-start;margin-bottom:auto}.en-prompt{padding:10px 0;min-height:74px}.en-stage h2{font-size:21px;line-height:1.65;margin:0 0 10px;font-weight:600}.en-center{justify-content:center;flex:none}
.english #enAnswer{min-height:112px;display:flex;align-items:flex-start;justify-content:center;padding:10px 0 16px}.en-inputs{display:flex;justify-content:center;align-items:center;gap:13px 10px;flex-wrap:wrap;max-width:100%;width:100%}
.english .en-inputs input{box-sizing:content-box;flex:none;width:var(--width);min-width:3ch;max-width:calc(100% - 12px);font:22px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;padding:4px 3px;text-align:center;border:0;border-bottom:2px solid #c8d6e1;border-radius:0;background:transparent;box-shadow:none;outline:none}
.english .en-inputs input:focus{border-bottom-color:#138e85;background:#f2faf8}.english .en-inputs input.good{border-color:#239377;background:#eef8f2}.english .en-inputs input.bad{border-color:#c05c53;background:#fff1ef}
.english #enFeedback{display:flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;margin:4px 0;padding:5px 8px;flex:none;font-size:12px}.english #enFeedback:empty{display:block}
.en-reading{font-size:24px;line-height:1.8;margin:0;color:#30465e}.en-pool,.en-selected{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin:12px 0}.en-selected{margin-top:0;min-height:46px;border-bottom:1px dashed #dce3ed;padding-bottom:12px}.en-tile{border:1px solid #d6e3eb;border-radius:7px;background:#f4f8fc;padding:8px 12px;color:#30465e;font-size:16px;cursor:pointer}.en-tile:disabled{opacity:.3}.en-tile.good{border-color:#239377}.en-tile.bad{border-color:#c05c53}#enAnswer:has(.en-pool){display:block}
.english .en-player{padding:13px 18px;z-index:5}.en-player>.action-row{justify-content:center;gap:10px;flex-wrap:wrap}.en-cache{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;color:#738095;margin-top:9px;min-height:16px;flex-wrap:wrap}.en-cache progress{width:64px;height:5px;accent-color:#128a81}#enAudioStatus{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Non-modal top panel: no backdrop, no focus trap, independent scroll. */
.english .en-analysis-float,.english .en-directory-float,.english .en-sound-float{position:fixed;z-index:40;box-shadow:0 10px 35px #23384b24;border-color:#c9deda;margin:0;overflow:auto;overscroll-behavior:contain}
.english .en-analysis-float{top:60px;left:50%;transform:translateX(-50%);width:calc(100% - 36px);max-width:924px;max-height:min(52dvh,520px);padding:0 18px 16px;animation:en-slide-in .15s ease-out;scrollbar-gutter:stable}
.en-analysis-float>header,.en-directory-float>header,.en-sound-float>header{display:flex;align-items:center;gap:12px;background:white;position:sticky;top:0;z-index:1;min-height:44px;border-bottom:1px solid #edf1f3;font-size:13px}.en-analysis-float>header span{color:#8a97a6;font-size:11px;margin-left:auto}.en-analysis-float>header button,.en-directory-float>header button,.en-sound-float>header button{margin-left:auto;font-size:22px;padding:2px 8px}
.en-analysis-float p{font-size:12px;line-height:1.8}.en-chunks{display:flex;flex-wrap:wrap;align-items:stretch;gap:9px;margin:14px 0}.en-chunk{flex:var(--chunk-weight,1) 1 var(--chunk-basis,120px);min-width:min(100%,var(--chunk-min,88px));max-width:100%;box-sizing:border-box;padding:8px 12px;border-left:3px solid var(--chunk-accent,#12b8a6);background:var(--chunk-bg,#f1faf8);font:16px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}
.en-chunk small{white-space:nowrap;font:11px/1.5 -apple-system,BlinkMacSystemFont,sans-serif;color:var(--chunk-label,#258c77);display:block}.en-chunk strong{display:block;font-size:16px;font-weight:600;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}.en-chunk>span{display:block;font:11px/1.7 -apple-system,BlinkMacSystemFont,sans-serif;color:#607487;overflow-wrap:anywhere}
.en-phonetics{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.en-phonetics div{text-align:center;padding:4px;border-bottom:1px solid #e6e8ef;font-size:13px}.en-phonetics small{display:block;color:#43817c;font-size:11px;line-height:1.7}.en-quote{border-left:2px solid #dce3ed;padding-left:12px;color:#738095}.en-word{display:inline-block;background:#f3f6fa;padding:7px 10px;border-radius:7px;margin:4px 4px 4px 0;font-size:11px}.en-word b{color:#30465e}
.english .en-directory-float{top:112px;right:max(18px,calc((100vw - 924px)/2));width:400px;max-width:calc(100vw - 36px);max-height:65dvh;padding:0 16px 12px}.en-directory-float header select{width:auto;font-size:11px;margin-left:auto}.en-outline{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #edf0f5;background:none;padding:12px;color:#536176;line-height:1.6;font-size:12px;cursor:pointer}.en-outline.is-on{background:#e2f7f4}
.english .en-sound-float{bottom:115px;right:max(18px,calc((100vw - 924px)/2));width:340px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 150px);padding:0 16px 14px}.en-sound-float .en-check{margin:12px 0}
.english.is-practicing>#enNotice:not(:empty){position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:45;width:max-content;max-width:calc(100vw - 36px);padding:10px 16px;border:1px solid #dee8ec;border-radius:8px;background:#f8fbfd;box-shadow:0 3px 15px #23384b16}
.english .en-check{display:flex;flex-direction:row;align-items:center;font-weight:400;font-size:12px;gap:6px}.english .en-check input{width:14px;box-shadow:none}.en-file{display:inline-flex!important;cursor:pointer}.english .en-count{flex-direction:row;align-items:center}.en-count select{width:70px}.en-mcp{padding:14px;background:#f7f9fc;border-radius:10px}.english details summary{cursor:pointer;color:#4f708c;font-size:12px}.english #enNotes{min-height:100px;margin:12px 0}.english audio{width:100%;margin:14px 0}.en-preview-item{padding:14px 0;border-bottom:1px solid #edf0f5}.en-preview-item p{margin:6px 0}.english #enDraftJson{min-height:240px;font-family:ui-monospace,monospace;font-size:12px}.english #enDraft>.en-check{margin:16px 0}.english button:focus-visible,.english summary:focus-visible{outline:2px solid #1e88ff;outline-offset:3px}.english #enSource{font-size:11px;color:#738095;line-height:1.6}.english #enSource a{color:#1e88ff;overflow-wrap:anywhere}
.is-speaking #enSpeaking{margin-top:18px}
@keyframes en-slide-in{from{opacity:0;translate:0 -8px}to{opacity:1;translate:0 0}}
@media(max-width:650px){.en-courses{grid-template-columns:1fr}.en-tabs button{padding:10px 8px;font-size:12px}.en-filters{grid-template-columns:1fr}.en-toolbar{gap:8px;flex-wrap:wrap}.en-toolbar .en-course-heading{min-width:140px}.en-toolbar #enDone{display:none}.en-toolbar select{font-size:12px;padding:6px}.en-toolbar #enPracticeBack{font-size:11px;padding:4px}.english .en-stage{padding:14px}.en-stage h2{font-size:18px}.english .en-inputs input{font-size:20px}.en-reading{font-size:20px}.english .en-player{padding:11px}.en-player>.action-row{gap:7px}.en-player button{font-size:12px;padding:8px 10px}.en-player select{font-size:12px;padding:6px}.en-analysis-float>header span{font-size:10px}.en-chunk{font-size:15px}.en-chunk strong{font-size:15px}.en-workspace{min-height:440px}}
@media(prefers-reduced-motion:reduce){.english *{transition:none!important;animation:none!important}}

.en-chunk--subject{--chunk-accent:#259c88;--chunk-bg:#eff9f5;--chunk-label:#237764}.en-chunk--predicate{--chunk-accent:#8b71c4;--chunk-bg:#f6f2fb;--chunk-label:#73559e}.en-chunk--object{--chunk-accent:#5a8fc4;--chunk-bg:#f0f6fc;--chunk-label:#376a9b}.en-chunk--complement{--chunk-accent:#c57891;--chunk-bg:#fcf1f5;--chunk-label:#a14e6a}.en-chunk--modifier{--chunk-accent:#c79942;--chunk-bg:#fcf7ec;--chunk-label:#8b692b}

.en-count input{width:88px;padding:8px}#enTimer{white-space:nowrap;font-variant-numeric:tabular-nums}#enTimer[data-running="false"]{color:var(--muted,#7b8794)}

#enGenerationProgress{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#enGenerationMeter{width:160px;accent-color:var(--en-accent)}#enFailedJson{min-height:160px;font-family:monospace;font-size:12px}

/* Optional material packs, lookup and reversible course management. */
.en-filters{grid-template-columns:2fr 1fr 1fr 1fr}.en-download-card{cursor:default;background:#fafcfd}.en-download-card .en-course-description{min-height:0}.en-download-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:4px}.en-download-footer button{font-size:11px;padding:7px 11px}.en-download-note{color:#8a99a4;font-size:10px}#enCatalog{margin-top:22px;border-top:1px solid #e6edf2;padding-top:20px}#enCatalogStatus{font-size:10px;margin-top:9px;color:#91a0aa}#enCatalogRefresh{white-space:nowrap;font-size:11px;padding:7px 11px}.en-context{position:fixed;z-index:1000;width:225px;background:white;border:1px solid #d7e4e8;border-radius:10px;box-shadow:0 10px 30px #273d5426;padding:6px}.en-context button{display:block;width:100%;text-align:left;border:0;border-radius:6px;padding:11px 12px;background:white;color:#344b60;cursor:pointer;font-size:13px}.en-context button:hover,.en-context button:focus{background:#eaf6f3;outline:none}.english .en-lookup{position:fixed;right:22px;top:78px;z-index:120;width:360px;max-width:calc(100vw - 44px);max-height:65vh;overflow:auto;box-shadow:0 15px 50px #213d562b;margin:0;padding:20px}.en-lookup header{display:flex;justify-content:space-between;align-items:start;gap:20px}.en-lookup strong{overflow-wrap:anywhere;font-size:20px}.en-lookup p{line-height:1.7;white-space:pre-wrap}.en-lookup small{display:block;color:#7b8995;margin:10px 0}.english .en-editor{position:fixed;z-index:100;inset:50px max(20px,calc((100vw - 800px)/2)) 30px;overflow:auto;margin:0;box-shadow:0 20px 90px #25394b44;padding:24px}.en-editor>label{display:flex;flex-direction:column;margin:12px 0;gap:7px}.en-edit-sentence{padding:15px 0;border-top:1px solid #e5edf1}.english .en-edit-sentence textarea{min-height:60px;margin:7px 0}.en-word-row{border-bottom:1px solid #e5edf1;padding:18px 0}.en-word-row strong{font-size:19px}.en-word-row p{line-height:1.7}.en-word-row small{color:#738095}.en-word-row .action-row{margin-top:12px}#enTranslateFields{margin:14px 0}#enTrashList .list-heading{padding:10px 0;gap:12px}.english .en-chunk{max-width:100%}.english .en-chunk strong{font-size:14px}.en-chunks{gap:7px}.english .en-inputs{gap:12px 10px}.english .en-inputs input{font-size:clamp(18px,2.3vw,25px)}
@media(max-width:650px){.en-filters{grid-template-columns:1fr 1fr}.en-filters>input{grid-column:1/-1}.english .en-editor{inset:10px;padding:16px}.english .en-chunk{max-width:100%}}

@media(max-width:650px){.en-hub-heading{margin:20px 0 14px;gap:10px}.en-hub-heading h2{font-size:22px}.en-hub-heading .help-text{font-size:10px}.en-hub-heading>button{font-size:11px;padding:8px 10px}.en-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.en-tabs button{padding:9px 5px;font-size:11px}.english .en-library-panel{padding:16px}.en-course{padding:16px}.en-library-panel .list-heading h3{font-size:14px}.en-library-panel .list-heading>span{font-size:10px}}

/* A single saved course fills the shelf without leaving an empty column. */
@media(min-width:651px){
 #enCourses>.en-course:only-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,210px);column-gap:24px;row-gap:6px;padding:17px 20px}
 #enCourses>.en-course:only-child>.en-course-top{grid-column:1;grid-row:1;justify-content:flex-start;gap:10px}
 #enCourses>.en-course:only-child>strong{grid-column:1;grid-row:2}
 #enCourses>.en-course:only-child>.en-course-description{grid-column:1;grid-row:3;min-height:0;-webkit-line-clamp:2}
 #enCourses>.en-course:only-child>.en-card-progress{grid-column:2;grid-row:1/4;align-self:stretch;justify-content:center;margin-top:0;border-top:0;border-left:1px solid #e6edf2;padding:4px 0 4px 24px}
 #enCourses>.en-course:only-child .en-card-status{flex-direction:column;align-items:flex-start;gap:7px}
}

/* Course hero follows the submission assistant; practice stays compact. */


.en-keyboard-help{text-align:right;align-self:stretch;font-size:10px!important;line-height:1.7;margin:12px 0 0!important;color:#8b95a6!important}
.en-mic-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.en-mic-controls label{font-size:11px;flex:1;min-width:170px}.en-mic-controls meter{width:90px}.en-mic-controls select{margin-top:5px}
#enImportPanel{margin:12px 0 18px}#enImportUrl{flex:1;min-width:180px}.app-version{display:inline-block;vertical-align:middle;font-size:12px;font-weight:500;letter-spacing:0;padding:5px 10px;background:#ffffffad;border-radius:7px;color:#6c64a7}
.about-sources{display:grid;grid-template-columns:100px 1fr;gap:14px 18px;font-size:12px;line-height:1.8}.about-sources dt{font-weight:600;color:#4d5969}.about-sources dd{margin:0;color:#738095}
@media(max-width:650px){.about-sources{grid-template-columns:1fr;gap:5px}.about-sources dd{margin-bottom:10px}}

.en-wave{display:inline-flex;align-items:center;justify-content:center;gap:3px;width:28px;height:24px;color:#128a81}.en-wave i{width:3px;height:17px;border-radius:3px;background:currentColor;transform-origin:center;animation:en-wave .8s ease-in-out infinite alternate}.en-wave i:nth-child(2){animation-delay:-.6s}.en-wave i:nth-child(3){animation-delay:-.3s;height:23px}.en-wave i:nth-child(4){animation-delay:-.5s}.en-wave i:nth-child(5){animation-delay:-.1s}@keyframes en-wave{from{transform:scaleY(.25)}to{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.en-wave i{animation:none!important;transform:scaleY(.65)}}

.en-playback-cue{display:flex;align-items:center;justify-content:center;height:28px;min-height:28px;flex:0 0 28px;margin:0 0 6px}.en-playback-cue .en-wave{width:48px;gap:5px}
/* Reserve playback-label width as well: loading / listen / stop must not reflow controls. */
.english #enPlay{width:96px;min-width:96px;flex:0 0 96px;padding-left:8px;padding-right:8px}
@media(max-width:650px){.english #enPlay{width:88px;min-width:88px;flex-basis:88px}}

/* Shared answer baseline is reserved before opening the floating analysis. */
.english #enFeedback{min-height:28px;margin:2px 0;padding:2px 8px}
/* Compact metadata leaves the source and generation actions in view. */
.english #enCreate{gap:12px;padding:20px}
#enCreate>.list-heading{display:grid;grid-template-columns:1fr auto 1fr;gap:10px}#enCreate>.list-heading>button{justify-self:start}#enCreate>.list-heading>h3{margin:0;text-align:center}
.en-material-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.en-material-fields .en-material-url{grid-column:span 2}
.english .en-material-fields label{min-width:0;font-size:11px;gap:5px;font-weight:500;color:#63748a}
.english .en-material-fields input,.english .en-material-fields select{min-width:0;padding:7px 9px;font-size:12px;border-radius:7px;height:34px}
.english .en-material-hint{margin:0;font-size:10px;color:#8b95a6}
.english #enMaterial{min-height:150px;height:clamp(150px,24dvh,240px)}
.en-material-actions{gap:8px;align-items:center}
.en-ai-actions{display:inline-flex;align-items:center;gap:4px;flex:none}
.en-material-actions button,.en-material-actions .en-file{font-size:12px;padding:8px 10px}
.english .en-material-actions .en-count{font-size:11px;gap:6px}
.english .en-material-actions .en-count input{width:90px;padding:7px}
.en-model-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px 14px;color:#8b95a6;font-size:10px}
.en-model-line .model-status{font-size:10px;padding:2px 0;background:none}
#enCreateNoticeSlot:empty{display:none}#enCreateNoticeSlot:has(.status:empty){display:none}
.en-agent-guide ol{padding-left:20px;margin:10px 0 14px;font-size:12px;line-height:1.8;color:#63748a}.en-agent-guide li+li{margin-top:8px}.en-agent-guide h3{font-size:13px;margin:0}
@media(max-width:650px){.en-material-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 10px}.en-material-fields .en-material-title{grid-column:1/-1}.en-material-fields .en-material-url{grid-column:auto}.english #enCreate{padding:16px}.en-material-actions{gap:8px}}

.en-sound-settings{border:1px solid var(--line,#dfe5ed);border-radius:14px;padding:16px;margin:8px 0;min-width:0}.en-sound-settings legend{padding:0 8px;font-weight:650}.en-sound-volume{display:flex!important;align-items:center;gap:10px}.en-sound-volume input[type="range"]{width:120px;padding:0;accent-color:var(--en-accent,#128f88)}.en-sound-volume output{min-width:3em;font-variant-numeric:tabular-nums}

/* A single prompt-and-answer group shares the popup clearance in all four modes. */
.english .en-prompt{padding:0 0 12px;min-height:0}
.english .en-stage h2{margin:0;font-size:20px;line-height:1.5}
.english #enAnswer{min-height:70px;padding:4px 0 12px}
.english .en-exercise{margin-bottom:12px}
.english .en-analysis-float{max-width:none;width:calc(100% - 36px);box-sizing:border-box}
.english .en-directory-float,.english .en-sound-float{right:18px}
.en-next-preview{font-size:11px;line-height:1.5;color:#7a8b9d;text-align:center;margin:0 0 8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.en-toolbar-compact .en-player{padding:7px 12px}.en-toolbar-compact .en-player .action-row{gap:7px}.en-toolbar-compact .en-player button,.en-toolbar-compact .en-player select{padding-top:6px;padding-bottom:6px;font-size:11px}.en-toolbar-compact .en-cache{margin-top:4px;font-size:10px}.en-toolbar-compact .en-next-preview{margin-bottom:4px}
#enSentenceImage{display:block;max-width:min(100%,460px);max-height:140px;object-fit:contain;margin:10px auto 0;border-radius:8px}
.en-practice-settings{min-width:0;border:1px solid #dfe5ed;border-radius:14px;padding:14px 18px;margin:0}.en-practice-settings legend{font-weight:650;padding:0 8px}
.en-option-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.en-option{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:16px!important;padding:13px 0;border-bottom:1px solid #edf0f4;min-width:0}.en-option span{min-width:0}.en-option b{font-size:12px;line-height:1.6;display:block;color:#334354}.en-option small{display:block;margin-top:3px;color:#8190a1;font-size:10px;line-height:1.6;font-weight:400}.en-option input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;accent-color:#128a81}.en-option select{width:85px!important;flex:0 0 85px;padding:7px!important;font-size:12px!important}
.en-quick-dialog{box-sizing:border-box;width:min(740px,calc(100vw - 32px));max-height:86dvh;border:1px solid #dce6e9;border-radius:18px;padding:0 22px 22px;color:#253342;box-shadow:0 20px 80px #20344833;background:#fff;overflow:auto}.en-quick-dialog::backdrop{background:#20344855}.en-quick-dialog>header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;padding:14px 0;z-index:1}.en-quick-dialog h3{font-size:17px;margin:0}.en-quick-dialog header button{font-size:26px}.en-quick-dialog .en-option-list{grid-template-columns:1fr}.en-quick-dialog .en-sound-settings{margin-top:18px}
.en-shortcut-overlay{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:85;max-width:calc(100vw - 40px);width:max-content;box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 18px;padding:14px 20px;border-radius:12px;background:#253647f2;color:#fff;box-shadow:0 6px 30px #20344826;font-size:12px;pointer-events:none}.en-shortcut-overlay small{color:#c3d6df}
.en-celebration{position:absolute;bottom:190px;left:50%;pointer-events:none;z-index:65}.en-celebration i{position:absolute;width:6px;height:9px;border-radius:2px;animation:en-celebrate .8s ease-out forwards}@keyframes en-celebrate{0%{transform:translate(0,0) rotate(0);opacity:0}15%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) rotate(var(--turn));opacity:0}}
@media(prefers-reduced-motion:reduce){.en-celebration{display:none}}
@media(max-width:700px){.en-option-list{grid-template-columns:1fr}.en-toolbar{gap:8px;flex-wrap:wrap}.en-course-heading{flex:1;min-width:120px}.en-quick-dialog{padding:0 16px 16px}.en-practice-settings{padding:12px}.english .en-stage{padding:14px 16px}}

/* The dock is a separate grid row, so primary actions never scroll with the exercise. */
.english .en-workspace{min-height:0;box-sizing:border-box;gap:10px;padding-top:8px}
.english .en-player{padding:6px 16px 8px;min-width:0;box-sizing:border-box}
.en-dock-controls,.en-dock-answer,.en-dock-audio{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.en-dock-controls{gap:12px}.en-dock-answer{padding-right:12px;border-right:1px solid #e4eaf0}
.en-player .en-dock-controls button,.en-player .en-dock-controls select{font-size:12px;padding:8px 11px;min-height:36px;box-sizing:border-box}
.en-player-status{position:relative;display:flex;justify-content:center;align-items:center;min-height:22px;margin-bottom:4px}
.english .en-player #enFeedback{margin:0;padding:0 54px;min-height:22px;line-height:1.6;font-size:11px}
.en-player .en-playback-cue{position:absolute;left:6px;top:0;margin:0;width:40px;height:22px;min-height:22px}
.en-player .en-wave{height:20px!important}.en-player .en-wave i{max-height:19px}
.en-player .en-keyboard-help{text-align:center;margin:5px 0 0!important;line-height:1.5}
.en-player .en-next-preview{margin:4px 0 0;font-size:10px;line-height:1.4}
.en-player .en-cache{margin-top:4px;min-height:14px;line-height:1.4;gap:6px}
.en-rate-control{display:inline-flex;position:relative;margin:0!important}.en-loop-control{position:relative}
.en-dock-controls button::before,.en-rate-control::before,.en-loop-control::before{content:'';display:none;width:20px;height:20px;background:currentColor;mask-image:var(--dock-icon);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:var(--dock-icon);-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}
/* Compact means icons, with the same accessible controls and hover descriptions. */
.english .en-toolbar-compact .en-player{padding:4px 10px 6px}
.en-toolbar-compact .en-dock-controls{gap:8px}.en-toolbar-compact .en-dock-audio,.en-toolbar-compact .en-dock-answer{gap:6px}.en-toolbar-compact .en-dock-answer{padding-right:8px}
.english .en-toolbar-compact .en-dock-controls button,.english .en-toolbar-compact #enPlay{font-size:0!important;width:36px;min-width:36px;height:36px;flex:0 0 36px;padding:7px!important;display:inline-flex;justify-content:center;align-items:center;border:1px solid #dce6ec;border-radius:9px}
.en-toolbar-compact .en-dock-controls button::before,.en-toolbar-compact .en-rate-control::before,.en-toolbar-compact .en-loop-control::before{display:block}
.en-toolbar-compact .en-rate-control,.en-toolbar-compact .en-loop-control{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:0!important;border:1px solid #dce6ec;border-radius:9px;color:#5d748b;background:#f8fafc}
.en-toolbar-compact .en-rate-control select,.en-toolbar-compact .en-loop-control input{position:absolute;inset:0;margin:0!important;width:100%!important;height:100%;opacity:0;cursor:pointer;padding:0!important}
.en-toolbar-compact .en-loop-control:has(input:checked){background:#e5f5f1;color:#128a81;border-color:#56b5a9}.en-toolbar-compact .en-rate-control:focus-within,.en-toolbar-compact .en-loop-control:focus-within{outline:2px solid #74a9db;outline-offset:2px}
.en-toolbar-compact .en-player .en-keyboard-help,.en-toolbar-compact #enCacheText{display:none!important}
.en-toolbar-compact .en-player .en-cache{margin-top:3px}.en-toolbar-compact .en-player-status{min-height:20px;margin-bottom:2px}.en-toolbar-compact .en-player #enFeedback{min-height:20px}
.en-toolbar-compact #enPlay[aria-busy="true"]::before{animation:en-dock-spin 1.1s linear infinite}@keyframes en-dock-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.en-toolbar-compact #enPlay[aria-busy="true"]::before{animation:none}}
@media(max-width:850px){.en-dock-controls{gap:5px 10px}.en-dock-answer{border-right:0;padding-right:0}.english .en-player{padding-left:9px;padding-right:9px}}
@media(max-width:450px){.en-dock-controls{gap:6px}.en-dock-controls button{padding:7px 8px!important}.en-toolbar-compact .en-dock-audio,.en-toolbar-compact .en-dock-answer{gap:4px}.english .en-toolbar-compact .en-dock-controls button,.english .en-toolbar-compact #enPlay,.en-toolbar-compact .en-rate-control,.en-toolbar-compact .en-loop-control{width:31px;min-width:31px;height:32px;flex-basis:31px}.en-toolbar-compact .en-dock-answer{padding-right:0}}

.en-toolbar-compact #enAudioStatus{font-size:0;max-width:24px;cursor:help}.en-toolbar-compact #enAudioStatus:not(:empty)::before{content:'ⓘ';font-size:14px;line-height:1;color:#68859b}

.en-word-pronunciation{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:10px 0}.en-word-pronunciation button{font-size:11px;padding:7px 10px}.en-word-pronunciation small{flex-basis:100%;font-size:10px;line-height:1.6;color:#8290a0}.en-translation-network label{margin:10px 0}.en-lookup .en-word-pronunciation{border-bottom:1px solid #e6edf2;padding-bottom:12px}
.en-lookup>header{position:sticky;top:-20px;z-index:1;background:white;margin:-20px -20px 0;padding:16px 20px 12px;border-bottom:1px solid #e6edf2}

/* Next-sentence preview stays inside the practice frame in both toolbar styles. */
.english .en-stage > .en-next-preview{flex:none;margin:auto 0 0;padding-top:12px;line-height:1.5;min-height:0}

/* Personal progress, phrase selection, and independent dictionary results. */
#enNotice:not(:empty){display:flex;align-items:center;gap:12px}#enNotice>span{flex:1}#enNotice>button{flex:none;padding:2px 6px;color:inherit}
.en-attendance{padding:18px 22px;border:1px solid #dfe8ec;background:#fff;border-radius:16px;margin:16px 0}.en-attendance-stats{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.en-attendance-stats>div{flex:1;min-width:100px}.en-attendance-stats small{display:block;color:#718695;font-size:11px}.en-attendance-stats strong{display:block;font-size:23px;margin-top:5px;color:#245c62}.en-attendance .help-text{font-size:11px;margin:10px 0 0}.en-attendance details{font-size:12px;margin-top:12px;color:#536e80}#enActivityHistory{max-height:160px;overflow:auto;line-height:2.1;margin-top:8px}
.english .en-lookup{width:480px;max-height:calc(100vh - 110px)}.en-lookup h4{font-size:14px;margin:16px 0 8px}.en-dict-meaning{border-top:1px solid #e5ecef;padding-top:12px;margin-top:12px}.en-dict-meaning ol{padding-left:22px}.en-dict-meaning li{margin:12px 0}.en-dict-meaning p{font-size:13px;margin:5px 0}.en-dict-meaning blockquote{border-left:3px solid #dcebe8;margin:8px 0;padding-left:10px;font-size:12px;line-height:1.7;color:#5e7989}.en-dict-phonetics{color:#287f79}.en-dict-translation{color:#43827b}.en-lookup .text-button{font-size:11px}.en-lookup details{margin-top:16px;font-size:12px}.en-dictionary{margin-top:16px}
.english .en-phrase-float{position:fixed;left:24px;top:78px;z-index:115;width:440px;max-width:calc(100vw - 48px);max-height:75vh;overflow:auto;box-shadow:0 15px 50px #213d562b;margin:0;padding:20px}.en-phrase-chips{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}.en-phrase-chips button{font-size:13px;padding:6px 10px}.en-phrase-chips button[aria-pressed="true"]{background:#e3f5ef;border-color:#168f85;color:#116a61}.en-phrase-float input{margin:6px 0 14px}.en-phrase-float .action-row{gap:8px}.en-phrase-float h3{font-size:16px;margin:0}

/* Learning journal lives inside the course overview, with a selectable two-week calendar. */
.english .en-hub-overview{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:18px 22px;margin:12px 0 16px;background:linear-gradient(112deg,#eaf4fa 0%,#edf0fc 52%,#f3edfc 100%);border:1px solid #e2e8f2;border-radius:14px}
.english .en-hub-intro h2{font-size:23px;margin:0 0 6px;color:#2a5264}.english .en-hub-intro>p{font-size:12px;margin:0;color:#718695}
.en-today{display:flex;align-items:center;gap:28px;flex-shrink:0}.en-today>div{display:flex;flex-direction:column;gap:5px}.en-today strong{font-size:19px;font-weight:650;color:#24857b;font-variant-numeric:tabular-nums}.en-today span{font-size:11px;color:#80909d}.en-today button{white-space:nowrap}
#enPreferences .en-attendance{margin:0 0 8px;background:#f7fbfa;border-color:#e1ece8;max-width:900px;width:100%;box-sizing:border-box;align-self:center}
.en-folder-dialog{border:1px solid #dfe8ec;border-radius:16px;padding:24px;width:420px;max-width:calc(100vw - 32px);box-sizing:border-box;color:#2a5264}.en-folder-dialog::backdrop{background:#233f5550}.en-folder-dialog h3{margin:0}.en-folder-options{display:grid;gap:8px;max-height:40vh;overflow:auto;margin:20px 0}.en-folder-options button{text-align:left}.en-folder-options button[aria-pressed="true"]{border-color:#24857b;background:#eff9f5}.en-folder-form{display:flex;flex-direction:column;gap:10px;margin-top:20px}.en-folder-form .status:empty{display:none}
.en-journal-label{font-size:12px;color:#4f687b;font-weight:650}.en-attendance #enCheckIn{padding:6px 10px;font-size:11px;background:#ecf7f4;border-color:#d6ebe5;color:#24857b}.en-attendance #enCheckIn:disabled{opacity:1;color:#518b80}
.en-attendance-stats{gap:16px;margin-top:18px}.en-attendance-stats>div{min-width:0}.en-attendance-stats strong{font-size:22px;font-weight:650;margin:0 0 4px;color:#2a5264;white-space:nowrap;letter-spacing:-.5px}.en-attendance-stats small{font-size:10px;color:#80909d}
.en-calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:10px;border-top:1px solid #dce5ed;font-size:10px;color:#718695;gap:8px}.en-calendar-heading>div{display:flex;align-items:center;gap:4px}.en-calendar-heading button{padding:4px 6px;font-size:11px}.en-calendar-heading button:disabled{opacity:.3}
.en-activity-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px 7px;margin:8px 0 10px;text-align:center}.en-activity-week>small{font-size:9px;color:#889eaa;padding:2px}.en-activity-week>button{position:relative;display:grid;place-items:center;padding:0;height:30px;min-width:0;border:1px solid transparent;border-radius:8px;background:#e8edf35c;color:#6b8293;font-size:11px;font-weight:500;box-shadow:none}.en-activity-week>button:hover{background:#e4efec;border-color:#a6d4ca}.en-activity-week>button.is-checked{color:#167e70;background:#d8eee7}.en-activity-week>button[aria-current="date"]:after{content:"";position:absolute;bottom:3px;width:3px;height:3px;border-radius:50%;background:currentColor}.en-activity-week>button[aria-pressed="true"]{color:white;background:#268e82;border-color:#268e82}.en-activity-week>button:focus-visible{outline:2px solid #268e82;outline-offset:2px}
#enActivityHistory.en-activity-detail{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;min-height:36px;border-radius:10px;background:#f2f6f9;line-height:1.6;overflow:visible}.en-activity-detail>div{display:flex;flex-direction:column}.en-activity-detail b{font-size:11px;color:#476273}.en-activity-detail small{font-size:10px;color:#8a9ba7}.en-activity-detail>strong{font-size:15px;color:#315f65;font-weight:600}.en-activity-detail[data-checked="true"] small{color:#258778}
.en-attendance-bottom{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#738b9c;gap:10px}.en-attendance #enActivityNote:empty{display:none}
.en-answer-sentence{font-size:17px;line-height:1.8;margin:4px 0 16px;color:#2d4a5e;white-space:pre-wrap}.en-lookup-word{cursor:pointer;text-decoration:none;text-underline-offset:5px}.en-lookup-word:hover,.en-lookup-word:focus-visible{text-decoration:underline dotted #168d83;text-decoration-thickness:1.5px;color:#14867d;outline:none}.en-lookup-text{user-select:text}.en-lookup-text::selection,.en-lookup-text ::selection{background:#c9eee6;color:#174f48}
.en-wordbook-cards{margin-top:20px}.en-wordbook-card{min-height:180px!important}.en-wordbook-card .en-card-cta{margin-top:10px}.en-wordbook-filters{display:flex;gap:12px;margin:18px 0}.en-wordbook-filters input{flex:1}.en-wordbook-filters select{width:150px}.en-wordbook-entry{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 4px;border-bottom:1px solid #edf0f5}.en-wordbook-entry strong{font-size:19px;color:#314f64}.en-wordbook-entry p{margin:6px 0;font-size:13px}.en-wordbook-entry small{color:#668d8a;font-size:12px}.en-wordbook-entry .action-row{margin:0;flex:none}
.english .en-word-import{color:#273d52;border:1px solid #dce6ed;border-radius:20px;box-shadow:0 25px 100px #213d5630;box-sizing:border-box}.en-word-import::backdrop{background:#233f5550;backdrop-filter:blur(3px)}
.english .en-word-import{width:min(760px,calc(100vw - 32px));max-height:85vh;padding:24px;overflow:auto}.en-word-import>input,.en-word-import>select{margin:10px 0}.en-word-import-preview{overflow:auto;margin:16px 0;max-height:280px}.en-word-import table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.en-word-import th,.en-word-import td{padding:9px;border-bottom:1px solid #e6edf2;max-width:240px;overflow-wrap:anywhere}.en-word-import th{color:#788b9a;background:#f4f8fa}
.english .en-word-practice{height:calc(100dvh - 100px);min-height:480px;padding:0 0 8px;box-sizing:border-box;color:#273d52}.en-word-practice:not([hidden]){display:flex;flex-direction:column;gap:12px}.en-word-practice-toolbar{display:flex;align-items:center;gap:12px;padding:10px 12px;background:white;border:1px solid #e3e9f0;border-radius:14px;flex-wrap:wrap}.en-word-practice-toolbar>div{flex:1;min-width:110px}.en-word-practice-toolbar small{display:block;font-size:13px;color:#65798b}.en-word-practice-toolbar span{font-variant-numeric:tabular-nums;font-size:12px;color:#8094a6}.en-word-practice-toolbar button{font-size:11px;padding:7px 10px}
.en-word-typing-area{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 20px}.en-word-upnext{font-size:12px;color:#8c9daa;align-self:flex-end;margin:0 0 18px}.en-word-target{font:clamp(28px,4.5vw,64px)/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px;white-space:pre-wrap;overflow-wrap:anywhere;text-align:center;color:#83909f;max-width:100%;margin:8px 0}.en-word-target .is-correct{color:#209a78}.en-word-target .is-wrong{color:#c65c60;background:#fbeaec}.en-word-target .is-current{border-bottom:2px solid #50aaa0}.en-word-ipa{color:#527c83;font-size:16px;margin:10px 0}.en-word-meaning{color:#5e7184;font-size:18px;line-height:1.7;text-align:center;max-width:700px;margin:10px 0 18px}.en-word-feedback{min-height:18px;font-size:12px;color:#50887c;margin:10px 0}.en-word-feedback.is-wrong{color:#b75d58}.en-word-typing-area .en-word-pronunciation{justify-content:center;margin:4px 0}.en-word-typing-area .en-word-pronunciation small{display:none}.en-word-practice>.action-row{justify-content:center;margin:0}.en-word-practice>.action-row button{font-size:12px;padding:8px 12px}
.en-word-typing-stats{display:flex;justify-content:center;gap:20px;background:white;border:1px solid #e5eaf1;border-radius:14px;max-width:720px;width:100%;align-self:center;padding:12px 20px;box-sizing:border-box}.en-word-typing-stats>div{flex:1;text-align:center}.en-word-typing-stats strong{display:block;font-size:22px;color:#557087;font-variant-numeric:tabular-nums}.en-word-typing-stats small{display:block;font-size:10px;color:#91a1b0;margin-top:4px}
@media(max-width:850px){.english .en-hub-overview{gap:16px;padding:16px}.en-today{gap:16px}.en-attendance-stats strong{font-size:20px}.en-wordbook-entry{align-items:flex-start}.en-wordbook-entry .action-row{flex-direction:column;gap:4px}.english .en-word-practice{padding:10px}.en-word-typing-area{padding:0 8px}.en-word-meaning{font-size:15px}.en-word-target{font-size:32px}.en-word-upnext{margin:4px 0}.en-word-typing-stats{gap:10px;padding:8px}.en-wordbook-filters{flex-wrap:wrap}}

.english .en-analysis-float .en-answer-sentence{font-size:16px;line-height:1.8}.en-chunk .en-lookup-word{display:inline;font:inherit;color:inherit}.en-chunk .en-lookup-word:hover{color:#14867d}

.english .is-speaking #enSpeaking{margin-top:4px;flex:none}.english #enSpeakingDetails{margin:8px auto 0;max-width:800px;text-align:left}.english #enSpeakingDetails>summary{text-align:center;font-size:11px}.english #enSpeaking>.action-row{margin:0;gap:8px}.english #enSpeaking>.action-row button{padding:7px 12px;font-size:12px}.english #enRecorded{max-height:38px;margin:6px 0}.english #enSpeakingDetails[open]{padding:10px;border:1px solid #e4ecef;border-radius:8px;background:#f8fafc}

.en-word-target-wrap{position:relative;width:100%;max-width:100%;cursor:text}.english .en-word-keystrokes{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;opacity:0;cursor:text;caret-color:transparent}.en-word-target-wrap:has(input:disabled){opacity:.5}.en-word-target-wrap:focus-within .is-current{border-bottom-color:#178d80}.en-word-target-wrap .en-word-target{pointer-events:none}

.en-word-practice-toolbar label{display:flex;align-items:center;gap:8px;font-size:11px;color:#65798b}.english .en-word-practice-toolbar select{width:auto;font-size:12px;padding:6px 24px 6px 10px}.en-word-practice-toolbar>div{overflow-wrap:anywhere}.en-word-typing-area{background:#fff;border:1px solid #e3e9f0;border-radius:14px}.en-word-target-wrap:focus-within{outline:1px dashed #a2c9c2;outline-offset:6px;border-radius:8px}.en-word-target-wrap{max-width:900px}.en-tabs button:focus-visible,.en-course:focus-visible{outline:2px solid #24857b;outline-offset:2px}
@media(max-width:650px){.english .en-hub-overview{align-items:stretch;flex-direction:column;gap:14px}.en-today{justify-content:space-between;border-top:1px solid #e7efee;padding-top:12px}.en-today strong{font-size:18px}.en-tabs{display:flex;overflow-x:auto;flex-wrap:nowrap}.en-tabs button{flex:0 0 auto;padding:10px}.en-word-practice-toolbar{gap:8px}.en-word-practice-toolbar label{margin-left:auto}.en-word-typing-stats strong{font-size:18px}}

/* Settings categories reuse the same controls as the practice quick settings. */
.english .en-preferences-layout{padding:18px;gap:24px;grid-template-columns:148px minmax(0,1fr);align-items:start}.english .en-preferences-layout:not([hidden]){display:grid}.en-preferences-nav{display:flex;flex-direction:column;gap:5px;position:sticky;top:18px;border-right:1px solid #e5edf0;padding-right:14px}.en-preferences-nav button{border:0;border-radius:8px;background:transparent;text-align:left;padding:12px 14px;color:#6a7f8e;font-size:12px;cursor:pointer}.en-preferences-nav button[aria-selected="true"]{background:#e7f4f0;color:#207c72;font-weight:650}.en-preferences-nav button:focus-visible{outline:2px solid #24857b;outline-offset:2px}.en-preferences-content{min-width:0}.en-preferences-pane>h3{margin:4px 0 10px;font-size:17px;color:#2a5264}.en-preferences-pane:focus{outline:none}.en-preferences-pane>.help-text{margin:0}.en-preferences-pane .en-attendance{margin:0!important;max-width:none!important}.en-trash-actions{display:flex;gap:8px;flex-shrink:0}.english .en-danger{color:#b84850;border-color:#ebcbd0}.en-delete-dialog{max-width:460px;width:calc(100vw - 32px);box-sizing:border-box;border:1px solid #e2e8ef;border-radius:16px;padding:24px;color:#2a5264}.en-delete-dialog::backdrop{background:#233f5550}.en-delete-dialog p{line-height:1.8}.en-delete-dialog .action-row{justify-content:flex-end}.en-delete-dialog .en-danger{background:#b84850;color:#fff;border-color:#b84850}
@media(max-width:600px){.english .en-preferences-layout{grid-template-columns:112px minmax(0,1fr);gap:12px;padding:12px}.en-preferences-nav{padding-right:8px;top:8px}.en-preferences-nav button{font-size:11px;padding:11px 8px}.en-preferences-pane .en-attendance{padding:14px 10px}.en-preferences-pane .en-attendance-stats{gap:8px}.en-preferences-pane .en-attendance-stats strong{font-size:16px}.en-preferences-pane .en-calendar-heading{flex-wrap:wrap;gap:6px}.en-preferences-pane .en-attendance-bottom{flex-wrap:wrap}.en-trash-actions{flex-wrap:wrap}.en-preferences-pane .list-heading{flex-wrap:wrap}.en-preferences-pane .en-activity-week{gap:3px}}
@media(max-width:420px){.english .en-preferences-layout{grid-template-columns:1fr}.en-preferences-nav{position:static;flex-direction:row;overflow:auto;border-right:0;border-bottom:1px solid #e5edf0;padding:0 0 8px}.en-preferences-nav button{flex-shrink:0}.en-preferences-pane .en-attendance-stats strong{font-size:20px}}

.en-wordbook-materials{margin-top:30px;padding-top:24px;border-top:1px solid var(--border,#e4eaf0)}.en-wordbook-materials .en-wordbook-card{cursor:default}.en-wordbook-materials .en-wordbook-card>button{align-self:flex-start;margin-top:12px}.en-activity-week>button.is-future{color:#a5b2bd;background:transparent}.en-activity-week>button.is-future[aria-pressed="true"]{color:white;background:#268e82}

/* Quiet teal for mastery; lavender for recall. Actions stay visible without hover. */
body.en-theme-active[data-en-theme="dark"][data-en-accent="cyan"]{--en-accent:#67e8f9;--en-accent-hover:#a5f3fc;--en-soft:#16414c}
body.en-theme-active[data-en-theme="dark"][data-en-accent="rose"]{--en-accent:#fda4af;--en-accent-hover:#fecdd3;--en-soft:#4c2638}
body.en-theme-active[data-en-theme="dark"][data-en-accent="indigo"]{--en-accent:#a5b4fc;--en-accent-hover:#c7d2fe;--en-soft:#30345a}
body.en-theme-active[data-en-theme="dark"][data-en-accent="slate"]{--en-accent:#cbd5e1;--en-accent-hover:#e2e8f0;--en-soft:#334155}
.english{--en-ink:#294457;--en-teal:#167e71;--en-mint:#eaf6f0;--en-lilac:#f1eef9;--en-muted:#708393}
.en-course-shell{position:relative;min-width:0;display:flex}.en-course-shell>.en-course{width:100%;height:100%;box-sizing:border-box}.en-course-shell .en-course-top{padding-right:52px}.english .en-course-manage{position:absolute;top:14px;right:13px;background:#f1f6f7;border:1px solid #dce8e9;color:#52737b;padding:4px 9px;font-size:11px;border-radius:7px;z-index:1;cursor:pointer}.english .en-course-manage:hover{background:#e0f1eb;border-color:#88beb0;color:var(--en-teal)}
.en-course-hint{position:absolute;z-index:15;left:12px;right:12px;bottom:calc(100% + 7px);padding:10px 13px;border:1px solid #cddfdf;border-radius:10px;background:#fafffd;color:#3d6668;font-size:11px;line-height:1.7;box-shadow:0 8px 24px #2944571f;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(3px);transition:opacity .12s .12s,transform .12s .12s,visibility 0s .12s}.en-course-shell:hover .en-course-hint,.en-course-shell:focus-within .en-course-hint{opacity:1;visibility:visible;transform:none}.en-course-shell:not(:hover):not(:focus-within) .en-course-hint{transition:none}
.english button{transition:background-color .14s,border-color .14s,box-shadow .14s}.english button:focus-visible,.english input:focus-visible,.english select:focus-visible,.english textarea:focus-visible{outline:2px solid #24857b;outline-offset:3px}.en-tabs button[aria-current="page"]{box-shadow:inset 0 -2px #298e81,0 2px 6px #284d5010}
.english dialog.en-editor{inset:0;width:min(860px,calc(100vw - 40px));height:min(820px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);max-width:none;margin:auto;padding:20px 24px;box-sizing:border-box;overflow:hidden;border:1px solid #dce7ec;border-radius:18px;color:var(--en-ink)}.english dialog.en-editor[open]{display:flex;flex-direction:column;gap:10px}.en-editor::backdrop{background:#203b514d;backdrop-filter:blur(3px)}.en-editor>.list-heading,.en-editor>.help-text,.en-editor>.status{flex:none;margin:0}.en-editor h3{margin:0}.en-editor-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;flex:none}.en-editor-fields label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#647d89}.english .en-editor-fields input{padding:9px 11px;min-width:0}.en-editor-sentences{overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;flex:1;border-block:1px solid #e2eaf0;padding-right:10px}.en-editor-sentences .en-edit-sentence:first-child{border-top:0}.en-edit-sentence strong{font-size:12px;color:#728599}.english .en-edit-sentence textarea{resize:vertical;background:#fbfcfe;line-height:1.6}.en-editor>.status:empty{display:none}
.en-collect-action{position:relative;display:flex;align-items:center;gap:10px;margin:14px 0 8px}.en-collect-action .is-collected{opacity:1;color:var(--en-teal);background:var(--en-mint);border-color:#c6e6d7}.en-collect-feedback{position:absolute;left:0;bottom:calc(100% + 8px);padding:8px 12px;border:1px solid #bcdfd0;border-radius:9px;background:#f4fff8;box-shadow:0 5px 18px #284d5020;color:#287359;font-size:12px;line-height:1.5;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}.en-collect-feedback.is-visible{opacity:1;visibility:visible}
.en-wordbook-layout{display:flex;gap:3px;padding:3px;background:#ecf1f5;border-radius:9px;flex:none}.english .en-wordbook-layout button{padding:6px 12px;font-size:12px;border-color:transparent;background:transparent;color:#708393}.english .en-wordbook-layout button[aria-pressed="true"]{background:white;color:var(--en-teal);box-shadow:0 2px 6px #29445715}.en-wordbook-filters{align-items:center}.en-wordbook-filters input{min-width:140px}.en-wordbook-list{display:grid;gap:9px}.en-wordbook-entry{border:1px solid #e3e9ef;border-radius:12px;padding:16px 18px;background:#fff}.en-wordbook-entry>div:first-child{min-width:0;overflow-wrap:anywhere}.en-wordbook-entry strong{display:block;margin-top:7px;font-size:18px}.en-wordbook-entry.is-mastered{background:#f4faf6;border-color:#cce3d5}.en-mastery-badge{display:inline-flex;align-items:center;font-size:10px!important;padding:3px 8px;border-radius:5px;background:var(--en-lilac);color:#7a6896!important;font-weight:500;letter-spacing:.02em}.is-mastered .en-mastery-badge,.en-mastery-badge.is-mastered{background:#deefe3;color:#34785e!important}.en-wordbook-list.is-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))}.en-wordbook-list.is-grid .en-wordbook-entry{flex-direction:column;align-items:stretch;gap:12px}.en-wordbook-list.is-grid .en-wordbook-entry .action-row{flex-direction:row;justify-content:flex-end;margin-top:auto}.en-wordbook-list.is-grid .en-wordbook-entry p{line-height:1.65}.en-auto-mastery{display:flex;align-items:center;gap:8px;font-size:12px;color:#647d89;margin:14px 0 0}.english .en-auto-mastery input,.english .en-flashcard-mastery input{width:16px;height:16px;margin:0;accent-color:#288d76}
.en-flashcard-area{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 16px}.english .en-flashcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;flex-shrink:0;position:relative;box-sizing:border-box;min-height:300px;width:min(680px,100%);padding:45px 35px 35px;border:1px solid #ded9eb;border-radius:22px;background:linear-gradient(140deg,#faf9ff,#f1f5fa);color:var(--en-ink);box-shadow:0 14px 40px #4054770d;cursor:pointer;text-align:center;overflow-wrap:anywhere}.english .en-flashcard:hover{border-color:#aba6c9}.english .en-flashcard.is-flipped{background:linear-gradient(140deg,#f9fffc,#eef7f4);border-color:#b8dacf;animation:en-card-reveal .16s ease-out}.en-flashcard strong{font:600 clamp(24px,3.5vw,38px)/1.5 ui-sans-serif,system-ui,sans-serif;max-width:100%}.en-flashcard-side{position:absolute;left:24px;top:18px;font-size:11px;color:#8a7e9f;letter-spacing:.06em}.en-flashcard.is-flipped .en-flashcard-side{color:#648d80}.en-flashcard-phone{font-size:15px;color:#62828a}.en-flashcard-definition{font-size:20px;line-height:1.7}.en-flashcard-context{font-size:13px;line-height:1.8;color:#748894;border-top:1px solid #dbe9e4;padding-top:16px}.en-flashcard-area>.help-text{margin:0}.en-flashcard-mastery{display:flex;align-items:center;gap:9px;color:#50806d;font-size:14px;cursor:pointer}.en-flashcard-audio .en-word-pronunciation{justify-content:center;margin:0}.en-flashcard-audio small{display:none}.en-flashcard-area .en-word-feedback{margin:0;min-height:18px}.en-flashcard.is-mastered:after{content:'✓';position:absolute;top:14px;right:20px;color:#4b9876;font-size:20px}.en-flashcard-audio[hidden]{display:none}
@keyframes en-card-reveal{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:650px){.english dialog.en-editor{width:calc(100vw - 20px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:14px;gap:8px}.en-editor-fields{gap:8px}.en-editor>.list-heading{gap:8px}.en-editor>.list-heading button{padding:7px 9px;font-size:11px}.en-editor>.help-text{font-size:10px}.en-wordbook-filters{gap:8px}.en-wordbook-filters select{width:120px}.en-wordbook-entry{padding:12px}.en-flashcard-area{padding:10px 0;gap:10px}.english .en-flashcard{padding:42px 20px 24px;min-height:240px}.en-flashcard-definition{font-size:17px}.en-course-hint{left:0;right:0}}
@media(prefers-reduced-motion:reduce){.english button,.en-course-hint,.en-collect-feedback{transition:none}.english .en-flashcard.is-flipped{animation:none}}
.english .en-collect-action button.is-collected:disabled{opacity:1;color:#287359;background:#eaf6f0;border-color:#c6e6d7}

/* English appearance is scoped to this module; all themes share the same layout. */
body.en-theme-active{--en-accent:#137f74;--en-accent-hover:#0d685f;--en-soft:#e8f5f0;--en-bg:#f8fafc;--en-surface:#fff;--en-subtle:#f1f5f9;--en-line:#e2e8f0;--en-text:#1e293b;--en-muted:#64748b;--en-danger:#b91c1c;--en-danger-hover:#991b1b;--en-danger-soft:#fef2f2;--en-shadow:0 1px 3px #0f172a0a;--bg:var(--en-bg);--card:var(--en-surface);--text:var(--en-text);--muted:var(--en-muted);--line:var(--en-line);--brand:var(--en-accent);--brand-soft:var(--en-soft)}
body.en-theme-active[data-en-accent="blue"]{--en-accent:#2563eb;--en-accent-hover:#1d4ed8;--en-soft:#eff6ff}
body.en-theme-active[data-en-accent="violet"]{--en-accent:#7959ad;--en-accent-hover:#63468f;--en-soft:#f1ecfa}
body.en-theme-active[data-en-accent="amber"]{--en-accent:#9d681b;--en-accent-hover:#7e5215;--en-soft:#fcf2de}
body.en-theme-active[data-en-accent="cyan"]{--en-accent:#0e7490;--en-accent-hover:#155e75;--en-soft:#ecfeff}
body.en-theme-active[data-en-accent="rose"]{--en-accent:#be185d;--en-accent-hover:#9d174d;--en-soft:#fff1f2}
body.en-theme-active[data-en-accent="indigo"]{--en-accent:#4f46e5;--en-accent-hover:#4338ca;--en-soft:#eef2ff}
body.en-theme-active[data-en-accent="slate"]{--en-accent:#475569;--en-accent-hover:#334155;--en-soft:#f1f5f9}
body.en-theme-active[data-en-theme="dark"]{color-scheme:dark;--en-bg:#0f172a;--en-surface:#172033;--en-subtle:#1e293b;--en-line:#334155;--en-text:#e2e8f0;--en-muted:#a6b4c8;--en-danger:#fca5a5;--en-danger-hover:#fecaca;--en-danger-soft:#451b26;--en-shadow:0 1px 3px #0003;--en-accent:#79cdb8;--en-accent-hover:#98dfcd;--en-soft:#28483f}
body.en-theme-active[data-en-theme="dark"][data-en-accent="blue"]{--en-accent:#93c5fd;--en-accent-hover:#bfdbfe;--en-soft:#1e3555}
body.en-theme-active[data-en-theme="dark"][data-en-accent="violet"]{--en-accent:#bba4ee;--en-accent-hover:#d0bef6;--en-soft:#3b3355}
body.en-theme-active[data-en-theme="dark"][data-en-accent="amber"]{--en-accent:#e7bf77;--en-accent-hover:#f0d29b;--en-soft:#4b3e29}
.english{--en-ink:var(--en-text,#294457);--en-teal:var(--en-accent,#137f74);--en-mint:var(--en-soft,#e8f5f0)}
.english .primary{background:var(--en-accent);color:var(--en-surface);border-color:var(--en-accent)}.english .primary:hover{background:var(--en-accent-hover)}
.english .secondary,.english .en-course-manage{background:var(--en-subtle);border-color:var(--en-line);color:var(--en-text)}
.english .text-button,.english .en-card-cta,.english .en-course .en-tag{color:var(--en-accent)}
.english :is(button,input,select,textarea):focus-visible{outline-color:var(--en-accent)}
.english :is(.en-tabs button.is-on,.en-preferences-nav button[aria-selected="true"],.en-wordbook-layout button[aria-pressed="true"],.en-loop-control[aria-pressed="true"]){background:var(--en-soft);border-color:var(--en-accent);color:var(--en-accent)}
.english .en-tabs button[aria-current="page"]{box-shadow:inset 0 -2px var(--en-accent)}
.english .en-course:hover,.english .en-course-manage:hover{background:var(--en-soft);border-color:var(--en-accent)}
.english .en-course-meter>span{background:var(--en-accent)}.english progress,.english input[type="checkbox"]{accent-color:var(--en-accent)}
.english .en-hub-overview{background:linear-gradient(115deg,var(--en-soft),var(--en-surface) 72%);border-color:var(--en-line)}
.english .en-material-actions .en-count input{width:132px;min-width:132px;padding:9px 11px}.english .en-material-actions .en-count{gap:10px;flex-shrink:0}
.en-practice-times{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--en-muted)}.en-toolbar .en-practice-times #enTimer{font-size:11px;padding:3px 0;min-width:0}
.english .en-loop-control[aria-pressed="true"]::after{content:'•';margin-left:4px}.en-toolbar-compact .en-loop-control[aria-pressed="true"]::after{position:absolute;right:3px;top:0;font-size:12px}
.english .en-collect-action button.is-collected:not(:disabled){cursor:pointer}.english .en-collect-action button.is-collected:hover{border-color:var(--en-accent)}
.en-learning-counts{display:flex;align-items:center;gap:32px;padding:22px 0 18px;border-bottom:1px solid var(--en-line);flex-wrap:wrap}.en-learning-counts>div{display:flex;align-items:baseline;gap:10px}.en-learning-counts strong{font-size:36px;line-height:1;font-weight:650;font-variant-numeric:tabular-nums;color:var(--en-accent);letter-spacing:-1px}.en-learning-counts span{font-size:12px;color:var(--en-muted)}.en-learning-counts p{margin:0 0 0 auto;font-size:11px;color:var(--en-muted)}
.english .en-attendance{background:var(--en-surface);border-color:var(--en-line)}.english .en-attendance-stats{padding:0 0 6px;gap:20px}.english .en-attendance-stats strong{color:var(--en-text);font-size:22px}.english .en-attendance-stats small{color:var(--en-muted)}
.en-activity-charts{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin:18px 0}.en-activity-charts>section{min-width:0;border:1px solid var(--en-line);border-radius:12px;padding:14px;background:var(--en-surface)}.en-activity-charts header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--en-muted)}.en-activity-charts header strong{font-size:11px;color:var(--en-accent);white-space:nowrap}
.en-weekly-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:18px}.english .en-chart-column{padding:0;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;color:var(--en-muted);cursor:pointer}.en-chart-column b,.en-chart-column small{font-size:9px;font-weight:400}.en-chart-track{height:70px;width:100%;max-width:24px;display:flex;align-items:flex-end;border-radius:4px;background:var(--en-subtle)}.en-chart-bar{display:block;width:100%;border-radius:4px;background:var(--en-accent);opacity:.7}.en-chart-column:hover .en-chart-bar{opacity:1}.en-chart-column:hover{color:var(--en-accent)}
.en-mix-bar{height:16px;border-radius:8px;overflow:hidden;display:flex;margin:34px 0 16px;background:var(--en-subtle)}.en-mix-bar .sentences{background:var(--en-accent)}.en-mix-bar .words{background:#ac9acb}.en-mix-legend{font-size:11px;line-height:1.8;color:var(--en-muted)}.en-mix-legend::before{content:'●';color:var(--en-accent);margin-right:6px}.en-practice-mix .help-text{font-size:10px}
.english .en-activity-week>button.is-checked{background:var(--en-soft);color:var(--en-accent)}.english .en-activity-week>button[aria-pressed="true"]{background:var(--en-accent);border-color:var(--en-accent);color:var(--en-surface)}.english .en-activity-week>button:hover{border-color:var(--en-accent)}
.en-theme-colors button[data-en-accent="cyan"]::before{background:#0e7490}
.en-theme-colors button[data-en-accent="rose"]::before{background:#be185d}
.en-theme-colors button[data-en-accent="indigo"]::before{background:#4f46e5}
.en-theme-colors button[data-en-accent="slate"]::before{background:#475569}
.english .en-theme-colors{border:0;padding:8px 0;margin:0}.en-theme-colors legend{font-size:12px;color:var(--en-muted);padding:0}.en-theme-colors .action-row{gap:10px}.english .en-theme-colors button{background:var(--en-surface);color:var(--en-text);padding:12px 16px;border:1px solid var(--en-line);border-radius:10px;display:flex;align-items:center;gap:9px;cursor:pointer}.en-theme-colors button::before{content:'';width:14px;height:14px;border-radius:50%;background:#3a9c87}.en-theme-colors button[data-en-accent="blue"]::before{background:#4c8fcb}.en-theme-colors button[data-en-accent="violet"]::before{background:#9573c6}.en-theme-colors button[data-en-accent="amber"]::before{background:#c99c4b}.english .en-theme-colors button[aria-pressed="true"]{border-color:var(--en-accent);box-shadow:0 0 0 1px var(--en-accent);background:var(--en-soft)}
.en-word-editor>.action-row,.en-word-editor>label{flex:none;margin:0}.en-word-edit-row{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:16px 0;border-bottom:1px solid var(--en-line)}.en-word-edit-row label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--en-muted)}.en-word-edit-row input,.en-word-edit-row textarea{min-width:0;width:100%;font-size:12px}.english .en-word-edit-row textarea{min-height:38px;height:38px;resize:vertical}.en-word-edit-row>button{justify-self:end;grid-column:1/-1;font-size:11px;padding:3px 0}.en-word-editor>.action-row{font-size:11px;gap:8px}.en-word-editor>.action-row button{font-size:11px;padding:6px 10px}
/* Dark surfaces, including popovers and dialogs, inherit the module palette. */
.english[data-theme="dark"] :is(.panel,.en-course,.en-wordbook-entry,.en-word-practice-toolbar,.en-word-typing-area,.en-word-typing-stats,dialog,.en-context,.en-context button,.en-analysis-float>header,.en-directory-float>header,.en-sound-float>header){background:var(--en-surface);border-color:var(--en-line);color:var(--en-text)}
.english[data-theme="dark"] :is(input,select,textarea,.en-tabs,.en-mcp,.en-tile,.en-word,.en-course-count,.en-wordbook-layout,.en-option-list label,.en-practice-options,.en-course-hint,.en-collect-feedback,.en-activity-detail,.en-speaking-details){background:var(--en-subtle);border-color:var(--en-line);color:var(--en-text)}
.english[data-theme="dark"] :is(.help-text,.en-course-description,.en-course-count,.en-tag,.en-course-top,.en-journal-label,.en-preferences-nav button,.en-calendar-heading,.en-activity-week>small,.en-attendance-bottom,.en-wordbook-entry p,.en-wordbook-entry small,.en-word-practice-toolbar small,.en-word-practice-toolbar span,.en-word-meaning,.en-word-ipa,.en-word-upnext,.en-reading,.en-answer-sentence,.en-lookup small,.en-quote,.en-auto-mastery,label){color:var(--en-muted)}
.english[data-theme="dark"] :is(h2,h3,h4,.en-wordbook-entry strong,.en-word-typing-stats strong,.en-today strong,.en-activity-detail b,.en-activity-detail>strong,.en-word b){color:var(--en-text)}
.english[data-theme="dark"] :is(.en-preferences-nav,.en-editor-sentences,.en-word-edit-row,.en-calendar-heading,.en-wordbook-materials,.en-card-progress,.en-outline){border-color:var(--en-line)}
.english[data-theme="dark"] :is(.en-course:hover,.en-context button:hover,.en-outline.is-on,.en-wordbook-entry.is-mastered,.en-collect-action .is-collected){background:var(--en-soft);border-color:var(--en-accent);color:var(--en-accent)}
.english[data-theme="dark"] .en-tabs button{color:var(--en-muted)}.english[data-theme="dark"] .en-tabs button.is-on{background:var(--en-soft);color:var(--en-accent)}
.english[data-theme="dark"] :is(.en-preferences-nav button[aria-selected="true"],.en-loop-control[aria-pressed="true"]){background:var(--en-soft);color:var(--en-accent)}
.english[data-theme="dark"] .en-flashcard{background:linear-gradient(145deg,var(--en-subtle),var(--en-surface));border-color:var(--en-line);color:var(--en-text)}.english[data-theme="dark"] .en-flashcard.is-flipped{background:linear-gradient(145deg,var(--en-soft),var(--en-surface));border-color:var(--en-accent)}
.english[data-theme="dark"] .en-chunk{background:color-mix(in srgb,var(--chunk-accent) 15%,var(--en-surface));color:var(--en-text)}.english[data-theme="dark"] .en-chunk :is(small,span){color:var(--en-muted)}
.english[data-theme="dark"] .en-inputs input{background:transparent;color:var(--en-text);border-color:var(--en-line)}.english[data-theme="dark"] .en-inputs input:focus,.english[data-theme="dark"] .en-inputs input.good{background:var(--en-soft);border-color:var(--en-accent)}.english[data-theme="dark"] .en-inputs input.bad{background:#513039;border-color:#dc8792}.english[data-theme="dark"] .en-word-target .is-wrong{background:#513039;color:#f2a4ac}
.english[data-theme="dark"] #enActivityHistory{background:var(--en-subtle)}.english[data-theme="dark"] .en-activity-week>button:not([aria-pressed="true"]):not(.is-checked){background:var(--en-subtle);color:var(--en-muted)}
.english[data-theme="dark"] .en-attendance #enCheckIn{background:var(--en-soft);color:var(--en-accent);border-color:var(--en-line)}.english[data-theme="dark"] .en-collect-action button.is-collected:disabled{background:var(--en-soft);color:var(--en-accent);border-color:var(--en-line)}
@media(max-width:700px){.en-activity-charts{grid-template-columns:1fr}.en-learning-counts{gap:22px;padding:18px 0}.en-learning-counts strong{font-size:30px}.en-learning-counts p{margin:0;width:100%}.en-word-editor>.action-row{flex-wrap:wrap}.en-practice-times{margin-left:auto}.en-word-edit-row{gap:8px}}
@media(max-width:420px){.en-word-edit-row{grid-template-columns:1fr}.en-word-edit-row>button{grid-column:1}.english .en-material-actions .en-count input{width:120px;min-width:120px}}
.en-activity-charts .list-heading{font-size:11px;color:var(--en-muted);gap:8px}.en-activity-charts h4{font-size:12px;font-weight:600;margin:0}.en-activity-charts .list-heading>span{font-size:10px;color:var(--en-accent);white-space:nowrap}.en-activity-charts .help-text{font-size:10px}
html:has(body.en-theme-active[data-en-theme="dark"]){background:#141e27;color-scheme:dark}
.english[data-theme="dark"] .en-tabs button span{background:var(--en-subtle);color:var(--en-muted)}.english[data-theme="dark"] .en-tabs button.is-on span{background:var(--en-soft);color:var(--en-accent)}
.english #enPreferences .en-attendance{background:var(--en-surface);border-color:var(--en-line)}
.english[data-theme="dark"] :is(.en-quick-dialog>header,.ai-route,.ai-route--agent){background:var(--en-surface);border-color:var(--en-line);color:var(--en-text)}
.english[data-theme="dark"] :is(.en-option b,.en-word-practice){color:var(--en-text)}.english[data-theme="dark"] :is(.en-option small,.en-dict-meaning blockquote,.ai-route>p,.ai-route-label,.ai-route-prerequisite){color:var(--en-muted)}
.english[data-theme="dark"] :is(.en-option,.en-practice-settings){border-color:var(--en-line)}.english[data-theme="dark"].is-practicing>#enNotice:not(:empty){background:var(--en-subtle);border-color:var(--en-line)}

/* Consistent secondary navigation for every course-center card. */
.en-hub-workspace{display:grid;grid-template-columns:148px minmax(0,1fr);gap:20px;align-items:start}.en-hub-workspace.is-settings{display:block}.en-hub-workspace>#enHubNav{padding-top:10px}.en-hub-workspace>#enHubContent{min-width:0}.en-hub-workspace .en-library-panel,.en-hub-workspace #enWordbook,.en-hub-workspace #enCommunity{margin-top:0}.en-hub-workspace #enCatalog{border-top:0;margin-top:8px;padding-top:0}.en-hub-workspace #enCatalog>.list-heading h3{display:none}.en-hub-workspace #enCatalog>.list-heading p{margin-top:0}.en-collection-deleted{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px solid var(--en-line,#e5edf0);border-radius:12px}.en-review-choice{display:flex;gap:12px;padding:14px 0;align-items:start;border-bottom:1px solid var(--en-line,#e5edf0)}.english .en-review-choice input{width:17px;height:17px;flex:none;accent-color:var(--en-accent,#24857b)}.en-review-choice strong,.en-review-choice small{display:block;line-height:1.65}.en-review-choice small{color:var(--en-muted,#647d89)}.en-review-editor>input{margin-bottom:14px}.en-review-editor .en-editor-sentences{max-height:55vh}.en-collection-deleted strong{font-size:14px}
@media(max-width:760px){.en-hub-workspace{grid-template-columns:112px minmax(0,1fr);gap:12px}.en-hub-workspace .en-courses{grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr))}#enCommunity>.list-heading{flex-wrap:wrap;gap:10px}}
@media(max-width:420px){.en-hub-workspace{grid-template-columns:1fr}.en-hub-workspace>#enHubNav{position:static;flex-direction:row;overflow:auto;border-right:0;border-bottom:1px solid var(--en-line,#e5edf0);padding:0 0 8px}.en-hub-workspace>#enHubNav button{flex-shrink:0}}
/* Native community: cards and previews share the application's page scroll. */
#enCommunity{min-width:0}.en-community-filters{display:grid;grid-template-columns:minmax(160px,1fr) 140px;gap:12px;margin:18px 0 0}.en-community-types{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.english .en-community-types button{border:1px solid var(--en-line);background:var(--en-surface);color:var(--en-muted);padding:8px 14px;border-radius:20px}.english .en-community-types button[aria-pressed="true"]{color:var(--en-accent);border-color:var(--en-accent);background:var(--en-soft)}.en-community-count{font-size:12px;color:var(--en-muted);margin:16px 0}.en-community-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(285px,100%),1fr));gap:16px;margin-bottom:20px}.en-community-card{min-width:0;display:flex;flex-direction:column;padding:20px;border:1px solid var(--en-line);border-radius:14px;background:var(--en-surface);transition:border-color .15s}.en-community-card:hover{border-color:var(--en-accent)}.en-community-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:var(--en-muted)}.english button.en-community-card-title{background:none;border:0;text-align:left;padding:0;margin:16px 0 0;color:var(--en-text);font-size:17px;font-weight:650;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}.en-community-description{font-size:13px;line-height:1.8;color:var(--en-muted);margin:9px 0 14px;overflow-wrap:anywhere}.en-community-card .en-community-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.en-community-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.en-community-tags span{font-size:10px;color:var(--en-muted);padding:3px 7px;border-radius:5px;background:var(--en-subtle)}.en-community-byline{font-size:11px;line-height:1.6;color:var(--en-muted);margin:14px 0;overflow-wrap:anywhere}.en-community-card-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--en-line)}.en-community-card-foot>.text-button{padding:10px 0}.en-community-install{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.en-community-install>button{white-space:nowrap}.en-community-install small{font-size:11px;line-height:1.5;max-width:230px;color:var(--en-muted)}.en-community-install.is-installed small{color:var(--en-accent)}.en-community-notice{padding:12px 16px;background:var(--en-soft);border-radius:10px;font-size:12px;line-height:1.7}.en-community-detailbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:20px 0 28px}.en-community-detail h2{font-size:24px;line-height:1.4;overflow-wrap:anywhere}.en-community-sentence{position:relative;padding:20px 0 20px 38px;border-top:1px solid var(--en-line);line-height:1.8}.en-community-sentence>small{position:absolute;left:0;top:23px;font-size:11px;color:var(--en-muted)}.en-community-sentence>strong{font-size:15px;font-weight:550;color:var(--en-text)}.en-community-sentence>p{font-size:13px;color:var(--en-muted);margin:7px 0 0}.en-community-word-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;line-height:1.6;margin:20px 0}.en-community-word-table th,.en-community-word-table td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--en-line);overflow-wrap:anywhere;vertical-align:top}.en-community-word-table th{font-size:11px;color:var(--en-muted);font-weight:500}.en-community-word-table th:first-child{width:27%}.en-community-word-table th:last-child{width:26%}.en-community-upload-native,.en-community-account{padding:24px 0}.en-community-upload-preview{margin:20px 0;padding:20px;border:1px solid var(--en-line);border-radius:12px;background:var(--en-surface)}.en-community-upload-preview>p{font-size:13px;line-height:1.8}.en-community-account>.primary{display:inline-block;margin:14px 0;padding:10px 16px;border-radius:9px;text-decoration:none}.en-community-toast{position:fixed;z-index:200;top:24px;right:24px;display:flex;align-items:center;gap:16px;max-width:min(460px,calc(100vw - 40px));padding:14px 16px;border:1px solid var(--en-accent);border-radius:12px;background:var(--en-surface);color:var(--en-text);box-shadow:0 8px 30px #0002;font-size:13px;line-height:1.6}.en-community-toast.is-error{border-color:#c46c55}.en-community-toast>.text-button{flex:none;padding:2px 5px;font-size:20px}.en-community-toast[hidden]{display:none!important}
.english .en-theme-modes{padding:8px 0;margin:0;border:0;min-width:0}.en-theme-modes legend{padding:0;font-size:12px;color:var(--en-muted)}.en-theme-mode-buttons{display:flex;gap:12px;margin-top:8px}.english .en-theme-mode-buttons button{display:flex;flex:1;max-width:180px;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px 10px;background:var(--en-surface);border:1px solid var(--en-line);border-radius:12px;color:var(--en-text);font-size:13px;cursor:pointer}.en-theme-mode-buttons svg{width:27px;height:27px}.english .en-theme-mode-buttons button[aria-pressed="true"]{border-color:var(--en-accent);box-shadow:0 0 0 1px var(--en-accent);color:var(--en-accent);background:var(--en-soft)}.english .en-settings-section{background:none;padding:0;margin:12px 0 20px;border-radius:0}.en-settings-section h4{font-size:13px;margin:0 0 14px;font-weight:600}.en-settings-section label{margin:12px 0}.english .en-settings-section+.en-settings-section{border-top:1px solid var(--en-line);padding-top:24px}
@media(max-width:620px){.en-community-filters{grid-template-columns:minmax(0,1fr)}.en-community-types{grid-column:1}.en-community-card{padding:16px}.en-community-detailbar{gap:10px}.en-community-toast{top:12px;right:12px;max-width:calc(100vw - 24px)}.en-theme-mode-buttons{gap:8px}.english .en-theme-mode-buttons button{padding:18px 7px}}

.en-community-social{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--en-muted);margin:12px 0}.en-community-social a{font-size:11px}.en-community-filters{display:flex;flex-wrap:wrap;gap:10px}.en-community-filters input{flex:1 1 230px;min-width:160px}.en-community-filters select{flex:0 1 auto;max-width:200px}.en-community-types{flex-basis:100%}@media(max-width:800px){.en-community-filters input{flex-basis:100%}.en-community-filters select{flex:1;min-width:100px}}

/* Sentence copy typing keeps the reference and keyboard controls together. */

.en-agent-manual{font-size:13px;line-height:1.85}.en-agent-summary{padding:16px 20px;background:var(--en-soft);border-radius:12px}.en-agent-steps{padding-left:22px}.en-agent-steps>li{margin:0 0 28px;padding-left:6px}.en-agent-steps h4{font-size:15px;margin-bottom:6px}.en-agent-steps img{display:block;width:100%;max-width:860px;border:1px solid var(--en-line);border-radius:10px;margin:12px 0}.en-agent-manual details{border-top:1px solid var(--en-line);padding:16px 0}.en-agent-manual summary{cursor:pointer;font-weight:600}

.english .is-typing #enAnswer{flex-direction:column;align-items:center}.en-mic-controls #enRecordStatus{flex-basis:100%}
/* Shared import flow and per-letter sentence practice. */
.en-create-step{display:flex;align-items:flex-start;gap:10px;margin:12px 0 2px}.en-create-step>span{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:50%;background:var(--en-soft,#edf6f3);color:var(--en-accent,#178d80);font-size:12px;font-weight:650}.en-create-step h4{margin:1px 0 4px;font-size:14px}.en-create-step p{margin:0;color:var(--en-muted,#738095);font-size:12px;line-height:1.6}
.en-ai-availability{display:inline-block;font-size:11px;font-weight:500;white-space:nowrap;padding:3px 7px;border-radius:5px;background:var(--en-soft,#f1f4f6);color:var(--en-muted,#738095);vertical-align:middle}.en-ai-availability[data-available="true"]{color:var(--en-accent,#178d80)}.en-agent-options{gap:8px}.english .en-agent-options button{font-size:12px;padding:9px 11px}.en-agent-return .list-heading{flex-wrap:wrap;gap:8px}.en-agent-return h3{font-size:13px;margin:0}.en-agent-return textarea{min-height:150px;margin:12px 0}.en-json-file-row input,#enImportUrl{flex:1;min-width:160px}.english input.is-dragover{outline:2px dashed var(--en-accent,#178d80);background:var(--en-soft,#edf6f3)}
.en-sentence-typing{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:12px 18px;width:100%;max-width:950px}.en-sentence-typing .en-sentence-word{width:auto;min-width:1ch;max-width:100%;outline:none}.en-sentence-typing .en-word-target{font-size:clamp(22px,2.7vw,34px);line-height:1.65;letter-spacing:1px;margin:0;text-align:left;color:var(--en-muted,#9aa4ae)}.en-sentence-typing .en-word-target span{position:relative}.en-sentence-typing .en-word-target .is-current{border-bottom:0}.en-sentence-typing .en-word-target .is-current:before{content:"";position:absolute;left:-2px;top:0;height:1.1em;border-left:2px solid var(--en-accent,#178d80)}.en-sentence-word:has(input.bad){box-shadow:0 2px 0 #c65c60}.en-sentence-word:has(input.good){box-shadow:0 2px 0 #209a78}.english[data-theme="dark"] .en-sentence-typing .en-word-target .is-correct{color:#6ec9a4}

/* Keep the import page focused on three actions; longer help lives in settings. */
#enAgentReturn>.en-create-step{margin:0 0 16px}.english #enCreate .en-create-step{align-items:center}.english #enCreate .en-create-step h4{margin:0}.en-ai-copy-help{font-size:13px;line-height:1.7;margin:10px 0}.en-create-notes{font-size:12px;color:var(--en-muted,#738095)}.en-create-notes summary{cursor:pointer}.en-create-notes[open] summary{margin-bottom:8px}.en-agent-return .en-json-file-row{margin-top:0}

/* Corporate Clean: shared surfaces, readable hierarchy and short interaction states.
   Visual reference: https://www.stylekit.top/zh/styles/corporate-clean */
.english[data-theme]{--en-muted:inherit;font-family:"Segoe UI","PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--en-text);font-size:14px;line-height:1.65}
body.en-theme-active{background:var(--en-bg);background-image:none}
body.en-theme-active .app{max-width:1200px}
.english[data-theme] :is(h2,h3,h4){color:var(--en-text);letter-spacing:-.02em;font-weight:650}
.english[data-theme] :is(.panel,.en-course,.en-community-card,.en-wordbook-entry,.en-attendance){background:var(--en-surface);border:1px solid var(--en-line);border-radius:12px;box-shadow:var(--en-shadow)}
.english[data-theme] .help-text{color:var(--en-muted);font-size:12px;line-height:1.75}
.english[data-theme] :is(button,.en-file,a.primary){font-family:inherit;border-radius:8px;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .15s}
.english[data-theme] button:not(:disabled):active{transform:scale(.98)}
.english[data-theme] :is(button,input,select,textarea,a,summary):focus-visible{outline:2px solid var(--en-accent);outline-offset:3px}
.english[data-theme] :is(.primary,.secondary,.en-file){padding:10px 16px;font-size:13px;font-weight:600;line-height:1.4;box-shadow:var(--en-shadow)}
.english[data-theme] .primary{background:var(--en-accent);border:1px solid var(--en-accent);color:var(--en-surface)}
.english[data-theme] .primary:hover:not(:disabled){background:var(--en-accent-hover);border-color:var(--en-accent-hover);box-shadow:0 3px 8px #0f172a14;transform:translateY(-1px)}
.english[data-theme] .secondary{background:var(--en-surface);color:var(--en-text);border:1px solid var(--en-line)}
.english[data-theme] .secondary:hover:not(:disabled){background:var(--en-subtle);border-color:var(--en-muted)}
.english[data-theme] :is(input:not([type=checkbox]):not([type=range]),select,textarea){border-color:var(--en-line);background:var(--en-surface);color:var(--en-text);border-radius:8px}
.english[data-theme] :is(input,textarea)::placeholder{color:var(--en-muted);opacity:.8}
.english[data-theme] :is(input,select,textarea):disabled{background:var(--en-subtle)}
.english[data-theme] nav.en-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:8px;padding:6px;margin:0 0 24px;border:1px solid var(--en-line);border-radius:12px;background:var(--en-subtle);overflow:visible}
.english[data-theme] .en-tabs button{min-width:0;min-height:48px;padding:12px;font-size:14px;font-weight:600;color:var(--en-text);background:var(--en-surface);box-shadow:var(--en-shadow);border:1px solid var(--en-line)}
.english[data-theme] .en-tabs button:hover{background:var(--en-soft);border-color:var(--en-accent);color:var(--en-accent)}
.english[data-theme] .en-tabs button.is-on{background:var(--en-accent);border-color:var(--en-accent);color:var(--en-surface);box-shadow:0 2px 6px #0f172a18;font-weight:700}
.english[data-theme] .en-tabs button span{background:var(--en-subtle);color:var(--en-muted);border-radius:5px;margin-left:7px;font-size:11px}
.english[data-theme] .en-tabs button.is-on span{color:var(--en-accent);background:var(--en-surface)}
@media(max-width:650px){
 .english[data-theme] nav.en-tabs{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:16px}
 .english[data-theme] .en-tabs button{grid-column:span 2;min-height:44px;padding:10px 6px;font-size:12px}
 .english[data-theme] .en-tabs button:nth-child(-n+2){grid-column:span 3}
}
.english[data-theme] .en-hub-workspace{grid-template-columns:150px minmax(0,1fr);gap:24px}
.english[data-theme] .en-preferences-nav{border-right:0;padding-right:0;gap:6px}
.english[data-theme] .en-preferences-nav button{font-size:13px;padding:11px 14px;color:var(--en-muted);border:1px solid transparent}
.english[data-theme] .en-preferences-nav button:hover{background:var(--en-subtle);color:var(--en-text)}
.english[data-theme] .en-preferences-nav button[aria-selected=true]{color:var(--en-accent);background:var(--en-soft);border-color:transparent;box-shadow:inset 3px 0 var(--en-accent)}
.english[data-theme] :is(.en-library-panel,#enWordbook,#enCommunity,#enPreferences,#enCreate){padding:24px}
.english[data-theme] .en-library-panel .list-heading h3{font-size:20px;line-height:1.4;margin-bottom:7px}
.english[data-theme] #enLibraryCaption{max-width:640px}
.english[data-theme] #enLibraryCount{font-size:12px;font-variant-numeric:tabular-nums;color:var(--en-muted)}
.english[data-theme] .en-filters{grid-template-columns:minmax(170px,1.7fr) repeat(4,minmax(100px,1fr));gap:12px;padding:18px 0;margin:12px 0 0;border-block:1px solid var(--en-line)}
.english[data-theme] .en-filters :is(input,select){min-width:0;font-size:12px;padding:10px 11px;background:var(--en-subtle)}
.english[data-theme] .en-courses{gap:18px;margin-top:24px}
.english[data-theme] .en-course{padding:22px;gap:12px;transition:box-shadow .2s,border-color .2s,transform .2s}
.english[data-theme] button.en-course:hover{background:var(--en-surface);border-color:var(--en-accent);box-shadow:0 5px 16px #0f172a0c;transform:translateY(-2px)}
.english[data-theme] .en-course>strong{font-size:18px;line-height:1.55;font-weight:650;color:var(--en-text)}
.english[data-theme] .en-course .en-course-description{font-size:13px;line-height:1.75;color:var(--en-muted)}
.english[data-theme] .en-course .en-tag{font-size:11px;color:var(--en-muted)}
.english[data-theme] .en-course-count{background:var(--en-subtle);color:var(--en-muted);font-size:11px;padding:3px 7px}
.english[data-theme] .en-card-progress{border-color:var(--en-line);padding-top:16px;color:var(--en-muted);font-size:12px;gap:11px}
.english[data-theme] .en-course-meter{background:var(--en-subtle);height:4px}
.english[data-theme] .en-course-shell .en-course-top{padding-right:48px}
.english[data-theme] .en-course-manage{top:18px;right:18px;padding:4px 8px;background:var(--en-surface);border-color:var(--en-line);color:var(--en-muted)}
.en-course-identity{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-height:22px}
.en-version-badge{font-size:10px;line-height:1.6;border:1px solid var(--en-line);border-radius:5px;padding:2px 7px;color:var(--en-accent);background:var(--en-soft);white-space:nowrap}
.en-version-source{font-size:11px;color:var(--en-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.english[data-theme] .en-course-hint{background:var(--en-surface);color:var(--en-muted);border-color:var(--en-line)}
.english[data-theme] :is(.en-context,.en-context button){background:var(--en-surface);color:var(--en-text);border-color:var(--en-line)}
.english[data-theme] .en-context{padding:6px;box-shadow:0 6px 24px #0f172a1a}
.english[data-theme] .en-context button:hover{background:var(--en-soft);color:var(--en-accent)}
.english[data-theme] :is(.en-flashcard,.en-flashcard.is-flipped,.en-word-typing-area){background:var(--en-surface);border-color:var(--en-line);border-radius:12px;box-shadow:var(--en-shadow)}
.english[data-theme] .en-flashcard.is-flipped{background:var(--en-soft);border-color:var(--en-accent)}
.english[data-theme] :is(.en-wordbook-entry,.en-community-card){padding:22px}
.english[data-theme] .en-community-card:hover{box-shadow:0 4px 14px #0f172a0c}
.english[data-theme] .en-community-types button{border-radius:8px}
.english[data-theme] .en-preferences-layout{gap:28px;grid-template-columns:160px minmax(0,1fr)}
.english[data-theme] .en-preferences-content{padding-left:24px;border-left:1px solid var(--en-line)}
.english[data-theme] .en-preferences-pane>h3{font-size:21px;margin-bottom:20px}
.english[data-theme] :is(.en-option-list label,.en-mcp,.ai-route,.ai-route--agent){border-color:var(--en-line);background:var(--en-surface);border-radius:10px;color:var(--en-text)}
.english[data-theme] .en-create-step{gap:12px;margin-top:20px}
.english[data-theme] .en-create-step>span{border-radius:8px;width:30px;height:30px;background:var(--en-soft);color:var(--en-accent)}
.english[data-theme] .en-create-step h4{font-size:16px}
.english[data-theme] .en-create-routes{gap:18px}
.english[data-theme] .en-agent-return{padding:0;border:0;border-radius:0;background:transparent}
.english[data-theme] :is(.en-stage,.en-player){border-color:var(--en-line);box-shadow:var(--en-shadow);border-radius:12px}
.english[data-theme] .en-toolbar{padding:4px 0 8px;border-bottom:1px solid var(--en-line)}
.english[data-theme] .en-stage-meta{color:var(--en-muted)}
.english[data-theme] .en-tile{color:var(--en-text);background:var(--en-subtle);border-color:var(--en-line);border-radius:8px}
.english[data-theme] .en-inputs input{border-radius:4px 4px 0 0;background:transparent}
.english[data-theme] .en-inputs input:focus{background:var(--en-soft);border-bottom-color:var(--en-accent)}
.english[data-theme] :is(.en-inputs input.good,.en-tile.good){border-color:#16a34a}
.english[data-theme] :is(.en-inputs input.bad,.en-tile.bad){border-color:var(--en-danger)}
.english[data-theme] :is(.en-analysis-float>header,.en-directory-float>header,.en-sound-float>header){background:var(--en-surface);border-color:var(--en-line)}
.english[data-theme] dialog.en-editor{width:min(940px,calc(100vw - 40px));height:min(850px,calc(100dvh - 40px));padding:24px;border-radius:12px;background:var(--en-surface);gap:16px}
.english[data-theme] .en-editor::backdrop{background:#0f172a66;backdrop-filter:blur(2px)}
.english[data-theme] .en-editor h3{font-size:21px}
.english[data-theme] .en-editor-fields{gap:14px 20px}
.english[data-theme] .en-editor-fields label{font-size:12px;color:var(--en-muted);gap:7px}
.en-editor-toolbar{display:flex;align-items:center;gap:12px;flex:none;padding-top:4px}
.en-editor-toolbar>span{font-size:12px;color:var(--en-muted);margin-right:auto;font-variant-numeric:tabular-nums}
.en-edit-sentence-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.english[data-theme] .en-editor-sentences{border:0;padding:4px 10px 4px 0}
.english[data-theme] .en-edit-sentence{padding:18px;margin-bottom:14px;border:1px solid var(--en-line);border-radius:10px;background:var(--en-subtle)}
.english[data-theme] .en-edit-sentence strong{font-size:12px;color:var(--en-muted)}
.english[data-theme] .en-edit-sentence textarea{font-size:14px;line-height:1.65;min-height:62px;margin:0 0 10px;background:var(--en-surface);resize:vertical}
.english[data-theme] .en-edit-sentence textarea:last-child{margin:0}
/* Destructive controls must override both primary-button and dark-theme colors. */
.english[data-theme] button.en-danger{color:var(--en-danger);border:1px solid color-mix(in srgb,var(--en-danger) 28%,var(--en-line));background:var(--en-danger-soft);padding:7px 11px;font-size:12px;border-radius:8px}
.english[data-theme] button.en-danger:hover:not(:disabled){color:var(--en-danger-hover);background:var(--en-danger-soft);border-color:var(--en-danger)}
.english[data-theme] button.primary.en-danger{background:#b91c1c;border-color:#b91c1c;color:#fff;padding:10px 16px}
.english[data-theme] button.primary.en-danger:hover:not(:disabled){background:#991b1b;border-color:#991b1b;color:#fff}
.english[data-theme] .en-delete-dialog{background:var(--en-surface);color:var(--en-text);border:1px solid var(--en-line);border-radius:12px;padding:26px}
.english[data-theme] .en-delete-dialog h3{color:var(--en-danger)}
/* Accent roles share the selected palette; answer feedback and grammar colors stay semantic. */
.english[data-theme] :is(.en-today strong,.en-activity-detail>strong,.en-activity-detail[data-checked="true"] small,.en-wave,.en-dict-phonetics,.en-dict-translation,.en-phonetics small){color:var(--en-accent)}
.english[data-theme] :is(.en-today span,.en-hub-intro>p){color:var(--en-muted)}
.english[data-theme] .en-attendance #enCheckIn{background:var(--en-soft);color:var(--en-accent);border-color:var(--en-line)}
.english[data-theme] #enActivityHistory{background:var(--en-subtle)}
.english[data-theme] .en-activity-detail b{color:var(--en-text)}
.english[data-theme] .en-activity-week>button:hover{background:var(--en-soft);border-color:var(--en-accent)}
.english[data-theme] .en-activity-week>button[aria-pressed="true"]{background:var(--en-accent);color:var(--en-surface)}
.english[data-theme] :is(input[type="range"],input[type="checkbox"],input[type="radio"],progress){accent-color:var(--en-accent)}
.english[data-theme] :is(.en-outline.is-on,.en-phrase-chips button[aria-pressed="true"],.en-folder-options button[aria-pressed="true"],.en-toolbar-compact .en-loop-control:has(input:checked)){background:var(--en-soft);border-color:var(--en-accent);color:var(--en-accent)}
.english[data-theme] .en-lookup-word:is(:hover,:focus-visible){color:var(--en-accent);text-decoration-color:var(--en-accent)}
.english[data-theme] .en-lookup-text::selection,.english[data-theme] .en-lookup-text ::selection{background:var(--en-soft);color:var(--en-accent)}
.english[data-theme] .en-word-target-wrap:focus-within{outline-color:var(--en-accent)}
.english[data-theme] .en-word-target-wrap:focus-within .is-current{border-bottom-color:var(--en-accent)}
.english[data-theme] :is(.en-collect-action button.is-collected,.en-collect-action button.is-collected:disabled,.en-collect-feedback){color:var(--en-accent);background:var(--en-soft);border-color:var(--en-line)}
.english[data-theme] .en-wordbook-entry.is-mastered{background:var(--en-soft);border-color:var(--en-line)}
.english[data-theme] :is(.en-mastery-badge.is-mastered,.is-mastered .en-mastery-badge){color:var(--en-accent)!important;background:var(--en-soft)}
.english[data-theme] .en-flashcard.is-mastered:after,.english[data-theme] :is(.en-flashcard-mastery,.en-flashcard.is-flipped .en-flashcard-side){color:var(--en-accent)}
.english[data-theme] .en-flashcard:hover{border-color:var(--en-accent)}
@media(max-width:850px){
 .english[data-theme] .en-hub-workspace{grid-template-columns:125px minmax(0,1fr);gap:16px}
 .english[data-theme] .en-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.english[data-theme] .en-filters>input{grid-column:1/-1}
 .english[data-theme] .en-courses{grid-template-columns:1fr}.english[data-theme] .en-preferences-layout{grid-template-columns:130px minmax(0,1fr);gap:16px}
 .english[data-theme] .en-preferences-content{padding-left:16px}
}
@media(max-width:600px){
 .english[data-theme] :is(.en-library-panel,#enWordbook,#enCommunity,#enPreferences,#enCreate){padding:16px}
 .english[data-theme] .en-hub-workspace{grid-template-columns:1fr;gap:12px}.english[data-theme] #enHubNav{position:static;display:flex;flex-direction:row;overflow:auto;padding:0 0 4px}
 .english[data-theme] .en-preferences-nav button{padding:10px 12px;white-space:nowrap}.english[data-theme] #enHubNav button[aria-selected=true]{box-shadow:inset 0 -2px var(--en-accent)}
 .english[data-theme] .en-preferences-layout{grid-template-columns:1fr}.english[data-theme] .en-preferences-content{border-left:0;padding-left:0}
 .english[data-theme] #enPreferences>.en-preferences-nav{position:static;flex-direction:row;overflow:auto;padding-bottom:10px;border-bottom:1px solid var(--en-line)}
 .english[data-theme] .en-library-panel .list-heading h3{font-size:18px}.english[data-theme] .en-course{padding:18px}
 .english[data-theme] .en-filters{gap:8px}.english[data-theme] .en-filters select{font-size:11px;padding:9px 6px}
 .english[data-theme] dialog.en-editor{width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:none;padding:16px;gap:12px}
 .english[data-theme] .en-editor-fields{gap:10px}.english[data-theme] .en-editor h3{font-size:18px}.english[data-theme] .en-editor>.list-heading{flex-wrap:wrap}
 .english[data-theme] .en-editor .action-row{gap:8px}.english[data-theme] .en-edit-sentence{padding:12px}
}
@media(prefers-reduced-motion:reduce){.english[data-theme] button,.english[data-theme] .en-course{transition:none;transform:none!important}}

/* Domain covers share the community site's fixed palette and Lucide icons. */
.english[data-theme] .en-community-card{padding:0;overflow:hidden}
.en-community-card-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:22px}
.en-community-cover{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:100px;padding:24px;color:var(--domain-foreground);background-color:var(--domain-background);background-image:radial-gradient(currentColor .55px,transparent .55px);background-size:9px 9px;background-blend-mode:soft-light}
.en-community-cover-topic{min-width:0;font-size:11px;font-weight:650;letter-spacing:1.4px;line-height:1.6;overflow-wrap:anywhere}
.en-community-cover-topic small{display:block;margin-top:6px;font-size:7px;letter-spacing:1.8px;opacity:.7}
.en-community-cover-icon{display:block;flex:0 0 48px;width:48px;height:48px;background:currentColor;opacity:.7;-webkit-mask:var(--domain-icon) center/contain no-repeat;mask:var(--domain-icon) center/contain no-repeat}
@media(max-width:620px){.en-community-card-body{padding:18px}.en-community-cover{min-height:88px;padding:20px}.en-community-cover-icon{width:40px;height:40px;flex-basis:40px}}

/* Imported courses skip generation; validation and saving remain explicit. */
#enCreate.is-json-import :is(.en-generation-only,.en-material-actions,.ai-routes,.en-agent-guide,.en-create-notes),
#enCreate.is-json-import #enAgentReturn>:not(#enImportAgent){display:none}
#enCreate.is-json-import #enAgentReturn{margin:0}
/* Immersive sentence practice shares one viewport baseline across all modes. */
body:has(#view-english:not([hidden]).is-practicing) :is(.topbar,.web-header){display:none}
body:has(#view-english:not([hidden]).is-practicing) .app{padding-top:0}
.english .en-workspace{min-height:0;padding-top:4px}
.english .en-analysis-float{overscroll-behavior:contain}
.english #enSpeaking{width:100%;max-width:850px;margin:4px auto 0}
.english :is(#enMicDetails,#enSpeakingDetails){margin:8px auto 0;text-align:left;font-size:12px;border-top:1px solid var(--en-line);padding:8px 0}
.english :is(#enMicDetails,#enSpeakingDetails)>summary{cursor:pointer;font-size:12px;color:var(--en-muted);text-align:left}
.english #enSpeakingDetails[open]{padding:8px 12px;background:var(--en-subtle)}
.english #enSpeakingDetails h3{font-size:14px;line-height:1.5;margin:10px 0}
.english #enNotes{min-height:70px;height:90px;font-size:13px}
.english #enMicDetails .en-mic-controls{justify-content:flex-start;margin:10px 0 4px}
.english #enMicDetails select{max-width:min(320px,65vw);font-size:12px}
.english[data-theme] :is(.en-inputs input.good,.en-tile.good){color:#15803d;border-color:#16a34a}
.english[data-theme] :is(.en-inputs input.bad,.en-tile.bad){color:#b91c1c;border-color:#dc2626}
.english[data-theme="dark"] :is(.en-inputs input.good,.en-tile.good){color:#86efac}
.english[data-theme="dark"] :is(.en-inputs input.bad,.en-tile.bad){color:#fca5a5}

.english .en-record-status{display:flex;align-items:center;justify-content:center;gap:8px;min-height:18px;margin:4px 0}.english .en-record-status meter{width:72px;height:8px}.english .en-record-status .help-text{font-size:11px;margin:0}

.en-speaking-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.english .en-speaking-options>details{width:100%;min-width:0}.english .en-stage{overflow-anchor:none}@media(max-width:650px){.en-speaking-options{grid-template-columns:1fr;gap:0}}

/* Translation settings share the same layout on desktop and the standalone web app. */
.english .en-service-intro{margin:-10px 0 4px}
.english .en-service-card{padding:20px;border:1px solid var(--en-line);border-radius:12px;background:var(--en-surface);min-width:0;gap:12px}
.english .en-service-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.english .en-service-heading h4{margin:0;font-size:15px;color:var(--en-text)}
.english .en-service-badge{font-size:11px;padding:4px 9px;border-radius:20px;color:var(--en-accent);background:var(--en-soft)}
.english .en-service-card .help-text{margin:0;line-height:1.7;overflow-wrap:anywhere}
.english .en-service-card label{display:grid;gap:7px;font-size:12px;margin:0;min-width:0}
.english .en-service-card select,.english .en-service-card input{width:100%;min-width:0;box-sizing:border-box}
.english .en-service-card a{color:var(--en-accent);text-underline-offset:3px}
.english .en-translation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.english .en-translation-fields:empty{display:none}
.english .en-service-save{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:4px 0 12px}
.english .en-service-save .help-text{flex:1;min-width:180px}
@media(max-width:650px){.english .en-service-card{padding:15px}.english .en-translation-fields{grid-template-columns:1fr}}

.en-draft-description{line-height:1.7;color:var(--en-muted);padding:12px 0;border-bottom:1px solid var(--en-line)}

.en-material-screening{margin:10px 0 16px;padding:12px 16px;border:1px solid var(--en-line,#e4eaf0);border-radius:8px;background:var(--en-subtle,#f8fafc)}.en-material-screening select{max-width:100%}.en-material-screening .help-text{margin:8px 0 0;line-height:1.7}#enAgentMaterialHint{overflow-wrap:anywhere}

.en-material-viewbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.en-material-viewbar>label{font-size:12px;font-weight:600}.en-material-viewbar [aria-pressed="true"]{color:var(--en-accent);background:var(--en-soft);border-radius:6px}.en-material-reader{max-height:380px;overflow:auto;padding:18px 22px;margin:8px 0 0;border:1px solid var(--en-line,#dce5ed);border-radius:8px;line-height:1.9;font-size:14px;background:var(--en-subtle,#f8fafc);overflow-wrap:anywhere}.en-material-reader>p{margin:14px 0}.en-material-reader>h4{margin:22px 0 8px;font-size:15px}.en-material-reader>small{display:block}.en-material-metrics{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:10px 0;font-size:12px;color:var(--en-muted,#738095)}.en-pdf-dialog{width:500px;background:var(--en-panel,#fff);color:var(--en-text,#26384b)}.en-pdf-dialog p{font-size:13px;line-height:1.8}.en-pdf-dialog .action-row{justify-content:flex-end;margin-top:20px}

.english .en-screening-layout{display:grid;grid-template-columns:minmax(185px,250px) minmax(0,1fr);gap:22px;align-items:center}.english .en-screening-layout>label{display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;font-size:12px;font-weight:600}.english .en-screening-layout select{width:100%;min-width:0}.english .en-screening-layout .en-material-metrics{margin:0;align-content:center;gap:7px 18px}.english .en-screening-layout #enMaterialCharacters{flex-basis:100%;font-weight:600;color:var(--en-text)}.english .en-screening-layout #enMaterialSuggestion{line-height:1.7}.english .en-material-screening>#enMaterialFilterStatus{margin-top:12px;font-size:11px;line-height:1.7}@media(max-width:650px){.english .en-screening-layout{grid-template-columns:1fr;gap:14px}.english .en-screening-layout #enUseSuggestedCount{padding-left:0;text-align:left}}

.en-review-summary{padding:14px 16px;margin:10px 0 16px;border:1px solid var(--en-line,#e0e7ef);border-radius:8px;background:var(--en-subtle,#f8fafc)}.en-review-summary[data-warnings="true"]{border-color:#e9c982;background:#fff8e8}.en-review-summary p{line-height:1.7;margin:6px 0}.en-review-summary>p:first-child{font-weight:600;font-size:13px}.en-review-preview{max-height:560px;overflow:auto;padding-right:6px}.english .en-preview-choice{display:flex;flex-direction:row;align-items:flex-start;gap:10px;cursor:pointer;line-height:1.7}.english .en-preview-choice input{width:16px;min-width:16px;height:16px;margin:4px 0 0;box-shadow:none}.en-preview-item.is-excluded{opacity:.55}.en-teaching-warning{font-size:12px;line-height:1.7;color:#8b5b0b;padding-left:26px}.en-validation-help{font-size:12px;margin-top:14px;line-height:1.8}.en-validation-help li+li{margin-top:7px}.english[data-theme="dark"] .en-review-summary[data-warnings="true"]{background:#352f24;border-color:#77613a}.english[data-theme="dark"] .en-teaching-warning{color:#eac783}

/* Reading voice is shared by the preferences page and practice popover. */
.en-sound-float .en-practice-voice{display:grid;gap:7px;margin:14px 0;font-size:12px;font-weight:600}.en-sound-float .en-practice-voice select{width:100%;min-width:0}.en-voice-guide{font-size:12px;line-height:1.85;color:var(--en-text,#334354)}.en-voice-guide p{margin:0 0 10px}.en-voice-guide ol{margin:0;padding-left:1.6em}.en-voice-guide li+li{margin-top:8px}.english .en-voice-guide a,.english .en-sound-float a{color:var(--en-accent,#128f88);text-underline-offset:3px}.english #enSpeechRelay[hidden]{display:none!important}

.en-wordbook-fill{margin:0 0 18px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.en-wordbook-fill .help-text{margin:8px 0 0}
.en-wordbook-fill [role="status"]:empty{display:none}
