@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/59dbefd7fc1c7996-s.1zpt8rrvsu92z.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:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1aa0075df79066e6-s.0mxk1tgo-hrwu.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:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/a79089bce1b24273-s.1akpt5k8ff_pw.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b8dfa3d21eb22018-s.p.2rlmbw0a3_pri.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:Hanken Grotesk Fallback;src:local(Arial);ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.0%;size-adjust:100.94%}._9GbOPa_className{font-family:Hanken Grotesk,Hanken Grotesk Fallback;font-style:normal}._9GbOPa_variable{--font-sans:"Hanken Grotesk", "Hanken Grotesk Fallback"}
@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/375575c718dc6b7a-s.15s2gb72mvmw9.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:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/0f4186ccd8c3f8c4-s.43_ypb-kqawuo.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/a6fd56cd89ea0e72-s.p.3z77xcxvtx9_e.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:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.RTkU6a_className{font-family:Newsreader,Newsreader Fallback;font-style:italic}.RTkU6a_variable{--font-serif:"Newsreader", "Newsreader Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cb20b375a5739b57-s.2tuvx2ggl0uf7.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0d3323de857e1fce-s.p.048ctm9k7u_u3.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:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b7a08e852a63f857-s.2t3qiyt2vl-ta.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/86fd170c8543a779-s.p.2_s53-223o24o.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:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.YdnL8W_className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.YdnL8W_variable{--font-mono:"DM Mono", "DM Mono Fallback"}
:root{--paper:#fff;--cloud:#f6f5f8;--mist:#eae8ee;--dusk:#d9d6e0;--gloss-mid:#f3f2f6;--gloss-low:#dcdae3;--button-edge:#3b3a48;--line:#cfcdd9;--pewter:#8f8c99;--smoke:#5e5b68;--ink:#1e1d24;--ao:#233e8b;--periwinkle:#b9beea;--periwinkle-light:#8c93d6;--periwinkle-glow:#9aa1e0;--periwinkle-chrome:#5860b3;--periwinkle-deep:#4a52a6;--periwinkle-night:#3f4797;--apricot:#f2bc9c;--apricot-light:#e8a27c;--apricot-chrome:#c9673e;--lichen:#b8c9a8;--lichen-chrome:#55703f;--terminal-muted:#b5b2bf;--sans:var(--font-sans), "Hanken Grotesk", Tahoma, Verdana, system-ui, sans-serif;--serif:var(--font-serif), "Newsreader", Georgia, serif;--mono:var(--font-mono), "DM Mono", ui-monospace, Menlo, monospace;--shadow-window:3px 4px 10px #1e1d242e}*,:before,:after{box-sizing:border-box}html,body{background:var(--ink);color:var(--ink);font-family:var(--sans);-webkit-text-size-adjust:100%;margin:0}:focus-visible{outline:2px solid var(--periwinkle);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.term{--bg:var(--ink);--fg:var(--dusk);--muted:var(--terminal-muted);--ok:var(--lichen);--accent:var(--apricot);--error:var(--apricot-light);--strong:var(--cloud);--link:var(--periwinkle);--rule:#3a3842;--option-bg:#b9beea14;background:var(--bg);height:100dvh;color:var(--fg);font-family:var(--mono);padding:28px 20px 16px;font-size:15px;line-height:1.65;display:flex;overflow:hidden}.term[data-theme=paper]{--bg:var(--mist);--fg:var(--ink);--muted:var(--smoke);--ok:var(--lichen-chrome);--accent:var(--periwinkle-night);--error:var(--ink);--strong:var(--ink);--link:var(--periwinkle-night);--rule:var(--pewter);--option-bg:#3f479712}.term__main{flex-direction:column;flex:1;width:100%;max-width:860px;min-height:0;margin:0 auto;display:flex}.t-line{white-space:pre-wrap;word-break:break-word;min-height:1.65em}.tone-text{color:var(--fg)}.tone-muted{color:var(--muted)}.tone-ok{color:var(--ok)}.tone-accent{color:var(--accent)}.tone-error{color:var(--error)}.tone-strong{color:var(--strong);font-weight:500}.term__skip{border:1px solid var(--smoke);min-height:44px;color:var(--muted);font:400 13px var(--mono);cursor:pointer;background:0 0;align-self:flex-start;margin-top:16px;padding:0 14px}.t-banner{border:1px dashed var(--accent);color:var(--strong);margin-top:14px;padding:8px 14px}.term__quick{flex-direction:column;gap:8px;margin:14px 0 6px;display:flex}.t-option{border:0;border-left:3px solid var(--link);background:var(--option-bg);min-height:44px;color:var(--strong);font:inherit;text-align:left;cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:10px 14px;display:flex}.t-option:nth-child(2n){border-left-color:var(--ok)}.t-option:hover .t-option__name,.t-option:focus-visible .t-option__name{text-decoration:underline}.t-option__name{color:var(--accent);min-width:9ch;font-weight:500}.t-option__hint{color:var(--muted)}.term__scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--rule) transparent;flex:1;min-height:0;padding-right:6px;position:relative;overflow-y:auto}.term__scroll::-webkit-scrollbar{width:8px}.term__scroll::-webkit-scrollbar-thumb{background:var(--rule);border-radius:4px}.term__scroll::-webkit-scrollbar-track{background:0 0}.term__session{flex-direction:column;padding:16px 0 8px;display:flex}.term__log{flex-direction:column;display:flex}.t-cmd{width:100%;min-height:32px;color:var(--fg);font:inherit;text-align:left;white-space:pre;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;gap:0 16px;padding:2px 0;display:flex}.t-cmd:hover .t-cmd__label,.t-cmd:focus-visible .t-cmd__label{color:var(--accent);text-decoration:underline}.t-cmd__hint{color:var(--muted);white-space:normal}.t-link{color:var(--link)}.t-link:hover{color:var(--accent)}.t-html{color:var(--fg);max-width:72ch;margin:4px 0 8px}.t-html h1,.t-html h2,.t-html h3{color:var(--accent);margin:14px 0 2px;font-size:15px;font-weight:500}.t-html h2:before{content:"## ";color:var(--muted)}.t-html h3:before{content:"### ";color:var(--muted)}.t-html p{margin:0 0 8px}.t-html ul,.t-html ol{margin:0 0 8px;padding-left:2ch}.t-html li::marker{color:var(--ok)}.t-html strong{color:var(--strong);font-weight:500}.t-html a{color:var(--link)}.t-html code{color:var(--ok);text-underline-offset:3px;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.t-html pre{border-left:2px solid var(--rule);padding:10px 12px;overflow-x:auto}.t-html pre code{cursor:text;text-decoration:none}.t-html blockquote{border-left:2px solid var(--ok);font-family:var(--serif);margin:0 0 8px;padding-left:12px;font-size:17px;font-style:italic}.t-turnstile{min-height:65px;margin:6px 0}.term__prompt{border-top:1px solid var(--rule);flex:none;align-items:center;gap:10px;margin:0;padding:6px 0;display:flex}.term__label{color:var(--ok);flex:none}.term__input{min-width:0;min-height:40px;color:var(--strong);caret-color:var(--accent);font:400 16px var(--mono);background:0 0;border:0;outline:0;flex:1;padding:0}.term__input:focus-visible{outline:none}.term__prompt:focus-within{border-top-color:var(--link)}.term__busy{color:var(--muted)}.term__footer{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:baseline;gap:8px;margin-top:8px;display:flex}.term__tagline{font-family:var(--serif);color:var(--pewter);margin:0;font-size:17px;font-style:italic}.term[data-theme=paper] .term__tagline{color:var(--smoke)}.term__links{color:var(--muted);margin:0;font-size:13px}.term__links a{color:var(--link)}.noscript{max-width:860px;color:var(--dusk);font-family:var(--mono);margin:0 auto;padding:24px 20px}.noscript a{color:var(--periwinkle)}.page{background:var(--mist);min-height:100vh;color:var(--ink)}.site-header{border-bottom:1px solid var(--pewter);max-width:920px;box-shadow:0 1px 0 var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:20px 20px 16px;display:flex}.site-header__brand{color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.wordmark{letter-spacing:-.01em;font-size:20px;font-weight:700}.wordmark__ao{color:var(--ao)}.site-header__nav{font-family:var(--mono);gap:18px;font-size:13px;display:flex}.site-header__nav a{min-height:44px;color:var(--periwinkle-night);align-items:center;display:inline-flex}.page__main{max-width:920px;margin:0 auto;padding:32px 20px 72px}a{color:var(--periwinkle-night)}a:hover{color:var(--apricot-chrome)}.label{font-family:var(--mono);letter-spacing:.04em;color:var(--smoke);font-size:12px}.win{background:var(--periwinkle-night);box-shadow:var(--shadow-window);border-radius:8px 8px 3px 3px;padding:0 3px 3px}.win__bar{height:30px;color:var(--paper);text-shadow:1px 1px #1e1d2473;background:linear-gradient(#8c93d6 0%,#5860b3 18%,#4a52a6 60%,#3f4797 100%);border-radius:7px 7px 0 0;justify-content:space-between;align-items:center;gap:12px;padding:0 3px 0 10px;font-size:14px;font-weight:700;display:flex}.win__title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.win__controls{gap:2px;display:flex}.win__btn{border:1px solid var(--paper);background:linear-gradient(180deg, var(--periwinkle-glow), var(--periwinkle-chrome));border-radius:3px;width:21px;height:21px}.win__btn--close{background:linear-gradient(180deg, var(--apricot-light), var(--apricot-chrome))}.win__body{background:var(--paper);padding:24px}.win__status{background:var(--mist);font-family:var(--mono);color:var(--smoke);padding:3px 0 0;font-size:12px;display:flex}.win__status span{border:1px solid var(--pewter);border-right-color:var(--paper);border-bottom-color:var(--paper);flex:1;padding:4px 8px}.page__title{letter-spacing:-.02em;margin:0 0 20px;font-size:36px;font-weight:600;line-height:1.1}.page__aside{border-top:1px solid var(--pewter);box-shadow:inset 0 1px 0 var(--paper);color:var(--smoke);margin:32px 0 0;padding-top:16px;font-size:15px}.post-list{margin:0;padding:0;list-style:none}.post-list__item{border-bottom:1px solid var(--line);flex-direction:column;gap:4px;padding:14px 0;display:flex}.post-list__title{font-size:22px;font-weight:700;line-height:1.25}.post-list__summary{color:var(--smoke);margin:0;font-size:16px;line-height:1.55}.prose{color:#3a3842;max-width:68ch;font-size:17px;line-height:1.65}.prose h1{letter-spacing:-.025em;color:var(--ink);margin:6px 0 20px;font-size:40px;font-weight:600;line-height:1.1}.prose h2{color:var(--ink);margin:32px 0 8px;font-size:24px;font-weight:700;line-height:1.25}.prose h3{color:var(--ink);margin:24px 0 6px;font-size:19px;font-weight:700}.prose code{font-family:var(--mono);background:var(--cloud);padding:1px 4px;font-size:.9em}.prose pre{background:var(--ink);color:var(--dusk);font-family:var(--mono);padding:14px 16px;font-size:14px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose blockquote{border-left:3px solid var(--periwinkle);font-family:var(--serif);color:var(--smoke);margin:20px 0;padding-left:16px;font-size:22px;font-style:italic}.prose img{max-width:100%;height:auto}@media (max-width:600px){.term{padding:16px 14px 10px;font-size:14px}.term__tagline{font-size:15px}.win__body{padding:18px}.prose h1{font-size:32px}}
