:root{--bg: #0e0f12;--surface: #16181d;--surface-2: #1c1f26;--ink: #e8e6df;--ink-dim: #9ea0a6;--ink-faint: #5a5d65;--rule: #2a2d35;--accent: #4ade80;--accent-2: #ff7a59;--link: var(--accent);--selection-bg: rgba(74, 222, 128, .25);--font-display: "Press Start 2P", "Courier New", monospace;--font-body: "Newsreader", "Iowan Old Style", "Charter", Georgia, serif;--font-mono: "Space Mono", "IBM Plex Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--fs-base: 1.0625rem;--lh-body: 1.65;--lh-tight: 1.15;--measure: 68ch;--gutter: clamp(1rem, 3vw, 2.25rem);--section: clamp(3rem, 9vw, 6rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--t-fast: .14s;--t-med: .32s}[data-theme=light]{--bg: #f4f1e8;--surface: #ece8db;--surface-2: #e0dccc;--ink: #1a1c20;--ink-dim: #4a4d55;--ink-faint: #8a8d95;--rule: #c8c3b3;--accent: #137a3a;--accent-2: #c44a2e;--selection-bg: rgba(19, 122, 58, .2)}*,*:before,*:after{box-sizing:border-box}html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,figure{margin:0;padding:0}ul,ol{list-style:none}img,svg,video{display:block;max-width:100%;height:auto}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}::selection{background:var(--selection-bg);color:var(--ink)}html{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color-scheme:dark;scroll-behavior:smooth}[data-theme=light] html,html[data-theme=light]{color-scheme:light}body{min-height:100dvh;display:flex;flex-direction:column;background-image:radial-gradient(at 8% -10%,rgba(74,222,128,.06) 0%,transparent 45%),radial-gradient(at 92% 110%,rgba(255,122,89,.04) 0%,transparent 50%);background-attachment:fixed}[data-theme=light] body{background-image:radial-gradient(at 8% -10%,rgba(19,122,58,.07) 0%,transparent 45%),radial-gradient(at 92% 110%,rgba(196,74,46,.05) 0%,transparent 50%)}main{flex:1}h1,h2,h3,h4{line-height:var(--lh-tight);letter-spacing:-.01em}h1{font-family:var(--font-mono);font-weight:700;font-size:clamp(2rem,5vw,3.25rem);letter-spacing:-.02em}h2{font-family:var(--font-mono);font-weight:700;font-size:clamp(1.5rem,3vw,2.125rem);margin-top:2.5em;margin-bottom:.6em}h3{font-family:var(--font-mono);font-weight:700;font-size:1.3rem;margin-top:2em;margin-bottom:.5em}p,ul,ol,blockquote,figure{margin-block:1em}p code,li code{font-family:var(--font-mono);font-size:.92em;background:var(--surface);padding:.08em .4em;border-radius:3px;border:1px solid var(--rule)}pre{font-family:var(--font-mono);font-size:.92rem;line-height:1.55;background:var(--surface)!important;padding:1.1rem 1.25rem;border:1px solid var(--rule);border-radius:4px;overflow-x:auto;margin-block:1.4em}pre code{background:none;border:0;padding:0;font-size:inherit}blockquote{margin-inline:0;padding:.4em 0 .4em 1.25em;border-left:3px solid var(--accent);color:var(--ink-dim);font-style:italic}hr{border:0;border-top:1px dashed var(--rule);margin-block:2.5em}.pixel,img.pixel,svg.pixel,[data-pixel]{image-rendering:-moz-crisp-edges;image-rendering:-webkit-crisp-edges;image-rendering:pixelated;image-rendering:crisp-edges;shape-rendering:crispEdges}.shell{width:100%;max-width:1180px;margin-inline:auto;padding-inline:var(--gutter)}.prose{max-width:var(--measure);margin-inline:auto}.display{font-family:var(--font-display);font-weight:400;letter-spacing:0;line-height:1}.label{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim)}.article-body>p:first-of-type:first-letter{font-family:var(--font-mono);font-weight:700;font-size:3.4em;line-height:.85;float:left;margin:.08em .12em 0 -.04em;color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink-pixel{0%,92%,to{transform:translateY(0)}96%{transform:translateY(-2px)}}.rise{animation:rise .52s var(--ease-out) both}.rise-1{animation:rise .52s var(--ease-out) 80ms both}.rise-2{animation:rise .52s var(--ease-out) .16s both}.rise-3{animation:rise .52s var(--ease-out) .24s both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--bg);padding:.5rem .75rem;font-family:var(--font-mono);font-size:.85rem;z-index:100}.skip-link:focus{left:.5rem;top:.5rem}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--bg) 80%,transparent);border-bottom:1px solid var(--rule)}.header-inner{display:flex;align-items:center;gap:1.5rem;padding-block:.9rem}.brand{display:inline-flex;align-items:center;gap:.55rem;color:var(--ink);text-decoration:none;font-family:var(--font-mono);font-weight:700;letter-spacing:-.01em}.brand:hover{text-decoration:none}.brand-mark{color:var(--accent);font-size:.6rem;letter-spacing:-2px}.brand-text{font-size:1.05rem}.brand-dot{color:var(--accent)}nav[aria-label=Primary]{margin-inline-start:auto}.nav-list{display:flex;gap:1.5rem;align-items:center;font-family:var(--font-mono);font-size:.92rem}.nav-list a{color:var(--ink-dim)}.nav-list a:hover{color:var(--ink);text-decoration:none}.theme-toggle{width:36px;height:36px;border:1px solid var(--rule);border-radius:3px;color:var(--ink-dim);background:var(--surface);font-size:1rem;transition:border-color var(--t-fast),color var(--t-fast)}.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.site-footer{margin-top:var(--section);padding-block:2rem;border-top:1px solid var(--rule);background:var(--surface)}.footer-inner{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;align-items:flex-end}.footer-tagline{color:var(--ink-dim);font-size:.92rem;max-width:38ch;margin-top:.4em}.footer-links{display:flex;gap:1.25rem;font-family:var(--font-mono);font-size:.88rem;margin-bottom:.4rem}.footer-links a{color:var(--ink-dim)}.footer-links a:hover{color:var(--ink);text-decoration:none}.footer-copy{text-align:right}@media(max-width:640px){.nav-list{gap:1rem;font-size:.85rem}.nav-list li:nth-child(5){display:none}}
