.vocabPage{color:#183b31;background:#f6f8f4;min-height:80vh}.vocabWrap{max-width:1080px;margin:auto;padding:30px 24px 70px}.vocabTop{display:flex;justify-content:space-between;align-items:center;color:#6c7c71;font-size:13px;margin-bottom:32px}.vocabText{border:0;background:none;color:#426c55;padding:10px 0;font:inherit}.vocabHero{display:flex;justify-content:space-between;align-items:center;gap:20px}.vocabPage h1{font-size:40px;line-height:1.2;letter-spacing:-.04em;margin:10px 0 14px}.vocabPage h2{letter-spacing:-.025em}.vocabHero p,.vocabToday p{color:#687b6d;line-height:1.7}.vocabEyebrow{font-size:13px;font-weight:650;color:#5f806b;letter-spacing:.06em}.vocabGoal{display:flex;align-items:center;gap:12px;white-space:nowrap}.vocabGoal select{padding:10px 14px;border:1px solid #d6e1d6;border-radius:12px;background:#fff;color:#254c38}.vocabMetrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.vocabMetrics article{background:#fff;border:1px solid #e0e8de;border-radius:20px;padding:22px}.vocabMetrics span,.vocabMetrics small{display:block;color:#6c7c71}.vocabMetrics strong{display:block;font-size:40px;line-height:1.2;margin:12px 0;color:#254d36}.vocabToday{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#e4eedf;border:1px solid #d5e2cc;border-radius:24px;padding:28px}.vocabToday h2{font-size:25px;margin:12px 0}.vocabPrimary{border:0;border-radius:999px;background:#315d43;color:#fff;min-height:48px;padding:13px 24px;font-weight:650;white-space:nowrap}.vocabPrimary:hover{background:#254d36}.vocabPrimary:disabled{opacity:.55;cursor:default}.vocabLibrary{margin-top:40px}.vocabLibraryTop{display:flex;justify-content:space-between;align-items:center;gap:20px}.vocabLibraryTop h2{font-size:22px}.vocabLibraryTop small{font-weight:400;font-size:13px;color:#708071}.vocabLibraryTop input{border:1px solid #d8e3d5;background:#fff;border-radius:999px;padding:10px 18px;width:220px}.vocabWordRow{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:24px;width:100%;border:0;border-bottom:1px solid #dfe7da;background:transparent;padding:19px 6px;text-align:left;color:#254d36}.vocabWordRow b{font-size:20px;font-weight:650}.vocabWordRow small{display:block;color:#7a897b;margin-top:7px}.vocabTag{padding:6px 12px;border-radius:999px;background:#eaf0e7;color:#647764;font-size:12px}.vocabTag.due{background:#f5ecd5;color:#826c35}.vocabSessionHead{display:flex;justify-content:space-between;font-size:14px;color:#6c7c71}.vocabProgress{height:5px;background:#dfe9dc;border-radius:9px;margin:18px 0}.vocabProgress i{height:100%;display:block;background:#507f5b;border-radius:9px}.vocabSteps{display:flex;justify-content:center;gap:24px;margin:28px 0;color:#8a9887;font-size:14px}.vocabSteps .active{color:#315d43;font-weight:700}.vocabSteps .done{color:#6a9270}.vocabCard{max-width:760px;margin:auto;background:white;border:1px solid #e0e7da;border-radius:26px;padding:38px;text-align:center;box-shadow:0 12px 40px #274c3610}.vocabBigWord{font-size:clamp(38px,7vw,66px);font-weight:600;overflow-wrap:anywhere;margin:18px 0 12px}.vocabMeaning{white-space:pre-line;font-size:18px;line-height:1.8}.vocabPhonetic{color:#7c897b;font-size:16px}.vocabAudioGrid{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:24px 0}.vocabAudio{display:block;text-align:left;color:#61765f;font-size:13px;max-width:100%}.vocabAudio audio{display:block;width:260px;max-width:100%;margin-top:8px;height:40px}.vocabSource{margin:25px 0;padding:22px;text-align:left;background:#f3f7ef;border-left:3px solid #a4b995;border-radius:0 14px 14px 0;font-size:18px;line-height:1.8;overflow-wrap:anywhere}.vocabSource mark{background:#dceaca;color:#315d43;border-radius:3px;padding:1px 3px}.vocabSource cite{display:block;font-size:12px;color:#7b8973;margin-top:12px;font-style:normal}.vocabSourceEmpty{color:#8a9486;font-size:13px}.vocabRatings{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.vocabRatings button{border:1px solid #d8e2d2;background:#f4f7f1;border-radius:14px;padding:14px;color:#426944;min-height:48px}.vocabRatings button:hover{background:#e6efdf}.vocabCard form{text-align:left;max-width:480px;margin:24px auto 0}.vocabCard form label{display:block;font-size:13px;color:#6d806b;margin-bottom:9px}.vocabCard input{display:block;width:100%;border:1px solid #bccfb4;border-radius:13px;background:#fbfcfa;padding:15px;font-size:24px;color:#264b32}.vocabCard input:focus{outline:2px solid #5f875a}.vocabSpellActions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.vocabCard [role=status]{min-height:28px;color:#8a6641;line-height:1.6}.vocabFootnote{text-align:center;font-size:12px;color:#8c9986;margin:24px auto}.vocabFinish{text-align:center;max-width:800px;margin:50px auto}.vocabFinish h1{font-size:36px}.vocabFinish p{color:#6a7c68;line-height:1.8}.vocabFinishWords{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:32px 0}.vocabFinishWords>span{padding:15px 22px;background:#fff;border:1px solid #dce6d5;border-radius:16px;font-size:20px}.vocabFinishWords small{display:block;font-size:12px;color:#7c8c75;margin-top:8px}.vocabEmpty,.vocabLoading{padding:28px 0;color:#76866f}.vocabPage .srOnly{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.vocabPage button:focus-visible,.vocabPage select:focus-visible{outline:2px solid #527e4b;outline-offset:3px}
.vocabSpellModes{display:flex;justify-content:center;gap:8px;margin:24px 0}.vocabSpellModes button{border:1px solid #d8e2d2;border-radius:999px;padding:8px 16px;background:#fff;color:#688162}.vocabSpellModes button[aria-pressed=true]{background:#e5efde;color:#315d43}.vocabSpellModes button:disabled{opacity:.5}
@media(max-width:650px){.vocabWrap{padding:22px 16px 50px}.vocabTop>span{display:none}.vocabHero{display:block}.vocabPage h1{font-size:33px}.vocabGoal{margin-top:20px;font-size:14px}.vocabMetrics{gap:8px}.vocabMetrics article{padding:15px 10px;border-radius:15px}.vocabMetrics strong{font-size:31px}.vocabMetrics small{font-size:11px;line-height:1.5}.vocabMetrics span{font-size:12px}.vocabToday{display:block;padding:22px}.vocabToday .vocabPrimary{width:100%;margin-top:10px}.vocabLibraryTop{align-items:stretch;flex-direction:column;gap:8px}.vocabLibraryTop input{width:100%}.vocabWordRow{gap:12px}.vocabSteps{gap:16px;font-size:12px}.vocabCard{padding:25px 18px;border-radius:20px}.vocabAudioGrid{gap:14px}.vocabAudio{width:100%}.vocabAudio audio{width:100%}.vocabSource{padding:17px;font-size:16px}.vocabRatings{gap:8px}.vocabRatings button{font-size:14px;padding:13px 6px}.vocabSessionHead{font-size:12px}.vocabFinish{margin-top:30px}.vocabFinish h1{font-size:30px}}
/* Continuous one-word view and personal vocabulary categories. */
.vocabFilters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.vocabFilters button{border:1px solid #d8e2d2;background:#fff;color:#526d55;padding:10px 14px;border-radius:999px}.vocabFilters button[aria-pressed=true]{background:#315d43;color:#fff}.vocabFilters b{margin-left:6px}.vocabReading{text-align:left;min-height:360px;box-shadow:none;max-width:760px;padding:28px 32px}.vocabReading .vocabBigWord{font-size:42px;margin:5px 0 12px}.vocabPronunciation{display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:#718070;font-size:14px}.vocabSound{border:0;background:#f1f6ed;padding:8px 12px;border-radius:10px;color:#315d43}.vocabRecallHint{margin-top:60px;color:#8a9789;text-align:center}.vocabContext{border-top:1px solid #e6ecdf;margin-top:24px;padding-top:14px}.vocabContext h3{font-size:14px;color:#557359}.vocabContext p{font-size:18px;line-height:1.8;overflow-wrap:anywhere}.vocabContext mark{background:#e4efd9;color:#315d43}.vocabContext .vocabTranslation{font-size:16px;color:#788471}.vocabContext small{font-size:12px;color:#8c9786}.vocabBottom{max-width:760px;margin:20px auto 0;display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;background:#f6f8f4;padding:12px 0}.vocabFeedback{flex:1;border:1px solid #d6dfd0;border-radius:12px;background:#fff;padding:16px;color:#635f4e;font-weight:650;min-height:52px}.vocabFeedback.known{background:#315d43;color:#fff;border-color:#315d43}.vocabChosen{font-size:13px;color:#708168}.vocabRoundPosition{text-align:right;font-size:12px;color:#82907e;margin:0 0 20px}.vocabReading .vocabMeaning{margin-top:22px}.vocabPage .vocabBottom button:disabled{opacity:.55}.vocabTop{margin-bottom:24px}
@media(max-width:650px){.vocabReading{background:transparent;border:0;padding:12px 0 120px;min-height:440px}.vocabReading .vocabBigWord{font-size:36px}.vocabBottom{position:fixed;left:0;right:0;bottom:0;z-index:40;margin:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #dfe7d8;background:#f6f8f4}.vocabBottom .vocabChosen{width:100%;text-align:center}.vocabBottom .vocabText{font-size:13px}.vocabFootnote{padding-bottom:90px}.vocabFilters{gap:7px}.vocabFilters button{padding:9px 10px;font-size:13px}.vocabContext p{font-size:17px}.vocabSessionHead{gap:12px}.vocabSessionHead strong{color:#315d43}}

.vocabSoundGroup{display:inline-flex;gap:7px;align-items:center;max-width:100%;flex-wrap:wrap}.vocabReadingSelect{max-width:220px;padding:7px;border:1px solid #d5e2cc;border-radius:8px;color:#315d43;background:#fff}.vocabAudioNote{flex-basis:100%;font-size:12px;line-height:1.7;color:#758672;overflow-wrap:anywhere}.vocabPronunciation{flex-wrap:wrap}
/* A viewport-sized learning room; the library keeps its normal page layout. */
body:has(.vocabImmersive:not(.hidden)){overflow:hidden;overscroll-behavior:none}
body:has(.vocabImmersive:not(.hidden))>.nav,body:has(.vocabImmersive:not(.hidden))>.footer{display:none}
.vocabImmersive{position:fixed;inset:0;z-index:60;height:100dvh;min-height:0;overflow:hidden}
.vocabImmersive .vocabWrap{width:100%;height:100%;max-width:840px;padding:calc(12px + env(safe-area-inset-top)) 24px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:8px;overflow:hidden}
.vocabImmersive .vocabTop{margin:0;flex:none;font-size:12px}
.vocabImmersive .vocabTop>span{display:none}
.vocabImmersive .vocabSessionHead{font-size:12px;flex:none}
.vocabImmersive .vocabProgress{margin:0;height:3px;flex:none}
.vocabImmersive .vocabRoundPosition{margin:0;font-size:11px;flex:none}
.vocabImmersive .vocabReading{flex:1;min-height:0;width:100%;max-width:none;margin:0;border:0;border-radius:0;background:transparent;padding:12px 4px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;text-align:center}
.vocabImmersive .vocabBigWord{font-size:clamp(28px,5vw,56px);margin:0 0 12px;line-height:1.15;flex:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vocabImmersive .vocabPronunciation{justify-content:center;gap:8px;flex:none}
.vocabImmersive .vocabAudioNote{display:none}
.vocabImmersive .vocabRecallHint{margin:24px 0 0;font-size:13px}
.vocabImmersive .vocabMeaning{font-size:18px;line-height:1.55;margin:14px 0 0;flex:none;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vocabImmersive .vocabContext{min-height:0;margin:16px 0 0;padding:12px 0 0;overflow:hidden;text-align:left;flex:none}
.vocabImmersive .vocabContext h3{display:none}
.vocabImmersive .vocabContext p{font-size:17px;line-height:1.5;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vocabImmersive .vocabContext .vocabTranslation{font-size:14px;-webkit-line-clamp:2}
.vocabImmersive .vocabContext small{display:none}
.vocabImmersive .vocabExpand{font-size:12px;padding:4px 0}
.vocabImmersive .vocabBottom{position:static;width:100%;max-width:none;margin:0;padding:8px 0 0;border:0;flex:none;gap:10px}
.vocabImmersive .vocabBottom .vocabChosen{display:none}
.vocabImmersive .vocabBottom #vocabCorrectRating{font-size:12px}
.vocabImmersive .vocabBottom #vocabNext{flex:1}
.vocabDetailDialog{max-width:680px;width:calc(100% - 32px);max-height:85dvh;overflow:auto;border:1px solid #d6e1d6;border-radius:20px;padding:24px;color:#183b31;background:#f6f8f4}
.vocabDetailDialog::backdrop{background:#183b3170}
.vocabDetailDialog .vocabMeaning{white-space:pre-line}
@media(max-width:650px){.vocabImmersive .vocabWrap{padding-left:20px;padding-right:20px}.vocabImmersive .vocabReadingSelect{max-width:145px;font-size:12px}.vocabImmersive .vocabSound{padding:8px;font-size:12px}.vocabImmersive .vocabMeaning{font-size:17px}.vocabImmersive .vocabContext p{font-size:16px}.vocabImmersive .vocabFeedback{padding:14px;min-height:48px}}
@media(max-height:680px){.vocabImmersive .vocabWrap{gap:5px}.vocabImmersive .vocabReading{padding:4px}.vocabImmersive .vocabBigWord{font-size:30px;margin-bottom:8px}.vocabImmersive .vocabMeaning{font-size:15px;margin-top:8px;-webkit-line-clamp:2}.vocabImmersive .vocabContext{margin-top:8px;padding-top:8px}.vocabImmersive .vocabContext p{font-size:14px;-webkit-line-clamp:2}.vocabImmersive .vocabContext .vocabTranslation{-webkit-line-clamp:1}.vocabImmersive .vocabRoundPosition{display:none}}
@media(max-height:480px){.vocabImmersive .vocabWrap{padding-top:4px;padding-bottom:4px;gap:3px}.vocabImmersive .vocabTop .vocabText{padding:5px 0}.vocabImmersive .vocabBigWord{font-size:25px;margin-bottom:5px}.vocabImmersive .vocabMeaning{-webkit-line-clamp:1;line-height:1.4;margin-top:5px}.vocabImmersive .vocabContext{margin-top:5px;padding-top:5px}.vocabImmersive .vocabContext p{-webkit-line-clamp:1;margin-bottom:4px;line-height:1.4}.vocabImmersive .vocabSound{padding:5px 8px}.vocabImmersive .vocabBottom{padding-top:4px}.vocabImmersive .vocabFeedback{padding:10px;min-height:44px}.vocabImmersive .vocabBottom .vocabPrimary{min-height:44px;padding:10px 20px}}
.vocabImmersive .vocabReading{justify-content:flex-start;padding-top:clamp(20px,10dvh,100px)}
@media(max-height:680px){.vocabImmersive .vocabReading{padding-top:20px}}
@media(max-height:480px){.vocabImmersive .vocabReading{padding-top:4px}}
/* Leave room for descenders (g, y, p, q, j) instead of clipping glyphs. */
.vocabImmersive .vocabBigWord{display:block;line-height:1.35;padding:.06em 0 .1em;overflow:visible;-webkit-line-clamp:unset}

/* Full meaning and context stay inside the fixed study screen. */
.vocabImmersive .vocabReading{padding-top:clamp(12px,4dvh,36px)}
.vocabDetails{flex:1;min-height:0;width:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:0 4px 8px;text-align:center}
.vocabImmersive .vocabDetails .vocabMeaning,.vocabImmersive .vocabDetails .vocabContext p{display:block;-webkit-line-clamp:unset;overflow:visible}
.vocabImmersive .vocabDetails .vocabContext{overflow:visible;flex:none}
.vocabImmersive .vocabDetails .vocabContext small{display:block}
@media(max-height:480px){.vocabImmersive .vocabReading{padding-top:4px}}

.vocabExportDialog{width:min(960px,96vw);max-height:92dvh;border:1px solid #d6dfd4;border-radius:18px;padding:20px;color:#193d31;background:#fff}.vocabExportDialog::backdrop{background:rgba(0,0,0,.4)}.vocabExportDialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.vocabExportDialog h2{font-size:22px;margin:0}.vocabExportDialog button,.vocabExportDialog select{min-height:44px;padding:8px 12px;border:1px solid #cbd8c9;border-radius:10px;background:#f5f8f2;color:#193d31}.vocabExportDialog button:disabled{opacity:.5}.vocabExportOptions,.vocabExportActions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px}.vocabExportDialog iframe{display:block;width:100%;height:52dvh;border:1px solid #ddd;background:#fff}.vocabExportDialog iframe[hidden]{display:none}.vocabExportDialog [data-status]{font-size:14px}.vocabLibraryTop{flex-wrap:wrap}
