@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.0kjod.kaq1k69.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_eec9362c-module___KLNGa__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_eec9362c-module___KLNGa__variable{--font-sans:"Outfit", "Outfit Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_28cfed03-module__SxpdjW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_28cfed03-module__SxpdjW__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.visible{visibility:visible}.grid{display:grid}.contents{display:contents}.h-4{height:1rem}.w-4{width:1rem}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.opacity-70{opacity:.7}.outline{outline-style:solid}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:120%}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--surface:#fafbfc;--surface-elevated:#fff;--ink:#0f172a;--ink-muted:#475569;--hud-line:#3b82f633;--hud-line-strong:#3b82f666;--hud-line-faint:#3b82f61c;--hud-fill:#3b82f60f;--hud-accent:#2563eb;--hud-accent-hover:#1d4ed8;--voxel-stroke:#1e40af4d;--voxel-fill:#ffffffd9;--glitch-a:#38bdf84d;--glitch-b:#f43f5e29;--code-block-bg:#f8fafc;--link-underline:#2563eb59}html.dark{--surface:#050810;--surface-elevated:#0c111f;--ink:#e8edf5;--ink-muted:#94a3b8;--hud-line:#60a5fa3d;--hud-line-strong:#60a5fa7a;--hud-line-faint:#60a5fa24;--hud-fill:#3b82f61f;--hud-accent:#60a5fa;--hud-accent-hover:#93c5fd;--voxel-stroke:#93c5fd61;--voxel-fill:#1e293bd1;--glitch-a:#38bdf847;--glitch-b:#f43f5e38;--code-block-bg:#151f32;--link-underline:#60a5fa73}*,:before,:after{box-sizing:border-box}body{min-height:100dvh;font-family:var(--font-sans), ui-sans-serif, system-ui, sans-serif;color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.5}body:after{content:"";pointer-events:none;z-index:100;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0f172a05 2px 3px);position:fixed;inset:0}html.dark body:after{mix-blend-mode:normal;opacity:.4;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000024 2px 3px)}.hud-environment{z-index:0;background:linear-gradient(165deg,#fff 0%,#f5f9ff 36%,#f8faff 72%,#fafbfc 100%);position:fixed;inset:0;overflow:hidden}html.dark .hud-environment{background:linear-gradient(165deg,#030508 0%,#050810 38%,#060a12 100%)}.hud-vignette-layer--dark{opacity:0;pointer-events:none}html.dark .hud-vignette-layer--light{opacity:0}html.dark .hud-vignette-layer--dark{opacity:1}.hud-environment:after{content:"";z-index:1;pointer-events:none;opacity:0;background:radial-gradient(100% 55% at 50% 0,#3b82f60f 0%,#0000 50%),radial-gradient(85% 50% at 50% 100%,#0000008c 0%,#0000 55%);position:absolute;inset:0}html.dark .hud-environment:after{opacity:1}.hud-environment__svg{z-index:0;width:100%;height:100%;color:var(--hud-line-faint);position:absolute;inset:0}.hud-pattern-stroke{stroke:currentColor}.hud-pattern-stroke-major{stroke:var(--hud-line)}.hud-construction-lines{stroke:var(--hud-line-faint);opacity:.5}.hud-voxel-face{fill:var(--voxel-fill);stroke:var(--voxel-stroke)}.hud-registration-html{z-index:2;pointer-events:none;position:absolute;inset:0}.hud-reg-corner{color:var(--hud-line-strong);position:absolute}.hud-reg-corner--tl{top:1rem;left:1rem}.hud-reg-corner--tr{top:1rem;right:1rem}.hud-reg-corner--bl{bottom:1rem;left:1rem}.hud-reg-corner--br{bottom:1rem;right:1rem}.hud-reg-corner path{stroke:currentColor}@media (prefers-reduced-motion:no-preference){.hud-grid-drift{transform-origin:50%;animation:120s linear infinite hud-grid-drift}@keyframes hud-grid-drift{0%{transform:translate(0)}50%{transform:translate(-18px,-10px)}to{transform:translate(0)}}.hud-construction-line{stroke-dasharray:5 18;stroke-dashoffset:0;animation:42s linear infinite hud-construction-march}.hud-construction-line--a{animation-duration:38s}.hud-construction-line--b{animation-duration:52s;animation-direction:reverse}@keyframes hud-construction-march{to{stroke-dashoffset:-460px}}.hud-voxel-cluster--a .hud-voxel-face{animation:5.5s ease-in-out infinite hud-voxel-wire}.hud-voxel-cluster--b .hud-voxel-face{animation:6.8s ease-in-out infinite hud-voxel-wire}@keyframes hud-voxel-wire{0%,to{stroke-opacity:.32;opacity:1}50%{stroke-opacity:.72;opacity:1}}.hud-voxel-cluster--a .hud-voxel-face:first-child{animation-delay:0s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(2){animation-delay:-.7s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(3){animation-delay:-1.4s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(4){animation-delay:-2.1s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(5){animation-delay:-2.8s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(6){animation-delay:-3.5s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(7){animation-delay:-4.2s}.hud-voxel-cluster--a .hud-voxel-face:nth-child(8){animation-delay:-4.9s}.hud-voxel-cluster--b .hud-voxel-face:first-child{animation-delay:-1.1s}.hud-voxel-cluster--b .hud-voxel-face:nth-child(2){animation-delay:-2.4s}.hud-voxel-cluster--b .hud-voxel-face:nth-child(3){animation-delay:-3.6s}.hud-reg-drift--tl{animation:14s ease-in-out infinite hud-reg-float}.hud-reg-drift--tr{animation:16s ease-in-out -3s infinite hud-reg-float}.hud-reg-drift--bl{animation:18s ease-in-out -5s infinite hud-reg-float}.hud-reg-drift--br{animation:15s ease-in-out -2s infinite hud-reg-float}@keyframes hud-reg-float{0%,to{transform:translate(0)}50%{transform:translate(3px,-2px)}}}@media (prefers-reduced-motion:reduce){.hud-grid-drift,.hud-construction-line,.hud-voxel-cluster--a .hud-voxel-face,.hud-voxel-cluster--b .hud-voxel-face,.hud-reg-drift--tl,.hud-reg-drift--tr,.hud-reg-drift--bl,.hud-reg-drift--br{animation:none!important}}.home-main{z-index:1;justify-content:center;align-items:center;min-height:100dvh;padding:2.75rem 1.5rem 3.25rem;display:flex;position:relative}.home-stack{z-index:2;width:100%;max-width:30rem;position:relative}.matrix-scramble{font-variant-numeric:tabular-nums;display:inline-block}.hud-panel{background:var(--surface-elevated);border:1px solid var(--hud-line);position:relative;box-shadow:inset 0 0 0 1px #fffffff2,inset 0 1px #fffc,0 24px 80px -32px #2563eb1c,0 8px 32px -16px #0f172a0f}html.dark .hud-panel{box-shadow:inset 0 0 0 1px #1e293bf2,inset 0 1px #0f172ad9,0 24px 80px -32px #2563eb33,0 8px 32px -16px #0006}.hud-panel:before,.hud-panel:after{content:"";pointer-events:none;border-color:var(--hud-line-strong);z-index:2;border-style:solid;width:1rem;height:1rem;position:absolute}.hud-panel:before{border-width:1px 0 0 1px;top:10px;left:10px}.hud-panel:after{border-width:0 1px 1px 0;bottom:10px;right:10px}.hud-bracket{pointer-events:none;border-color:var(--hud-line-strong);z-index:2;border-style:solid;width:1rem;height:1rem;position:absolute}.hud-bracket--tr{border-width:1px 1px 0 0;top:10px;right:10px}.hud-bracket--bl{border-width:0 0 1px 1px;bottom:10px;left:10px}.hud-panel__theme-toggle-wrap{z-index:3;line-height:0;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.hud-panel__chrome{--hud-chrome-toggle:1.85rem;min-height:calc(var(--hud-chrome-toggle) + .35rem);padding:.6rem calc(10px + var(--hud-chrome-toggle) + .65rem) .6rem 1rem;border-bottom:1px solid var(--hud-line-faint);background:linear-gradient(#eff6ff99 0%,#0000 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex;position:relative}html.dark .hud-panel__chrome{background:linear-gradient(#1e3a8a47 0%,#0000 100%)}@media (max-width:760px){.hud-panel__meta{display:none}.hud-panel__chrome{--hud-chrome-toggle:2.15rem;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"label right toggle";align-items:center;gap:.35rem .55rem;min-height:0;padding:.58rem .9rem .52rem;display:grid}.hud-panel__theme-toggle-wrap{grid-area:toggle;place-self:center end;position:static;transform:none}.hud-panel__label{grid-area:label}.hud-panel__chrome-right{grid-area:right;justify-content:flex-end;align-items:center;gap:.45rem;width:auto}}@media (max-width:520px){.home-main{align-items:flex-start;padding:1.15rem .85rem 2rem}.home-stack{max-width:none}.hud-panel__chrome{--hud-chrome-toggle:2.15rem;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"label right toggle";align-items:center;gap:.35rem .55rem;min-height:0;padding:.55rem .85rem;display:grid}.hud-panel__theme-toggle-wrap{grid-area:toggle;place-self:center end;position:static;transform:none}.hud-panel__label{letter-spacing:.14em;overflow-wrap:anywhere;grid-area:label;font-size:.62rem}.hud-panel__chrome-right{grid-area:right;justify-content:flex-end;align-items:center;gap:.45rem;width:auto}.hud-panel__body{padding:1.35rem 1rem 1.2rem}.theme-toggle,.theme-toggle.theme-toggle--placeholder{width:var(--hud-chrome-toggle);height:var(--hud-chrome-toggle)}.theme-toggle__icon{width:1.2rem;height:1.2rem}.blog-layout{padding:1.1rem .85rem 2.5rem}.blog-top-nav{gap:.65rem;margin-bottom:1.35rem}.hud-registration-html{display:none}.home-email-row{flex-direction:column;align-items:stretch;gap:.35rem}.home-email-prefix{text-align:center}.home-email{text-align:center;min-width:0;max-width:100%}.home-name{font-size:clamp(1.35rem,6vw,1.85rem)}}.hud-panel__label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.22em;color:var(--hud-accent);font-size:.65rem;font-weight:500;line-height:1.15}.hud-panel__meta{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;color:var(--ink-muted);opacity:.75;font-size:.6rem;line-height:1.15}.hud-panel__body{text-align:center;padding:2.25rem 2rem 1.7rem}.hud-panel__footer{border-top:1px solid var(--hud-line-faint);font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.14em;color:var(--ink-muted);opacity:.8;justify-content:space-between;align-items:center;padding:.5rem 1rem .65rem;font-size:.55rem;display:flex}.home-name{letter-spacing:-.03em;color:var(--ink);margin:0;font-size:1.95rem;font-weight:600;line-height:1.15}@media (prefers-reduced-motion:no-preference){.hud-glitch-text{animation:9s ease-in-out infinite hud-glitch}}@keyframes hud-glitch{0%,91%,to{text-shadow:none;transform:translate(0)}92%{text-shadow:1px 0 0 var(--glitch-a), -1px 0 0 var(--glitch-b);transform:translate(.5px)}93%{text-shadow:-.5px 0 0 var(--glitch-a), .5px 0 0 var(--glitch-b);transform:translate(-.5px,.5px)}94%{text-shadow:none;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.hud-glitch-text{animation:none}}.home-tagline{color:var(--ink-muted);margin:.55rem 0 0;font-size:1rem;font-weight:400}.home-email-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem .65rem;margin-top:1.35rem;display:flex}.home-email-prefix{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.2em;color:var(--hud-accent);opacity:.85;font-size:.62rem}.home-email{font-family:var(--font-mono), ui-monospace, monospace;color:var(--hud-accent);overflow-wrap:anywhere;word-break:break-word;border-bottom:1px solid #0000;font-size:.92rem;text-decoration:none;transition:color .15s,border-color .15s}.home-email:hover{color:var(--hud-accent-hover);border-bottom-color:var(--hud-line-strong)}.home-links{text-align:left;border-top:1px solid var(--hud-line-faint);margin:1.75rem 0 0;padding:.95rem 0 0;list-style:none}.home-links li+li{margin-top:.15rem}.home-link{color:var(--ink);border-left:2px solid #0000;align-items:center;gap:.65rem;margin:0 -.35rem;padding:.7rem .45rem .7rem .7rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .14s,border-color .14s;display:flex;position:relative}.home-link:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#2563eb26 35%,#2563eb73 50%,#2563eb26 65%,#0000 100%);height:1px;transition:opacity .18s,transform .28s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;left:.5rem;right:.5rem;transform:translateY(-50%)scaleX(.2)}.home-link:hover:after{opacity:1;transform:translateY(-50%)scaleX(1)}.home-link:hover{background:var(--hud-fill);border-left-color:var(--hud-accent)}.home-link svg{color:var(--hud-accent);opacity:.85}.home-link:hover svg{opacity:1}.home-link-label{font-family:var(--font-sans), ui-sans-serif, system-ui, sans-serif;letter-spacing:.02em}.home-link-out{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.14em;color:var(--ink-muted);opacity:.62;margin-left:auto;font-size:.58rem;font-weight:500;transition:opacity .16s,color .16s,transform .22s cubic-bezier(.22,1,.36,1)}.home-link:hover .home-link-out{opacity:1;color:var(--hud-accent);transform:translate(2px,-1px)}@media (prefers-reduced-motion:reduce){.home-link:after{transition:none}.home-link:hover:after{transform:translateY(-50%)scaleX(1)}.home-link-out{transition:opacity .16s,color .16s}.home-link:hover .home-link-out{transform:none}}.hud-panel__chrome-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.85rem;display:flex}.hud-blog-link{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--hud-accent);border-bottom:1px solid #0000;font-size:.6rem;font-weight:500;line-height:1.15;text-decoration:none;transition:border-color .16s,color .16s}.hud-blog-link:hover{color:var(--hud-accent-hover);border-bottom-color:var(--hud-accent-hover)}.theme-toggle{border:1px solid var(--hud-line);background:var(--surface-elevated);width:1.85rem;height:1.85rem;color:var(--hud-accent);cursor:pointer;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.theme-toggle:hover{border-color:var(--hud-line-strong);background:var(--hud-fill);color:var(--hud-accent-hover)}.theme-toggle:focus-visible{outline:2px solid var(--hud-accent);outline-offset:2px}.theme-toggle__icon{width:1rem;height:1rem}.theme-toggle--placeholder{pointer-events:none;opacity:.45}.blog-layout{z-index:1;max-width:72rem;min-height:100dvh;margin:0 auto;padding:1.5rem 1.25rem 3rem;position:relative}.blog-top-nav{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.08em;color:var(--ink-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;font-size:.65rem;display:flex}.blog-top-nav__crumb{flex-wrap:wrap;align-items:center;gap:0;display:flex}.blog-top-nav__link{color:var(--hud-accent);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .15s}.blog-top-nav__link:hover{border-bottom-color:var(--hud-accent)}.blog-top-nav__sep{opacity:.5;margin:0 .35rem}.blog-top-nav__here{color:var(--ink)}.blog-index__title{letter-spacing:-.03em;color:var(--ink);margin:0;font-size:1.85rem;font-weight:600}.blog-index__lede{color:var(--ink-muted);margin:.5rem 0 2rem;font-size:1rem}.blog-index__empty{color:var(--ink-muted)}.blog-index__code{font-family:var(--font-mono), ui-monospace, monospace;background:var(--hud-fill);border-radius:4px;padding:.1em .35em;font-size:.85em}.blog-index__list{flex-direction:column;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.blog-index__item{margin:0}.blog-index__link{color:inherit;background:var(--surface-elevated);border:1px solid var(--hud-line-faint);border-radius:2px;padding:1.15rem 1.25rem;text-decoration:none;transition:border-color .18s,box-shadow .18s;display:block;box-shadow:inset 0 1px #ffffffe6}.blog-index__link:hover{border-color:var(--hud-line);box-shadow:inset 0 1px #fffffff2,0 12px 40px -20px #2563eb1f}html.dark .blog-index__link{box-shadow:inset 0 1px #1e293bd9}html.dark .blog-index__link:hover{box-shadow:inset 0 1px #1e293be6,0 12px 40px -20px #2563eb38}.blog-index__post-title{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:600}.blog-index__meta{color:var(--ink-muted);font-size:.8rem;font-family:var(--font-mono), ui-monospace, monospace;margin:.4rem 0 0}.blog-index__desc{color:var(--ink-muted);margin:.55rem 0 0;font-size:.95rem;line-height:1.5}.blog-index__more{font-size:.75rem;font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;color:var(--hud-accent);margin-top:.65rem;display:inline-block}.blog-post{grid-template-columns:minmax(0,1fr) minmax(0,2.2fr) minmax(0,1fr);align-items:start;gap:1.5rem 2rem;display:grid}@media (max-width:1024px){.blog-post{grid-template-columns:1fr}.blog-post__aside--left{order:2}.blog-post__article{order:1}.blog-post__aside--toc{order:3}}.blog-post__aside{font-size:.8rem;position:sticky;top:1rem}.blog-post__aside-title{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .75rem;font-size:.6rem}.blog-post__year{font-family:var(--font-mono), ui-monospace, monospace;color:var(--hud-accent);letter-spacing:.08em;margin:.75rem 0 .35rem;font-size:.65rem}.blog-post__year-block:first-child .blog-post__year{margin-top:0}.blog-post__aside-list{margin:0;padding:0;list-style:none}.blog-post__aside-list li{margin:.35rem 0}.blog-post__aside-link{color:var(--ink-muted);border-bottom:1px solid #0000;line-height:1.35;text-decoration:none;transition:color .15s,border-color .15s}.blog-post__aside-link:hover{color:var(--hud-accent);border-bottom-color:var(--hud-line)}.blog-post__aside-link--current{color:var(--ink);pointer-events:none;font-weight:500}.blog-post__header{border-bottom:1px solid var(--hud-line-faint);margin-bottom:1.75rem;padding-bottom:1.25rem}.blog-post__title{letter-spacing:-.03em;color:var(--ink);margin:0;font-size:1.75rem;font-weight:600;line-height:1.2}.blog-post__byline{color:var(--ink-muted);font-size:.85rem;font-family:var(--font-mono), ui-monospace, monospace;margin:.65rem 0 0}.blog-post__toc-label{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .5rem;font-size:.6rem}.blog-post__toc-list{margin:0;padding:0;list-style:none}.blog-post__toc-li{margin:.35rem 0}.blog-post__toc-li--sub{border-left:2px solid var(--hud-line-faint);padding-left:.75rem}.blog-post__toc-a{color:var(--ink-muted);font-size:.82rem;line-height:1.35;text-decoration:none;transition:color .15s}.blog-post__toc-a:hover{color:var(--hud-accent)}.blog-prose{color:var(--ink);font-size:1rem;line-height:1.65}.blog-prose-a{color:var(--hud-accent);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--link-underline);text-decoration-color:var(--link-underline);transition:color .15s,text-decoration-color .15s}.blog-prose-a:hover{color:var(--hud-accent-hover);-webkit-text-decoration-color:var(--hud-accent-hover);text-decoration-color:var(--hud-accent-hover)}.blog-prose-h2{letter-spacing:-.02em;color:var(--ink);margin:2rem 0 .75rem;scroll-margin-top:5rem;font-size:1.28rem;font-weight:600}.blog-prose-h3{color:var(--ink);margin:1.5rem 0 .5rem;scroll-margin-top:5rem;font-size:1.1rem;font-weight:600}.blog-prose-p{color:var(--ink);margin:0 0 1rem}.blog-prose-ul,.blog-prose-ol{color:var(--ink);margin:0 0 1rem 1.1rem;padding:0}.blog-prose-li{margin:.35rem 0}.blog-prose-blockquote{border-left:3px solid var(--hud-line-strong);color:var(--ink-muted);margin:1rem 0;padding:.65rem 0 .65rem 1rem;font-style:italic}.blog-prose-hr{border:none;border-top:1px solid var(--hud-line-faint);margin:2rem 0}.blog-prose-strong{color:var(--ink);font-weight:600}.blog-prose-code{font-family:var(--font-mono), ui-monospace, monospace;font-size:.88em}.blog-prose-code--inline{background:var(--hud-fill);color:var(--ink);border:1px solid var(--hud-line-faint);border-radius:4px;padding:.12em .4em}.blog-prose-pre{border:1px solid var(--hud-line-faint);background:var(--code-block-bg);border-radius:8px;margin:0 0 1.25rem;padding:1rem 1.1rem;font-size:.88rem;line-height:1.55;overflow-x:auto}.blog-prose-pre code{font-family:var(--font-mono), ui-monospace, monospace;font-size:inherit;line-height:inherit}.blog-prose-img{border:1px solid var(--hud-line-faint);border-radius:8px;max-width:100%;height:auto;margin:1.25rem 0;display:block}.blog-prose-iframe{border:1px solid var(--hud-line-faint);border-radius:8px;width:100%;max-width:100%;min-height:200px;margin:1.25rem 0;display:block}pre[data-theme*=\ ] code,pre[data-theme*=\ ] code span,code[data-theme*=\ ] span{color:var(--shiki-light)!important;background-color:#0000!important}html.dark pre[data-theme*=\ ] code,html.dark pre[data-theme*=\ ] code span,html.dark code[data-theme*=\ ] span{color:var(--shiki-dark)!important}pre[data-theme*=\ ].blog-prose-pre{background-color:var(--shiki-light-bg)!important;color:var(--shiki-light)!important}html.dark pre[data-theme*=\ ].blog-prose-pre{background-color:var(--shiki-dark-bg)!important;color:var(--shiki-dark)!important}.blog-prose-pre code.blog-prose-code{border:none;border-radius:0;padding:0;background:0 0!important}@media (prefers-reduced-motion:no-preference){body{transition:background-color .6s cubic-bezier(.33,1,.68,1),color .55s cubic-bezier(.33,1,.68,1)}body:after{transition:opacity .55s,background .6s}.hud-environment{transition:background .65s cubic-bezier(.33,1,.68,1)}.hud-environment:after,.hud-vignette-layer--light,.hud-vignette-layer--dark{transition:opacity .65s cubic-bezier(.33,1,.68,1)}.hud-environment__svg{transition:color .55s}.hud-voxel-face{transition:fill .55s,stroke .55s,fill-opacity .55s}.hud-panel,.hud-panel__chrome,.hud-bracket,.blog-index__link,.theme-toggle,.hud-blog-link{transition-property:background,background-color,color,border-color,box-shadow;transition-duration:.55s;transition-timing-function:cubic-bezier(.33,1,.68,1)}.home-link{transition:background .14s,border-color .14s,color .55s cubic-bezier(.33,1,.68,1)}.blog-top-nav__link,.blog-top-nav__here,.home-name,.home-email,.home-tagline,.blog-index__post-title,.blog-index__meta,.blog-index__desc,.blog-post__title,.blog-post__byline,.blog-post__aside-link,.blog-post__aside-link--current,.blog-prose-p,.blog-prose-h2,.blog-prose-h3,.blog-prose-strong,.blog-prose-blockquote{transition-property:color,border-color;transition-duration:.52s;transition-timing-function:cubic-bezier(.33,1,.68,1)}.blog-post__toc-a{transition:color .5s cubic-bezier(.33,1,.68,1)}.blog-prose-a{transition:color .5s cubic-bezier(.33,1,.68,1),text-decoration-color .5s cubic-bezier(.33,1,.68,1)}pre.blog-prose-pre,.blog-prose-img,.blog-prose-iframe{transition-property:background-color,color,border-color;transition-duration:.55s;transition-timing-function:cubic-bezier(.33,1,.68,1)}pre[data-theme*=\ ] code span,code[data-theme*=\ ] span{transition:color .5s,background-color .5s}pre[data-theme*=\ ].blog-prose-pre{transition:background-color .55s,color .55s}}.group:hover .group-hover\:opacity-100{opacity:1}
