@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,650&family=IBM+Plex+Mono:wght@400;500;600&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500;8..60,650&display=swap";:root{--bg:#07110f;--surface:#0b1714;--surface-2:#101f1a;--surface-3:#14251f;--paper:#e6dcc0;--paper-2:#c7bd9c;--ink:#ddd3b4;--ink-soft:#aaa385;--muted:#68705b;--line:#cbd64a29;--line-strong:#dae05e61;--lime:#cbd64a;--lime-strong:#e2e86a;--olive:#777b34;--gold:#cbd64a;--blue:#8da05b;--red:#c77b5f;--green:#75a84d;--violet:#9f88be;--shadow:0 20px 80px #0000007a;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(90deg, #cbd64a06 1px, transparent 1px), linear-gradient(#cbd64a05 1px, transparent 1px), linear-gradient(180deg, #101412 0, #06100d 46%, #050b09 100%), var(--bg);background-size:34px 34px,34px 34px,auto;min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:3px}a{color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:40;border:1px solid var(--line-strong);color:#12100b;background:var(--paper);text-transform:uppercase;border-radius:4px;padding:10px 12px;font-size:12px;font-weight:700;text-decoration:none;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.texture{z-index:0;pointer-events:none;opacity:.5;background-image:linear-gradient(#cbd64a09 1px,#0000 1px),linear-gradient(90deg,#cbd64a06 1px,#0000 1px),repeating-linear-gradient(0deg,#ffffff03 0 2px,#0000 2px 5px);background-size:42px 42px,42px 42px,100% 4px;position:fixed;inset:0}.reader-app{z-index:1;grid-template-columns:minmax(300px,380px) minmax(0,1fr);min-height:100vh;display:grid;position:relative}.library-rail{background:linear-gradient(180deg, #0a1612f7, #050e0bf5), var(--surface);border-right:1px solid #cbd64a2e;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:18px;height:100vh;padding:24px 18px;display:grid;position:sticky;top:0;box-shadow:inset -1px 0 #ffffff06}.brand-block{border-bottom:1px solid var(--line);gap:4px;padding-bottom:18px;display:grid}.brand-block span{color:var(--paper);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 24px #e6dcc029;font-family:Fraunces,"Source Serif 4",serif;font-size:34px;font-weight:650;line-height:.95}.brand-block strong{color:var(--paper-2);letter-spacing:.42em;text-transform:uppercase;padding-left:32px;font-size:12px;font-weight:600}.search-box{border:1px solid var(--line);color:var(--ink-soft);background:linear-gradient(90deg,#cbd64a0e,#0000),#050f0ccc;border-radius:4px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:0 12px;display:grid}.search-box input{width:100%;min-width:0;height:44px;color:var(--ink);background:0 0;border:0}.search-box input::placeholder{color:var(--muted)}.program-switcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.program-switcher button,.lesson-pager button{border:1px solid var(--line);min-height:38px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;background:#0b1714d1;border-radius:4px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.program-switcher button.active,.lesson-pager button:not(:disabled):hover{color:var(--lime-strong);background:#cbd64a21;border-color:#cbd64aad}.lesson-scroll{scrollbar-color:var(--muted) transparent;align-content:start;gap:24px;min-height:0;padding:4px 4px 36px 0;display:grid;overflow-y:auto}.program-section,.pillar-group,.lesson-stack{gap:10px;display:grid}.program-heading{color:var(--lime);align-items:center;gap:8px;display:flex}.program-heading h2{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700}.pillar-group{border-left:1px solid #cbd64a33;padding-left:10px}.pillar-group summary{color:var(--paper-2);align-items:center;gap:8px;font-size:13px;font-weight:600;line-height:1.35;list-style:none;display:flex}.pillar-group summary::-webkit-details-marker{display:none}.lesson-stack button{text-align:left;width:100%;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:4px;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:8px;padding:9px 8px;display:grid}.lesson-stack button:hover,.lesson-stack button.active{border-color:var(--line);color:var(--ink);background:#cbd64a0e}.lesson-stack button.active{box-shadow:inset 3px 0 0 var(--lime);border-color:#cbd64a6b}.lesson-stack span{color:var(--gold);font-size:12px}.lesson-stack strong{min-width:0;font-size:13px;font-weight:500;line-height:1.4}.terminal-card{color:#8f986d;background:linear-gradient(#cbd64a0a,#0000),#040d0ac7;border:1px solid #cbd64a2b;border-radius:4px;gap:7px;padding:16px;font-size:12px;line-height:1.55;display:grid}.terminal-card span{color:var(--paper-2);letter-spacing:.16em}.terminal-card code{color:#9ba85f}.reader-stage{align-content:start;gap:18px;width:min(100%,1280px);margin:0 auto;padding:18px clamp(18px,3.8vw,54px) 72px;display:grid}.reader-topbar{min-height:50px;color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;background:repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 5px),#06110ed6;border:1px solid #cbd64a24;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:12px;display:flex}.reader-topbar span{white-space:nowrap}.program-pill{color:var(--lime);background:#cbd64a14;border:1px solid #cbd64a73;border-radius:3px;align-items:center;padding:7px 12px;display:inline-flex}.lesson-hero{border:1px solid var(--line);background:linear-gradient(135deg, #101f1af0, #060f0cf5), var(--surface);min-height:clamp(320px,38vw,500px);box-shadow:inset 0 0 0 1px #ffffff06, var(--shadow);border-radius:4px;position:relative;overflow:hidden}.hero-media{background-image:linear-gradient(90deg, #050d0af0, #050d0a9e 40%, #050d0a29), linear-gradient(180deg, #00000014, #00000075), var(--program-art);filter:saturate(.92)contrast(1.05);background-position:50%;background-size:cover;position:absolute;inset:0}.lesson-hero:after{content:"";pointer-events:none;mix-blend-mode:screen;opacity:.46;background:repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 4px),linear-gradient(#0000,#050d0a6b);position:absolute;inset:0}.hero-copy{z-index:1;min-height:inherit;align-content:end;gap:18px;max-width:760px;padding:clamp(34px,5vw,68px);display:grid;position:relative}.hero-copy h1{max-width:980px;color:var(--paper);letter-spacing:0;text-wrap:balance;margin:0;font-family:Fraunces,"Source Serif 4",serif;font-size:clamp(48px,6.4vw,86px);font-weight:650;line-height:.9}.hero-copy p{max-width:620px;color:var(--paper-2);margin:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:clamp(16px,1.45vw,20px);line-height:1.65}.lesson-pager{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.lesson-pager button{padding:0 14px}.markdown-panel{border:1px solid var(--line);box-shadow:inset 0 0 0 1px #ffffff05, var(--shadow);background:repeating-linear-gradient(0deg,#ffffff04 0 1px,#0000 1px 5px),linear-gradient(#cbd64a0a,#0000 22rem),#07120fe6;border-radius:4px;overflow:hidden}.loading-panel{color:var(--ink-soft);padding:32px}.markdown-chrome{border-bottom:1px solid var(--line);background:#cbd64a09;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px clamp(18px,4vw,48px);display:flex}.markdown-chrome>div:first-child{gap:3px;display:grid}.kicker,.markdown-chrome span:first-child{color:var(--gold);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700}.markdown-chrome strong{color:var(--paper);font-family:Fraunces,"Source Serif 4",serif;font-size:24px}.markdown-stats{flex-wrap:wrap;gap:8px;display:flex}.markdown-stats span{border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:7px 10px;font-size:12px}.markdown-toc{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding:14px clamp(18px,4vw,48px);display:flex}.markdown-toc a{border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:7px 10px;font-size:12px;text-decoration:none}.markdown-toc a:hover{color:var(--lime-strong);border-color:#cbd64a8f}.markdown-body{width:min(100%,880px);color:var(--paper-2);margin:0 auto;padding:clamp(28px,5vw,72px) clamp(18px,5vw,40px);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:clamp(16px,1.22vw,19px);line-height:1.75}.markdown-body>:first-child{margin-top:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--paper);text-wrap:balance;scroll-margin-top:24px;font-family:Fraunces,"Source Serif 4",serif;line-height:1.04}.markdown-body h1{font-size:clamp(40px,5vw,72px)}.markdown-body h2{border-top:1px solid var(--line);margin-top:2.4em;padding-top:1em;font-size:clamp(28px,3.4vw,44px)}.markdown-body h3{color:var(--paper);margin-top:1.8em;font-size:clamp(22px,2.6vw,30px)}.markdown-body h4{color:var(--lime);letter-spacing:.06em;text-transform:uppercase;margin-top:1.5em;font-size:18px}.markdown-body h1 a,.markdown-body h2 a,.markdown-body h3 a,.markdown-body h4 a{color:var(--muted);opacity:0;margin-left:10px;font-family:IBM Plex Mono,monospace;font-size:.48em;text-decoration:none}.markdown-body h1:hover a,.markdown-body h2:hover a,.markdown-body h3:hover a,.markdown-body h4:hover a{opacity:1}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body blockquote,.markdown-body table,.markdown-body figure{margin-top:1.1em;margin-bottom:1.1em}.markdown-body strong{color:var(--paper);font-weight:650}.markdown-body em{color:var(--lime)}.markdown-body a{color:var(--lime-strong);text-underline-offset:4px;text-decoration-color:#cbd64a6b}.markdown-body hr{border:0;border-top:1px solid var(--line);margin:2.8em 0}.markdown-body ul,.markdown-body ol{padding-left:1.35em}.markdown-body li{margin:.45em 0;padding-left:.2em}.markdown-body li::marker{color:var(--gold)}.markdown-body input[type=checkbox]{width:1.05em;height:1.05em;accent-color:var(--green);margin-right:.4em}.markdown-body blockquote{border-left:3px solid var(--gold);color:var(--paper-2);background:linear-gradient(90deg,#cbd64a14,#0000);margin-left:0;padding:.2em 0 .2em 1em}.markdown-callout{border:1px solid var(--line-strong);border-left:5px solid var(--gold);color:var(--paper-2);background:linear-gradient(90deg,#cbd64a1f,#cbd64a08),#08130fc7;border-radius:4px;gap:8px;margin:1.6em 0;padding:18px 20px;display:grid}.markdown-callout strong{color:var(--paper);letter-spacing:.12em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:13px}.markdown-callout p{margin:0}.markdown-callout.lab,.markdown-callout.example,.markdown-callout.tip{border-left-color:var(--lime);background:#cbd64a14}.markdown-callout.warning,.markdown-callout.danger{border-left-color:var(--red);background:#cb6a5b14}.markdown-callout.check{border-left-color:var(--green);background:#75a84d17}.markdown-callout.question{border-left-color:var(--violet);background:#a993c814}.markdown-table-wrap{border:1px solid var(--line);background:#050f0cb8;border-radius:4px;width:100%;overflow-x:auto}.markdown-body table{border-collapse:collapse;width:100%;min-width:680px;margin:0;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.55}.markdown-body th,.markdown-body td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:13px 14px}.markdown-body th{color:var(--paper);background:#cbd64a0e;font-weight:700}.markdown-body tr:last-child td{border-bottom:0}.markdown-body code{color:var(--lime-strong);background:#cbd64a13;border:1px solid #cbd64a3d;border-radius:3px;padding:.12em .34em;font-family:IBM Plex Mono,monospace;font-size:.86em}.markdown-code-card,.markdown-diagram{border:1px solid var(--line);background:#06100d;border-radius:4px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.markdown-code-card figcaption{border-bottom:1px solid var(--line);color:var(--gold);letter-spacing:.12em;text-transform:uppercase;background:#cbd64a0d;justify-content:space-between;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:12px;display:flex}.markdown-code-card pre,.markdown-code-card code{color:#d7e6df;background:0 0;border:0;border-radius:0;margin:0;padding:0}.markdown-code-card pre{padding:18px;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.7;overflow-x:auto}.code-line{min-height:1.7em;display:block}.markdown-diagram{background:linear-gradient(135deg,#cbd64a14,#0000),#06100d;place-items:center;padding:18px;display:grid}.markdown-diagram img{object-fit:contain;width:100%;height:auto;max-height:560px;display:block}.diagram-loading,.diagram-error small{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:13px}.markdown-body img{border:1px solid var(--line);border-radius:4px;max-width:100%;height:auto;display:block}.empty-state{text-align:center;align-content:center;place-items:center;min-height:100vh;padding:24px;display:grid}.empty-state svg{color:var(--gold)}.empty-state h1{color:var(--paper);margin:18px 0 6px;font-family:Fraunces,serif}.empty-state p{color:var(--ink-soft);margin:0}@media (width<=980px){.reader-app{grid-template-columns:1fr}.reader-stage{order:1}.library-rail{border-right:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);order:2;height:auto;max-height:62vh;position:relative}.reader-topbar{flex-wrap:wrap;justify-content:flex-start}.reader-topbar span:nth-child(2){display:none}}@media (width<=640px){.library-rail{padding:18px 14px}.reader-stage{padding:16px 12px 48px}.program-switcher{grid-template-columns:1fr}.hero-copy{gap:14px;padding:26px 18px}.lesson-hero{min-height:430px}.hero-copy h1{font-size:clamp(40px,14vw,58px)}.hero-copy p{font-size:17px}.markdown-body{padding:24px 16px 40px;font-size:18px}.markdown-body table{min-width:620px}}
