:root{--bg:#f8f6f1;--cream:#fff7ec;--cream-soft:#fffaf1;--orange:#c9843a;--orange-dark:#a86b28;--orange-soft:#f3e6d4;--orange-soft-2:#e5c9a6;--teal:#2d9b83;--teal-soft:#dcfce7;--navy:#1b3a5c;--navy-2:#1a4d50;--slate:#475569;--slate-2:#64748b;--slate-3:#94a3b8;--slate-4:#cbd5e1;--line:#e5e1d7;--line-2:#f1f5f9;--rose:#fee2e2;--rose-dark:#b91c1c;--badge-yellow-bg:#fef3c7;--badge-yellow-fg:#92400e;--badge-blue-bg:#eff6ff;--badge-blue-fg:#1e40af}.assigned-content-row em,.lesson-detail-head em{border-radius:999px;font-style:normal;font-size:11px;font-weight:900;padding:6px 10px}.assigned-content-row em.done,.lesson-detail-head em.done{background:var(--teal-soft);color:#166534}.assigned-content-row em.pending,.lesson-detail-head em.pending{background:var(--orange-soft);color:var(--orange-dark)}.lesson-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.learning-back-link,.lesson-detail-head a{color:var(--slate-2);font-size:13px;font-weight:900;text-decoration:none}.lesson-detail-head p{color:var(--slate-2);font-size:13px;font-weight:800;margin:0 0 6px}.lesson-detail-head h1{color:var(--navy);font-size:28px;font-weight:900;margin:0}.lesson-section{border:1px solid var(--line);border-radius:14px;background:#fff;padding:20px;margin-bottom:16px}.lesson-section h2{color:var(--navy);font-size:16px;font-weight:900;margin:0 0 14px}.lesson-passage,.lesson-translation{border-radius:10px;color:var(--slate);font-size:15px;font-weight:700;line-height:2;margin:0;padding:16px}.lesson-passage{background:#f8fafc}.lesson-translation{background:var(--cream-soft);color:var(--slate-2);margin-top:10px}.lesson-question-list{display:grid;gap:14px}.lesson-question-type{border:1px solid var(--line-2);border-radius:12px;padding:14px}.lesson-question-type h3{color:var(--teal-dark);font-size:14px;font-weight:900;margin:0 0 10px}.lesson-question-item{border-top:1px solid var(--line-2);padding:12px 0}.lesson-question-item:first-of-type{border-top:0}.lesson-question-item p,.lesson-question-item span,.lesson-question-item strong{display:block}.lesson-question-item strong{color:var(--slate);font-size:13px;font-weight:900}.lesson-question-item p,.lesson-question-item span{color:var(--slate-2);font-size:12px;font-weight:700;line-height:1.7;margin:6px 0 0}.lesson-actions{display:flex;align-items:center;justify-content:space-between}.student-layout>main:has(.lesson-overlay),.student-layout>main:has(.sls-lesson-root){padding:0;margin:0;max-width:none}.lesson-overlay{min-height:100vh;background:#f1f5f9;display:flex;flex-direction:column}.lesson-gate{max-width:480px;margin:48px auto;padding:36px 32px;background:#fff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 8px 32px rgba(15,23,42,.08)}.lesson-gate-back,.lesson-header-back{font-size:13px;font-weight:700;color:#64748b;text-decoration:none}.lesson-gate-back:hover,.lesson-header-back:hover{color:#1b3a5c}.lesson-gate-eyebrow{margin-top:20px;font-size:12px;font-weight:700;color:#2d9b83}.lesson-gate h1{margin-top:8px;font-size:22px;font-weight:800;color:#1b3a5c;line-height:1.35}.lesson-gate-desc{margin-top:12px;font-size:14px;line-height:1.7;color:#64748b}.lesson-gate-steps{margin:20px 0 24px;padding-left:20px;font-size:14px;font-weight:600;color:#0f172a;line-height:1.9}.lesson-header{background:#fff;border-bottom:1px solid #e2e8f0;padding:12px 24px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:50}.lesson-header-center{flex:1;min-width:0}.lesson-header-center span{display:block;font-size:11px;font-weight:700;color:#2d9b83}.lesson-header-center strong{display:block;font-size:15px;font-weight:800;color:#1b3a5c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-header-progress{width:120px;height:6px;border-radius:3px;background:#e2e8f0;overflow:hidden;flex-shrink:0}.lesson-header-progress>div{height:100%;background:#2d9b83;border-radius:3px;transition:width .3s ease}.lesson-body{flex:1;padding:24px;max-width:1100px;width:100%;margin:0 auto}.lesson-btn{border:none;border-radius:8px;padding:11px 22px;font-size:14px;font-weight:700;cursor:pointer;transition:filter .15s}.lesson-btn:disabled{opacity:.45;cursor:not-allowed}.lesson-btn-primary{background:#2d9b83;color:#fff}.lesson-btn-ghost{background:transparent;color:#64748b;border:1px solid #e2e8f0}.lesson-btn-full{width:100%;margin-top:12px}.lesson-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.lesson-card-muted{background:#f8fafc}.lesson-card h2,.lesson-card h3{font-size:16px;font-weight:800;color:#1b3a5c;margin-bottom:10px}.lesson-tip{font-size:13px;color:#64748b;line-height:1.6;margin-bottom:14px}.lesson-reading-layout,.lesson-write-layout{display:grid;gap:20px}.lesson-reading-tabs{display:flex;gap:8px;flex-wrap:wrap}.lesson-reading-tabs button{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;font-size:13px;font-weight:700;color:#64748b;cursor:pointer}.lesson-reading-tabs button.active{background:#1b3a5c;border-color:#1b3a5c;color:#fff}.lesson-reading-tabs button.done{border-color:#2d9b83;background:rgba(45,155,131,.1);color:#2d9b83}.lesson-read-tab-num{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:rgba(0,0,0,.06)}.lesson-reading-grid{display:grid;grid-template-columns:1fr 280px;gap:16px}.lesson-side-stack{display:flex;flex-direction:column;gap:12px}.lesson-sentence-list{display:flex;flex-direction:column;gap:6px}.lesson-sentence-list.flat p{padding:8px 10px;border-radius:8px;font-size:14px;line-height:1.65;margin:0}.lesson-sentence-list.flat p.highlight{background:rgba(45,155,131,.12);border:1px solid rgba(45,155,131,.35)}.lesson-sent-row{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:8px;border:1px solid #e2e8f0;background:#fff}.lesson-sent-row.checked{border-color:#2d9b83;background:rgba(45,155,131,.05)}.lesson-sent-play{flex-shrink:0;width:32px;height:32px;border-radius:50%;border:none;background:#1b3a5c;color:#fff;font-size:12px;cursor:pointer}.lesson-audio-bar{display:flex;gap:12px;align-items:center;margin-bottom:14px;padding:12px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.lesson-audio-play{width:40px;height:40px;border-radius:50%;border:none;background:#2d9b83;color:#fff;font-size:14px;cursor:pointer}.lesson-audio-track{flex:1;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.lesson-audio-track span{display:block;height:100%;background:#2d9b83;border-radius:3px}.lesson-passage-block{font-size:14px;line-height:1.75;color:#0f172a;white-space:pre-wrap}.lesson-passage-block.small{font-size:12px;max-height:200px;overflow-y:auto}.lesson-passage-ko{font-size:13px;line-height:1.7;color:#475569}.lesson-vocab-list{list-style:none;padding:0;margin:0}.lesson-vocab-list li{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid #e2e8f0;font-size:13px}.lesson-vocab-list li:last-child{border-bottom:none}.lesson-rec-box{margin-top:16px;padding:20px;border-radius:12px;border:1px dashed #cbd5e1;text-align:center}.lesson-questions-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:20px;align-items:start}.lesson-questions-passage{position:sticky;top:16px;padding:16px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc}.lesson-questions-passage h3{margin:0 0 10px;font-size:13px;font-weight:800;color:#1b3a5c}.lesson-questions-passage .small{font-size:12px;line-height:1.65}.lesson-questions-wrap{max-width:720px;margin:0}.lesson-question-progress{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#64748b;margin-bottom:12px}.lesson-question-progress>div{height:4px;border-radius:999px;background:#e2e8f0;overflow:hidden}.lesson-question-progress>div>span{display:block;height:100%;background:linear-gradient(90deg,#2d9b83,#1b3a5c);border-radius:999px;transition:width .2s ease}.lesson-question-card-compact{margin-top:4px;border:none;padding:0;background:transparent}.lesson-type-block{margin-bottom:16px}.lesson-type-block-items{display:flex;flex-direction:column;gap:14px}.lesson-type-block-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;padding:14px;border-radius:12px;border:1px solid #e2e8f0;background:#fff}.lesson-type-block-no{display:flex;align-items:flex-start;justify-content:center;width:28px;height:28px;border-radius:999px;background:#1b3a5c;color:#fff;font-size:12px;font-weight:800}.lesson-inline-message{margin:8px 0 0;font-size:13px;color:#b45309}.lesson-ox-statement{font-size:15px;line-height:1.7;margin:0 0 12px;color:#0f172a}.lesson-ox-buttons{display:flex;gap:10px}.lesson-ox-btn{flex:1;min-height:48px;border-radius:10px;border:2px solid #e2e8f0;background:#fff;font-size:18px;font-weight:800;cursor:pointer}.lesson-ox-btn.selected{border-color:#1b3a5c;background:rgba(27,58,92,.08);color:#1b3a5c}.lesson-error-mark{background:rgba(239,68,68,.15);text-decoration:line-through}.content-type-preview{margin-top:12px}.content-type-preview-section{margin:0 0 8px;font-size:12px;font-weight:800;color:#2d9b83}.content-type-preview-items{display:flex;flex-direction:column;gap:16px}.content-type-preview-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px;border-radius:12px;border:1px solid #e2e8f0;background:#fff}.content-type-preview-body{min-width:0}.content-type-preview-actions{display:flex;flex-direction:column;gap:6px;padding-top:2px}.content-type-preview-no{display:flex;align-items:flex-start;justify-content:center;width:28px;height:28px;border-radius:999px;background:#1b3a5c;color:#fff;font-size:12px;font-weight:800}.content-type-preview-answer{margin-top:16px;padding:14px;border-radius:10px;background:#f1f5f9}.content-type-preview-answer h4{margin:0 0 8px;font-size:13px}.content-type-preview-answer pre{margin:0;white-space:pre-wrap;font-family:inherit;font-size:13px;line-height:1.6}.content-type-preview-memo{margin-top:16px}.content-type-preview-memo h4{margin:0 0 8px;font-size:13px}.lesson-questions-layout{grid-template-columns:1fr}.lesson-questions-passage{position:static}.lesson-question-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.lesson-question-meta{display:flex;align-items:center;gap:8px;margin-bottom:10px}.lesson-type-badge{font-size:11px;font-weight:800;padding:3px 8px;border-radius:6px;background:rgba(27,58,92,.1);color:#1b3a5c}.lesson-type-name{font-size:12px;font-weight:700;color:#64748b}.lesson-question-prompt{font-size:15px;font-weight:700;color:#0f172a;line-height:1.6;margin-bottom:14px}.lesson-context-box{margin-bottom:14px;padding:12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;font-size:14px;line-height:1.7}.lesson-context-sentence u{text-decoration:underline;text-decoration-color:#2d9b83;text-underline-offset:3px}.lesson-clue-list{margin:0 0 14px;padding-left:18px;font-size:13px;color:#64748b;line-height:1.6}.lesson-choice-grid{display:flex;flex-direction:column;gap:7px}.lesson-choice{display:flex;align-items:center;gap:8px;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:13px;cursor:pointer;background:#fff;text-align:left;width:100%;transition:border-color .15s,background .15s}.lesson-choice:hover:not(:disabled){border-color:#2d9b83;background:rgba(45,155,131,.04)}.lesson-choice.selected{border-color:#3b82f6;background:rgba(59,130,246,.06)}.lesson-choice.correct{border-color:#10b981;background:rgba(16,185,129,.06)}.lesson-choice.wrong{border-color:#ef4444;background:rgba(239,68,68,.05)}.lesson-choice:disabled{cursor:default}.lesson-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.lesson-chip{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid #e2e8f0;background:#fff}.lesson-chip.placed{background:rgba(27,58,92,.1);color:#1b3a5c;border-color:#1b3a5c}.lesson-chip:disabled{opacity:.5;cursor:not-allowed}.lesson-fill-field{display:block}.lesson-fill-field input,.lesson-text-input{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;padding:11px 14px;font-size:14px;margin-top:6px}.lesson-fill-hint{font-size:12px;color:#64748b}.lesson-blank{background:rgba(45,155,131,.15);padding:0 4px;border-radius:3px}.lesson-feedback-banner{margin-top:14px;padding:12px 14px;border-radius:8px;font-size:13px;font-weight:700}.lesson-feedback-banner.ok{background:rgba(16,185,129,.1);color:#065f46;border-left:3px solid #10b981}.lesson-feedback-banner.bad{background:rgba(239,68,68,.08);color:#991b1b;border-left:3px solid #ef4444}.lesson-explanation{margin-top:10px;font-size:13px;color:#475569;line-height:1.6}.lesson-type-explanation{margin-top:16px;padding:12px;border-radius:8px;background:#f8fafc;font-size:13px;color:#475569;line-height:1.6}.lesson-complete{text-align:center;padding:48px 24px;max-width:480px;margin:0 auto}.lesson-complete-icon{font-size:48px;margin-bottom:16px}.lesson-complete h2{font-size:22px;font-weight:800;color:#1b3a5c}.lesson-complete p{margin-top:10px;font-size:14px;color:#64748b;line-height:1.7}.lesson-message{margin-top:12px;padding:10px 12px;border-radius:8px;background:rgba(245,158,11,.12);color:#92400e;font-size:13px;font-weight:700}.lesson-muted{font-size:13px;color:#94a3b8}.lesson-empty{text-align:center;padding:32px}.lesson-upload{margin-bottom:12px}.lesson-hint-list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.lesson-hint-card{padding:10px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;font-size:12px}.lesson-reading-grid,.lesson-write-layout{grid-template-columns:1fr}.lesson-header-progress{display:none}.content-study-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;align-items:start}.content-study-nav{border:1px solid var(--line,#e2e8f0);border-radius:12px;background:#fff;padding:12px;max-height:72vh;overflow:auto;position:sticky;top:12px}.content-study-nav-group+.content-study-nav-group{margin-top:14px;padding-top:14px;border-top:1px solid var(--line,#e2e8f0)}.content-study-nav-title{margin:0 0 8px;font-size:11px;font-weight:800;color:#2d9b83}.content-study-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.content-study-nav-btn{width:100%;text-align:left;border:1px solid transparent;border-radius:10px;background:var(--cream-soft,#f8fafc);padding:10px 12px;cursor:pointer}.content-study-nav-btn.active{border-color:#2d9b83;background:rgba(45,155,131,.08)}.content-study-nav-code{display:block;font-size:11px;font-weight:800;color:#1b3a5c}.content-study-nav-name{display:block;margin-top:2px;font-size:12px;font-weight:700;color:#334155;line-height:1.4}.content-study-nav-count{display:block;margin-top:4px;font-size:11px;color:#64748b}.content-study-main{border:1px solid var(--line,#e2e8f0);border-radius:12px;background:#fff;padding:16px 18px}.content-study-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.content-study-section{margin:0;font-size:11px;font-weight:800;color:#2d9b83}.content-study-type-title{margin:6px 0 0;font-size:18px;font-weight:900;color:#1b3a5c}.content-study-type-code{display:inline-block;margin-right:8px;padding:2px 8px;border-radius:6px;background:rgba(27,58,92,.08);font-size:12px;font-family:ui-monospace,monospace}.content-study-difficulty{margin-left:8px;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:#64748b}.difficulty-stars{display:inline-flex;align-items:center;gap:2px}.difficulty-star{font-size:14px;line-height:1}.difficulty-star.filled{color:#f59e0b}.difficulty-star.empty{color:#cbd5e1}.content-study-instruction{margin:10px 0 0;font-size:14px;line-height:1.6;color:#475569}.content-study-tabs{display:flex;gap:8px;margin:16px 0 12px}.content-study-tabs button{border:1px solid #e2e8f0;border-radius:999px;background:#fff;padding:8px 14px;font-size:13px;font-weight:800;color:#64748b;cursor:pointer}.content-study-tabs button.active{border-color:#1b3a5c;background:#1b3a5c;color:#fff}.content-study-passage{margin-bottom:12px}.content-study-passage summary{cursor:pointer;font-size:13px;font-weight:800;color:#1b3a5c}.content-study-passage-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.content-study-empty{padding:24px;text-align:center;font-size:13px;color:#64748b}.lesson-preview-root .lesson-question-card{border:none;padding:0}.lesson-feedback{margin-top:14px;padding:12px 14px;border-radius:8px;font-size:13px}.lesson-feedback.correct{background:rgba(16,185,129,.1);color:#065f46;border-left:3px solid #10b981}.lesson-feedback.wrong{background:rgba(239,68,68,.08);color:#991b1b;border-left:3px solid #ef4444}.lesson-order-slot{min-height:44px;margin-bottom:10px;padding:10px;border-radius:10px;border:1.5px dashed #e2e8f0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.lesson-target-word-label{margin:0 0 10px;font-size:13px;color:#64748b}.lesson-target-word-label strong{margin-left:6px;color:#1b3a5c;font-size:16px}.lesson-type-difficulty{font-size:12px;color:#64748b}.lesson-target-word{text-decoration-color:#2d9b83}@media (max-width:900px){.content-study-layout{grid-template-columns:1fr}.content-study-nav{position:static;max-height:none}.content-study-passage-grid{grid-template-columns:1fr}}