:root{--bg:#090b0c;--panel:#121617;--panel2:#181d1e;--text:#eff1eb;--muted:#9aa39f;--line:#2b3331;--acid:#c8ff3d;--cyan:#62e5dc;--orange:#ff9157;--purple:#a78bfa;--max:1080px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,sans-serif;line-height:1.7}.course-top{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;background:rgba(9,11,12,.94);backdrop-filter:blur(12px);z-index:10}.course-top a{color:var(--text);text-decoration:none}.course-brand{font:700 12px ui-monospace,monospace;letter-spacing:.1em}.course-progress{font:11px ui-monospace,monospace;color:var(--acid)}.lesson-shell{max-width:var(--max);margin:auto;display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px;padding:55px 24px 100px}.lesson-nav{position:sticky;top:95px;align-self:start}.lesson-nav .overline{font:10px ui-monospace,monospace;color:var(--acid);letter-spacing:.12em}.lesson-nav ol{padding:0;list-style:none}.lesson-nav a{display:block;color:var(--muted);text-decoration:none;font-size:12px;padding:8px 0;border-bottom:1px solid var(--line)}.lesson-nav a:hover,.lesson-nav a.active{color:var(--text)}.lesson-nav .back{display:inline-block;margin-top:20px;color:var(--acid);font-size:12px}.lesson{min-width:0}.lesson-header{border-bottom:1px solid var(--line);padding-bottom:36px}.lesson-header .meta{font:11px ui-monospace,monospace;color:var(--acid);letter-spacing:.1em}.lesson h1{font-size:clamp(42px,7vw,74px);letter-spacing:-.05em;line-height:1;margin:16px 0 24px}.lesson h2{font-size:32px;letter-spacing:-.025em;line-height:1.15;margin:70px 0 18px}.lesson h3{font-size:20px;margin:30px 0 10px}.lesson p,.lesson li{color:#c4cac7}.lesson .lead{font-size:20px;color:var(--text);max-width:750px}.objectives{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:35px}.objective{background:var(--panel);padding:20px;font-size:13px}.objective strong{display:block;color:var(--acid);font:11px ui-monospace,monospace;margin-bottom:5px}.concept{border-left:2px solid var(--acid);padding:1px 0 1px 20px;margin:28px 0}.concept strong{color:var(--text)}.diagram{margin:28px 0;padding:28px;background:var(--panel);overflow:auto}.flow{display:flex;align-items:center;justify-content:center;gap:10px;min-width:650px}.node{border:1px solid var(--line);background:var(--panel2);padding:14px;text-align:center;min-width:110px;font:11px ui-monospace,monospace}.node.hot{background:var(--acid);color:#0a0d0c;border-color:var(--acid)}.arrow{color:var(--acid)}.layers{display:grid;gap:5px}.layer{padding:13px 16px;background:var(--panel2);border-left:5px solid var(--cyan);display:flex;justify-content:space-between;gap:20px}.layer:nth-child(2n){border-color:var(--purple)}.layer span{color:var(--muted);font-size:12px}.code{background:#050707;border:1px solid var(--line);padding:20px;overflow:auto;color:#d9e3dd;font:12px/1.7 ui-monospace,SFMono-Regular,monospace;white-space:pre}.callout{background:rgba(200,255,61,.07);padding:20px;margin:24px 0}.callout strong{color:var(--acid)}.compare{width:100%;border-collapse:collapse;margin:25px 0;font-size:13px}.compare th,.compare td{padding:13px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.compare th{color:var(--acid);font:11px ui-monospace,monospace}.practice{background:var(--panel);padding:28px;margin-top:50px}.practice .label,.quiz .label{font:10px ui-monospace,monospace;color:var(--acid);letter-spacing:.12em}.practice textarea{width:100%;min-height:120px;background:#090b0c;border:1px solid var(--line);color:var(--text);padding:14px;font:13px ui-monospace,monospace;margin:15px 0}.practice button,.quiz button,.next-link{background:var(--acid);border:0;color:#090b0c;padding:11px 15px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}.feedback{margin-top:12px;color:var(--cyan);font-size:13px}.quiz{margin:35px 0;padding:28px;border:1px solid var(--line)}.quiz h3{margin-top:8px}.answers{display:grid;gap:8px}.answer{background:var(--panel2)!important;color:var(--text)!important;border:1px solid var(--line)!important;text-align:left}.answer.correct{border-color:var(--acid)!important;color:var(--acid)!important}.answer.wrong{border-color:var(--orange)!important}.source-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:60px}.source-note a{color:var(--cyan)}.lesson-footer{display:flex;justify-content:space-between;align-items:center;margin-top:55px;padding-top:30px;border-top:1px solid var(--line)}.ask{color:var(--muted);font-size:12px}.course-map{max-width:var(--max);margin:auto;padding:70px 24px}.course-map h1{font-size:clamp(48px,8vw,88px);line-height:.95;letter-spacing:-.055em}.course-map .lead{font-size:19px;color:var(--muted);max-width:720px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:55px}.module-card{background:var(--panel);padding:24px;text-decoration:none;color:var(--text);min-height:220px;display:flex;flex-direction:column}.module-card:hover{background:var(--panel2)}.module-card .n{color:var(--acid);font:11px ui-monospace,monospace}.module-card h2{font-size:22px;line-height:1.15;margin:25px 0 10px}.module-card p{font-size:12px;color:var(--muted);margin:0}.module-card .time{margin-top:auto;color:var(--cyan);font:10px ui-monospace,monospace}.module-card.done{outline:1px solid var(--acid)}
@media(max-width:800px){.lesson-shell{grid-template-columns:1fr}.lesson-nav{position:static}.lesson-nav ol{columns:2}.objectives,.module-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.lesson-shell,.course-map{padding-left:18px;padding-right:18px}.objectives,.module-grid{grid-template-columns:1fr}.lesson-nav ol{columns:1}.lesson h1{font-size:44px}.lesson h2{font-size:28px}.lesson-footer{align-items:flex-start;gap:20px;flex-direction:column}}
