@font-face{font-family:Geist;src:url(/fonts/geist-variable.woff2) format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-300.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--shell-top: 28px;--shell-side: 56px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:18px;line-height:var(--line-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01","ss02","kern"}.shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;max-width:1440px;margin:0 auto}.nav-toggle{display:none;position:fixed;top:14px;left:14px;z-index:40;width:40px;height:40px;padding:0;border:1px solid var(--edge);border-radius:var(--radius);background:var(--bg);color:var(--fg);cursor:pointer;align-items:center;justify-content:center}.nav-toggle:hover{background:var(--surface)}.nav-toggle svg{display:block}.nav-backdrop{display:none;position:fixed;inset:0;z-index:30;background:#1a1a1a61;opacity:0;transition:opacity .2s ease;pointer-events:none}@media(max-width:900px){html,body{overflow-x:hidden}.shell{display:block!important;grid-template-columns:none!important;max-width:none!important;margin:0!important;width:100%}.main{padding:72px 20px 80px!important;max-width:none!important;width:100%!important;margin:0!important;grid-column:auto!important}.nav-toggle{display:inline-flex}.nav-backdrop{display:block}.sidebar{position:fixed!important;top:0;left:0;height:100vh;width:260px;background:var(--bg);border-right:1px solid var(--edge);z-index:35;transform:translate(-100%);transition:transform .24s ease;padding:var(--shell-top) 24px}.sidebar-inner{position:static;height:auto}body.nav-open .sidebar{transform:translate(0)}body.nav-open .nav-backdrop{opacity:1;pointer-events:auto}body.nav-open .nav-toggle{display:none}body.nav-open{overflow:hidden}}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--edge);padding:var(--shell-top) 24px;display:flex;flex-direction:column;gap:36px;text-transform:uppercase;letter-spacing:.08em}.sidebar-inner{position:sticky;top:var(--shell-top);display:flex;flex-direction:column;gap:36px;height:calc(100vh - var(--shell-top) * 2)}.wordmark{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:-.01em;line-height:1.1;display:flex;align-items:baseline;gap:8px;color:var(--fg);text-decoration:none}.wordmark .dot{width:8px;height:8px;border-radius:50%;background:var(--signal);box-shadow:0 0 12px var(--signal-fog);animation:dot-pulse 2.2s ease-in-out infinite;flex-shrink:0;transform:translateY(-1px)}@keyframes dot-pulse{0%,to{opacity:.65}50%{opacity:1}}.wordmark .role{display:block;font-family:var(--font-mono);font-weight:400;font-size:11px;letter-spacing:.04em;color:var(--dim);margin-top:6px}.nav{display:flex;flex-direction:column;gap:2px;margin-top:8px}.nav-item{font-family:var(--font-mono);font-size:13px;letter-spacing:.01em;color:var(--dim);text-decoration:none;padding:6px 10px;border-radius:var(--radius);display:flex;align-items:center;gap:10px;transition:color .16s,background .16s}.nav-item:hover{color:var(--fg);background:var(--surface)}.nav-item.active{color:var(--fg);background:transparent}.nav-item.active .key{color:var(--signal);opacity:1}.nav-item .key{color:var(--dim);font-weight:400;opacity:.6;width:14px}.sidebar-footer{margin-top:auto;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:var(--dim);line-height:1.6}.sidebar-footer .status{display:flex;align-items:center;gap:6px}.sidebar-footer .status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal);opacity:.8}.main{padding:var(--shell-top) var(--shell-side) 96px;max-width:780px;min-width:0}.hero{margin-bottom:72px}.hero-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal);margin-bottom:16px}.hero h1{font-family:var(--font-display);font-weight:var(--display-weight, 400);font-size:clamp(30px,3.6vw,40px);line-height:1.1;letter-spacing:var(--display-tracking, -.02em);margin:0 0 16px;color:var(--fg);text-rendering:geometricPrecision}.hero h1 em{font-style:italic;color:var(--signal)}.hero-sub{font-size:19px;line-height:1.6;color:var(--dim);max-width:52ch;margin:0}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid var(--edge)}.section-head h2{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);font-weight:500;margin:0}.section-head .count{font-family:var(--font-mono);font-size:11px;color:var(--dim);letter-spacing:.04em}.entries{display:flex;flex-direction:column;gap:0;margin-bottom:72px}.entry-card{padding:20px 0;border-bottom:1px solid var(--edge);display:grid;grid-template-columns:112px 1fr;gap:28px;cursor:pointer;transition:background .16s;text-decoration:none;color:inherit}.entry-card:hover{background:var(--surface);margin-inline:-12px;padding-inline:12px}.entry-meta{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--dim);line-height:1.6}.entry-meta .date{color:var(--fg)}.entry-meta .path{color:var(--signal);display:block;margin-top:4px}.entry-meta .length{display:block;margin-top:4px;opacity:.7}.entry-body .title{font-family:var(--font-display);font-size:20px;font-weight:var(--entry-title-weight, 500);letter-spacing:-.005em;line-height:1.25;color:var(--fg);margin:0 0 6px}.entry-body .summary{font-size:14px;line-height:1.6;color:var(--dim);margin:0;max-width:60ch}.entry-preview-wrap{border-top:1px solid var(--edge);margin-top:48px;padding-top:48px}.preview-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--signal);margin-bottom:32px}.hud{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--dim);margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--edge);display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hud .sep{color:var(--edge)}.hud .hud-path{color:var(--signal)}.hud .hud-key{color:var(--fg)}.entry-preview h1.entry-title{font-family:var(--font-display);font-weight:var(--display-weight, 400);font-size:clamp(32px,4vw,44px);line-height:1.08;letter-spacing:var(--display-tracking, -.02em);margin:8px 0 16px;color:var(--fg)}.entry-preview .subtitle{font-size:17px;line-height:1.55;color:var(--dim);max-width:56ch;margin:0 0 40px;font-style:var(--subtitle-style, normal)}.prose{font-size:18px;line-height:1.75;color:var(--fg)}.prose p{margin:0 0 1.25em}.prose h2{font-family:var(--font-display);font-weight:var(--h2-weight, 500);font-size:22px;letter-spacing:-.01em;margin:2em 0 .75em;color:var(--fg);line-height:1.2}.prose h3{font-family:var(--font-display);font-weight:500;font-size:16px;letter-spacing:0;margin:1.75em 0 .5em;color:var(--fg)}.prose a{color:var(--signal);text-decoration:none;background-image:linear-gradient(var(--signal),var(--signal));background-repeat:no-repeat;background-position:0 100%;background-size:0% 1px;transition:background-size .2s ease-out;padding-bottom:2px}.prose a:hover{background-size:100% 1px}.prose ul,.prose ol{margin:0 0 1.25em;padding-left:1.25em}.prose li{margin-bottom:.35em}.prose li::marker{color:var(--dim)}.prose blockquote{margin:1.5em 0;padding:4px 0 4px 20px;border-left:2px solid var(--signal);color:var(--dim);font-style:italic}.prose code{font-family:var(--font-mono);font-size:.88em;background:var(--surface);padding:1px 6px;border-radius:var(--radius);color:var(--fg)}.prose pre{background:var(--surface);padding:18px 20px;border-radius:var(--radius);border:1px solid var(--edge);overflow-x:auto;margin:1.5em 0;font-family:var(--font-mono);font-size:13px;line-height:1.6;position:relative}.prose pre .file{position:absolute;top:-10px;left:12px;background:var(--bg);padding:0 8px;font-size:10px;letter-spacing:.08em;color:var(--dim);text-transform:uppercase}.prose pre code{background:transparent;padding:0;font-size:inherit;color:var(--fg)}.prose pre .tok-k{color:var(--signal)}.prose pre .tok-s{color:var(--dim)}.prose pre .tok-c{color:var(--dim);font-style:italic;opacity:.75}.prose pre .tok-n{color:var(--fg)}.prose pre .tok-f{color:var(--signal)}.prose hr{border:none;border-top:1px solid var(--edge);margin:2.5em 0}.prose img{max-width:100%;height:auto;display:block;margin:1.75em auto;border-radius:var(--radius)}.prose figure{margin:1.75em 0}.prose figure img{margin:0 0 8px}.prose figcaption{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--dim);text-align:center}.prose table{width:100%;border-collapse:collapse;margin:1.75em 0;font-size:14px;line-height:1.55}.prose th,.prose td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--edge);vertical-align:top}.prose th{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);font-weight:500;border-bottom-color:var(--fg)}.prose tbody tr:last-child td{border-bottom:none}.prose .footnotes{margin-top:3em;padding-top:1.5em;border-top:1px solid var(--edge);font-size:14px;color:var(--dim)}.prose .footnotes ol{padding-left:1.5em}.prose sup a{font-family:var(--font-mono);font-size:.8em}.prose ul.contains-task-list{list-style:none;padding-left:0}.prose .task-list-item{display:flex;gap:10px;align-items:baseline}.prose .task-list-item input[type=checkbox]{accent-color:var(--signal);transform:translateY(1px)}.prose del{color:var(--dim)}.sidenote{font-family:var(--font-mono);font-size:12px;line-height:1.55;color:var(--dim);background:var(--surface);border-left:2px solid var(--signal);padding:10px 14px;margin:1.5em 0;border-radius:var(--radius)}.sidenote .sn-label{display:block;color:var(--signal);font-size:10px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:4px}.related{margin-top:56px;padding-top:24px;border-top:1px solid var(--edge)}.related .section-head{padding-bottom:0;border:none;margin-bottom:16px}.related-list{display:flex;flex-direction:column;gap:2px}.related-list a{font-family:var(--font-mono);font-size:12px;color:var(--dim);text-decoration:none;padding:8px 0;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--edge);transition:color .16s}.related-list a:hover{color:var(--fg)}.related-list .r-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.related-list .r-path{color:var(--signal);flex-shrink:0}.grain{position:fixed;inset:0;pointer-events:none;z-index:999;opacity:var(--grain-opacity, 0);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");mix-blend-mode:var(--grain-blend, multiply)}:root{--bg: #FAF9F5;--surface: #efebe4;--fg: #1a1a1a;--dim: #7b7266;--edge: rgba(26, 26, 26, .12);--signal: #9c3a2d;--signal-fog: rgba(156, 58, 45, .25);--font-body: "General Sans", ui-sans-serif, system-ui, sans-serif;--font-display: "Geist", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--radius: 4px;--motion-page: .2s;--grain-opacity: 0;--line-body: 1.7;--display-weight: 400;--display-tracking: -.022em;--entry-title-weight: 600;--h2-weight: 600;--subtitle-style: normal}body{font-feature-settings:"ss01","ss02","kern"}.hero h1,.entry-preview h1.entry-title{font-weight:500;letter-spacing:-.025em}em{font-weight:500;color:var(--signal)}.hero h1 em,.entry-preview h1.entry-title em{font-style:italic;font-weight:400;color:var(--signal)}.entry-body .title{font-weight:600;letter-spacing:-.008em}.wordmark{font-weight:600;letter-spacing:-.012em}.hero-eyebrow,.preview-label,.section-head h2,.sn-label,.prose pre .file,.entry-meta,.nav-item,.sidebar-footer,.hud,.related-list a,.wordmark .role{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:500}.hero-eyebrow,.preview-label,.section-head h2,.sn-label{letter-spacing:.16em}.prose pre .file{letter-spacing:.12em}.entry-meta{letter-spacing:.02em;font-weight:400;line-height:1.7}.entry-meta .date{font-weight:500}.nav-item{letter-spacing:.02em;font-weight:500;padding:9px 10px;font-size:14px}.nav{gap:4px}.nav-item.active,.nav-item:hover{background:transparent;color:var(--fg)}.nav-item .key{opacity:.55;font-weight:400}.sidebar-footer{letter-spacing:.03em;font-weight:400;line-height:1.75;font-size:11px}.hud{letter-spacing:.03em;font-weight:400;gap:14px}.related-list a{letter-spacing:.02em;font-weight:400;padding:10px 0}.wordmark .role{letter-spacing:.02em;font-weight:400;font-size:12px;margin-top:8px}
