:root{--paper:#f2ede3;--paper-2:#e8e0d0;--ink:#1a1714;--ink-2:#48423a;--muted:#7d7568;--rule:#d3c9b5;--accent:#dc4519;--accent-ink:#b0340d;--accent-wash:#f7d9c9;--code-bg:#121212;--code-bar:#1d1c1a;--tip:#2f6b4f;--warn:#9a6a00;--display:"Newsreader", "Iowan Old Style", Georgia, serif;--sans:"Hanken Grotesk", "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--gutter:clamp(16px, 4vw, 48px);--max:1240px;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#14120f;--paper-2:#1e1b16;--ink:#efe8da;--ink-2:#c6bdac;--muted:#8f8778;--rule:#342f27;--accent:#ff6b3d;--accent-ink:#ff8a63;--accent-wash:#3a1d12;--code-bar:#1a1918;--tip:#6fc29a;--warn:#e0b04a;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:100;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}@media (prefers-color-scheme:dark){body:before{mix-blend-mode:screen;opacity:.05}}a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1.5px}a:hover{color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}code{font:500 .86em/1 var(--mono);background:var(--paper-2);overflow-wrap:anywhere;border-radius:4px;padding:.18em .4em}.masthead{z-index:50;padding:14px var(--gutter);background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.brand{font:600 19px/1 var(--display);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand__mark{background:var(--accent);border-radius:3px;width:14px;height:14px;transform:rotate(45deg)}.source{font:500 12px/1.3 var(--mono);color:var(--muted);text-align:right;align-items:center;gap:8px;margin:0;display:inline-flex}.source__dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px}.source--sanity .source__dot{background:#2fa36b;animation:2.4s ease-in-out infinite pulse;box-shadow:0 0 0 4px #2fa36b38}@keyframes pulse{50%{box-shadow:0 0 0 7px #0000}}.hero{max-width:var(--max);padding:clamp(48px, 9vw, 120px) var(--gutter) clamp(40px, 6vw, 72px);margin:0 auto}.eyebrow{font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 14px}h1{max-width:18ch;font:360 clamp(42px, 7.4vw, 104px) / .98 var(--display);letter-spacing:-.025em;text-wrap:balance;margin:0}.hero__intro{max-width:58ch;color:var(--ink-2);margin:clamp(22px,3vw,34px) 0 0;font-size:clamp(17px,1.6vw,20px)}.hero>*{animation:.9s cubic-bezier(.2,.7,.1,1) both rise}.hero>:nth-child(2){animation-delay:80ms}.hero>:nth-child(3){animation-delay:.18s}.hero>:nth-child(4){animation-delay:.3s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.schematic{border:1px solid var(--rule);background:linear-gradient(var(--rule) 1px, transparent 1px) 0 0 / 24px 24px, linear-gradient(90deg, var(--rule) 1px, transparent 1px) 0 0 / 24px 24px, var(--paper);background-blend-mode:normal;border-radius:6px;grid-template-columns:1fr 56px 1.15fr 56px 1fr;align-items:center;margin:clamp(44px,6vw,80px) 0 0;padding:clamp(18px,3vw,32px);display:grid;position:relative}.schematic:before{content:"";background:radial-gradient(ellipse at center, color-mix(in srgb, var(--paper) 55%, transparent), var(--paper) 85%);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.schematic>*{position:relative}.schematic__col{gap:14px;display:grid}.node,.lake{background:var(--paper);border:1px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:4px;gap:2px;padding:14px 16px;display:grid}.node b,.lake b{font:600 19px/1.15 var(--display)}.node small{font:400 12px/1.3 var(--mono);color:var(--muted)}.node__k{font:500 10.5px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.node--ai{border-color:var(--accent);box-shadow:4px 4px 0 var(--accent);background:var(--accent-wash)}.node--ai .node__k,.node--ai small{color:var(--accent-ink)}.node--ghost{box-shadow:none;background:0 0;border-style:dashed}.lake{background:var(--ink);color:var(--paper);box-shadow:6px 6px 0 var(--accent)}.lake .node__k{color:color-mix(in srgb, var(--paper) 60%, transparent)}.lake b{font-size:24px}.lake pre{font:400 12px/1.55 var(--mono);color:color-mix(in srgb, var(--paper) 78%, transparent);white-space:pre;margin:10px 0 0;overflow:hidden}.lake pre code{font:inherit;background:0 0;padding:0}.wire{align-content:center;gap:60px;height:100%;display:grid}.wire span{background:repeating-linear-gradient(90deg, var(--ink) 0 6px, transparent 6px 11px) 0 0 / 22px 2px;height:2px;animation:1.1s linear infinite flow;position:relative}.wire span:nth-child(2){background-image:repeating-linear-gradient(90deg, var(--accent) 0 6px, transparent 6px 11px)}.wire span:after{content:"";background:var(--ink);clip-path:polygon(0 0,100% 50%,0 100%);width:7px;height:10px;position:absolute;top:-4px;right:-2px}.wire span:nth-child(2):after{background:var(--accent)}.wire--out{gap:0}@keyframes flow{to{background-position:22px 0}}@media (width<=860px){.schematic{grid-template-columns:minmax(0,1fr);gap:0}.schematic__col{grid-template-columns:repeat(2,minmax(0,1fr))}.wire{grid-template-columns:repeat(auto-fit,2px);grid-auto-flow:column;justify-content:center;gap:33%;height:44px}.wire--out{gap:0}.wire span{background:repeating-linear-gradient(180deg, var(--ink) 0 6px, transparent 6px 11px) 0 0 / 2px 22px;width:2px;height:100%;animation-name:flow-down}.wire span:nth-child(2){background-image:repeating-linear-gradient(180deg, var(--accent) 0 6px, transparent 6px 11px)}.wire span:after{clip-path:polygon(0 0,100% 0,50% 100%);width:10px;height:7px;inset:auto auto -2px -4px}}@media (width<=460px){.schematic__col{grid-template-columns:minmax(0,1fr)}}@keyframes flow-down{to{background-position:0 22px}}.manual{max-width:var(--max);padding:0 var(--gutter) clamp(60px, 10vw, 140px);border-top:1px solid var(--rule);grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:clamp(32px,6vw,96px);margin:0 auto;display:grid}.toc{align-self:start;padding-top:40px;position:sticky;top:88px}.toc__label{font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}.toc ol{border-left:1px solid var(--rule);margin:0;padding:0;list-style:none}.toc a{color:var(--ink-2);border-left:2px solid #0000;grid-template-columns:38px 1fr;margin-left:-1px;padding:7px 0 7px 14px;font-size:14px;line-height:1.35;text-decoration:none;transition:color .2s,border-color .2s;display:grid}.toc a:hover,.toc a[aria-current]{color:var(--ink);border-left-color:var(--accent)}.toc__num{font:500 12px/1.6 var(--mono);color:var(--muted)}.toc a[aria-current] .toc__num{color:var(--accent-ink)}.section{border-bottom:1px solid var(--rule);padding:40px 0 clamp(48px,7vw,88px)}.section:last-child{border-bottom:0}.section__head{margin-bottom:28px;position:relative}.section__num{font:300 italic clamp(56px, 8vw, 96px) / 1 var(--display);color:#0000;-webkit-text-stroke:1.2px var(--accent);margin-bottom:14px;display:block}h2{max-width:22ch;font:420 clamp(30px, 3.6vw, 46px) / 1.05 var(--display);letter-spacing:-.015em;text-wrap:balance;margin:0}.section__summary{max-width:52ch;font:400 italic 20px/1.45 var(--display);color:var(--ink-2);margin:16px 0 0}.prose{max-width:68ch}.prose>*+*{margin-top:1.1em}.prose p{margin-bottom:0}.prose h3{font:600 13px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin:2em 0 0}.prose h3+*{margin-top:.7em}.prose ul{padding:0;list-style:none}.prose li{padding-left:26px;position:relative}.prose li+li{margin-top:.55em}.prose li:before{content:"";background:var(--accent);width:9px;height:2px;position:absolute;top:.72em;left:4px}.prose strong{font-weight:600}.code{background:var(--code-bg);box-shadow:5px 5px 0 var(--rule);border:1px solid #000;border-radius:6px;margin-left:0;margin-right:0;overflow:hidden}.code figcaption{background:var(--code-bar);font:500 12px/1 var(--mono);color:#a8a196;border-bottom:1px solid #2a2927;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px 8px 16px;display:flex}.code .copy{font:500 11px/1 var(--mono);color:#d9d2c5;cursor:pointer;background:0 0;border:1px solid #3a3835;border-radius:4px;padding:6px 9px;transition:border-color .2s,color .2s}.code .copy:hover{border-color:var(--accent);color:#fff}.code pre{font:400 13.5px/1.65 var(--mono);margin:0;padding:16px 18px 18px;overflow-x:auto;background:var(--code-bg)!important}.code pre code{font:inherit;background:0 0;padding:0}.code[data-lang=text] pre{white-space:pre-wrap;color:#e7e0d2!important}.callout{--tone:var(--ink-2);border:1px solid color-mix(in srgb, var(--tone) 35%, transparent);background:color-mix(in srgb, var(--tone) 6%, var(--paper));border-radius:4px;grid-template-columns:auto 1fr;gap:4px 16px;padding:16px 18px;display:grid}.callout strong{background:var(--tone);color:var(--paper);font:600 10.5px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;border-radius:3px;align-self:start;padding:3px 7px}.callout p{color:var(--ink-2);margin:0}.callout--tip{--tone:var(--tip)}.callout--warning{--tone:var(--warn)}.footer{padding:40px var(--gutter) 56px;border-top:1px solid var(--ink);max-width:var(--max);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;gap:12px 40px;margin:0 auto;font-size:14px;display:flex}.footer p{margin:0}.footer__meta{color:var(--muted)}@media (width<=900px){.manual{grid-template-columns:minmax(0,1fr);gap:0}.toc{padding-bottom:8px;position:static}}@media (width<=560px){body{font-size:16px}.source{max-width:52%;font-size:10.5px}.callout{grid-template-columns:1fr;justify-items:start}.code pre{font-size:12.5px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
