:root{--bg:#0f1216;--panel:#171c22;--border:#262d36;--text:#e6e9ee;--muted:#9aa4b2;--accent:#5865f2;--good:#3ba55d;--bad:#ed4245}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.55}a{color:var(--accent);text-decoration:none}.container{max-width:820px;margin:0 auto;padding:24px 16px 80px}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.topbar-right{align-items:center;gap:12px;display:inline-flex}.admin-edit{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:13px;text-decoration:none;display:inline-block}.admin-edit:hover{color:inherit;border-color:currentColor}.btn{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:10px 16px;font-size:15px;display:inline-block}.btn-accent{background:var(--accent);border-color:var(--accent);color:#fff}.card-list{margin:16px 0;padding:0;list-style:none}.card-list li{border:1px solid var(--border);background:var(--panel);border-radius:10px;margin-bottom:10px;padding:14px 16px}.video-wrap{aspect-ratio:16/9;border:1px solid var(--border);background:#000;border-radius:12px;width:100%;position:relative;overflow:hidden}.video-wrap iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.flashcard{border:1px solid var(--border);background:var(--panel);text-align:center;white-space:pre-wrap;border-radius:12px;justify-content:center;align-items:center;min-height:120px;padding:28px 20px;font-size:19px;display:flex}.rating-row{gap:8px;margin-top:14px;display:flex}.rating-row .btn{flex:1}.muted{color:var(--muted)}.progress{background:var(--border);border-radius:999px;height:8px;margin:8px 0;overflow:hidden}.progress>span{background:var(--good);height:100%;transition:width .2s;display:block}.card-list li.row-done{border-color:var(--good)}.check{width:1.2em;color:var(--good);display:inline-block}.breadcrumb{color:var(--muted);margin-bottom:8px;font-size:14px}.nav-row{justify-content:space-between;gap:8px;margin-top:32px;display:flex}.nav-row .spacer{flex:1}.lesson-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 16px;font-size:14px;display:flex}.badge{border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:13px;display:inline-block}.badge-mastered{border-color:var(--good);color:var(--good)}.callout{border:1px solid var(--border);background:var(--panel);border-radius:12px;margin:16px 0;padding:14px 18px}.callout ul{margin:8px 0 0;padding-left:20px}.callout-takeaways{border-color:var(--good);background:color-mix(in srgb, var(--good) 10%, var(--panel))}.streak-strip{align-items:center;gap:12px;padding:12px 4px;display:flex}.streak-flame{font-size:24px;line-height:1}.quiz-option{text-align:left;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:12px 14px;font-size:15px}.quiz-option.is-selected{border-color:var(--accent)}.quiz-option.is-correct{border-color:var(--good);background:color-mix(in srgb, var(--good) 18%, var(--panel))}.quiz-option.is-wrong{border-color:var(--bad);background:color-mix(in srgb, var(--bad) 18%, var(--panel))}.quiz-feedback{border:1px solid var(--border);background:var(--panel);border-radius:8px;margin-top:14px;padding:12px 14px}.review-banner{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--panel));color:var(--text);border-radius:12px;justify-content:space-between;align-items:center;margin:8px 0 24px;padding:16px;display:flex}.module-title{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:28px 0 8px;font-size:18px}
