@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ae822095a172cc5c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3c70c5716f1730b3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Space_Mono_e8b655;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fc727f226c737876-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/77fb5eec12c66d49-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/281dae1e814de8c6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Space_Mono_e8b655;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/806de4d605d3ad01-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Mono_Fallback_e8b655;src:local("Arial");ascent-override:81.58%;descent-override:26.30%;line-gap-override:0.00%;size-adjust:137.28%}.__className_e8b655{font-family:__Space_Mono_e8b655,__Space_Mono_Fallback_e8b655;font-style:normal}.__variable_e8b655{--font-display:"__Space_Mono_e8b655","__Space_Mono_Fallback_e8b655"}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_898c26;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_898c26;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_898c26;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_898c26;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_898c26;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_898c26;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_898c26;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_898c26{font-family:__JetBrains_Mono_898c26,__JetBrains_Mono_Fallback_898c26;font-style:normal}.__variable_898c26{--font-body:"__JetBrains_Mono_898c26","__JetBrains_Mono_Fallback_898c26"}:root{--paper:#e7f3ea;--paper-grad-top:#d9eedd;--surface:#fff;--ink:#0e2e1d;--ink-soft:#2c4a39;--muted:#5f846f;--accent:#12a05b;--accent-bright:#3fcb85;--accent-deep:#0a6e3e;--line:#cce6d2;--glow:rgba(18,160,91,.17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body),"JetBrains Mono",monospace;color:var(--ink);background:radial-gradient(1200px 480px at 50% -160px,var(--paper-grad-top),transparent 70%),linear-gradient(180deg,var(--paper) 0,#f2faf4 60%,#fbfefb 100%);background-attachment:fixed;min-height:100vh;-webkit-font-smoothing:antialiased;line-height:1.6;font-size:15px}a{color:inherit}.wrap{max-width:680px;margin:0 auto;padding:0 24px}.site-header{position:relative;padding:34px 0 0}.topbar{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.wordmark{font-family:var(--font-display),"Space Mono",monospace;font-weight:700;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center}.wordmark .dotcom{color:var(--accent)}.cursor{display:inline-block;width:.5ch;height:1.05em;background:var(--accent);margin-left:.18em;transform:translateY(.06em);box-shadow:0 0 6px var(--glow);animation:blink 1.1s steps(1) infinite}@keyframes blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.site-nav{display:flex;gap:20px}.site-nav a{font-family:var(--font-body),monospace;font-size:.74rem;letter-spacing:.02em;color:var(--muted);text-decoration:none;padding-bottom:4px;border-bottom:1.5px solid transparent;transition:color .2s,border-color .2s}.site-nav a:before{content:"/";color:var(--line);margin-right:2px}.site-nav a:focus-visible,.site-nav a:hover{color:var(--accent);border-color:var(--accent)}.horizon{position:relative;height:3px;margin-top:26px;border-radius:3px;background:linear-gradient(90deg,transparent 0,var(--accent) 22%,var(--accent-bright) 50%,var(--accent) 78%,transparent 100%);background-size:220% 100%;opacity:.9;animation:drift 9s ease-in-out infinite}.horizon:after{content:"";position:absolute;left:0;right:0;top:5px;height:14px;background:radial-gradient(60% 100% at 50% 0,var(--glow),transparent 70%)}@keyframes drift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.intro{padding:48px 0 18px}.intro .kicker{font-family:var(--font-body),monospace;font-size:.76rem;color:var(--muted);margin:0 0 18px;letter-spacing:.02em}.intro .kicker:before{content:"// ";color:var(--accent)}.intro h1{font-family:var(--font-display),"Space Mono",monospace;font-weight:700;font-size:clamp(1.45rem,4.4vw,2.05rem);line-height:1.35;letter-spacing:-.02em;margin:0 0 18px;color:var(--ink);max-width:22ch}.intro h1 em{font-style:italic;color:var(--accent-deep)}.intro p{color:var(--ink-soft);font-size:.92rem;max-width:60ch;margin:0;line-height:1.7}.intro p a{color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px}.list-head{display:flex;align-items:center;gap:14px;margin:46px 0 8px}.list-head span{font-family:var(--font-body),monospace;font-size:.74rem;color:var(--muted);white-space:nowrap;letter-spacing:.02em}.list-head span b{color:var(--accent-deep);font-weight:500}.list-head .rule{height:1px;background:var(--line);flex:1 1}.filter-bar{display:flex;flex-direction:column;gap:10px;margin:40px 0 6px}.filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-label{color:var(--muted);min-width:3.2em}.filter-chip,.filter-label{font-family:var(--font-body),monospace;font-size:.72rem;letter-spacing:.02em}.filter-chip{color:var(--ink-soft);text-decoration:none;border:1px solid var(--line);border-radius:6px;padding:2px 9px;background:transparent;transition:color .18s,border-color .18s,background .18s}.filter-chip:focus-visible,.filter-chip:hover{color:var(--accent-deep);border-color:var(--accent);outline:none}.filter-chip.active{color:#fff;background:var(--accent-deep);border-color:var(--accent-deep)}.filter-chip .count{color:var(--muted);margin-left:5px;font-size:.92em}.filter-chip.active .count{color:hsla(0,0%,100%,.7)}.empty{font-family:var(--font-body),monospace;font-size:.82rem;color:var(--muted);padding:28px 0;letter-spacing:.02em}.post-meta a.tag{text-decoration:none;transition:color .18s}.post-meta a.tag:hover{color:var(--accent)}.post-row{display:block;text-align:left;text-decoration:none;border-bottom:1px solid var(--line);padding:22px 18px;margin:0 -18px;border-radius:14px;color:inherit;transition:background .22s ease,box-shadow .22s ease,transform .22s ease;opacity:0;transform:translateY(10px);animation:rise .6s cubic-bezier(.2,.7,.2,1) forwards}.post-row:first-child{animation-delay:.05s}.post-row:nth-child(2){animation-delay:.11s}.post-row:nth-child(3){animation-delay:.17s}.post-row:nth-child(4){animation-delay:.23s}.post-row:nth-child(5){animation-delay:.29s}.post-row:nth-child(6){animation-delay:.35s}.post-row:nth-child(n+7){animation-delay:.4s}@keyframes rise{to{opacity:1;transform:none}}.post-row:focus-visible,.post-row:hover{background:var(--surface);border-bottom-color:transparent;box-shadow:0 10px 30px -12px var(--glow),0 2px 8px -4px rgba(14,46,29,.08);transform:translateY(-2px);outline:none}.post-meta{display:flex;align-items:center;gap:14px;margin-bottom:9px;flex-wrap:wrap}.post-date{font-size:.74rem;color:var(--muted);letter-spacing:.02em}.post-date,.tag{font-family:var(--font-body),monospace}.tag{font-size:.72rem;color:var(--accent-deep);letter-spacing:.01em}.tag:before{content:"[";color:var(--muted)}.tag:after{content:"]"}.lang,.tag:after{color:var(--muted)}.lang{font-family:var(--font-body),monospace;font-size:.66rem;border:1px solid var(--line);border-radius:4px;padding:0 5px;letter-spacing:.06em}.post-row h2{font-family:var(--font-display),"Space Mono",monospace;font-weight:700;font-size:1.12rem;line-height:1.35;letter-spacing:-.015em;margin:0 0 8px;color:var(--ink);transition:color .2s}.post-row:focus-visible h2,.post-row:hover h2{color:var(--accent-deep)}.post-row p{margin:0;color:var(--ink-soft);font-size:.86rem;line-height:1.65}.back{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-body),monospace;font-size:.74rem;letter-spacing:.02em;color:var(--accent-deep);text-decoration:none;margin:40px 0 30px}.back:hover{color:var(--ink)}.article-head h1{font-family:var(--font-display),"Space Mono",monospace;font-weight:700;font-size:clamp(1.55rem,5vw,2.25rem);line-height:1.25;letter-spacing:-.02em;margin:14px 0 16px}.prose{font-size:.93rem;color:var(--ink-soft);line-height:1.78}.prose p{margin:0 0 1.15em}.prose h2,.prose h3{font-family:var(--font-display),"Space Mono",monospace;font-weight:700;color:var(--ink);letter-spacing:-.01em;margin:1.9em 0 .5em}.prose h2{font-size:1.2rem}.prose h3{font-size:1.08rem}.prose h2:before,.prose h3:before{content:"## ";color:var(--accent)}.prose strong{color:var(--ink);font-weight:700}.prose a{color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line)}.prose a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.prose ol,.prose ul{padding-left:1.4em;margin:0 0 1.15em}.prose li{margin:.3em 0}.prose blockquote{margin:1.4em 0;padding:4px 0 4px 20px;border-left:3px solid var(--accent);font-style:italic;font-size:1rem;color:var(--ink)}.prose code{font-family:var(--font-body),monospace;font-size:.88em;background:rgba(18,160,91,.12);color:var(--accent-deep);padding:1px 6px;border-radius:5px}.prose pre{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px;overflow-x:auto;box-shadow:0 6px 22px -16px var(--glow);margin:1.4em 0}.prose pre code{background:none;color:var(--ink);padding:0;font-size:.82rem;line-height:1.65}.prose img{max-width:100%;height:auto;border-radius:12px;border:1px solid var(--line);box-shadow:0 6px 22px -16px var(--glow)}.prose figure,.prose img{margin:1.4em 0}.prose figure img{margin:0}.prose figcaption{font-size:.74rem;color:var(--muted);text-align:center;margin-top:8px}.legal-note,.prose figcaption{font-family:var(--font-body),monospace}.legal-note{font-size:.78rem;color:var(--accent-deep);background:rgba(18,160,91,.08);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:20px 0 8px}.site-footer{margin-top:70px;padding:30px 0 50px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.site-footer .legal{display:flex;gap:16px;flex-wrap:wrap}.site-footer .copy,.site-footer a{font-family:var(--font-body),monospace;font-size:.72rem;color:var(--muted);text-decoration:none;letter-spacing:.02em}.site-footer .legal a:hover,.site-footer .social a:hover{color:var(--accent)}.site-footer .social{display:flex;gap:18px}.site-footer .social a:before{content:"→ ";color:var(--line)}@media (max-width:520px){.intro{padding-top:36px}.post-row{padding:18px 16px;margin:0 -16px}.site-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;scroll-behavior:auto;transition:none!important}.post-row{opacity:1;transform:none}.cursor{opacity:1}}