:root{--paper:#f7f7f2;--white:#fff;--ink:#243e35;--muted:#778078;--line:#e3e6dd;--green:#214b40;--lime:#e4edcc;--orange:#bc653f;--soft:#eef1e8;--font:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--font);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bd8d47;outline-offset:4px}button{color:inherit}a{color:inherit}button svg{flex-shrink:0}button{touch-action:manipulation}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:12px}.skip-link:focus{top:8px}.topbar{height:84px;background:var(--paper);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;gap:20px;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;white-space:nowrap}.brand strong{font-size:25px;letter-spacing:3px}.brand-mark{display:flex;gap:3px;align-items:center;width:33px;height:36px}.brand-mark i{display:block;width:4px;border-radius:4px;background:var(--green)}.brand-mark i:nth-child(1){height:15px}.brand-mark i:nth-child(2){height:30px}.brand-mark i:nth-child(3){height:23px}.brand-mark i:nth-child(4){height:11px}.brand-en{font:10px/1.3 Georgia,serif;letter-spacing:2px;margin-left:5px;border-left:1px solid #cbd1c5;padding-left:17px}.top-actions{display:flex;gap:28px;align-items:center}.quiet{background:none;border:0;min-height:44px;font-size:13px}.quiet span{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;background:var(--lime);border-radius:50%;margin-left:5px;font-size:11px}.save-badge{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.save-badge>span:first-child{width:6px;height:6px;background:#6c9274;border-radius:50%}.app-shell{display:grid;grid-template-columns:252px minmax(0,1fr);max-width:1600px;margin:auto;min-height:calc(100vh - 84px)}.sidebar{padding:36px 22px 24px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:28px}.eyebrow{font:10px/1.5 var(--font);letter-spacing:2.3px;font-weight:600;color:var(--muted)}.sidebar-heading{padding:0 12px}.sidebar-heading h2{font-size:17px;letter-spacing:.5px;margin:14px 0 4px}.sidebar-heading p{font-size:12px;color:var(--muted);margin:0}.step-button{display:flex;align-items:center;gap:13px;width:100%;padding:14px 12px;margin:3px 0;min-height:70px;text-align:left;border:1px solid transparent;background:transparent;border-radius:12px;transition:background .2s}.step-button:hover{background:#edf0e6}.step-button.active{background:var(--green);color:#fff}.step-number{font:14px Georgia,serif;display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border:1px solid #cdd5c7;border-radius:50%;color:#667361}.step-button.active .step-number{border-color:#8aab92;color:var(--lime)}.step-button.done:not(.active) .step-number{background:var(--lime);border-color:var(--lime);color:var(--green)}.step-name{font-size:13px;font-weight:500}.step-sub{font-size:10px;display:block;opacity:.58;letter-spacing:.6px;margin-top:2px}.step-button .step-tick{margin-left:auto;opacity:.6}.sidebar-bottom{padding:24px 12px 0;margin-top:12px;border-top:1px solid var(--line)}.completion-label{display:flex;justify-content:space-between;font-size:11px}.completion-label strong{font-weight:500;font-family:Georgia,serif}.progress-track{height:4px;background:#e1e6d9;border-radius:6px;margin-top:12px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--green);width:0;transition:width .3s}.sidebar-bottom p{font-size:11px;color:var(--muted);line-height:1.8;margin:14px 0 20px}.text-button{background:none;border:0;padding:8px 0;font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}main{padding:34px 44px 20px;min-width:0;outline:none}.course-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:30px;border-bottom:1px solid var(--line)}.eyebrow-divider{margin:0 9px;color:#b5bdaf}.course-heading h1{font-size:26px;font-weight:600;letter-spacing:1px;margin:10px 0 6px}.course-heading p{font-size:12px;color:var(--muted);margin:0}.lesson-tag{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;width:94px;height:94px;border-radius:50%;border:1px solid #d4dbc9;transform:rotate(8deg);background:#f0f2e7}.lesson-tag span{font:40px/1 Georgia,serif;font-style:italic}.lesson-tag small{font-size:9px;margin-top:5px;letter-spacing:1px}.step-heading{padding:30px 0 24px;display:flex;justify-content:space-between;gap:16px}.step-kicker{color:var(--orange);letter-spacing:1.5px;font-size:10px}.step-heading h2{font-size:25px;letter-spacing:.5px;margin:7px 0}.step-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.8;max-width:720px}.step-fraction{font:36px/1.2 Georgia,serif;color:#c4cdbb;padding-top:20px;white-space:nowrap}.step-fraction small{font-size:16px;color:#a8b19d}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1fr);gap:24px;align-items:start}.card{background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden}.card-pad{padding:26px}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.card-topline h3{font-size:14px;margin:0}.small-label{font-size:10px;color:var(--muted);letter-spacing:1px}.instruction{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.9;padding:14px 17px;border-radius:10px;background:var(--soft);color:#5e705d;margin-bottom:22px}.instruction svg{flex-shrink:0;margin-top:3px}.chinese-text{font-size:16px;line-height:2.15;margin:0 0 17px}.chinese-text mark{background:#edf1d8;color:#405a37;padding:1px 3px;border-radius:3px}.chinese-row{display:flex;gap:13px;margin:0 0 12px}.line-number{font:11px/2.9 Georgia,serif;color:#a0ab96;flex-shrink:0}.chinese-row p{margin:0}.note-label{font-size:12px;display:flex;justify-content:space-between;margin:23px 0 9px;color:#5b6f60}.note-label span{font-size:10px;color:var(--muted)}textarea{width:100%;resize:vertical;min-height:120px;border:1px solid #dfe5d8;border-radius:10px;background:#fbfcf8;padding:14px 16px;color:var(--ink);font-size:14px;line-height:1.9}textarea::placeholder{color:#9ba591}.side-stack{display:grid;gap:18px}.cover{position:relative;aspect-ratio:16/9;background:#c6c9bb;overflow:hidden}.cover img{display:block;width:100%;height:100%;object-fit:cover}.cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,33,25,.7),transparent 75%)}.cover-label{position:absolute;bottom:19px;left:22px;color:white}.cover-label small{font-size:9px;letter-spacing:2px;opacity:.8}.cover-label strong{display:block;font:italic 25px/1.3 Georgia,serif;margin-top:5px}.duration-chip{position:absolute;right:14px;top:14px;background:#203b33cc;color:white;border:1px solid #ffffff3a;border-radius:5px;font:11px Georgia,serif;padding:4px 8px}.lesson-info{padding:20px 22px}.lesson-info h3{font-size:14px;margin:0 0 8px}.lesson-info p{font-size:12px;color:var(--muted);line-height:1.9;margin:0}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.tag{font-size:10px;border:1px solid var(--line);border-radius:4px;padding:3px 8px;color:#6a7a65;background:#fafbf7}.tip-card{padding:22px;background:#e9eddc;border:none;position:relative}.tip-card .tip-icon{color:#83976d;margin-bottom:6px}.tip-card h3{font-size:14px;margin:0 0 9px}.tip-card p{font-size:12px;line-height:1.9;color:#6b795f;margin:0}.quote{font:italic 21px/1.6 Georgia,serif;margin:13px 0 5px;color:#536843}.bottom-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 0;padding-top:24px;border-top:1px solid var(--line)}.button{min-height:46px;border-radius:8px;border:1px solid transparent;padding:10px 20px;display:inline-flex;justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap}.button.primary{background:var(--green);color:white}.button.primary:hover{background:#306252}.button.secondary{border-color:#d6dfce;background:transparent}.button.secondary:hover{background:#eef1e6}.button.danger{background:#a74738;color:#fff}.button.small{padding:8px 14px;min-height:40px;font-size:12px}.button.soft{background:var(--lime);color:var(--green)}#bottom-hint{font-size:11px;color:var(--muted)}.lesson-footer{display:flex;justify-content:space-between;gap:15px;margin-top:28px;font-size:10px;color:#8e9987;padding-bottom:12px}.player{background:#14251f;position:relative;overflow:hidden}.player video{width:100%;display:block;aspect-ratio:16/9;object-fit:contain;max-height:440px;background:#14251f}.player-error{color:white;padding:20px;font-size:13px}.player-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 17px;background:#fff;border-top:1px solid var(--line);gap:12px}.player-bar label{display:flex;gap:7px;align-items:center;font-size:11px;color:var(--muted)}select{border:1px solid var(--line);border-radius:6px;padding:7px 9px;background:#f8faf4;color:var(--ink);min-height:38px;font-size:12px}.player-bar .hint{font-size:11px;color:var(--muted)}.caption-box{padding:17px 22px;background:#eef1e5;font:18px/1.7 Georgia,serif;min-height:89px}.listen-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(230px,1fr);gap:24px}.checklist{list-style:none;padding:0;margin:0}.checklist li{position:relative;padding:12px 0 12px 28px;font-size:13px;color:#5c6b56;border-bottom:1px solid var(--line)}.checklist li:last-child{border:0}.checklist li:before{content:'✓';position:absolute;left:0;color:#7a925c}.audio-block{display:flex;gap:20px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);background:#f1f4eb}.audio-block audio{width:100%;min-width:0;height:42px}.audio-block label{font-size:11px;color:var(--muted);white-space:nowrap}.cloze-list{padding:10px 25px}.cloze-row{padding:20px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px}.cloze-row:last-child{border:0}.icon-button{width:36px;height:40px;border:1px solid var(--line);background:#f4f6ee;border-radius:50%;display:inline-flex;justify-content:center;align-items:center;padding:0;flex-shrink:0}.icon-button:hover{background:var(--lime)}.cloze-en{font:19px/2.2 Georgia,serif;margin:0}.cloze-input{border:0;border-bottom:1px solid #9ead8a;border-radius:0;background:#f1f4e8;color:var(--green);padding:3px 8px;margin:0 4px;max-width:100%;min-height:40px;font:16px Georgia,serif;vertical-align:baseline}.cloze-input.correct{background:#e4f0db;border-color:#649653}.cloze-input.incorrect{background:#faeee8;border-color:#c97f60}.cloze-zh{font-size:11px;color:#8d9786;margin:5px 0 0}.answer-feedback{font:12px/1.7 var(--font);color:#a65c3c;margin:5px 0 0}.answer-feedback.correct{color:#56774a}.cloze-actions{display:flex;align-items:center;gap:12px;padding:20px 25px;border-top:1px solid var(--line);flex-wrap:wrap}.score{font-size:12px;color:#65745c;margin-left:auto}.transcript-list{padding:8px 18px}.sentence{display:flex;gap:12px;padding:17px 12px;border:1px solid transparent;border-bottom:1px solid var(--line);width:100%;background:transparent;text-align:left;border-radius:8px}.sentence:last-child{border-bottom-color:transparent}.sentence:hover{background:#f6f8f0}.sentence.active{background:#edf2e1;border-color:#dce5cd}.sentence-index{font:11px/2 Georgia,serif;color:#9aa78c;flex-shrink:0}.sentence-body{min-width:0;flex:1}.sentence-en{font:18px/1.7 Georgia,serif;color:#2f4337;display:block}.sentence-zh{font-size:12px;line-height:1.9;color:#829074;display:block;margin-top:6px}.sentence-en em{font-style:normal;color:var(--orange);text-decoration:underline;text-decoration-color:#ddbfa6;text-underline-offset:4px}.sentence-play{color:#809174;padding-top:4px;flex-shrink:0}.transcript-footer{padding:15px 25px;font-size:11px;color:var(--muted);background:#fafbf7;border-top:1px solid var(--line)}.vocab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.vocab-card{padding:24px}.vocab-top{display:flex;justify-content:space-between;gap:10px}.vocab-card h3{font:25px/1.3 Georgia,serif;margin:0 0 5px}.ipa{font:12px Georgia,serif;color:#87917d}.meaning{font-size:13px;font-weight:500;margin:12px 0 8px}.usage{font-size:12px;line-height:1.9;color:#76836b;margin:0}.example{font:16px/1.7 Georgia,serif;margin:16px 0 3px;padding-top:14px;border-top:1px solid var(--line)}.example-zh{font-size:11px;color:#8a9482;margin:0}.vocab-note{font-size:11px;background:#f1f4e8;color:#688057;padding:9px 12px;margin-top:15px;border-radius:6px}.practice-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:24px}.practice-modes{display:flex;background:#e9eee1;border-radius:9px;padding:4px;gap:4px;margin-bottom:16px}.mode-button{border:0;background:transparent;flex:1;min-height:42px;border-radius:6px;color:#728065;font-size:12px}.mode-button.active{background:white;color:var(--green);box-shadow:0 2px 5px #233d3510}.practice-line{padding:24px}.practice-line .sentence-en{font-size:23px}.practice-line .sentence-zh{margin-bottom:18px}.line-switch{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px 0 0}.line-switch span{font:12px Georgia,serif;color:var(--muted)}.practice-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.loop-toggle{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#6b7c5f;padding:7px 0;min-height:40px}.loop-toggle input{accent-color:var(--green);width:16px;height:16px}.recorder{padding:22px;border:1px solid var(--line);background:white;border-radius:14px;margin-top:18px}.recorder h3{font-size:13px;margin:0 0 4px}.recorder p{font-size:11px;line-height:1.8;color:var(--muted);margin:5px 0 14px}.record-button{border:1px solid #d9e1d0;background:#f5f7ef;border-radius:8px;min-height:46px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;width:100%}.record-dot{width:9px;height:9px;border-radius:50%;background:var(--orange)}.record-button.recording{border-color:#c5856a;background:#fbf0e9;color:#a95135}.record-button.recording .record-dot{border-radius:2px;animation:pulse 1s infinite}.recording-result audio{width:100%;height:40px;margin-top:12px}.recording-result .recording-links{display:flex;justify-content:space-between;gap:8px;font-size:10px;margin-top:5px;color:#718163}.recording-links button{border:0;background:none;padding:4px;min-height:32px;font-size:10px}.record-message{font-size:11px;color:#a9583d;line-height:1.8;margin-top:10px}.practice-tips{margin-top:18px}.practice-tips p{margin-bottom:9px}.flash-wrap{max-width:760px;margin:auto}.flash-progress{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted);margin-bottom:14px}.flash-track{display:flex;gap:5px;margin-bottom:24px}.flash-track span{height:4px;flex:1;background:#dfe6d6;border-radius:4px}.flash-track span.done{background:#5a7956}.flashcard{width:100%;min-height:330px;padding:34px 24px;background:#edf1df;border:1px solid #dce4cb;border-radius:18px;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;text-align:center}.flashcard .eyebrow{color:#8c9b78}.flash-question{font-size:27px;margin:30px 0 12px;font-weight:500;letter-spacing:1px}.flash-answer{font:38px/1.4 Georgia,serif;margin:14px 0 8px}.flash-hint{font-size:12px;color:#859476;margin-top:22px}.flash-example{font:17px/1.8 Georgia,serif;color:#667c52;max-width:560px;margin:15px 0}.flip-button{width:100%;margin-top:18px}.rating-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.rating-buttons button{background:white;border:1px solid var(--line);border-radius:9px;padding:11px 8px;min-height:64px;font-size:13px}.rating-buttons button small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.rating-buttons button:last-child{background:var(--green);color:white;border-color:var(--green)}.rating-buttons button:last-child small{color:#bdceb8}.flash-help{font-size:11px;color:var(--muted);text-align:center;margin-top:16px}.summary{text-align:center;padding:42px 25px;background:#edf1e2}.summary-badge{width:70px;height:70px;border-radius:50%;background:var(--green);color:var(--lime);display:grid;place-items:center;margin:auto}.summary h3{font-size:25px;margin:23px 0 12px}.summary p{font-size:13px;color:#748568;line-height:1.9}.summary-stats{display:flex;justify-content:center;gap:40px;margin:26px 0}.summary-stats strong{display:block;font:32px Georgia,serif}.summary-stats span{font-size:11px;color:var(--muted)}.summary-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.review-schedule{margin-top:20px;padding:20px 24px;background:white;border:1px solid var(--line);border-radius:12px}.review-schedule h3{font-size:13px;margin:0 0 12px}.review-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.review-row span:first-child{font:17px Georgia,serif}.review-row span:last-child{font-size:11px;color:var(--muted)}.toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,12px);background:#244b40;color:white;padding:12px 20px;border-radius:10px;z-index:50;max-width:90vw;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);border-radius:18px;padding:0;max-width:440px;width:calc(100% - 36px);color:var(--ink)}dialog::backdrop{background:#1a332b66;backdrop-filter:blur(3px)}.dialog-content{padding:30px}.dialog-content h2{font-size:23px}.dialog-content p{font-size:13px;color:var(--muted)}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.error-panel{padding:40px;text-align:center}.error-panel button{margin-top:16px}.hidden{display:none!important}.fade-in{animation:appear .3s ease-out}@keyframes appear{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pulse{50%{opacity:.4}}@media(min-width:1500px){main{padding:40px 64px}.sidebar{padding-top:42px}.course-heading h1{font-size:30px}}@media(max-width:1150px){.app-shell{grid-template-columns:215px minmax(0,1fr)}.sidebar{padding:30px 14px}.sidebar-heading{padding:0 8px}.sidebar-heading h2{font-size:15px}main{padding:28px}.workspace-grid,.practice-layout{grid-template-columns:minmax(0,1fr)}.workspace-grid>.side-stack{grid-template-columns:1fr 1fr;align-items:start}.workspace-grid>.side-stack>.card:first-child{grid-column:auto}.practice-layout>.side-stack{grid-template-columns:1fr 1fr}.listen-layout{grid-template-columns:minmax(0,1fr)}.listen-layout>.card:last-child{display:block}.listen-layout .checklist{display:flex;gap:24px}.listen-layout .checklist li{flex:1;border:0}.step-heading p{max-width:550px}.topbar{padding:0 28px}.lesson-tag{width:76px;height:76px}.lesson-tag span{font-size:33px}.lesson-tag small{font-size:8px}.vocab-card{padding:21px}.vocab-card h3{font-size:22px}.lesson-footer{flex-direction:column;gap:4px}}@media(max-width:760px){.topbar{height:68px;padding:0 20px}.brand{gap:9px}.brand strong{font-size:22px}.brand-en{font-size:8px;padding-left:12px;letter-spacing:1px}.brand-mark{width:26px}.brand-mark i{width:3px}.top-actions{gap:8px}.save-badge{display:none}.quiet{font-size:12px}.app-shell{display:block}.sidebar{padding:0;border-right:0;gap:0;position:sticky;top:0;z-index:4;background:var(--paper);border-bottom:1px solid var(--line)}.sidebar-heading,.sidebar-bottom{display:none}#step-nav{display:flex;overflow:auto;padding:10px 16px;gap:8px;scrollbar-width:none}#step-nav::-webkit-scrollbar{display:none}.step-button{width:auto;min-width:50px;min-height:45px;margin:0;padding:7px 11px;border-radius:8px;gap:8px;white-space:nowrap;border-color:var(--line)}.step-button.active{min-width:146px}.step-number{width:26px;height:26px;font-size:12px;border:0}.step-button:not(.active) .step-name{display:none}.step-sub,.step-tick{display:none}.step-name{font-size:12px}main{padding:24px 20px 0}.course-heading{padding-bottom:22px}.course-heading .eyebrow{font-size:8px;letter-spacing:1.3px}.course-heading h1{font-size:23px;letter-spacing:0;margin-top:9px}.course-heading p{font-size:10px;max-width:260px;line-height:1.9}.lesson-tag{width:61px;height:61px}.lesson-tag span{font-size:27px}.lesson-tag small{display:none}.step-heading{padding:25px 0 21px}.step-heading h2{font-size:23px}.step-heading p{font-size:12px}.step-fraction{font-size:28px;padding-top:20px}.step-fraction small{font-size:13px}.card{border-radius:12px}.card-pad{padding:21px}.card-topline{padding-bottom:14px;margin-bottom:16px}.workspace-grid{gap:18px}.workspace-grid>.side-stack{grid-template-columns:minmax(0,1fr)}.workspace-grid>.side-stack>.card:first-child{display:none}.workspace-grid>.side-stack .tip-card{padding:19px}.tip-card .quote{font-size:19px}.chinese-text{font-size:15px;line-height:2.05}.chinese-row{gap:9px;margin-bottom:13px}.instruction{font-size:11px;padding:12px 14px;margin-bottom:18px}.bottom-nav{position:sticky;bottom:0;background:#f7f7f2f5;backdrop-filter:blur(10px);padding:14px 0 calc(14px + env(safe-area-inset-bottom));margin-top:25px;z-index:3;gap:12px}.bottom-nav .button{min-height:47px;padding:11px 16px}.bottom-nav .button.primary{flex:1}#bottom-hint{display:none}.lesson-footer{margin:17px 0 0;padding-bottom:22px;font-size:9px}.listen-layout{gap:18px}.listen-layout .checklist{display:block}.listen-layout .checklist li{border-bottom:1px solid var(--line);padding-top:10px;padding-bottom:10px}.player-bar{padding:10px 14px}.player-bar .hint{font-size:10px}.caption-box{font-size:17px;padding:14px 17px;min-height:81px}.audio-block{padding:14px;gap:10px;flex-wrap:wrap}.audio-block audio{flex:1;min-width:190px}.audio-block label{display:flex;align-items:center;gap:7px}.cloze-list{padding:4px 16px}.cloze-row{padding:18px 0;grid-template-columns:29px minmax(0,1fr);gap:9px}.cloze-en{font-size:18px;line-height:2.35}.cloze-input{font-size:15px;margin:0 2px;padding:3px 6px;min-width:0}.cloze-zh{font-size:11px}.icon-button{width:31px;height:36px}.cloze-actions{padding:17px;gap:10px}.score{width:100%;margin:0}.transcript-list{padding:5px 10px}.sentence{padding:14px 9px;gap:9px}.sentence-en{font-size:17px}.sentence-zh{font-size:11px}.transcript-footer{padding:12px 18px}.vocab-grid{grid-template-columns:minmax(0,1fr);gap:14px}.vocab-card{padding:22px}.vocab-card h3{font-size:25px}.practice-layout{gap:18px}.practice-layout>.side-stack{grid-template-columns:minmax(0,1fr);gap:0}.practice-layout .recorder{margin-top:0}.practice-line{padding:20px}.practice-line .sentence-en{font-size:22px}.practice-line .sentence-zh{font-size:12px}.practice-modes{margin-bottom:14px}.flashcard{min-height:300px;padding:28px 18px}.flash-question{font-size:24px}.flash-answer{font-size:30px}.flash-example{font-size:16px}.rating-buttons{gap:8px}.rating-buttons button{font-size:12px}.flash-progress{font-size:11px}.summary{padding:32px 18px}.summary h3{font-size:23px}.summary-stats{gap:25px}.review-schedule{padding:18px}.review-row span:first-child{font-size:15px}.toast{bottom:96px;width:max-content;max-width:calc(100vw - 40px);font-size:12px}.dialog-content{padding:24px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:360px){main{padding-left:14px;padding-right:14px}.brand-en{display:none}.course-heading h1{font-size:21px}.lesson-tag{display:none}.step-heading h2{font-size:21px}.cloze-input{max-width:155px}.button{font-size:12px}}
