:root{--navy:#0d2742;--ivory:#f7f5ef;--gold:#e6bc48;--ink:#14192b;--bg:#f7f5ef;--panel:#fff;--panel-2:#f1eee3;--text:#0d2742;--fg:#0d2742;--muted:#667085;--line:#e3dfd3;--accent:#0d2742;--accent-ink:#f7f5ef;--link:#1f4c7e;--gold-text:#8a6b0f;--ok:#1e8e5a;--ok-bg:#e4f3ea;--bad:#c23b34;--bad-bg:#fbe9e7;--warn:#946200;--warn-bg:#fbf0d0;--done:#e6bc48;--todo:#e7e2d3;--radius:16px;--shadow:0 1px 2px #0d27420d, 0 10px 30px #0d274212;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sans:"Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display:"Cinzel", Georgia, "Times New Roman", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b1a2b;--panel:#122640;--panel-2:#183151;--text:#f7f5ef;--fg:#f7f5ef;--muted:#a9b4c2;--line:#24405e;--accent:#e6bc48;--accent-ink:#0d2742;--link:#8db8f0;--gold-text:#e6bc48;--ok:#4ccb7f;--ok-bg:#103526;--bad:#ff8077;--bad-bg:#3a1e27;--warn:#e6bc48;--warn-bg:#3a3014;--done:#e6bc48;--todo:#24405e;--shadow:0 1px 2px #00000059, 0 12px 32px #00000047;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0b1a2b;--panel:#122640;--panel-2:#183151;--text:#f7f5ef;--fg:#f7f5ef;--muted:#a9b4c2;--line:#24405e;--accent:#e6bc48;--accent-ink:#0d2742;--link:#8db8f0;--gold-text:#e6bc48;--ok:#4ccb7f;--ok-bg:#103526;--bad:#ff8077;--bad-bg:#3a1e27;--warn:#e6bc48;--warn-bg:#3a3014;--done:#e6bc48;--todo:#24405e;--shadow:0 1px 2px #00000059, 0 12px 32px #00000047;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.45}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit}input,select,textarea{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 10px}code,kbd{font-family:var(--mono);font-size:.9em}kbd{background:var(--panel-2);border:1px solid var(--line);border-radius:5px;padding:1px 6px}h1,h2,h3{margin:0 0 .5rem;line-height:1.2}h1{font-size:1.6rem}h2{font-size:1.2rem}h3{font-size:1rem}p{margin:0 0 .75rem}.muted{color:var(--muted)}.small{font-size:.875rem}.mono{font-family:var(--mono)}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spread{justify-content:space-between}.stack{flex-direction:column;gap:10px;display:flex}.topbar{z-index:20;background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:10px 20px;display:flex;position:sticky;top:0}.topbar .brand{letter-spacing:.2px;color:var(--text);font-weight:700}.topbar nav{gap:14px;display:flex}.topbar nav a{color:var(--muted);padding:4px 2px}.topbar nav a.active{color:var(--text);border-bottom:2px solid var(--accent)}.badge{background:var(--accent);min-width:20px;color:var(--accent-ink);text-align:center;border-radius:10px;padding:0 6px;font-size:.75rem;font-weight:600;display:inline-block}.badge.quiet{background:var(--panel-2);color:var(--muted)}main.page{max-width:1240px;margin:0 auto;padding:22px 20px 60px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card+.card{margin-top:12px}.btn{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--panel-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:#0000;font-weight:600}.btn.primary:hover{filter:brightness(1.05)}.btn.sm{padding:5px 10px;font-size:.875rem}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover{color:var(--text);background:var(--panel-2)}.btn.again{border-color:var(--bad);color:var(--bad)}.btn.hard{border-color:var(--warn);color:var(--warn)}.btn.good{border-color:var(--ok);color:var(--ok)}.btn.easy{border-color:var(--accent);color:var(--accent)}.btn.suggested{box-shadow:0 0 0 3px color-mix(in srgb, currentColor 25%, transparent);font-weight:600}.chip{background:var(--panel-2);color:var(--muted);text-transform:uppercase;letter-spacing:.4px;border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:600;display:inline-block}.chip.type-mcq{color:var(--accent)}.chip.type-cloze{color:var(--warn)}.chip.type-short{color:var(--ok)}.chip.type-true_false{color:#8b5cf6}.chip.type-order{color:#0891b2}.chip.type-locate{color:#db2777}.notice{background:var(--warn-bg);border:1px solid color-mix(in srgb, var(--warn) 35%, transparent);border-radius:8px;padding:10px 12px}.notice.ok{background:var(--ok-bg);border-color:color-mix(in srgb, var(--ok) 35%, transparent)}.notice.bad{background:var(--bad-bg);border-color:color-mix(in srgb, var(--bad) 35%, transparent)}pre.cmd{background:var(--panel-2);border-radius:8px;padding:10px 12px;font-size:.85rem;overflow-x:auto}.progress{background:var(--todo);border-radius:999px;height:8px;overflow:hidden}.progress>span{background:var(--ok);height:100%;transition:width .3s;display:block}.video-list{gap:10px;display:grid}.video-row{grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.video-row .num{font-family:var(--mono);color:var(--muted)}.video-row.disabled{opacity:.6}.learn{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:16px;display:grid}.learn.no-transcript{grid-template-columns:1fr}@media (width<=980px){.learn{grid-template-columns:1fr}}.player-wrap{border-radius:var(--radius);aspect-ratio:16/9;background:#000;position:relative;overflow:hidden}.player-wrap>div,.player-wrap iframe{width:100%;height:100%;position:absolute;inset:0}.player-overlay{color:#fff;text-align:center;background:#000000bf;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:absolute;inset:0}.virtual-player{aspect-ratio:auto;background:var(--panel-2);color:var(--text);border:1px solid var(--line);padding:16px}.virtual-player .clock{font-family:var(--mono);font-size:1.6rem}.scrubber{width:100%}.transcript{align-self:start;max-height:calc(100vh - 80px);padding:8px;position:sticky;top:62px;overflow:auto}.transcript.blurred{pointer-events:none}.transcript.blurred .cue,.transcript.blurred .seg-head{filter:blur(7px);-webkit-user-select:none;user-select:none}.transcript .hidden-note{z-index:2;text-align:center;color:var(--muted);padding:10px;font-weight:600;position:sticky;top:40%}.transcript .cue{cursor:pointer;border-radius:6px;grid-template-columns:52px 1fr;gap:10px;padding:5px 8px;display:grid}.transcript .cue:hover{background:var(--panel-2)}.transcript .cue .t{font-family:var(--mono);color:var(--muted);padding-top:2px;font-size:.78rem}.transcript .seg-head{background:var(--panel);border-bottom:1px solid var(--line);z-index:1;padding:8px;font-size:.85rem;font-weight:600;position:sticky;top:0}.problem .prompt{margin:8px 0 14px;font-size:1.05rem}.options{gap:8px;display:grid}.option{text-align:left;border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;padding:10px 12px}.option:hover{background:var(--panel-2)}.option.selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent)}.option:disabled{cursor:default}.order-list{gap:6px;display:grid}.order-item{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.order-item .handle{gap:2px;display:flex}.feedback{border-radius:8px;margin-top:14px;padding:12px}.feedback.ok{background:var(--ok-bg)}.feedback.bad{background:var(--bad-bg)}.grades{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.kbd-help{grid-template-columns:auto 1fr;gap:4px 12px;font-size:.875rem;display:grid}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.stat{background:var(--panel-2);border-radius:8px;padding:12px}.stat .n{font-size:1.5rem;font-weight:700}.btn.flag.on{color:var(--warn);border-color:var(--warn);background:var(--warn-bg)}.problem-row{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:10px 12px}.problem-row.flagged{border-color:var(--warn);background:var(--warn-bg)}.answer-options{margin:4px 0;padding-left:20px;font-size:.9rem}.answer-options li.correct{color:var(--ok);font-weight:600}.notes textarea{resize:vertical;width:100%;min-height:70px}.offset-ctl{align-items:center;gap:4px;display:inline-flex}.offset-ctl .val{font-family:var(--mono);text-align:center;min-width:52px}.dash{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.spark{align-items:flex-end;gap:2px;height:28px;display:flex}.spark span{background:var(--accent);opacity:.85;border-radius:2px;flex:1;min-height:2px}.spark span.zero{background:var(--todo)}@media (width<=640px){main.page{padding:14px 12px 50px}.topbar{gap:12px;padding:8px 12px}.topbar nav{gap:10px}h1{font-size:1.3rem}.video-row{grid-template-columns:28px 1fr}.video-row>div:last-child{grid-column:2}.transcript{max-height:50vh;position:static}.stat-grid{grid-template-columns:repeat(2,1fr)}.seg-info{flex-direction:column;align-items:flex-start}.grades .btn{flex:40%;justify-content:center}}.chip.type-practice{color:var(--ok)}.lesson-tabs{flex-wrap:wrap;gap:6px;display:flex}.theory-list{gap:8px;display:grid}.theory-item{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:10px 12px}.theory-item .term{font-weight:600}.theory-item.essential{border-left:3px solid var(--accent)}.practice-list{gap:10px;display:grid}.skill-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.btn.ghost.on{color:var(--text);background:var(--panel-2)}.feedback-reply{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.flow{flex-direction:column;gap:12px;scroll-margin-top:70px;display:flex}.flow-head{flex-direction:column;gap:6px;display:flex}.flow-progress{background:var(--todo);border-radius:999px;height:8px;overflow:hidden}.flow-progress>span{background:linear-gradient(90deg, var(--accent), var(--ok));height:100%;transition:width .35s;display:block}.flow-meta{justify-content:space-between;font-size:.85rem;display:flex}.flow-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:22px 24px}.flow-card.concept h2{margin:4px 0 10px;font-size:1.35rem}.flow-card .eyebrow{letter-spacing:.8px;text-transform:uppercase;color:var(--accent);margin-bottom:4px;font-size:.72rem;font-weight:700}.flow-card .defs{gap:8px;margin-top:12px;display:grid}.flow-card .def{border-left:3px solid var(--accent);background:var(--panel-2);border-radius:0 8px 8px 0;padding:10px 12px}.flow-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.flow-actions.subtle{justify-content:space-between;margin-top:10px}.flow-card .problem.minimal .prompt{margin:6px 0 16px;font-size:1.15rem;line-height:1.5}.problem.minimal .btn.flag{opacity:.5}.problem.minimal .btn.flag:hover,.problem.minimal .btn.flag.on{opacity:1}.linkish{color:var(--accent);cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0}.linkish:hover{text-decoration:underline}.mt p{margin:0 0 .6rem}.mt p:last-child{margin-bottom:0}.mt ul,.mt ol{margin:.2rem 0 .6rem;padding-left:22px}.mt .katex{font-size:1.06em}.mt .katex-display{margin:.5em 0}.mt-table{border-collapse:collapse;margin:6px 0 10px;font-size:.95rem}.mt-table th,.mt-table td{border:1px solid var(--line);text-align:center;padding:5px 12px}.mt-table th{background:var(--panel-2);font-weight:600}.explanation{margin-top:8px}.steps{margin-top:6px}.map{gap:18px;display:grid}.unit{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:18px 20px}.unit h2{margin:0 0 2px;font-size:1.15rem}.unit .muted.small{margin-bottom:10px}.lessons{gap:8px;display:grid}.lesson-row{border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:10px;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:grid}.lesson-row:hover{background:var(--panel-2);text-decoration:none}.lesson-row.locked{opacity:.55}.lesson-row .ring{width:30px;height:30px;color:var(--muted);background:conic-gradient(var(--ok) calc(var(--pct) * 1%), var(--todo) 0);border-radius:50%;place-items:center;font-size:.75rem;font-weight:700;display:grid;position:relative}.lesson-row .ring:after{content:"";background:var(--panel);border-radius:50%;position:absolute;inset:4px}.lesson-row .ring span{position:relative}.lesson-row .title{font-weight:600}.lesson-row .blurb{color:var(--muted);font-size:.875rem}.lesson-row .dur{color:var(--muted);font-size:.8rem;font-family:var(--mono)}.activity-list{gap:4px;max-height:70vh;display:grid;overflow:auto}.activity-row{background:var(--panel-2);border-radius:8px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:6px 10px;display:grid}.activity-row.log{background:0 0;padding:3px 10px}.activity-row.log .label{font-family:var(--mono);white-space:pre-wrap;color:var(--muted);font-size:.82rem}.activity-row.bad{background:var(--bad-bg)}.activity-row.running{background:color-mix(in srgb, var(--accent) 12%, transparent)}.pulse{background:var(--accent);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.6;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.topbar .live{align-items:center;gap:6px;display:inline-flex}.math-input{flex:1;align-items:center;gap:8px;min-width:200px;display:flex;position:relative}.math-input math-field{border:1px solid var(--line);background:var(--panel);--caret-color:var(--accent);--selection-background-color:color-mix(in srgb, var(--accent) 30%, transparent);--contains-highlight-background-color:color-mix(in srgb, var(--accent) 12%, transparent);--placeholder-color:var(--muted);border-radius:10px;flex:1;min-height:46px;padding:6px 10px;font-size:1.25rem}.math-input math-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent);outline:none}.math-input.disabled math-field{opacity:.7}.math-input math-field::part(virtual-keyboard-toggle),.math-input math-field::part(menu-toggle){display:none}.math-prefix{color:var(--muted);white-space:nowrap}.math-input .field-wrap{flex:1;display:flex;position:relative}.math-input .field-wrap math-field{flex:1}.math-placeholder{color:var(--muted);pointer-events:none;font-size:.95rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.kbd-toggle{font-size:1.1rem}.login{place-items:center;min-height:calc(100vh - 60px);padding:20px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow);text-align:center;border-radius:16px;padding:28px}.login-card .btn{width:100%}.login-card .row .btn{width:auto}.math-input math-field::part(placeholder){color:var(--muted);opacity:.8;font-size:.95rem;font-style:normal}.clip-bar{background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:6px 12px;font-size:.875rem;display:flex}.skill-list{gap:6px;margin-top:10px;display:grid}.skill-row{text-align:left;border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:8px;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.skill-row:hover{background:var(--panel-2)}.skill-row.missed{border-color:var(--warn)}.skill-row .n{font-family:var(--mono);color:var(--muted)}.skill-row .t{font-weight:600}.card.more summary{cursor:pointer}.report{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;margin-top:8px;padding:10px}.report .row .btn{font-size:.8rem}.math-placeholder{white-space:nowrap;text-overflow:ellipsis;max-width:calc(100% - 24px);overflow:hidden}@media (width<=640px){.math-input{flex-wrap:wrap}.math-prefix{flex-basis:100%;font-size:.9rem}.math-input .field-wrap{flex:calc(100% - 48px)}.topbar{flex-wrap:nowrap}.topbar nav{gap:8px;font-size:.9rem}.topbar .profile{white-space:nowrap;text-overflow:ellipsis;max-width:110px;overflow:hidden}.flow-card{padding:16px 14px}.map>p.muted{font-size:.9rem}}.btn.google{color:#1f1f1f;background:#fff;border-color:#dadce0;justify-content:center;gap:10px;padding:11px 16px;font-weight:600}.btn.google:hover{background:#f6f7f8}.login-card .or{color:var(--muted);align-items:center;gap:10px;font-size:.8rem;display:flex}.login-card .or:before,.login-card .or:after{content:"";background:var(--line);flex:1;height:1px}::selection{background:color-mix(in srgb, var(--gold) 45%, transparent)}body{font-family:var(--sans);letter-spacing:.005em;font-size:16px}h1,h2,h3{font-family:var(--sans);color:var(--text);font-weight:800}h1{font-family:var(--display);letter-spacing:.05em;font-size:clamp(1.5rem,1.15rem + 1.3vw,2.15rem);font-weight:700}a{color:var(--link)}a:focus-visible,.btn:focus-visible,.option:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.lesson-row:focus-visible{outline:3px solid color-mix(in srgb, var(--gold) 75%, transparent);outline-offset:2px}main.page{padding-bottom:160px}.topbar{background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--line);gap:20px;padding:8px 24px}.topbar .brand{color:var(--text);align-items:center;gap:12px;display:inline-flex}.topbar .brand:hover{text-decoration:none}.wordmark{flex-direction:column;line-height:1;display:flex}.wordmark b{font-family:var(--display);letter-spacing:.17em;font-size:1.3rem;font-weight:700}.wordmark small{font-family:"Montserrat", var(--sans);letter-spacing:.44em;color:var(--muted);margin-top:5px;font-size:.5rem;font-weight:600}.atlas-icon{color:var(--text);flex:none;display:inline-flex}.atlas-icon svg{width:auto;height:100%;display:block}.topbar nav{gap:4px;margin-left:8px}.topbar nav a{color:var(--muted);border-bottom:0;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-weight:700;display:inline-flex}.topbar nav a:hover{background:var(--panel-2);color:var(--text);text-decoration:none}.topbar nav a.active{background:var(--accent);color:var(--accent-ink)}.badge{background:var(--gold);color:var(--navy)}.topbar nav a.active .badge{background:var(--accent-ink);color:var(--accent)}.topbar .theme-toggle{margin-left:auto;padding:6px 9px}.btn{border:1.5px solid var(--line);background:var(--panel);border-radius:999px;padding:9px 18px;font-weight:700;transition:transform .12s,background .12s,border-color .12s,box-shadow .12s,filter .12s}.btn:hover{background:var(--panel-2);border-color:color-mix(in srgb, var(--text) 25%, var(--line));text-decoration:none}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 2px 0 color-mix(in srgb, var(--accent) 65%, #000)}.btn.primary:hover{background:var(--accent);filter:brightness(1.1)}.btn.sm{padding:5px 13px;font-weight:700}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--panel-2);border-color:#0000}input,select,textarea{border:1.5px solid var(--line);border-radius:12px;padding:10px 12px}input:focus,textarea:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 28%, transparent);outline:none}.card{border-radius:var(--radius)}.chip{background:var(--panel-2)}.stat{background:var(--panel-2);border-radius:14px}.stat .n{font-family:var(--display);letter-spacing:.02em;font-weight:700}.progress{background:var(--todo);height:10px}.progress>span{background:linear-gradient(90deg, var(--gold), color-mix(in srgb, var(--gold) 65%, var(--ok)))}.notice{border-radius:12px}.player-wrap{box-shadow:var(--shadow);border:1px solid var(--line);border-radius:18px}.transcript{border-radius:var(--radius)}.transcript .cue.active{background:color-mix(in srgb, var(--gold) 22%, transparent)}.transcript .seg-head{font-family:var(--sans);letter-spacing:.01em;font-weight:800}.flow-card{border-radius:22px}.flow-progress{background:var(--todo);height:10px}.flow-progress>span{background:linear-gradient(90deg, var(--gold), color-mix(in srgb, var(--gold) 65%, var(--ok)))}.flow-card .eyebrow{color:var(--gold-text)}.flow-card .def{border-left-color:var(--gold);border-radius:0 12px 12px 0}.flow-card.concept h2{font-size:1.4rem}.clip-bar{background:color-mix(in srgb, var(--gold) 16%, transparent);border-radius:12px}.problem .prompt,.problem.minimal .prompt{font-size:1.15rem}.option{background:var(--panel);border-width:1.5px;border-radius:14px;padding:12px 15px;font-weight:700}.option:hover:not(:disabled){border-color:var(--gold);background:color-mix(in srgb, var(--gold) 10%, var(--panel))}.option.selected{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 35%, transparent);background:color-mix(in srgb, var(--gold) 12%, var(--panel))}.option.correct{border-color:var(--ok);background:var(--ok-bg)}.option.wrong{border-color:var(--bad);background:var(--bad-bg)}.feedback{border-left:5px solid #0000;border-radius:16px;animation:.28s ease-out rise}.feedback.ok{border-left-color:var(--ok)}.feedback.bad{border-left-color:var(--bad)}.feedback strong{font-size:1.05rem}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.skill-row{border-radius:12px}.unit{border-left:5px solid var(--gold);border-radius:18px}.unit h2{font-family:var(--display);letter-spacing:.05em;font-size:1.15rem;font-weight:700}.unit .eyebrow{color:var(--gold-text)!important}.unit.locked{border-left-color:var(--line)}.lesson-row{border-radius:14px;transition:border-color .12s,transform .12s,background .12s}.lesson-row:hover{border-color:var(--gold);transform:translate(2px)}.lesson-row .ring{background:conic-gradient(var(--gold) calc(var(--pct) * 1%), var(--todo) 0)}.lesson-row .ring span{color:var(--gold-text);font-size:.85rem}.hero{background:linear-gradient(135deg, color-mix(in srgb, var(--gold) 20%, var(--panel)), var(--panel) 60%);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:26px 28px;display:flex}.hero .eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text);margin-bottom:6px;font-size:.72rem;font-weight:800}.hero h1{margin:0 0 6px}.hero p{color:var(--muted);max-width:46ch;margin:0}.course-tiles{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.course-tile{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);color:inherit;border-radius:20px;flex-direction:column;gap:14px;padding:22px;text-decoration:none;transition:transform .15s,border-color .15s;display:flex}.course-tile:hover{border-color:var(--gold);text-decoration:none;transform:translateY(-2px)}.course-tile h2{font-family:var(--display);letter-spacing:.04em;margin:0;font-size:1.15rem;font-weight:700}.course-tile .meta{color:var(--muted);font-size:.9rem}.login{background:radial-gradient(900px 520px at 50% -8%, color-mix(in srgb, var(--gold) 20%, transparent), transparent 62%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{text-align:left;border-radius:24px;max-width:440px;padding:30px 30px 26px}.login-card .btn{justify-content:center;width:100%}.lockup{color:var(--text);justify-content:center;align-items:center;gap:22px;margin-bottom:6px;display:flex}.lockup .lockup-rule{opacity:.9;background:currentColor;border-radius:2px;align-self:stretch;width:3px;margin:2px 0}.lockup-text{flex-direction:column;line-height:1;display:flex}.lockup-text b{font-family:var(--display);letter-spacing:.12em;font-size:2.1rem;font-weight:700}.lockup-text small{font-family:"Montserrat", var(--sans);letter-spacing:.42em;margin-top:9px;padding-left:2px;font-size:.62rem;font-weight:500}.lockup.lg .lockup-text b{font-size:3rem}.lockup.lg .lockup-text small{font-size:.85rem}.lockup.sm .lockup-text b{font-size:1.4rem}.lockup.sm .lockup-text small{font-size:.45rem}.atlas-dock{z-index:40;width:300px;box-shadow:none;pointer-events:none;opacity:0;background:0 0;border:0;transition:width .45s cubic-bezier(.2,.8,.2,1),opacity .3s,transform .3s;position:fixed;bottom:0;right:0;transform:translateY(14px)}.atlas-dock.ready{opacity:1;transform:none}.atlas-dock.big{width:min(620px,100vw)}.atlas-stage{aspect-ratio:16/9;background:0 0;position:relative}.atlas-stage svg{width:100%;height:100%;display:block}.atlas-hide{z-index:2;pointer-events:auto;background:color-mix(in srgb, var(--text) 10%, transparent);width:22px;height:22px;color:var(--muted);cursor:pointer;opacity:.45;border:0;border-radius:50%;padding:0;font-size:15px;line-height:1;transition:opacity .15s;position:absolute;top:5px;right:6px}.atlas-hide:hover{opacity:1}.pref-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.seg-ctl{border:1.5px solid var(--line);background:var(--panel);border-radius:999px;display:inline-flex;overflow:hidden}.seg-ctl button{cursor:pointer;color:var(--muted);background:0 0;border:0;padding:7px 16px;font-weight:700}.seg-ctl button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}@media (width<=640px){.topbar{flex-wrap:wrap;gap:4px 8px;padding:8px 12px}.topbar .brand{order:1}.topbar .theme-toggle{order:2;margin-left:auto}.topbar .profile{text-overflow:ellipsis;white-space:nowrap;order:3;max-width:120px;overflow:hidden}.topbar nav{flex:100%;order:4;justify-content:space-between;gap:2px;margin-left:0;overflow-x:auto}.topbar nav a{white-space:nowrap;padding:6px 12px;font-size:.92rem}.wordmark b{font-size:1.1rem}.wordmark small{display:none}.hero{padding:20px 18px}.atlas-dock{width:170px}.atlas-dock.big{width:min(360px,100vw)}.atlas-hide{display:none}main.page{padding-bottom:110px}.lockup{gap:14px}.lockup-text b{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){.atlas-dock,.btn,.lesson-row,.course-tile{transition:none}.feedback{animation:none}}.topbar .profile{margin-left:0}.learn>.side{align-self:start;gap:16px;min-width:0;display:grid;position:sticky;top:70px}.learn>.side .transcript{height:var(--player-h,360px);max-height:none;position:static}.atlas-box{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(180deg, var(--panel) 0%, var(--panel-2) 100%);box-shadow:var(--shadow);padding:6px 6px 0;overflow:hidden}.atlas-box .atlas-stage{background:0 0}.photo-picker{gap:8px;display:grid}.photo-thumbs{flex-wrap:wrap;gap:8px;display:flex}.photo-thumb{border:1px solid var(--line);background:var(--panel-2);border-radius:12px;width:84px;height:84px;position:relative;overflow:hidden}.photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.photo-thumb button{color:#fff;cursor:pointer;background:#0d2742c7;border:0;border-radius:50%;width:22px;height:22px;padding:0;line-height:1;position:absolute;top:3px;right:3px}@media (width<=980px){.learn>.side{position:static}.learn>.side .transcript{height:auto;max-height:50vh}}
