@font-face{font-family:DM Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/dm-mono-italic-400.woff2)format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/dm-mono-300.woff2)format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-mono-400.woff2)format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-mono-500.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-italic-400.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-variable.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-variable.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-variable.woff2)format("woff2")}:root{--font-sans:Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-serif:"Instrument Serif", Georgia, "Times New Roman", serif;--nord-0:#2e3440;--nord-1:#3b4252;--nord-2:#434c5e;--nord-3:#4c566a;--nord-4:#d8dee9;--nord-5:#e5e9f0;--nord-6:#eceff4;--nord-7:#8fbcbb;--nord-8:#88c0d0;--nord-9:#81a1c1;--nord-10:#5e81ac;--nord-11:#bf616a;--nord-12:#d08770;--nord-13:#ebcb8b;--nord-14:#a3be8c;--nord-15:#b48ead;--canvas:var(--nord-0);--canvas-soft:var(--nord-1);--canvas-raised:var(--nord-2);--hairline:var(--nord-3);--hairline-soft:#3f4859;--hairline-strong:#5e6a80;--overlay:#2e3440c7;--ink:var(--nord-6);--text-body:var(--nord-4);--text-strong:var(--nord-5);--text-mute:#b8c1cf;--text-faint:#a6b0c1;--text-on-primary:var(--nord-0);--text-on-accent:var(--nord-0);--primary:var(--nord-6);--primary-hover:#fff;--primary-press:var(--nord-5);--on-primary:var(--nord-0);--prompt-user:var(--nord-12);--prompt-symbol:var(--nord-13);--prompt-separator:var(--nord-15);--path:var(--nord-8);--branch:var(--nord-14);--dirty:var(--nord-11);--dir:var(--nord-9);--success:var(--nord-14);--warning:var(--nord-13);--danger:var(--nord-11);--info:var(--nord-8);--accent:var(--nord-8);--link:var(--nord-8);--link-hover:var(--nord-7);--link-visited:var(--nord-15);--focus-ring:var(--nord-8);--selection:#88c0d03d;--syn-comment:var(--text-faint);--syn-keyword:var(--nord-9);--syn-string:var(--nord-14);--syn-number:var(--nord-15);--syn-function:var(--nord-8);--syn-operator:var(--nord-9);--syn-constant:var(--nord-7);--syn-error:var(--nord-11);--font-display:var(--font-sans);--font-body:var(--font-sans);--font-code:var(--font-mono);--weight-regular:400;--weight-medium:500;--weight-semibold:600;--display-xl-size:64px;--display-xl-weight:400;--display-xl-leading:70.4px;--display-xl-tracking:-1.6px;--display-lg-size:48px;--display-lg-weight:400;--display-lg-leading:52.8px;--display-lg-tracking:-1.2px;--display-md-size:32px;--display-md-weight:500;--display-md-leading:40px;--display-md-tracking:-.8px;--display-sm-size:24px;--display-sm-weight:500;--display-sm-leading:32px;--display-sm-tracking:-.4px;--display-serif-size:48px;--display-serif-weight:400;--display-serif-leading:52px;--display-serif-tracking:-.5px;--body-lg-size:18px;--body-lg-leading:28px;--body-md-size:16px;--body-md-leading:24px;--body-sm-size:14px;--body-sm-leading:20px;--caption-size:12px;--caption-leading:16px;--code-size:13px;--code-leading:18px;--code-md-size:14px;--code-md-leading:20px;--button-size:14px;--button-weight:500;--button-leading:20px;--eyebrow-size:12px;--eyebrow-tracking:.08em;--text-hero:var(--display-xl-size);--text-lead:var(--body-lg-size);--text-default:var(--body-md-size);--text-secondary:var(--body-sm-size);--text-fine:var(--caption-size);--space-xxs:2px;--space-xs:4px;--space-sm:8px;--space-md:10px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--space-4xl:64px;--space-5xl:96px;--pad-card:var(--space-xl);--pad-mockup:var(--space-lg);--pad-band:var(--space-5xl);--pad-band-inline:var(--space-xl);--pad-button-block:var(--space-sm);--pad-button-inline:var(--space-lg);--pad-nav-block:var(--space-md);--pad-nav-inline:var(--space-xl);--pad-row:var(--space-lg);--gap-stack:var(--space-lg);--gap-inline:var(--space-sm);--container:1200px;--container-prose:720px;--radius-none:0px;--radius-xxs:1px;--radius-xs:2px;--radius-sm:3px;--radius-md:4px;--radius-lg:6px;--radius-pill:9999px;--radius-full:9999px;--border-hairline:1px solid var(--hairline);--border-hairline-soft:1px solid var(--hairline-soft);--radius-control:var(--radius-sm);--radius-card:var(--radius-md);--radius-surface:var(--radius-lg);--radius-avatar:var(--radius-md);--elev-0:none;--elev-1:none;--elev-2:none;--elev-3:0 16px 40px #171b248c;--inset-hairline:inset 0 0 0 1px var(--hairline);--focus-shadow:0 0 0 2px var(--canvas), 0 0 0 3px var(--focus-ring);--dur-instant:80ms;--dur-fast:.12s;--dur-base:.18s;--dur-slow:.28s;--ease-standard:cubic-bezier(.2, 0, .38, 1);--ease-out:cubic-bezier(0, 0, .35, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--transition-control:color var(--dur-fast) var(--ease-standard), background-color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), opacity var(--dur-fast) var(--ease-standard);--caret-blink:1s steps(1, end) infinite}*,:before,:after{box-sizing:border-box}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}dialog{border:0;padding:0}svg{display:block}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--canvas);color:var(--text-body);font-family:var(--font-body);font-size:var(--body-md-size);line-height:var(--body-md-leading);text-wrap:pretty;margin:0;padding:0}::selection{background:var(--selection);color:var(--ink)}a{color:var(--link);transition:var(--transition-control);border-bottom:1px solid #88c0d059;text-decoration:none}a:hover{color:var(--link-hover);border-bottom-color:var(--link-hover)}a:active{color:var(--nord-7)}a:visited{color:var(--link)}code,kbd,pre,samp{font-family:var(--font-code);font-size:var(--code-size);line-height:var(--code-leading)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@keyframes vp-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes vp-fade-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.nav-link{padding-block:var(--space-xs);padding-inline:var(--space-md);border-radius:var(--radius-control);font-family:var(--font-code);font-size:var(--body-sm-size);line-height:var(--body-sm-leading);color:var(--text-mute);transition:var(--transition-control);font-weight:400;display:inline-block}.nav-link:hover{color:var(--ink);background-color:var(--canvas-soft)}.nav-link[aria-current=page]{color:var(--ink);box-shadow:inset 0 -1px 0 0 var(--accent)}.btn-icon{width:32px;height:32px;color:var(--text-mute);cursor:pointer;transition:var(--transition-control);background-color:#0000;border:1px solid #0000;border-radius:9999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background-color:var(--canvas-raised);color:var(--ink)}.divider-line{height:var(--border-width);background-color:var(--hairline);border:0}.posts-listing-row{background-color:var(--canvas);color:var(--text-body);font-family:var(--font-code);font-size:var(--code-size);border-radius:8px;margin:0;padding:4px 0;line-height:21px;list-style:none}.posts-listing-row li{align-items:baseline;gap:12px;display:flex}.posts-listing-row .total{color:#616e88}.posts-listing-row span,.posts-listing-row time{color:#616e88;flex-shrink:0}.posts-listing-row span:nth-child(2){text-align:right;white-space:nowrap;width:48px}.posts-listing-row time{white-space:nowrap;width:96px}.posts-listing-row button{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.shell-wide{max-width:1080px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}.site-header{z-index:30;background-color:var(--canvas);border-bottom:1px solid var(--hairline);position:sticky;top:0}.site-header__inner{align-items:center;gap:var(--space-2xl);padding-block:var(--space-md);box-sizing:border-box;display:flex}.site-header__brand{font-family:var(--font-mono);font-size:var(--body-sm-size);flex:none;align-items:baseline;gap:.3em;display:flex}.site-header__brand-symbol{color:var(--prompt-symbol)}.site-header__brand-name{color:var(--ink)}.site-header__nav{align-items:center;gap:var(--space-xxs);flex:1;min-width:0;display:flex}.site-header__actions{align-items:center;gap:var(--space-sm);flex:none;display:flex}.command-line{flex-wrap:wrap;align-items:baseline;gap:.5em;display:flex}.command-line__user{color:var(--prompt-user)}.command-line__separator{color:var(--prompt-separator)}.command-line__path{color:var(--path)}.command-line__symbol{color:var(--prompt-symbol)}.command-line__command{color:var(--ink)}.terminal-main{gap:var(--space-xs);padding-block:var(--space-lg);font-family:var(--font-mono);font-size:var(--code-md-size);line-height:var(--code-md-leading);flex-direction:column;display:flex}.command-palette{width:min(640px, calc(100vw - (var(--space-xl) * 2)));border:1px solid var(--hairline);border-radius:var(--radius-surface);background:var(--canvas);color:var(--text-body);box-shadow:var(--elev-3);margin:auto;overflow:hidden}.command-palette[open]{flex-direction:column;display:flex}.command-palette::backdrop{background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.command-palette__header{align-items:flex-start;gap:var(--space-md);padding-block:var(--space-lg);padding-inline:var(--space-xl);border-bottom:1px solid var(--hairline);display:flex}.command-palette__title-group{flex:1;min-width:0}.command-palette__title{font-family:var(--font-sans);font-weight:var(--weight-medium);font-size:var(--body-md-size);line-height:var(--body-md-leading);color:var(--ink);margin:0}.command-palette__subtitle{font-family:var(--font-mono);font-size:var(--caption-size);color:var(--text-mute);margin:2px 0 0}.command-palette__close{color:var(--text-mute);transition:var(--transition-control);flex-shrink:0;display:flex}.command-palette__close:hover{color:var(--ink)}.command-palette__body{padding:var(--space-xl);flex-direction:column;gap:14px;display:flex}.command-palette__search{align-items:center;gap:var(--space-sm);background-color:var(--canvas-soft);border:1px solid var(--hairline);border-radius:var(--radius-control);padding-block:var(--space-sm);padding-inline:var(--space-md);transition:var(--transition-control);display:flex}.command-palette__search:focus-within{border-color:var(--focus-ring);box-shadow:0 0 0 2px var(--canvas-soft), 0 0 0 3px var(--focus-ring)}.command-palette__search-prefix{color:var(--text-faint);font-family:var(--font-mono);-webkit-user-select:none;user-select:none}.command-palette__search-symbol{color:var(--prompt-symbol);font-family:var(--font-mono)}.command-palette__search-input{min-width:0;color:var(--ink);font-family:var(--font-mono);font-size:var(--code-md-size);line-height:var(--code-md-leading);background:0 0;border:0;outline:none;flex:1}.command-palette__search-input::placeholder{color:var(--text-faint)}.command-palette__suggestions{margin:0;flex-direction:column;gap:1px;max-height:min(40vh,280px);margin-inline:-6px;padding:0;list-style:none;display:flex;overflow-y:auto}.command-palette__suggestion{align-items:baseline;gap:var(--space-lg);padding-block:var(--space-xs);padding-inline:var(--space-sm);border-radius:var(--radius-control);cursor:pointer;transition:var(--transition-control);display:flex}.command-palette__suggestion:hover,.command-palette__suggestion.is-selected{background-color:var(--canvas-raised)}.command-palette__suggestion-label{font-family:var(--font-mono);font-size:var(--code-size);color:var(--ink);white-space:pre}.command-palette__suggestion-hint{font-family:var(--font-mono);font-size:var(--caption-size);color:var(--text-faint);white-space:pre;margin-left:auto}.command-palette__footer{gap:var(--space-lg);font-family:var(--font-mono);font-size:var(--caption-size);color:var(--text-faint);border-top:1px solid var(--hairline);flex-wrap:wrap;padding-top:12px;display:flex}.command-palette__footer-match{color:var(--text-mute);margin-left:auto}
