:root{--bg: #0b0d12;--bg-elev: #14171f;--bg-elev-2: #1c2029;--border: #262b36;--border-soft: #1f2430;--text: #e6e9ef;--text-dim: #9aa3b2;--text-faint: #6b7384;--accent: #7c9cff;--accent-hover: #95aeff;--green: #4ade80;--amber: #fbbf24;--red: #f87171;--radius: 8px;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body,#app{height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}button{font-family:inherit;font-size:13px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);padding:7px 12px;border-radius:var(--radius);cursor:pointer;transition:background .12s,border-color .12s,opacity .12s}button:hover:not(:disabled){border-color:#3a4150;background:#232834}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);color:#0b0d12;border-color:var(--accent);font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.danger{background:transparent;color:var(--red);border-color:#5a2424}button.danger:hover:not(:disabled){background:#2a1414;border-color:var(--red)}input,select{font-family:inherit;font-size:13px;background:var(--bg);color:var(--text);border:1px solid var(--border);padding:6px 10px;border-radius:var(--radius)}input:focus,select:focus{outline:none;border-color:var(--accent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2a2f3a;border-radius:8px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:#353b48}.sidebar.svelte-vuw3vv{grid-area:sidebar;background:var(--bg-elev);border-right:1px solid var(--border);overflow-y:auto;padding:16px 0 40px}.module.svelte-vuw3vv{margin-bottom:16px}.module-name.svelte-vuw3vv{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);padding:8px 16px 4px;font-weight:600}ul.svelte-vuw3vv{list-style:none;margin:0;padding:0}.lesson.svelte-vuw3vv{width:100%;text-align:left;background:transparent;border:none;border-radius:0;padding:6px 16px;display:flex;gap:10px;align-items:baseline;color:var(--text-dim);font-size:13px}.lesson.svelte-vuw3vv:hover{background:var(--bg-elev-2);color:var(--text)}.lesson.active.svelte-vuw3vv{color:var(--text);background:linear-gradient(90deg,rgba(124,156,255,.14),transparent);border-left:2px solid var(--accent);padding-left:14px}.num.svelte-vuw3vv{font-family:var(--mono);font-size:11px;color:var(--text-faint);width:22px;flex-shrink:0}.name.svelte-vuw3vv{flex:1}.sidebar-foot.svelte-vuw3vv{padding:12px 16px;border-top:1px solid var(--border-soft);margin-top:8px}.sidebar-foot.svelte-vuw3vv a:where(.svelte-vuw3vv){color:var(--text-faint);font-size:12px;text-decoration:none}.sidebar-foot.svelte-vuw3vv a:where(.svelte-vuw3vv):hover{color:var(--accent)}.lesson.svelte-4dw8xc{max-width:880px;margin:0 auto;padding:40px 48px 80px}.state.svelte-4dw8xc{color:var(--text-dim);padding:40px 0}.state.err.svelte-4dw8xc{color:var(--red)}.crumbs.svelte-4dw8xc{font-size:12px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.lesson h2{font-size:20px;margin:36px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--border-soft)}.lesson h3{font-size:16px;margin:28px 0 8px;color:var(--text)}.lesson p{color:var(--text);margin:12px 0}.lesson ul,.lesson ol{padding-left:22px}.lesson li{margin:4px 0}.lesson a{color:var(--accent);text-decoration:none}.lesson a:hover{text-decoration:underline}.lesson code{font-family:var(--mono);font-size:12.5px;background:var(--bg-elev-2);border:1px solid var(--border-soft);padding:1px 6px;border-radius:4px}.lesson pre{background:var(--bg-elev);border:1px solid var(--border);padding:14px 16px;border-radius:var(--radius);overflow-x:auto;margin:16px -8px}.lesson pre code{background:transparent;border:none;padding:0;font-size:12.5px;line-height:1.6}.lesson blockquote{margin:16px 0;padding:8px 16px;border-left:3px solid var(--accent);background:#7c9cff0f;color:var(--text-dim);border-radius:0 6px 6px 0}.lesson blockquote p{color:var(--text-dim);margin:4px 0}.lesson table{border-collapse:collapse;width:100%;margin:16px 0;font-size:13px}.lesson th,.lesson td{border:1px solid var(--border);padding:8px 12px;text-align:left}.lesson th{background:var(--bg-elev-2);font-weight:600}.lesson hr{border:none;border-top:1px solid var(--border);margin:28px 0}.app.svelte-16t12jp{display:grid;--sb-w: 260px;--sb-w-wide: 400px;grid-template-columns:var(--sb-w) 1fr;grid-template-rows:44px 1fr;grid-template-areas:"topbar topbar" "sidebar content";height:100vh;overflow:hidden;transition:grid-template-columns .18s ease}.app.sidebar-wide.svelte-16t12jp{grid-template-columns:var(--sb-w-wide) 1fr}.app.sidebar-closed.svelte-16t12jp{grid-template-columns:0 1fr}.app.sidebar-closed.svelte-16t12jp .sidebar{display:none}.topbar.svelte-16t12jp{grid-area:topbar;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--bg-elev);border-bottom:1px solid var(--border)}.icon.svelte-16t12jp{background:transparent;border:none;padding:6px 8px;font-size:16px}.icon.dim.svelte-16t12jp{color:var(--text-faint)}.icon.svelte-16t12jp:disabled{opacity:.4;cursor:default}.brand.svelte-16t12jp{display:flex;align-items:center;gap:8px;font-weight:600}.logo.svelte-16t12jp{font-size:16px}.title.svelte-16t12jp{letter-spacing:.2px}.spacer.svelte-16t12jp{flex:1}.static-label.svelte-16t12jp{color:var(--text-faint);font-size:12px}.content.svelte-16t12jp{grid-area:content;overflow-y:auto}.lesson-nav.svelte-16t12jp{max-width:880px;margin:0 auto;padding:0 48px 60px;display:flex;justify-content:space-between;gap:12px}.nav-btn.svelte-16t12jp{background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text);padding:10px 18px;border-radius:var(--radius);font-size:13px;font-weight:500}.nav-btn.svelte-16t12jp:hover{border-color:var(--accent);color:var(--accent)}.nav-btn.next.svelte-16t12jp{margin-left:auto}@media (max-width: 1200px){.app.svelte-16t12jp{--sb-w: 220px;--sb-w-wide: 320px}}@media (max-width: 900px){.app.svelte-16t12jp{grid-template-columns:1fr;grid-template-areas:"topbar" "content"}.sidebar{display:none}}
