:root{--bg:#f6f8fb;--bg-elev:#fff;--bg-sunken:#eef2f7;--text:#181c25;--text-muted:#5b6475;--border:#dde3ec;--brand:#0176d3;--brand-dark:#032d60;--accent:#0176d3;--success:#2e844a;--danger:#ba0517;--warning:#a96404;--code-bg:#f3f5f9;--code-text:#1f2430;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--shadow-lg:0 10px 30px #1018281f;--radius:12px;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono", Menlo, Consolas, monospace;--topbar-h:60px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#0d1117;--bg-elev:#151b24;--bg-sunken:#0a0e14;--text:#e6eaf0;--text-muted:#9aa5b5;--border:#283241;--brand:#4fa3ff;--brand-dark:#9ccbff;--success:#3fb26a;--danger:#ff6b6b;--warning:#f0b44c;--code-bg:#0f141b;--code-text:#dfe6ee;--shadow:0 1px 2px #0006;--shadow-lg:0 10px 30px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--topbar-h) + 16px)}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.01em;line-height:1.25}.muted{color:var(--text-muted)}.small{font-size:.85rem}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:50;height:var(--topbar-h);background:color-mix(in srgb, var(--bg-elev) 88%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--border);align-items:center;gap:18px;padding:0 20px;display:flex;position:sticky;top:0}.topbar:after{content:"";background:linear-gradient(90deg, var(--brand), var(--accent));opacity:.8;height:2px;position:absolute;bottom:-1px;left:0;right:0}.brand{color:var(--text);white-space:nowrap;align-items:center;gap:8px;font-size:1.1rem;display:flex}.brand:hover{text-decoration:none}.brand-logo{font-size:1.5rem}.brand strong{color:var(--brand)}.mainnav{gap:4px;display:flex}.mainnav a{color:var(--text-muted);border-radius:8px;padding:6px 12px;font-weight:500}.mainnav a:hover{background:var(--bg-sunken);color:var(--text);text-decoration:none}.mainnav a.active{color:var(--brand);background:color-mix(in srgb, var(--brand) 10%, transparent)}.icon-btn{border:1px solid var(--border);background:var(--bg-elev);cursor:pointer;width:38px;height:38px;color:var(--text);border-radius:8px;font-size:1.05rem}.menu-btn{display:none}.account{position:relative}.account-placeholder{width:38px;height:38px;display:inline-block}.account-btn{border:1px solid var(--border);background:var(--bg-elev);cursor:pointer;border-radius:50%;width:38px;height:38px;padding:0}.avatar{object-fit:cover;background:var(--brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-weight:700;display:inline-flex}.account-menu{background:var(--bg-elev);border:1px solid var(--border);width:max-content;min-width:220px;max-width:min(340px,90vw);box-shadow:var(--shadow-lg);z-index:30;border-radius:12px;flex-direction:column;padding:6px;display:flex;position:absolute;top:46px;right:0}.account-who{border-bottom:1px solid var(--border);overflow-wrap:anywhere;flex-direction:column;margin-bottom:4px;padding:8px 10px 10px;display:flex}.account-menu a,.account-menu button{text-align:left;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;text-decoration:none}.account-menu a:hover,.account-menu button:hover,.account-menu a:focus-visible,.account-menu button:focus-visible{background:var(--bg-sunken)}.signin-btn{white-space:nowrap}.main{flex:1;width:100%}.footer{border-top:1px solid var(--border);color:var(--text-muted);text-align:center;padding:24px;font-size:.82rem}.footer p{max-width:820px;margin:0 auto}.search{width:min(420px,40vw);margin-left:auto;position:relative}.search input{border:1px solid var(--border);background:var(--bg-sunken);width:100%;height:38px;color:var(--text);font:inherit;border-radius:10px;padding:0 14px;font-size:.92rem}.search input:focus{outline:2px solid color-mix(in srgb, var(--brand) 50%, transparent);background:var(--bg-elev)}.search-pop{background:var(--bg-elev);border:1px solid var(--border);width:min(560px,92vw);box-shadow:var(--shadow-lg);border-radius:12px;max-height:70vh;padding:6px;position:absolute;top:44px;right:0;overflow:auto}.search-hit{text-align:left;width:100%;color:var(--text);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;padding:8px 10px;display:flex}.search-hit.active{background:color-mix(in srgb, var(--brand) 12%, transparent)}.search-hit-title{font-weight:600}.search-hit-meta{color:var(--text-muted);font-size:.8rem}.search-all{color:var(--brand);border-top:1px solid var(--border);border-radius:0 0 8px 8px;font-weight:500}.search-empty{color:var(--text-muted);padding:12px}.search-page-form{gap:8px;margin-bottom:12px;display:flex}.search-page-form input{border:1px solid var(--border);background:var(--bg-elev);height:44px;color:var(--text);font:inherit;border-radius:10px;flex:1;padding:0 14px}.search-results{gap:10px;padding:0;list-style:none;display:grid}.search-result{text-align:left;background:var(--bg-elev);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);font:inherit;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.search-result:hover{border-color:var(--brand)}.search-result-title{font-size:1.05rem;font-weight:600}.search-result-snippet{color:var(--text-muted);font-size:.92rem}mark{color:inherit;background:#ffd54a8c;border-radius:3px;padding:0 1px}.tag-matches{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.page{max-width:1200px;margin:0 auto;padding:32px 24px 64px}.page.narrow{max-width:860px}.page.center{text-align:center;padding-top:80px}.page h1{margin:0 0 8px;font-size:2.1rem}.lead{color:var(--text-muted);max-width:860px;font-size:1.12rem}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{border:1px solid var(--border);background:var(--bg-elev);color:var(--text);font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-size:.92rem;font-weight:600;transition:background .15s,border-color .15s,transform 50ms;display:inline-flex}.btn:hover{border-color:var(--brand);text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}[data-theme=dark] .btn.primary{color:#08111d}.btn.primary:hover{filter:brightness(1.08)}.btn.lg{padding:12px 22px;font-size:1rem}.btn.small{padding:5px 12px;font-size:.85rem}.btn.success{background:color-mix(in srgb, var(--success) 15%, var(--bg-elev));border-color:var(--success);color:var(--success)}.btn.active{border-color:var(--brand);color:var(--brand)}.btn.danger{color:var(--danger)}.btn.danger:hover{border-color:var(--danger)}.pill{background:var(--bg-sunken);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-block}.tag{background:color-mix(in srgb, var(--accent) 10%, transparent);color:color-mix(in srgb, var(--accent) 80%, var(--text));border-radius:6px;padding:1px 8px;font-size:.78rem;font-weight:600;display:inline-block}.level{text-transform:uppercase;letter-spacing:.04em;border-radius:6px;padding:1px 8px;font-size:.75rem;font-weight:700}.level-beginner{background:color-mix(in srgb, var(--success) 15%, transparent);color:var(--success)}.level-intermediate{background:color-mix(in srgb, var(--brand) 15%, transparent);color:var(--brand)}.level-advanced{color:#9b62ef;background:#9050e92e}.progress{background:var(--bg-sunken);border:1px solid var(--border);border-radius:999px;height:8px;overflow:hidden}.progress.small{border:0;height:5px}.progress-fill{background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 60%, #31d0aa));border-radius:999px;height:100%;transition:width .4s}.grid{gap:18px;display:grid}.tracks-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.paths-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.section-head{justify-content:space-between;align-items:baseline;margin-top:48px;display:flex}.section-head h2{margin:0 0 14px;font-size:1.5rem}.hero{grid-template-columns:1fr auto;align-items:center;gap:40px;padding:40px 0 16px;display:grid}.hero h1{letter-spacing:-.02em;margin:8px 0 16px;font-size:clamp(2rem,4.2vw,3.1rem)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--brand);margin:0;font-size:.78rem;font-weight:700}.grad{background:linear-gradient(90deg,#0176d3,#7526e3 60%,#e3066a);color:#0000;-webkit-background-clip:text;background-clip:text}[data-theme=dark] .grad{background:linear-gradient(90deg,#4fa3ff,#b685ff 60%,#ff6fae);-webkit-background-clip:text;background-clip:text}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.hero-stats{grid-template-columns:repeat(2,140px);gap:14px;margin:0;display:grid}.hero-stats div{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.hero-stats dt{color:var(--text-muted);font-size:.8rem}.hero-stats dd{color:var(--brand);margin:0;font-size:2rem;font-weight:800}.home-progress{grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:24px;padding:16px 20px;display:grid}.track-card,.path-card{color:var(--text);border-top:4px solid var(--accent);flex-direction:column;gap:8px;padding:20px;transition:transform .15s,box-shadow .15s;display:flex}.track-card:hover,.path-card:hover,.path-row:hover{box-shadow:var(--shadow-lg);text-decoration:none;transform:translateY(-2px)}.track-card h3,.path-card h3{margin:4px 0 0;font-size:1.15rem}.track-card p,.path-card p{color:var(--text-muted);flex:1;margin:0;font-size:.92rem}.track-card-top{justify-content:space-between;align-items:center;display:flex}.track-icon{font-size:1.8rem}.track-icon.xl{font-size:3.4rem;line-height:1}.path-card{border-top-color:var(--brand)}.path-icon{font-size:2rem}.card-foot{color:var(--text-muted);justify-content:space-between;font-size:.82rem;font-weight:600;display:flex}.crumbs{color:var(--text-muted);margin-bottom:12px;font-size:.85rem}.track-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 14%, var(--bg-elev)), var(--bg-elev) 70%);border:1px solid var(--border);border-radius:16px;align-items:flex-start;gap:24px;margin-bottom:28px;padding:28px;display:flex}.track-hero>div{flex-direction:column;flex:1;gap:12px;display:flex}.track-hero h1,.track-hero .lead{margin:0}.track-hero .btn{align-self:flex-start}.track-meta{color:var(--text-muted);flex-wrap:wrap;gap:18px;font-size:.9rem;font-weight:600;display:flex}.lesson-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.lesson-row a{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);gap:16px;padding:16px 18px;transition:border-color .15s,transform .1s;display:flex}.lesson-row a:hover{border-color:var(--accent);text-decoration:none;transform:translate(2px)}.lesson-num{background:color-mix(in srgb, var(--accent) 12%, transparent);width:36px;height:36px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.lesson-row.done .lesson-num{background:var(--success);color:#fff}.lesson-row-main{flex-direction:column;gap:4px;min-width:0;display:flex}.lesson-row-title{font-size:1.05rem;font-weight:700}.lesson-row-summary{color:var(--text-muted);font-size:.92rem}.lesson-row-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:.8rem;display:flex}.lesson-list.compact .lesson-row-summary{display:none}.paths-list{gap:16px;display:grid}.path-row{color:var(--text);gap:20px;padding:22px;transition:transform .15s,box-shadow .15s;display:flex}.path-row h3{margin:0}.path-row p{color:var(--text-muted);margin:6px 0 10px}.path-row-main{flex-direction:column;flex:1;gap:4px;display:flex}.path-row .track-meta{margin-bottom:8px}.stat-tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:20px 0 8px;display:grid}.stat{flex-direction:column;padding:18px 20px;display:flex}.stat-value{color:var(--brand);font-size:2rem;font-weight:800}.stat-value small{color:var(--text-muted);font-size:1rem}.stat-label{color:var(--text-muted);font-size:.88rem}.track-progress-list{gap:8px;display:grid}.track-progress-row{background:var(--bg-elev);border:1px solid var(--border);color:var(--text);border-radius:10px;grid-template-columns:40px minmax(160px,260px) 1fr 60px;align-items:center;gap:12px;padding:10px 14px;display:grid}.track-progress-row:hover{border-color:var(--accent);text-decoration:none}.tp-title{font-weight:600}.tp-count{text-align:right;color:var(--text-muted);font-weight:600}.two-col{grid-template-columns:1fr 1fr;gap:28px;display:grid}.plain-list{padding-left:18px}.row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lesson-layout{grid-template-columns:270px minmax(0,1fr) 240px;gap:40px;max-width:1480px;margin:0 auto;padding:0 24px;display:grid}.reading-bar{top:var(--topbar-h);background:var(--accent);transform-origin:0;z-index:60;height:3px;position:fixed;left:0;right:0}.lesson-nav,.lesson-toc{top:calc(var(--topbar-h) + 8px);max-height:calc(100vh - var(--topbar-h) - 16px);align-self:start;padding:24px 0;font-size:.88rem;position:sticky;overflow-y:auto}.lesson-nav-track{color:var(--text);margin-bottom:10px;font-weight:700;display:block}.lesson-nav ol{margin:16px 0 0;padding:0;list-style:none}.lesson-nav li a{color:var(--text-muted);border-radius:8px;align-items:flex-start;gap:10px;padding:7px 10px;display:flex}.lesson-nav li a:hover{background:var(--bg-sunken);color:var(--text);text-decoration:none}.lesson-nav li.current a{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--text);font-weight:600}.lesson-nav .dot{border:1px solid var(--border);background:var(--bg-elev);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:grid}.lesson-nav li.done .dot{background:var(--success);border-color:var(--success);color:#fff}.toc-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px;font-size:.72rem;font-weight:700}.lesson-toc ul{border-left:1px solid var(--border);margin:0;padding:0;list-style:none}.lesson-toc li a{color:var(--text-muted);border-left:2px solid #0000;margin-left:-1px;padding:4px 12px;line-height:1.35;display:block}.lesson-toc li.d3 a{padding-left:24px;font-size:.82rem}.lesson-toc li a:hover{color:var(--text);text-decoration:none}.lesson-toc li.active a{color:var(--accent);border-left-color:var(--accent);font-weight:600}.lesson{min-width:0;padding:28px 0 64px}.nav-toggle{margin-bottom:12px;display:none}.lesson-head h1{margin:0 0 10px;font-size:clamp(1.8rem,3.4vw,2.5rem)}.lesson-head .lead{margin:0 0 14px}.lesson-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.85rem;display:flex}.lesson-actions{gap:8px;margin:16px 0 24px;display:flex}.objectives{border-left:4px solid var(--accent);margin-bottom:28px;padding:18px 22px}.objectives h2{margin:0 0 8px;font-size:1.05rem}.objectives ul{margin:0;padding-left:20px}.objectives li{margin:4px 0}.prose{font-size:1.02rem;line-height:1.75}.prose h2{border-bottom:1px solid var(--border);margin:2.4em 0 .6em;padding-bottom:.3em;font-size:1.6rem}.prose h3{margin:1.8em 0 .5em;font-size:1.25rem}.prose h4{margin:1.5em 0 .4em;font-size:1.05rem}.prose p,.prose ul,.prose ol{margin:.8em 0}.prose li{margin:.3em 0}.prose li>p{margin:.2em 0}.prose img{max-width:100%}.prose hr{border:0;border-top:1px solid var(--border);margin:2em 0}.prose blockquote{border-left:4px solid var(--border);color:var(--text-muted);margin:1em 0;padding:.2em 1em}.prose :not(pre)>code{font-family:var(--mono);background:var(--code-bg);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:5px;padding:.1em .35em;font-size:.86em}.table-wrap{border:1px solid var(--border);border-radius:10px;margin:1.2em 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:.92rem}.prose th,.prose td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:9px 12px}.prose th{background:var(--bg-sunken);font-weight:700}.prose tr:last-child td{border-bottom:0}.prose tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--bg-sunken) 45%, transparent)}.internal-link{border-bottom:1px dashed color-mix(in srgb, var(--brand) 50%, transparent);font-weight:500}.internal-link:hover{border-bottom-style:solid;text-decoration:none}.external-link:after{content:" ↗";font-size:.8em}.code-block{border:1px solid var(--border);background:var(--code-bg);border-radius:10px;margin:1.2em 0;overflow:hidden}.code-toolbar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg-sunken) 70%, var(--code-bg));justify-content:space-between;align-items:center;padding:4px 8px 4px 14px;display:flex}.code-lang{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.72rem}.code-copy{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:.78rem}.code-copy:hover{background:var(--bg-elev);color:var(--text)}.code-block pre{font-family:var(--mono);color:var(--code-text);tab-size:4;margin:0;padding:14px 16px;font-size:.86rem;line-height:1.6;overflow-x:auto}.code-block pre code{background:0 0;font-family:inherit}.hljs-comment,.hljs-quote{color:#6a737d;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-doctag,.hljs-meta .hljs-keyword{color:#c4206b}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-meta .hljs-string{color:#0a7a3c}.hljs-number,.hljs-symbol,.hljs-bullet{color:#b35900}.hljs-title,.hljs-title.function_,.hljs-section{color:#6f42c1}.hljs-title.class_,.hljs-type,.hljs-built_in{color:#0b62b5}.hljs-attr,.hljs-attribute,.hljs-variable,.hljs-template-variable,.hljs-property{color:#005cc5}.hljs-name,.hljs-tag{color:#22863a}.hljs-meta{color:#7a6a00}.hljs-deletion{color:#b31d28}.hljs-params{color:inherit}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#7d8799}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-doctag{color:#ff7ab2}[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-addition{color:#7ee0a0}[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-symbol,[data-theme=dark] .hljs-bullet{color:#ffb86c}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-title.function_,[data-theme=dark] .hljs-section{color:#c4a2ff}[data-theme=dark] .hljs-title.class_,[data-theme=dark] .hljs-type,[data-theme=dark] .hljs-built_in{color:#6cc4ff}[data-theme=dark] .hljs-attr,[data-theme=dark] .hljs-attribute,[data-theme=dark] .hljs-variable,[data-theme=dark] .hljs-template-variable,[data-theme=dark] .hljs-property{color:#8ab4ff}[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-tag{color:#7ee0a0}[data-theme=dark] .hljs-meta{color:#e5c07b}.callout{--c:var(--brand);border-left:4px solid var(--c);background:color-mix(in srgb, var(--c) 8%, var(--bg-elev));border-radius:0 10px 10px 0;margin:1.4em 0;padding:12px 16px}.callout>:last-child{margin-bottom:.2em}.callout>p:nth-child(2){margin-top:.3em}.callout-title{color:var(--c);text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;font-weight:700}.callout-tip{--c:var(--success)}.callout-important{--c:#8a3ffc}[data-theme=dark] .callout-important{--c:#b98aff}.callout-warning{--c:var(--warning)}.callout-caution{--c:var(--danger)}.mermaid-diagram{margin:1.4em 0;border:1px solid var(--border);background:var(--bg-elev);text-align:center;border-radius:10px;margin-inline:0;padding:16px;overflow-x:auto}.mermaid-diagram svg{max-width:100%;height:auto;max-height:640px}.mermaid-diagram.expanded svg{max-height:none;max-width:none!important}.diagram-toggle{border:1px solid var(--border);background:var(--bg-sunken);color:var(--text-muted);font:inherit;cursor:pointer;border-radius:8px;margin:10px auto 0;padding:3px 10px;font-size:.78rem;display:block}.mermaid-loading{text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:10px;margin:1.4em 0;padding:40px}.quiz{border:1px solid var(--border);background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 7%, var(--bg-elev)), var(--bg-elev));border-radius:16px;margin-top:56px;padding:28px}.quiz-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.quiz-head h2{margin:0}.quiz-list{margin:20px 0 0;padding-left:22px}.quiz-q{margin-bottom:26px}.quiz-q::marker{font-weight:700}.quiz-question{margin-bottom:10px;font-weight:600}.quiz-question code,.quiz-opt code,.quiz-explain code{font-family:var(--mono);background:var(--code-bg);border-radius:4px;padding:.05em .3em;font-size:.86em}.quiz-options{gap:8px;display:grid}.quiz-opt{text-align:left;border:1px solid var(--border);background:var(--bg-elev);color:var(--text);font:inherit;cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;padding:10px 14px;transition:border-color .12s,background .12s;display:flex}.quiz-opt:hover:not(:disabled){border-color:var(--accent)}.quiz-opt:disabled{cursor:default}.quiz-opt.chosen{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--bg-elev))}.quiz-opt.correct{border-color:var(--success);background:color-mix(in srgb, var(--success) 12%, var(--bg-elev))}.quiz-opt.wrong{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, var(--bg-elev))}.quiz-letter{background:var(--bg-sunken);border:1px solid var(--border);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:grid}.quiz-explain{background:var(--bg-sunken);border-left:4px solid var(--danger);border-radius:10px;margin-top:10px;padding:10px 14px;font-size:.93rem}.quiz-explain.ok{border-left-color:var(--success)}.quiz-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.quiz-score{font-size:1.05rem}.quiz-score.pass strong{color:var(--success)}.quiz-score.fail strong{color:var(--danger)}.notes{margin-top:28px;padding:14px 18px}.notes summary{cursor:pointer;font-weight:600}.notes textarea{border:1px solid var(--border);background:var(--bg-sunken);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:8px;margin-top:12px;padding:10px 12px}.lesson-complete{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:28px;padding:18px 22px;display:flex}.lesson-complete p{margin:0}.pager{grid-template-columns:1fr 1fr;gap:16px;margin-top:28px;display:grid}.pager-link{border:1px solid var(--border);background:var(--bg-elev);color:var(--text);border-radius:12px;flex-direction:column;gap:2px;padding:14px 18px;font-weight:600;display:flex}.pager-link:hover{border-color:var(--accent);text-decoration:none}.pager-link.next{text-align:right}@media (width<=1240px){.lesson-layout{grid-template-columns:240px minmax(0,1fr)}.lesson-toc{display:none}}@media (width<=900px){.lesson-layout{grid-template-columns:minmax(0,1fr);gap:0}.lesson-nav{background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;max-height:none;margin-top:16px;padding:16px;display:none;position:static}.lesson-nav.open{display:block}.nav-toggle{display:inline-flex}.hero{grid-template-columns:1fr}.hero-stats{grid-template-columns:repeat(4,1fr)}.two-col{grid-template-columns:1fr}.mainnav{top:var(--topbar-h);background:var(--bg-elev);border-bottom:1px solid var(--border);flex-direction:column;padding:8px;display:none;position:absolute;left:0;right:0}.mainnav.open{display:flex}.menu-btn{display:block}.search{flex:1;width:auto}.brand-text{display:none}.track-progress-row{grid-template-columns:32px 1fr 60px}.track-progress-row .progress{grid-column:1/-1}}@media (width<=600px){.hero-stats{grid-template-columns:repeat(2,1fr)}.track-hero{flex-direction:column;padding:20px}.home-progress,.pager{grid-template-columns:1fr}.page{padding:20px 16px 48px}}.lesson-loading{text-align:center;color:var(--text-muted);padding:60px 0}.lesson-gate{text-align:center;margin:32px 0;padding:28px}.lesson-gate h2{margin-top:0}.lesson-gate p{color:var(--text-muted)}.signin-card{margin-top:32px;padding:32px}.signin-card h1{margin-top:0;font-size:1.6rem}.signin-form{flex-direction:column;gap:8px;margin:20px 0 8px;display:flex}.signin-form label{font-weight:600}.signin-form input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:10px 12px}.signin-form input[name=otp]{font-family:var(--mono);letter-spacing:.3em;font-size:1.4rem}.signin-form .btn{margin-top:8px}.signin-or{color:var(--text-muted);align-items:center;gap:12px;margin:16px 0;display:flex}.signin-or:before,.signin-or:after{content:"";border-top:1px solid var(--border);flex:1}.signin-github{width:100%}.signin-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.signin-actions.center{justify-content:center}.signin-message{background:var(--bg-sunken);border-left:3px solid var(--warning);border-radius:8px;padding:10px 12px}.signin-footnote{text-align:center;margin-top:16px}.lesson-preview{padding:24px 28px}.lesson-preview>h2{margin-top:0}.preview-outline{margin:12px 0 24px;padding-left:24px}.preview-outline>li{margin:6px 0}.preview-outline ul{color:var(--text-muted);margin:2px 0 0;padding-left:16px;font-size:.92em;list-style:none}.lesson-preview .lesson-gate{border-top:1px solid var(--border);margin:0;padding-top:24px}.lesson-toc[hidden]{display:none}.search-scope{margin-top:-4px}.main:focus{outline:none}.account-section{margin:20px 0;padding:24px 28px}.account-section h2{margin-top:0}.account-section h3{margin:20px 0 8px;font-size:1rem}.account-fields{grid-template-columns:max-content 1fr;gap:10px 20px;margin:0;display:grid}.account-fields dt{font-weight:600}.account-fields dd{overflow-wrap:anywhere;margin:0}.account-inline-form{flex-wrap:wrap;gap:8px;display:flex}.account-inline-form input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:4px 8px}.session-list{margin:0 0 16px;padding:0;list-style:none}.session-list li{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:10px 0;display:flex}.session-list .pill{margin-left:8px}.danger-zone{border-color:color-mix(in srgb, var(--danger) 40%, var(--border))}.danger-zone h2{color:var(--danger)}.consent-fields{flex-direction:column;gap:10px;margin:6px 0 2px;display:flex}label.check,.signin-form label.check{align-items:flex-start;gap:10px;font-weight:400;line-height:1.45;display:flex}label.check input,.signin-form label.check input{width:16px;height:16px;accent-color:var(--brand);flex:none;margin:3px 0 0;padding:0}.consent-card{margin-top:32px;padding:32px}.consent-card h1{margin-top:0;font-size:1.6rem}.consent-card h1:focus{outline:none}.link-btn{color:var(--brand);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.footer-links{flex-wrap:wrap;justify-content:center;gap:4px 18px;margin:0 auto 10px;display:flex}.footer-links a{color:inherit}.legal-page h1{margin-bottom:4px}.legal-page .prose table{font-size:.9rem}noscript{max-width:820px;margin:32px auto;padding:0 24px;display:block}
