:root{--bg: #fafafa;--bg-2: #f3f3f3;--bg-3: #ececec;--line: rgba(10,10,10,.1);--line-2: rgba(10,10,10,.2);--fg: #0a0a0a;--fg-2: rgba(10,10,10,.72);--fg-3: rgba(10,10,10,.48);--fg-4: rgba(10,10,10,.28);--accent: #e63946;--accent-2: #f04a56;--accent-ink:#ffffff;--good: #006d4a;--bad: #8a1623;--info: #e63946;--font-sans: "Inter Tight", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-serif: "Instrument Serif", "Iowan Old Style", "Apple Garamond", Georgia, serif;--radius: 12px;--radius-sm: 8px;--maxw: 1200px;--gutter: 28px;--space-section: clamp(72px, 9vw, 140px);color-scheme:light}html[data-theme=terminal]{--bg: #0b0d0e;--bg-2: #111315;--bg-3: #16191b;--line: rgba(255,255,255,.08);--line-2: rgba(255,255,255,.14);--fg: #e9e6df;--fg-2: rgba(233,230,223,.72);--fg-3: rgba(233,230,223,.45);--fg-4: rgba(233,230,223,.28);--accent: #c8ffa0;--accent-2: #dbffc0;--accent-ink:#0a1500;--good: #4dd6b3;--bad: #ff7a7a;--info: #79b8ff;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration:none}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}body[data-grid=true]:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(to right,var(--line) 1px,transparent 1px),linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000 30%,transparent 80%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000 30%,transparent 80%);opacity:.55}.mono{font-family:var(--font-mono);font-feature-settings:"ss01","cv11"}.serif{font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:-.01em}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11.5px;color:var(--fg-3);text-transform:lowercase;letter-spacing:.02em}.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.h-display{font-family:var(--font-sans);font-weight:700;letter-spacing:-.04em;line-height:.95;font-size:clamp(44px,7vw,92px);color:var(--fg)}.h-display em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent);letter-spacing:-.02em}.h-section{font-family:var(--font-sans);font-weight:600;letter-spacing:-.03em;line-height:1.02;font-size:clamp(34px,4.5vw,56px);color:var(--fg);text-wrap:balance}.h-section em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent)}.body-lg{font-size:18px;line-height:1.5;color:var(--fg-2);text-wrap:pretty;max-width:56ch}.body{color:var(--fg-2);text-wrap:pretty}.btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;font-family:var(--font-sans);font-size:14px;font-weight:500;border:1px solid transparent;cursor:default;transition:transform .15s ease,background .15s ease,color .15s ease,border-color .15s ease;white-space:nowrap}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{transform:translateY(-1px);background:var(--accent-2)}.btn-ghost{background:transparent;color:var(--fg);border-color:var(--line-2)}.btn-ghost:hover{background:var(--bg-2);border-color:var(--fg-3)}.btn-sm{height:32px;padding:0 12px;font-size:13px}.arrow{display:inline-block;transition:transform .2s ease}.btn:hover .arrow{transform:translate(3px)}.nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);background:color-mix(in srgb,var(--bg) 70%,transparent);border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:14px;letter-spacing:.01em}.brand-mark{width:26px;height:26px;border-radius:7px;background:var(--fg);color:var(--bg);display:grid;place-items:center;font-family:var(--font-mono);font-size:13px;font-weight:600;border:1px solid var(--line-2)}.nav-links{display:flex;gap:28px;font-family:var(--font-mono);font-size:13px;color:var(--fg-2)}.nav-links a:hover{color:var(--fg)}@media (max-width: 720px){.nav-links{display:none}}section{position:relative;z-index:1}.section{padding:var(--space-section) 0}.section-head{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:56px}.section-head .meta{display:flex;align-items:center;gap:14px;font-family:var(--font-mono);font-size:11.5px;color:var(--fg-3);text-transform:lowercase}.section-head .meta .id{color:var(--fg-4)}.card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;position:relative}.card-pad{padding:24px}.rule{height:1px;background:var(--line);position:relative}.rule:before{content:"";position:absolute;left:0;top:0;height:1px;width:56px;background:var(--accent)}.ph{background:repeating-linear-gradient(135deg,var(--line) 0 1px,transparent 1px 12px),var(--bg-3);border:1px solid var(--line);color:var(--fg-3);font-family:var(--font-mono);font-size:11px;display:grid;place-items:center;border-radius:var(--radius-sm);padding:8px;text-align:center}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.prose{max-width:65ch;margin:0 auto;font-family:var(--font-sans);font-size:18px;line-height:1.7;color:var(--fg-2)}.prose>*+*{margin-top:1.25em}.prose p{margin:0}.prose p+p{margin-top:1.25em}.prose h2{font-family:var(--font-sans);font-weight:600;font-size:clamp(24px,2.6vw,32px);letter-spacing:-.02em;line-height:1.15;margin-top:2.4em;margin-bottom:0;color:var(--fg)}.prose h3{font-family:var(--font-sans);font-weight:600;font-size:20px;letter-spacing:-.015em;line-height:1.25;margin-top:2em;margin-bottom:0;color:var(--fg)}.prose strong{color:var(--fg);font-weight:600}.prose em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--accent)}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.prose a:hover{text-decoration-thickness:2px}.prose code{font-family:var(--font-mono);font-size:.88em;background:var(--bg-2);padding:.15em .4em;border-radius:4px;color:var(--fg);border:1px solid var(--line)}.prose pre{font-family:var(--font-mono);font-size:13px;line-height:1.55;background:var(--bg-2);border:1px solid var(--line);border-radius:8px;padding:16px 18px;overflow-x:auto;margin:1.6em 0}.prose pre code{background:transparent;border:0;padding:0;font-size:inherit}.prose ul,.prose ol{margin:1.25em 0;padding-left:1.4em}.prose li{margin:.4em 0}.prose blockquote{margin:1.6em 0;padding:0 0 0 18px;border-left:2px solid var(--accent);color:var(--fg);font-style:normal}.prose hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}.prose img{max-width:100%;height:auto;border-radius:6px;margin:1.6em 0}.prose figure.diagram{margin:2.4em 0;padding:28px 24px 22px;background:var(--bg-2);border:1px solid var(--line);border-radius:8px}.prose figure.diagram svg{display:block;width:100%;height:auto;max-height:320px}.prose figure.diagram figcaption{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:12px;line-height:1.55;color:var(--fg-3);text-wrap:pretty}
