.exam-root{--paper:#F6F5F1;--panel:#FFFFFF;--ink:#232420;--ink-soft:#6B6A62;--line:#DEDBD2;--indigo:#2B3A67;--indigo-deep:#1F2C50;--indigo-soft:#E4E7F0;--amber:#C4791F;--amber-soft:#F5E6D3;--sage:#4B7862;--sage-soft:#DEEAE3;--tag-listen:#2B3A67;--tag-read:#3F7A72;--tag-grammar:#A66B2E;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--paper);min-height:100vh;display:flex;flex-direction:column}*{box-sizing:border-box}.teacher-save-bar{background:#1e293b;color:#94a3b8;padding:8px 24px;display:flex;justify-content:space-between;align-items:center;font-size:12px;border-bottom:1px solid #334155}.teacher-save-bar button{background:#4f46e5;color:white;border:none;padding:4px 12px;border-radius:4px;font-weight:600}.teacher-save-bar button:hover{background:#4338ca}.teacher-audio-settings{display:flex;gap:12px;background:#f1f5f9;padding:6px 12px;border-radius:8px;font-size:11px;border:1px dashed #cbd5e1}.setting-item{display:flex;align-items:center;gap:4px}.setting-item input{width:32px;background:white;border:1px solid #cbd5e1;border-radius:4px;text-align:center;font-weight:600}.btn-save-teacher{background:#4f46e5;color:white;border:none;border-radius:6px;margin-right:8px}.btn-save-progress,.btn-save-teacher{padding:6px 14px;font-size:12px;font-weight:600}.btn-save-progress{background:transparent;color:#4f46e5;border:1px solid #4f46e5;border-radius:6px;cursor:pointer;transition:all .15s;white-space:nowrap}.btn-save-progress:hover{background:#eef2ff}.btn-save-progress:disabled{opacity:.5;cursor:not-allowed}.btn-rules{background:#f59e0b;color:white;border:none;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;margin-right:8px;cursor:pointer;transition:background .2s}.btn-rules:hover{background:#d97706}button{font-family:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}.exam-header{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;background:var(--panel);border-bottom:1px solid var(--line)}.eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}.header-left h1{font-family:Fraunces,serif;font-size:19px;font-weight:600;margin:2px 0 0;letter-spacing:-.01em}.header-right{display:flex;align-items:center;gap:14px}.font-size-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden}.font-size-btn{display:flex;align-items:baseline;gap:1px;border:none;background:var(--panel);color:var(--ink-soft);padding:8px 11px;font-size:13px;font-weight:600;line-height:1}.font-size-btn:first-child{font-size:11px}.font-size-btn:last-child{font-size:15px}.font-size-sign{font-size:11px;margin-left:1px}.font-size-btn:hover:not(:disabled){background:var(--paper);color:var(--ink)}.font-size-btn:disabled{opacity:.35;cursor:not-allowed}.font-size-divider{width:1px;align-self:stretch;background:var(--line)}.timer-chip{display:flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid var(--line);border-radius:8px;color:var(--indigo);background:var(--indigo-soft)}.timer-chip.timer-low{color:var(--amber);background:var(--amber-soft);border-color:transparent;animation:pulse-warn 2s ease-in-out infinite}@keyframes pulse-warn{0%,to{opacity:1}50%{opacity:.72}}.timer-digits{font-family:JetBrains Mono,monospace;font-weight:600;font-size:14px;font-variant-numeric:tabular-nums}.timer-module{font-size:12px;font-weight:700;letter-spacing:.02em;opacity:.9}.btn-next-section{display:flex;align-items:center;gap:7px;padding:9px 16px;background:var(--amber-soft);color:var(--amber);border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:.2s}.btn-next-section:hover{background:var(--amber);color:white;border-color:transparent}.btn-submit{display:flex;align-items:center;gap:7px;padding:9px 18px;background:var(--indigo);color:white;border:none;border-radius:8px;font-size:13.5px;font-weight:600;cursor:pointer}.btn-submit:hover{background:#22305A}.btn-sheet-toggle{display:none;align-items:center;gap:7px;padding:9px 16px;background:var(--indigo-soft);color:var(--indigo);border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:.2s}.btn-sheet-toggle:hover{background:var(--line)}.exam-body{flex:1;display:grid;grid-template-columns:1fr 320px;gap:0;max-width:100%;margin:0;width:100%;padding:0;transition:grid-template-columns .2s ease;background:var(--paper)}.exam-body.exam-body-collapsed{grid-template-columns:1fr 60px}.question-panel{background:var(--panel);padding:32px 48px;min-height:calc(100vh - 72px);display:flex;flex-direction:column}.question-content{width:100%;max-width:900px;margin:0 auto;flex:1}.question-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.question-progress{font-size:12px;font-weight:700;color:var(--ink-soft);font-family:var(--font-mono),monospace}.module-tag{gap:6px;padding:6px 12px;background:var(--tint);color:white;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.module-tag,.question-actions{display:flex;align-items:center}.question-actions{gap:8px}.btn-nav-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;cursor:pointer;transition:.2s}.btn-nav-icon:hover:not(:disabled){background:var(--paper);border-color:var(--ink)}.btn-nav-icon:disabled{opacity:.3;cursor:not-allowed}.flag-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);border-radius:10px;cursor:pointer;transition:all .2s}.flag-btn.flag-active,.flag-btn:hover{color:var(--amber);border-color:var(--amber);background:var(--amber-soft)}.passage-block{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:32px;font-size:calc(16px * var(--font-scale, 1));line-height:1.7;color:var(--ink);text-align:justify}.passage-block.passage-with-image{display:flex;flex-wrap:wrap;gap:24px;padding:20px;align-items:flex-start}.passage-image-side{flex:0 0 40%;max-width:40%}.passage-image-side img{width:100%;max-height:320px;object-fit:contain;aspect-ratio:4/3;background:#f1f5f9}.passage-text-side{flex:1;min-width:0;text-align:justify}.audio-media-row{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch;margin-bottom:16px}.audio-media-image{flex:0 0 40%;max-width:40%;max-height:280px;aspect-ratio:4/3;background:#f1f5f9;overflow:hidden}.audio-media-image img{width:100%;height:100%;object-fit:contain}.audio-section .audio-block{margin-bottom:24px}@media (max-width:768px){.audio-media-row,.passage-block.passage-with-image{flex-direction:column}.audio-media-image,.passage-image-side{flex:0 0 auto;max-width:100%}.audio-media-image img,.passage-image-side img{max-height:200px}.audio-media-transcript{height:200px}}.audio-block{padding:8px 0;margin-bottom:32px}.audio-prompt{font-size:14.5px;color:var(--color-ink-soft);line-height:1.5;margin:0 0 16px;font-weight:500}.audio-player{background:transparent;padding:6px 0}.audio-control{display:flex;align-items:center;gap:12px;width:100%}.audio-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--color-ink-soft);cursor:pointer;flex-shrink:0;transition:color .15s ease,background-color .15s ease}.audio-icon-btn:hover:not(:disabled){color:var(--color-ink);background:var(--color-panel)}.audio-icon-btn:disabled{opacity:.4;cursor:not-allowed}.audio-play-btn{width:34px;height:34px;color:var(--color-ink)}.audio-play-btn:hover:not(:disabled){color:var(--color-indigo-custom);background:var(--color-panel)}.audio-track{position:relative;flex:1;min-width:0;height:22px;cursor:pointer;touch-action:none}.audio-track:before{content:"";right:0;background:var(--color-line)}.audio-track-fill,.audio-track:before{position:absolute;left:0;top:50%;height:2px;transform:translateY(-50%);border-radius:999px}.audio-track-fill,.audio-track-thumb{background:var(--color-ink)}.audio-track-thumb{position:absolute;top:50%;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.audio-track-loading .audio-track-fill{width:26%;animation:audio-track-indeterminate 1.2s ease-in-out infinite}@keyframes audio-track-indeterminate{0%{left:-26%}to{left:100%}}.audio-time{font-family:var(--font-mono),monospace;font-size:11px;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:3.2rem;white-space:nowrap;letter-spacing:.01em}.audio-time-remaining{color:var(--color-ink-soft);font-weight:700;text-align:right}.embedded-audio{display:flex;align-items:center;gap:10px}.embedded-audio .audio-track{flex:1 1 0}.audio-speed-controls{display:flex;gap:6px;margin-top:10px}.speed-btn{padding:3px 10px;border-radius:6px;border:none;background:transparent;color:var(--color-ink-soft);font-size:11px;font-weight:600;font-family:var(--font-mono),monospace;cursor:pointer;transition:all .2s}.speed-btn-active,.speed-btn:hover{color:var(--color-indigo-custom);background:var(--color-indigo-soft)}.video-block{padding:8px 0;margin-bottom:32px}.video-prompt{font-size:14.5px;color:var(--color-ink-soft);line-height:1.5;margin:0 0 12px;font-weight:500}.video-container{position:relative;width:100%;background:#000;border-radius:12px;overflow:hidden;margin-bottom:12px}.video-element{display:block;width:100%;height:100%;min-height:560px;object-fit:contain;background:#000}@media (max-width:1023px){.coursework-mobile-video-sticky{position:sticky;top:99px;z-index:20;height:150px}.video-element{min-height:150px}.coursework-video-exercise-header{top:249px}}@media (max-width:767px){.coursework-mobile-video-sticky{top:155px}.coursework-video-exercise-header{top:305px}}@media (max-width:640px){.coursework-mobile-video-sticky{top:126px;height:140px}.video-element{min-height:140px}.coursework-video-exercise-header{top:266px}}.video-player{background:transparent;padding:8px 0}.coursework-audio-sticky-group{top:96px;isolation:isolate;border-bottom:1px solid var(--color-line);box-shadow:0 8px 10px -12px rgba(43,58,103,.6)}@media (max-width:1023px){.coursework-audio-sticky-group{top:99px}}@media (max-width:767px){.coursework-audio-sticky-group{top:155px}}@media (max-width:640px){.coursework-audio-sticky-group{top:126px}}.coursework-audio-sticky-group .audio-block{padding:8px 0 0;margin-bottom:0}.coursework-audio-sticky-group .audio-player{padding:0}.cw-shell .coursework-audio-sticky-group,.cw-shell .coursework-mobile-video-sticky{top:0}@media (max-width:1023px){.cw-shell .coursework-video-exercise-header{top:150px}}@media (max-width:640px){.cw-shell .coursework-video-exercise-header{top:140px}}.coursework-page{display:flex;flex-direction:column}.coursework-page>.w-full{margin-block:0}.video-control{gap:16px;width:100%}.video-control,.video-wave{display:flex;align-items:center}.video-wave{gap:3px;flex:1;height:24px;cursor:pointer}.video-timer{white-space:nowrap;flex-shrink:0}.video-speed-controls{display:flex;gap:6px;margin-top:10px}.plays-left{font-size:12px;color:var(--indigo);font-weight:600;white-space:nowrap}.audio-progress{margin-top:14px}.audio-status{margin-top:12px;font-size:12.5px;color:var(--ink-soft)}.status-highlight{color:var(--indigo);font-weight:600}.question-text{font-size:calc(16px * var(--font-scale, 1));line-height:1.6;font-weight:500;margin:0 0 20px}.options-grid{display:grid;gap:6px;margin-bottom:28px}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-1{grid-template-columns:1fr}.option-row{display:flex;align-items:center;gap:12px;text-align:left;padding:8px 12px;border:none;border-radius:8px;background:transparent;transition:all .2s}.option-row:hover{background:var(--paper)}.option-row.option-selected{background:var(--indigo-soft);color:var(--indigo)}.option-correct-highlight{background:var(--sage-soft)!important;color:var(--sage-custom)!important}.option-wrong-highlight{background:#ffe4e6!important;color:#e11d48!important}.option-dimmed{opacity:.5;background:var(--bg)}.practice-actions-fab{display:flex;flex-direction:row;justify-content:flex-end;gap:12px;margin-top:40px}.btn-icon-fab{width:44px;height:44px;border-radius:50%;border:none;background:transparent;color:var(--ink-soft);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-icon-fab:hover:not(:disabled){color:var(--indigo);background:var(--indigo-soft);transform:scale(1.08)}.btn-icon-fab:disabled{opacity:.3;cursor:not-allowed}.btn-icon-fab-done{color:var(--sage);background:var(--sage-soft)}.btn-icon-fab-active{color:var(--indigo);background:var(--indigo-soft)}.btn-icon-fab-locked{opacity:.25;cursor:not-allowed}@media (max-width:900px){.practice-actions-fab{margin-top:32px;gap:8px}}.analysis-card{margin-top:24px;background:#EEF0F5;border:none;border-radius:14px;padding:24px}.analysis-text{font-size:.875rem}.audio-media-image.image-expanded-inline,.passage-image-side.image-expanded-inline{flex:1 1 100%!important;max-width:100%!important;max-height:none!important}.audio-media-image.image-expanded-inline img,.passage-image-side.image-expanded-inline img{max-height:none!important;height:auto!important;width:100%;object-fit:contain}.transcript-block{margin-bottom:16px;background:#F9F8F6;border:none;border-radius:12px;padding:20px}.transcript-text{font-size:calc(13px * var(--font-scale, 1))}.transcript-scroll{max-height:150px;overflow-y:auto}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .4s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.option-key{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--ink-soft);flex-shrink:0;background:white;transition:all .2s}.option-selected .option-key{border-color:var(--indigo);background:var(--indigo);color:white}.option-text{font-size:calc(14.5px * var(--font-scale, 1))}.answer-sheet{position:relative;background:var(--indigo);color:rgba(255,255,255,.95);padding:14px 12px;display:flex;flex-direction:column;border-radius:0;border:none;border-left:1px solid rgba(255,255,255,.1);overflow:hidden}.answer-sheet:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.035),rgba(255,255,255,.035) 1px,transparent 0,transparent 14px);opacity:1;pointer-events:none}.sheet-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin-bottom:10px;position:relative;z-index:1;width:100%}.answer-sheet h3{font-family:Fraunces,serif;font-size:16px;font-weight:600;color:#ffffff;margin:0;letter-spacing:-.01em}.sheet-toggle{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;border:none;background:transparent;color:rgba(255,255,255,.6);flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;z-index:1;cursor:pointer}.sheet-toggle:hover{background:rgba(255,255,255,.15);color:#ffffff;border-color:transparent;transform:translateY(-1px)}.sheet-toggle:active{transform:translateY(0)}.answer-sheet-collapsed{padding:24px 8px 24px 12px;align-items:center;justify-content:flex-start}.cell-disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.audio-disabled{opacity:.7}.audio-disabled .audio-play-btn{color:#94a3b8!important;pointer-events:none}.collapsed-label{text-orientation:mixed;font-size:14px;color:rgba(255,255,255,.8);letter-spacing:.15em;margin-top:20px}.collapsed-label,.collapsed-progress{writing-mode:vertical-rl;font-weight:600;position:relative;z-index:1}.collapsed-progress{font-family:JetBrains Mono,monospace;font-size:12px;color:#a7f3d0;margin-top:14px}.sheet-sections{flex:1;overflow-y:auto;padding:2px;margin:0 -2px -2px;position:relative;z-index:1}.section-group{margin-bottom:10px}.section-title{font-size:11px;font-weight:700;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.1em;margin:0 0 10px;display:flex;align-items:center;gap:12px}.section-title:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.15)}.sheet-grid{display:grid;grid-template-columns:repeat(8,28px);gap:6px;justify-content:center}.sheet-cell{width:28px;height:28px;border-radius:6px;border:1.5px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);font-size:10px;font-weight:600;color:rgba(255,255,255,.85);display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer}.sheet-cell:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.35);color:#ffffff}.cell-answered{background:#ffffff;border-color:#ffffff;color:#1f2c50}.cell-flagged{outline:2px solid #f59e0b;outline-offset:-1.5px}.cell-current{border-color:#ffffff;background:rgba(255,255,255,.15);color:#ffffff;transform:scale(1.1);z-index:2;background:rgba(255,255,255,.2)}.sheet-legend-horizontal{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:12px;position:relative;z-index:1}.legend-item{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:rgba(255,255,255,.7)}.dot{width:9px;height:9px;border-radius:50%}.dot-answered{background:#ffffff}.dot-flagged{background:transparent;box-shadow:inset 0 0 0 2px #f59e0b}.sheet-progress{display:flex;flex-direction:column;gap:14px;margin-top:auto;padding-top:26px;border-top:1px solid rgba(255,255,255,.1);position:relative;z-index:1}.progress-text{display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.05em}.progress-track{height:7px;background:rgba(255,255,255,.08);border-radius:12px;overflow:hidden}.progress-fill{height:100%;background:#10b981;border-radius:12px;transition:width .4s cubic-bezier(.4,0,.2,1);border:2px solid rgba(16,185,129,.8)}.audio-progress .progress-fill{background:var(--indigo)}.modal-overlay{position:fixed;inset:0;background:rgba(35,36,32,.45);display:flex;align-items:center;justify-content:center;z-index:50}.modal-card{background:var(--panel);border-radius:14px;padding:28px;width:360px;position:relative}.modal-close{position:absolute;top:14px;right:14px;background:none;border:none;color:var(--ink-soft)}.modal-card h3{font-family:Fraunces,serif;font-size:17px;margin:0 0 10px}.modal-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.6;margin:0 0 22px}.modal-actions{display:flex;gap:10px}.btn-secondary{flex:1;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--panel);font-size:13.5px;font-weight:500}.modal-actions .btn-submit,.submitted-screen{flex:1;justify-content:center}.submitted-screen{display:flex;align-items:center;background:var(--paper);min-height:100vh}.results-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:48px;width:100%;max-width:480px;text-align:center;animation:slideUp .5s cubic-bezier(.16,1,.3,1)}.results-card.results-card-wide{max-width:600px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-header{margin-bottom:32px}.results-badge{width:64px;height:64px;background:var(--indigo-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--indigo)}.results-header h2{font-family:Fraunces,serif;font-size:24px;margin:0 0 8px;color:var(--ink)}.results-header p{font-size:14px;margin:0;color:var(--ink-soft)}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:40px}.result-item{display:flex;flex-direction:column;align-items:center;gap:4px}.result-label{font-size:10px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em}.result-value{font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.result-sub{font-size:11px;color:var(--ink-soft)}.result-mini-track{width:100%;height:4px;background:var(--indigo-soft);border-radius:2px;margin-top:6px;overflow:hidden}.result-mini-fill{height:100%;border-radius:2px;transition:width 1s ease-out}.results-actions{display:flex}.btn-exit{background:var(--ink);color:white;border:none;padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:.2s}.btn-exit:hover{opacity:.9;transform:translateY(-1px)}.sheet-legend-practice{margin-top:auto;display:flex;flex-wrap:wrap;gap:12px;position:relative;z-index:1;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.cell-practice-correct{background:var(--sage)!important;border-color:#79a36a;transform:scale(1.05)}.cell-practice-wrong{background:#f43f5e!important;border-color:#fb7185;transform:scale(1.05)}.dot-unanswered{border:1.5px solid rgba(255,255,255,.35)}.btn-confirm-results{width:100%;padding:16px;background:var(--indigo);color:white;border:none;border-radius:12px;font-size:15px;font-weight:600;transition:all .2s;cursor:pointer}.btn-confirm-results:hover{background:var(--indigo-deep);transform:translateY(-2px);box-shadow:0 4px 12px rgba(43,58,103,.2)}.sheet-backdrop{display:none}@media (max-width:900px){.sheet-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);backdrop-filter:blur(2px);z-index:9998;animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.exam-header{flex-wrap:wrap;gap:10px;padding:14px 16px}.header-left h1{font-size:15.5px}.header-right{width:100%;justify-content:space-between;flex-wrap:wrap;gap:8px 8px}.btn-sheet-toggle{display:flex!important}.exam-header .btn-submit span{display:none}.exam-body{grid-template-columns:1fr!important;padding:12px;gap:12px;position:relative}.answer-sheet{position:fixed;top:0;bottom:0;right:0;left:auto;width:85vw;max-width:320px;height:100vh;border-radius:16px 0 0 16px;z-index:9999;padding:24px 14px;border-left:1px solid rgba(255,255,255,.2);border-top:none;transform:translateX(0);animation:slide-in-right .3s cubic-bezier(.16,1,.3,1)}@keyframes slide-in-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}.answer-sheet.answer-sheet-collapsed{display:none!important}.collapsed-label,.collapsed-progress{writing-mode:horizontal-tb;margin-top:0}.collapsed-label{flex:1;text-align:left}.question-panel{padding:24px 16px;min-height:auto;border-radius:12px;border:1px solid var(--line)}.question-content{max-width:100%}.sheet-grid{grid-template-columns:repeat(6,26px);gap:6px;justify-content:center}.sheet-cell{width:26px;height:26px;font-size:10px;border-radius:6px}.nav-buttons .btn-nav{padding:12px 16px}.modal-card{width:min(360px,88vw);padding:22px}.results-card{padding:32px 22px;border-radius:16px}.results-header h2{font-size:21px}.options-grid{grid-template-columns:1fr!important}.option-row{padding:12px 14px;min-height:48px}}@media (max-width:480px){.header-left .eyebrow{display:none}.header-left h1{font-size:14px}.font-size-btn{padding:8px 9px}.audio-control{flex-wrap:wrap}.coursework-page .audio-control{flex-wrap:nowrap;min-width:0;gap:8px}.coursework-page .audio-track{min-width:0}.coursework-page .audio-timer{flex:0 0 auto;min-width:3.5rem;margin-left:0;text-align:right}.plays-left{width:100%;order:3;margin-top:4px}.sheet-grid{grid-template-columns:repeat(5,26px);gap:6px;justify-content:center}.sheet-cell{width:26px;height:26px;font-size:9px;border-radius:6px}.option-row{padding:11px 12px;gap:11px;min-height:46px}.question-topline{flex-wrap:wrap;gap:10px}}.subtitle-area{border-top:1px solid var(--color-line);padding-top:10px;margin-top:0}.subtitle-container{display:flex;flex-direction:column;gap:6px}.subtitle-sentence{line-height:1.9;font-size:calc(1rem * var(--font-scale, 1));color:var(--color-ink-soft);transition:all .2s;padding:4px 8px;border-radius:6px;overflow-wrap:break-word;word-break:break-word}.subtitle-sentence.sentence-active{color:var(--color-ink);background:var(--color-indigo-soft)}.subtitle-sentence-text{display:inline;line-height:1.8;hyphens:auto;-webkit-hyphens:auto;transition:filter .25s ease}.subtitle-line-hidden{filter:blur(8px);-webkit-filter:blur(8px);user-select:none;-webkit-user-select:none}.subtitle-word{cursor:pointer;padding:1px 3px;border-radius:3px;transition:background .12s,color .12s;hyphens:auto;-webkit-hyphens:auto}.subtitle-word:hover{background:var(--color-line);color:var(--color-ink)}.lecture-inline-recorder{display:flex;flex-direction:row;align-items:center;gap:6px;margin-bottom:12px;width:100%}.lecture-icon-button,.lecture-mode-button,.lecture-speed-button{display:inline-grid;place-items:center;height:32px;border:1px solid var(--color-line);background:var(--color-paper);color:var(--color-ink-soft);font-size:.75rem;font-weight:700;transition:background-color .15s,border-color .15s,color .15s}.lecture-speed-button{width:34px;padding:0;border-radius:999px;font-size:.65rem;flex:0 0 auto}.lecture-speed-cycle{width:auto;min-width:46px;padding:0 9px}.lecture-mode-toggle{display:inline-flex;align-items:center;gap:3px;height:38px;padding:3px;border:1px solid var(--color-line);border-radius:12px;background:var(--color-paper)}.lecture-mode-button{border-color:transparent}.lecture-icon-button,.lecture-mode-button{width:32px;border-radius:9px}.lecture-control-active{border-color:var(--color-indigo-custom);background:var(--color-indigo-custom);color:#fff}.lecture-delete-button:hover,.lecture-mode-button:not(.lecture-control-active):hover,.lecture-speed-button:not(.lecture-control-active):hover{background:var(--color-panel);color:var(--color-ink)}.lecture-record-button{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--color-indigo-custom);border-radius:999px;background:var(--color-indigo-custom);color:#fff;transition:background-color .15s,border-color .15s}.lecture-audio-player{flex:1 1 auto;width:100%;min-width:0;height:32px}.lecture-record-button:hover{background:#1f2c50}.lecture-delete-button,.lecture-record-button-active{border-color:var(--color-rose-custom);background:var(--color-rose-soft);color:var(--color-rose-custom)}.lecture-record-button-stopping{border-color:var(--color-amber-custom);background:var(--color-amber-soft);color:var(--color-amber-custom);animation:lecture-stopping-pulse .5s ease-in-out infinite alternate;pointer-events:none}@keyframes lecture-stopping-pulse{0%{opacity:1}to{opacity:.5}}.lecture-upload-button{border-color:var(--color-indigo-custom);background:var(--color-indigo-custom);color:#fff}.lecture-upload-button:hover{background:#1f2c50}@media (max-width:640px){.lecture-speed-button{width:30px;min-width:30px;padding:0;height:26px;font-size:.65rem}.lecture-mode-toggle{height:32px;padding:2px;border-radius:10px}.lecture-mode-button{width:26px;height:26px;border-radius:7px}.lecture-record-button{width:28px;height:28px}.coursework-media-controls{gap:4px}.coursework-media-controls .lecture-mode-toggle{margin-left:4px}.lecture-icon-button{width:26px;height:26px;border-radius:7px}.lecture-speed-cycle{width:auto;min-width:40px;padding:0 7px}}.lecture-control-row{display:flex;align-items:center}.coursework-page .subtitle-container .subtitle-sentence{margin:0;text-align:left;font-family:var(--font-sans);font-size:calc(1rem * var(--font-scale, 1));line-height:1.5;padding:3px 6px}.coursework-page .subtitle-container{gap:2px}.coursework-page .subtitle-sentence-text{line-height:inherit}.coursework-exercise-panel,.coursework-exercise-panel button,.coursework-exercise-panel input{font-family:var(--font-sans)}.coursework-page .coursework-exercise-copy{font-size:calc(1rem * var(--font-scale, 1))!important;line-height:1.5}.coursework-question-card .coursework-question-item+.coursework-question-item{border-top:1px solid color-mix(in srgb,var(--color-line) 55%,transparent)}.subtitle-word.word-active{background:var(--color-indigo-custom);color:#ffffff;border-radius:3px;font-weight:600}.subtitle-translation{font-size:calc(.875rem * var(--font-scale, 1));color:var(--color-sky-custom);margin-top:4px;font-style:italic;padding-left:4px;overflow-wrap:break-word;word-break:break-word;transition:filter .25s ease}.subtitle-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;flex-wrap:wrap;gap:6px}.subtitle-mode-buttons{display:flex;flex-direction:column;gap:4px}.subtitle-mode-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--color-ink-soft);cursor:pointer;transition:all .15s;border-radius:4px}.subtitle-mode-btn:hover{background:var(--color-paper);color:var(--color-ink)}.subtitle-mode-btn-active{background:var(--color-indigo-custom);color:#ffffff}.subtitle-mode-btn-active:hover{background:#1F2C50;color:#ffffff}.audio-media-subtitle{flex:1;min-width:0;border:none;border-radius:8px;background:var(--panel);padding:10px 14px;overflow-y:auto;overflow-x:hidden}.audio-media-subtitle .subtitle-area{border-top:none;padding-top:0;margin-top:0}.audio-media-subtitle .subtitle-container{gap:4px}.audio-media-subtitle .subtitle-sentence{font-size:calc(1rem * var(--font-scale, 1));padding:3px 6px}@media (max-width:480px){.subtitle-sentence{font-size:calc(.9375rem * var(--font-scale, 1))}.subtitle-word{padding:0 1px}.subtitle-controls{flex-direction:row}}.tcf-score-display{width:100%}.cefr-track{margin-bottom:24px}.cefr-track-labels{display:flex;justify-content:space-between;margin-bottom:6px;padding:0 2px}.cefr-track-label{font-size:9px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;width:24px;text-align:center}.cefr-track-bar{position:relative;height:6px;display:flex;border-radius:3px;overflow:hidden;margin-bottom:10px}.cefr-track-segment{flex:1;opacity:.25}.cefr-track-marker{position:absolute;top:-3px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}.cefr-marker-dot{width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.cefr-marker-label{font-size:8px;font-weight:600;color:var(--ink-soft);margin-top:4px;white-space:nowrap;max-width:60px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;letter-spacing:.03em}.tcf-module-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.tcf-module-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px;text-align:center}.tcf-module-header{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:8px}.tcf-module-icon{color:var(--ink-soft);display:flex}.tcf-module-name{font-size:10px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}.tcf-module-body{display:flex;align-items:baseline;justify-content:center;gap:4px;margin-bottom:8px}.tcf-module-score{font-family:JetBrains Mono,monospace;font-size:26px;font-weight:700}.tcf-module-max{font-size:12px;color:var(--ink-soft)}.tcf-module-cefr{font-size:10px;font-weight:800;color:#fff;padding:2px 7px;border-radius:4px;margin-left:6px}.tcf-module-bar-track{width:100%;height:3px;background:var(--line);border-radius:2px;margin-bottom:6px;overflow:hidden}.tcf-module-bar-fill{height:100%;border-radius:2px;transition:width 1s ease-out}.tcf-module-stats{font-size:10px;font-weight:600;color:var(--ink-soft)}.tcf-legacy-note{text-align:center;font-size:11px;color:var(--ink-soft);margin:0}@media (max-width:500px){.tcf-module-cards{grid-template-columns:1fr;gap:8px}}.fullscreen-interrupt-overlay{position:fixed;inset:0;background:rgba(15,23,42,.85);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .25s ease-out}.fullscreen-interrupt-card{background:#fff;border-radius:20px;padding:40px 36px;max-width:400px;width:90vw;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.2);animation:slideUp .35s cubic-bezier(.16,1,.3,1)}.fullscreen-interrupt-icon{width:72px;height:72px;background:#fef3c7;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#d97706}.fullscreen-interrupt-card h2{font-family:Fraunces,serif;font-size:20px;font-weight:700;color:var(--ink,#232420);margin:0 0 12px}.fullscreen-interrupt-card p{font-size:14px;color:var(--ink-soft,#6B6A62);line-height:1.6;margin:0 0 28px}.fullscreen-interrupt-btn{width:100%;padding:14px;background:#4f46e5;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s}.fullscreen-interrupt-btn:hover{background:#4338ca;transform:translateY(-1px);box-shadow:0 4px 12px rgba(79,70,229,.3)}.fullscreen-interrupt-btn:active{transform:translateY(0)}@layer utilities{.coursework-page .text-base{font-size:calc(1rem * var(--font-scale, 1))!important}.coursework-page .text-sm{font-size:calc(.875rem * var(--font-scale, 1))!important}.coursework-page .text-xs{font-size:calc(.75rem * var(--font-scale, 1))!important}.coursework-page .text-lg{font-size:calc(1.125rem * var(--font-scale, 1))!important}.coursework-page .text-xl{font-size:calc(1.25rem * var(--font-scale, 1))!important}.coursework-page .text-2xl{font-size:calc(1.5rem * var(--font-scale, 1))!important}.coursework-page .text-3xl{font-size:calc(1.875rem * var(--font-scale, 1))!important}.coursework-page input[type=text]:not(.conj-input):not(.ortho-cell){font-size:calc(.875rem * var(--font-scale, 1))!important}.coursework-page p{font-size:calc(1rem * var(--font-scale, 1))!important}.coursework-page .ortho-example{font-size:calc(13px * var(--font-scale, 1))!important}.coursework-page .audio-block,.coursework-page .video-block{margin:0!important;padding:0!important}.coursework-page .video-element{display:block;margin:0}.coursework-page .audio-player{padding:0;margin:0}.coursework-page .audio-control{margin-bottom:0}.coursework-page .audio-speed-controls{margin-top:4px}.coursework-page .subtitle-controls{flex-direction:row;align-items:center;gap:6px;margin:0!important}.coursework-page .subtitle-mode-buttons{flex-direction:row;gap:6px}.coursework-page .subtitle-area{border-top:none!important;padding-top:0!important;margin-top:0!important}}