@font-face{font-family:jetbrains mono;src:url(../fonts/JetBrainsMono-Regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:jetbrains mono;src:url(../fonts/JetBrainsMono-Medium.woff2)format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:jetbrains mono;src:url(../fonts/JetBrainsMono-Bold.woff2)format('woff2');font-weight:700;font-style:normal;font-display:swap}:root{--color-terminal-green:#4caf50;--color-terminal-green-hover:#66bb6a;--color-terminal-green-active:#388e3c;--color-terminal-green-deep:#2e7d32;--color-green-veil:rgba(76, 175, 80, 0.15);--color-canvas:#232425;--color-chrome:#1b1c1d;--color-surface-soft:#2a2b2d;--color-surface-card:#3a3a42;--color-surface-card-hover:#4a4a52;--color-surface-code:#3b3d42;--color-surface-hover:#2a2b2d;--color-ink:#ffffff;--color-charcoal:#c9c9d3;--color-body:#a9a9b3;--color-mute:#9c9c9c;--color-stone:#929292;--color-ash:#5c5c64;--color-hairline:#4e4e57;--color-hairline-strong:#6f6f78;--color-link:var(--color-terminal-green);--color-link-hover:var(--color-terminal-green-hover);--color-on-primary:#101112;--color-fill-primary:var(--color-terminal-green);--color-accent:#4caf50;--color-accent-hover:#66bb6a;--color-danger:#e06c6c;--color-warning:#ffa500}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--color-canvas:#ffffff;--color-chrome:#fafafa;--color-surface-soft:#f7f7f8;--color-surface-card:#f0f0f0;--color-surface-card-hover:#e0e0e0;--color-surface-code:#f4f4f5;--color-surface-hover:#ebebec;--color-ink:#1b1c1d;--color-charcoal:#333333;--color-body:#555555;--color-mute:#626262;--color-stone:#6a6a6a;--color-ash:#a8a8a8;--color-hairline:#dcdcdc;--color-hairline-strong:#b4b4b4;--color-link:var(--color-terminal-green-deep);--color-link-hover:#1b5e20;--color-on-primary:#ffffff;--color-fill-primary:var(--color-terminal-green-deep);--color-accent:var(--color-terminal-green-deep);--color-accent-hover:var(--color-terminal-green-active);--color-danger:#c23934;--color-warning:#b06818}}:root[data-theme=light]{--color-canvas:#ffffff;--color-chrome:#fafafa;--color-surface-soft:#f7f7f8;--color-surface-card:#f0f0f0;--color-surface-card-hover:#e0e0e0;--color-surface-code:#f4f4f5;--color-surface-hover:#ebebec;--color-ink:#1b1c1d;--color-charcoal:#333333;--color-body:#555555;--color-mute:#626262;--color-stone:#6a6a6a;--color-ash:#a8a8a8;--color-hairline:#dcdcdc;--color-hairline-strong:#b4b4b4;--color-link:var(--color-terminal-green-deep);--color-link-hover:#1b5e20;--color-on-primary:#ffffff;--color-fill-primary:var(--color-terminal-green-deep);--color-accent:var(--color-terminal-green-deep);--color-accent-hover:var(--color-terminal-green-active);--color-danger:#c23934;--color-warning:#b06818}:root{--text-heading:var(--color-ink);--text-strong:var(--color-charcoal);--text-body:var(--color-body);--text-muted:var(--color-mute);--text-subtle:var(--color-stone);--text-disabled:var(--color-ash);--text-link:var(--color-link);--text-link-hover:var(--color-link-hover);--surface-page:var(--color-canvas);--surface-chrome:var(--color-chrome);--surface-soft:var(--color-surface-soft);--surface-hover:var(--color-surface-hover);--surface-card:var(--color-surface-card);--surface-card-hover:var(--color-surface-card-hover);--surface-code:var(--color-surface-code);--border-hairline:var(--color-hairline);--border-strong:var(--color-hairline-strong);--shadow-card-hover:0 4px 12px rgba(0, 0, 0, 0.3);--shadow-glow-green:0 0 12px rgba(76, 175, 80, 0.8), 0 0 20px rgba(76, 175, 80, 0.4)}:root{--i3-focused-border:#4c7899;--i3-focused-bg:#285577;--i3-focused-text:#ffffff;--i3-unfocused-border:#333333;--i3-unfocused-bg:#222222;--i3-unfocused-text:#888888;--i3-bar-bg:#323232;--i3-bar-text:#ffffff;--i3-bar-separator:#666666;--wm-border-width:2px;--wm-gap:8px;--wm-gap-outer:12px;--wm-titlebar-height:22px;--wm-bar-height:26px;--wm-header-height:56px;--wm-statusline-height:22px;--wm-chrome-height:calc(var(--wm-header-height) + var(--wm-bar-height))}:root{--vim-normal:#ffffff;--vim-comment:#80a0ff;--vim-constant:#ffa0a0;--vim-identifier:#40ffff;--vim-statement:#ffff60;--vim-preproc:#ff80ff;--vim-type:#60ff60;--vim-special:#ffa500;--vim-linenr:#a89a2a;--vim-linenr-cursor:#ffff00;--vim-nontext:#4a4aff;--vim-visual:#545454;--vim-statusline-bg:#c9c9d3;--vim-statusline-fg:#1b1c1d}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--vim-normal:#1b1c1d;--vim-comment:#0000ff;--vim-constant:#ff00ff;--vim-identifier:#008b8b;--vim-statement:#a52a2a;--vim-preproc:#a020f0;--vim-type:#1f6b41;--vim-special:#6a5acd;--vim-linenr:#a52a2a;--vim-linenr-cursor:#7a1f1f;--vim-nontext:#0000ff;--vim-visual:#d4d4d4;--vim-statusline-bg:#1b1c1d;--vim-statusline-fg:#ffffff}}:root[data-theme=light]{--vim-normal:#1b1c1d;--vim-comment:#0000ff;--vim-constant:#ff00ff;--vim-identifier:#008b8b;--vim-statement:#a52a2a;--vim-preproc:#a020f0;--vim-type:#1f6b41;--vim-special:#6a5acd;--vim-linenr:#a52a2a;--vim-linenr-cursor:#7a1f1f;--vim-nontext:#0000ff;--vim-visual:#d4d4d4;--vim-statusline-bg:#1b1c1d;--vim-statusline-fg:#ffffff}:root{--font-mono:'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular,
               Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;--text-size-display-xl:38px;--text-size-xl:28px;--text-size-lg:22px;--text-size-ml:18px;--text-size-md:16px;--text-size-sm:14px;--text-size-xs:12px;--leading-none:1;--leading-code:1.45;--leading-normal:1.5;--leading-prose:1.7;--leading-loose:2;--type-display-xl:700 var(--text-size-display-xl) / var(--leading-normal) var(--font-mono);--type-heading-xl:700 var(--text-size-xl) / var(--leading-normal) var(--font-mono);--type-heading-lg:700 var(--text-size-lg) / var(--leading-normal) var(--font-mono);--type-heading-ml:700 var(--text-size-ml) / var(--leading-normal) var(--font-mono);--type-heading-md:700 var(--text-size-md) / var(--leading-normal) var(--font-mono);--type-body-md:400 var(--text-size-md) / var(--leading-normal) var(--font-mono);--type-prose-md:400 var(--text-size-md) / var(--leading-prose) var(--font-mono);--type-body-strong:500 var(--text-size-md) / var(--leading-normal) var(--font-mono);--type-code-md:400 var(--text-size-sm) / var(--leading-code) var(--font-mono);--type-caption-md:400 var(--text-size-sm) / var(--leading-loose) var(--font-mono);--type-status-sm:500 var(--text-size-xs) / var(--leading-none) var(--font-mono)}:root{--radius-none:0px;--radius-sm:4px;--radius-card:8px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-section:64px;--width-prose:80ch;--width-frame:1100px;--width-gutter:6ch;--duration-fast:90ms;--duration-cursor-blink:1100ms}*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:calc(var(--wm-chrome-height) + var(--space-2));-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--type-body-md);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word}a{color:var(--text-link);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--text-link-hover);text-decoration-thickness:2px}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:var(--vim-visual);color:var(--text-heading)}img,picture,svg,video{max-width:100%;height:auto}svg{display:block}hr{border:0;border-top:1px solid var(--border-hairline);margin:0;width:100%}em,i{font-style:normal;font-weight:500;color:var(--text-heading)}strong,b{font-weight:700;color:var(--text-heading)}code,kbd,samp,pre{font-family:var(--font-mono)}code{font-size:.9em;background:var(--surface-code);color:var(--text-heading);padding:1px 6px;border-radius:var(--radius-sm)}pre{margin:0;padding:var(--space-4);background:var(--surface-code);border-radius:var(--radius-sm);overflow-x:auto;font:var(--type-code-md)}pre code{background:0 0;padding:0;border-radius:0;font-size:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--space-2);top:-100%;z-index:100;padding:var(--space-2)var(--space-4);background:var(--color-fill-primary);color:var(--color-on-primary);font:var(--type-body-strong);text-decoration:none;border-radius:var(--radius-sm)}.skip-link:focus{top:var(--space-2);color:var(--color-on-primary)}.shell{display:flex;flex-direction:column;min-height:100vh}.wm-header{position:sticky;top:0;z-index:30;flex:none;display:flex;align-items:center;gap:var(--space-4);min-height:var(--wm-header-height);padding:0 var(--wm-gap-outer);background:var(--surface-chrome);border-bottom:1px solid var(--border-hairline)}.prompt{display:inline-flex;align-items:center;gap:var(--space-2);font:500 var(--text-size-ml)/var(--leading-normal)var(--font-mono);color:var(--text-heading);text-decoration:none;min-width:0}.prompt:hover{color:var(--text-heading)}.prompt__mark{color:var(--color-accent)}.prompt__dollar{color:var(--text-muted)}.prompt__path{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cursor{display:inline-block;flex:none;width:.6em;height:1.05em;background:var(--color-terminal-green);box-shadow:var(--shadow-glow-green);animation:cursor-blink var(--duration-cursor-blink)steps(1,end)infinite}.cursor.flicker{animation:cursor-flicker 200ms linear 1}@keyframes cursor-blink{0%,50%{opacity:1}50.01%,100%{opacity:0}}@keyframes cursor-flicker{0%,14%{opacity:1}15%,34%{opacity:.12}35%,54%{opacity:1}55%,69%{opacity:.25}70%,100%{opacity:1}}.wm-header__right{margin-left:auto;display:flex;align-items:center;gap:var(--space-4)}.wm-header__name{font:var(--type-caption-md);color:var(--text-muted);white-space:nowrap}.theme-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:0 0;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast)linear,border-color var(--duration-fast)linear,background-color var(--duration-fast)linear}.theme-toggle:hover{color:var(--color-accent);border-color:var(--border-hairline);background:var(--surface-soft)}.i3bar{position:sticky;top:var(--wm-header-height);z-index:29;flex:none;display:flex;align-items:stretch;min-height:var(--wm-bar-height);background:var(--i3-bar-bg);color:var(--i3-bar-text);font:var(--type-status-sm);overflow-x:auto;scrollbar-width:none}.i3bar::-webkit-scrollbar{display:none}.i3bar__ws{display:flex;align-items:center;padding:0 var(--space-3);white-space:nowrap;text-decoration:none;background:var(--i3-unfocused-bg);color:var(--i3-unfocused-text);border-right:1px solid var(--i3-bar-separator);transition:background-color var(--duration-fast)linear,color var(--duration-fast)linear}.i3bar__ws:hover{color:var(--i3-bar-text)}.i3bar__ws[aria-current=page]{background:var(--i3-focused-bg);color:var(--i3-focused-text)}.i3bar__status{margin-left:auto;display:flex;align-items:center;padding:0 var(--space-3);white-space:nowrap;border-left:1px solid var(--i3-bar-separator)}.statusline{flex:none;display:flex;align-items:center;gap:var(--space-4);min-height:var(--wm-statusline-height);padding:0 var(--space-2);background:var(--vim-statusline-bg);color:var(--vim-statusline-fg);font:var(--type-status-sm);overflow-x:auto;scrollbar-width:none}.statusline::-webkit-scrollbar{display:none}.statusline__mode{align-self:stretch;display:flex;align-items:center;padding:0 var(--space-2);background:var(--color-terminal-green);color:#101112;font-weight:700;white-space:nowrap}.statusline__path{white-space:nowrap}.statusline__right{margin-left:auto;display:flex;gap:18px;white-space:nowrap;padding-left:var(--space-4)}.site-footer{flex:none;display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap;padding:var(--space-4)var(--wm-gap-outer);background:var(--surface-chrome);border-top:1px solid var(--border-hairline);font:var(--type-caption-md);color:var(--text-muted)}.site-footer__social{display:flex;align-items:center;gap:var(--space-4)}.site-footer__social a{display:flex;color:var(--text-muted);transition:color var(--duration-fast)linear}.site-footer__social a:hover{color:var(--color-accent)}.site-footer__legal{margin-left:auto}.site-footer__legal a{color:var(--text-link)}.session{flex:auto;display:grid;gap:var(--wm-gap);padding:var(--wm-gap-outer);align-content:stretch}.session--split{grid-template-columns:minmax(0,1fr)340px}.session--split-narrow{grid-template-columns:minmax(0,1fr)300px}.sidebar{display:flex;flex-direction:column;gap:var(--wm-gap);min-width:0}.sidebar>.pane{flex:none}.sidebar>.pane:last-child{flex:auto}.pane{display:flex;flex-direction:column;min-width:0;background:var(--surface-chrome);border:var(--wm-border-width)solid var(--i3-unfocused-border);border-radius:var(--radius-none);transition:border-color var(--duration-fast)linear}.pane--focused{border-color:var(--i3-focused-border)}.pane__titlebar{flex:none;display:flex;align-items:center;gap:10px;min-height:var(--wm-titlebar-height);padding:2px var(--space-2);background:var(--i3-unfocused-bg);color:var(--i3-unfocused-text);font:var(--type-status-sm);transition:background-color var(--duration-fast)linear,color var(--duration-fast)linear}.pane--focused>.pane__titlebar{background:var(--i3-focused-bg);color:var(--i3-focused-text)}.pane__titlebar-path{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pane__titlebar-right{margin-left:auto;white-space:nowrap;padding-left:var(--space-2)}.pane__body{flex:auto;min-width:0;padding:var(--space-4)}.pane__body--prose{padding:var(--space-8)40px 48px}@media(hover:hover) and (pointer:fine){.session:has(.pane:hover) .pane,.session:has(.pane:focus-within) .pane{border-color:var(--i3-unfocused-border)}.session:has(.pane:hover) .pane>.pane__titlebar,.session:has(.pane:focus-within) .pane>.pane__titlebar{background:var(--i3-unfocused-bg);color:var(--i3-unfocused-text)}.session:not(:has(.pane:hover)) .pane:focus-within,.session:has(.pane:hover) .pane:hover{border-color:var(--i3-focused-border)}.session:not(:has(.pane:hover)) .pane:focus-within>.pane__titlebar,.session:has(.pane:hover) .pane:hover>.pane__titlebar{background:var(--i3-focused-bg);color:var(--i3-focused-text)}}.buffer-end{display:grid;gap:2px;padding:var(--space-4);font:var(--type-code-md);color:var(--vim-nontext);user-select:none}.scrollback{display:flex;flex-direction:column;gap:26px;padding:var(--space-6)28px var(--space-8);font:var(--type-code-md)}.scrollback__block{display:flex;flex-direction:column;gap:var(--space-3)}.cmd{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:baseline}.cmd__user{color:var(--color-accent)}.cmd__cwd{color:var(--vim-comment)}.cmd__sigil{color:var(--text-muted)}.cmd__text{color:var(--text-heading)}.whoami{display:flex;align-items:flex-start;gap:var(--space-6);padding-left:2px}.whoami__portrait{width:120px;height:120px;flex:none;border-radius:var(--radius-full);object-fit:cover;border:1px solid var(--border-hairline)}.whoami>picture{flex:none;line-height:0}.whoami__text{display:flex;flex-direction:column;gap:10px;min-width:0}.whoami__name{margin:0;font:var(--type-heading-xl);color:var(--text-heading)}.whoami__role{margin:0;font:var(--type-body-md);color:var(--text-body);max-width:48ch;text-wrap:pretty}.whoami__where{margin:0;font:var(--type-caption-md);color:var(--text-muted)}.plan{display:grid;gap:14px;max-width:74ch}.plan p{margin:0;font:var(--type-prose-md);color:var(--text-body);text-wrap:pretty}.more-link{font:var(--type-caption-md);color:var(--text-link)}.ls-posts{display:grid;gap:10px}.ls-posts__row{display:grid;grid-template-columns:7ch 1fr;gap:0 var(--space-4);align-items:baseline;text-decoration:none;color:inherit;padding:2px 4px;margin:-2px -4px;transition:background-color var(--duration-fast)linear}.ls-posts__row:hover{background:var(--surface-hover);color:inherit}.ls-posts__date{color:var(--text-muted)}.ls-posts__title{text-wrap:pretty}.ls-posts__hash{color:var(--vim-comment)}.ls-posts__name{color:var(--vim-type)}.ls-posts__desc{grid-column:2;margin-top:3px;font:var(--type-caption-md);color:var(--text-muted);max-width:72ch;text-wrap:pretty}.ls-projects{display:flex;flex-wrap:wrap;gap:10px var(--space-8)}.ls-projects a{color:var(--vim-type);text-decoration:none}.ls-projects a:hover{text-decoration:underline;color:var(--vim-type)}.scrollback__caption{margin:0;font:var(--type-caption-md);color:var(--text-muted);max-width:72ch;text-wrap:pretty}.kv{display:grid;gap:9px;font:var(--type-caption-md);align-content:start}.kv__row{display:grid;grid-template-columns:9ch 1fr;gap:0 var(--space-3)}a.kv__row{text-decoration:none;color:inherit;padding:2px 6px;margin:-2px -6px;border-radius:var(--radius-sm);transition:background-color var(--duration-fast)linear}a.kv__row:hover{background:var(--surface-hover)}a.kv__row:hover .kv__val{color:var(--text-link);text-decoration:underline;text-underline-offset:3px}.kv__key{color:var(--text-muted)}.kv__val{color:var(--text-body);min-width:0;overflow-wrap:anywhere}.prose{max-width:var(--width-prose);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5)}.prose>*{margin:0}.prose p,.prose li{font:var(--type-prose-md);color:var(--text-body);text-wrap:pretty}.prose h1{font:var(--type-display-xl);color:var(--text-heading);text-wrap:balance}.prose h2{font:var(--type-heading-xl);color:var(--text-heading);text-wrap:balance;margin-top:var(--space-6);display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 10px;align-items:baseline}.prose h2::before{content:"##";color:var(--color-accent);font-weight:var(--font-weight-regular,400)}@supports(content:"a" / "b"){.prose h2::before{content:"##"/""}}.prose h3{font:var(--type-heading-lg);color:var(--text-heading);text-wrap:balance;margin-top:var(--space-4)}.prose h4{font:var(--type-heading-ml);color:var(--text-heading);text-wrap:balance}.prose h5,.prose h6{font:var(--type-heading-md);color:var(--text-heading)}.prose ul{list-style:none;padding-left:0;display:grid;gap:12px}.prose ul>li{position:relative;padding-left:calc(3ch + 10px)}.prose ul>li::before{content:"[+]";position:absolute;left:0;top:0;color:var(--color-accent);font:var(--type-body-strong);line-height:inherit}.prose ul>li.m-minus::before{content:"[-]";color:var(--color-danger)}.prose ul>li.m-x::before{content:"[x]";color:var(--text-muted)}.prose ul>li>p:first-child{margin-top:0}.prose ul>li>ul,.prose ul>li>ol{margin-top:12px}.prose ol{padding-left:4ch;display:grid;gap:12px}.prose ol>li::marker{color:var(--vim-linenr);font-weight:500}.prose blockquote{padding:0 0 0 var(--space-5);border-left:2px solid var(--color-terminal-green);color:var(--text-strong)}.prose blockquote p{color:var(--text-strong)}.prose img,.prose picture{border-radius:var(--radius-sm)}.prose .profile-image{max-width:340px;border-radius:var(--radius-card);display:block}.prose .center{display:block;margin-inline:auto}.prose .right{display:block;margin-inline:auto 0}.prose figure{display:grid;gap:var(--space-2)}.prose figcaption{font:var(--type-caption-md);color:var(--text-muted)}.diagram .scroll-x{border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:var(--space-4)}.diagram svg{width:100%;min-width:600px}.diagram text{font-family:var(--font-mono);font-size:12px;fill:var(--text-body)}.diagram .t-b{fill:var(--text-heading);font-weight:700}.diagram .t-m{fill:var(--text-muted)}.diagram .t-ok{fill:var(--color-accent)}.diagram .t-err{fill:var(--color-danger)}.diagram .box{fill:var(--color-surface-soft);stroke:var(--color-hairline-strong);stroke-width:1}.diagram .box-ok{fill:var(--color-surface-soft);stroke:var(--color-accent);stroke-width:1.5}.diagram .box-err{fill:var(--color-surface-soft);stroke:var(--color-danger);stroke-width:1.5}.diagram .zone{fill:none;stroke:var(--color-hairline-strong);stroke-width:1;stroke-dasharray:4 4}.diagram .ln{fill:none;stroke:var(--text-heading);stroke-width:1.2}.diagram .ln-disc{fill:none;stroke:var(--text-muted);stroke-width:1.2;stroke-dasharray:4 3}.diagram .ln-ok{fill:none;stroke:var(--color-accent);stroke-width:2}.diagram .ln-err{fill:none;stroke:var(--color-danger);stroke-width:1.5;stroke-dasharray:4 3}.diagram .mk{fill:none;stroke:var(--text-heading);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.diagram .mk-disc{stroke:var(--text-muted)}.diagram .mk-ok{stroke:var(--color-accent)}.diagram .mk-err{stroke:var(--color-danger)}.prose table{border-collapse:collapse;width:100%;font:var(--type-code-md)}.prose th,.prose td{text-align:left;padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--border-hairline)}.prose th{color:var(--text-heading);font-weight:500}.prose a{color:var(--text-link)}.scroll-x{overflow-x:auto;max-width:100%}.post-lede{font:var(--text-size-ml)/var(--leading-prose)var(--font-mono);color:var(--text-strong);text-wrap:pretty}.lede-row{display:flex;align-items:center;gap:var(--space-5)}.lede-row>picture{flex:none;line-height:0}.prose .lede-row__portrait{width:96px;height:96px;border-radius:var(--radius-full);object-fit:cover;border:1px solid var(--border-hairline)}.lede-row .post-lede{margin:0;min-width:0}.post-readtime{display:flex;align-items:center;gap:var(--space-2);font:var(--type-status-sm);color:var(--text-muted)}.post-readtime__glyph{color:var(--color-accent)}.post-meta{display:flex;gap:14px;flex-wrap:wrap;font:var(--type-status-sm);color:var(--text-muted)}.post-meta__sep{color:var(--border-strong)}.post-nav{display:grid;gap:var(--space-1);text-decoration:none;color:inherit;transition:color var(--duration-fast)linear}.post-nav:hover{color:var(--text-link)}.post-nav__label{font:var(--type-status-sm);color:var(--text-muted)}.post-nav__title{font:var(--type-heading-ml);color:var(--text-heading);text-wrap:pretty}.post-nav:hover .post-nav__title{color:inherit}.post-nav-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)var(--space-8)}.post-nav--next{grid-column:2;text-align:right}.tags{display:flex;flex-wrap:wrap;gap:8px 6px}.tag{padding:5px var(--space-2);background:var(--surface-card);color:var(--text-body);font:var(--type-status-sm);border-radius:var(--radius-sm);text-decoration:none;transition:background-color var(--duration-fast)linear,color var(--duration-fast)linear}.tag:hover{background:var(--surface-card-hover);color:var(--text-heading)}.list-header{display:flex;flex-direction:column;gap:var(--space-2);padding:28px var(--space-6)var(--space-5)}.list-header h1{margin:0;font:var(--type-display-xl);color:var(--text-heading);text-wrap:balance}.list-header p{margin:0;font:var(--type-caption-md);color:var(--text-muted);text-wrap:pretty}.group-header{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-5)var(--space-6)10px;background:var(--surface-soft);border-block:1px solid var(--border-hairline)}.group-header__label{font:var(--type-heading-md);color:var(--text-heading)}.group-header__count{font:var(--type-status-sm);color:var(--text-muted)}.row{--row-gutter:7em}.row{display:grid;grid-template-columns:var(--row-gutter)1fr;gap:0 var(--space-5);align-items:baseline;padding:var(--space-4)var(--space-6);border-bottom:1px solid var(--border-hairline);text-decoration:none;color:inherit;transition:background-color var(--duration-fast)linear}.row:hover{background:var(--surface-hover);color:inherit}.row:hover .row__title{text-decoration:underline;text-underline-offset:3px}.row__date{font:var(--type-caption-md);color:var(--text-muted)}.row__title{font:var(--type-body-strong);color:var(--text-heading);text-wrap:pretty}.row__sub{font:var(--type-caption-md);color:var(--text-subtle)}.row__desc{grid-column:2;margin-top:var(--space-2);font:var(--type-caption-md);color:var(--text-muted);max-width:74ch;text-wrap:pretty}.row-group{border-bottom:1px solid var(--border-hairline);transition:background-color var(--duration-fast)linear}.row-group>.row{border-bottom:0;padding-block:var(--space-5)}.row-group,.row-group>.row{--row-gutter:var(--width-gutter)}.row-group .row__title{font:var(--type-heading-lg)}.row-group .row__desc{font:var(--type-prose-md);color:var(--text-body)}.row-group .row__date{font:var(--type-code-md);color:var(--vim-linenr);font-variant-numeric:tabular-nums;text-align:right}.row-group:has(.row-group__tags)>.row{padding-bottom:var(--space-2)}.row-group:has(.row:hover){background:var(--surface-hover)}.row-group__tags{padding:0 var(--space-6)var(--space-5);padding-left:calc(var(--space-6) + var(--row-gutter) + var(--space-5))}.entry{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5)var(--space-6);border-bottom:1px solid var(--border-hairline);transition:background-color var(--duration-fast)linear}.entry:has(.entry__body:hover){background:var(--surface-hover)}.entry__body{display:flex;flex-direction:column;gap:inherit;text-decoration:none;color:inherit}.entry__body:hover .entry__title{text-decoration:underline;text-underline-offset:3px}.entry--gutter{display:grid;grid-template-columns:var(--width-gutter)minmax(0,1fr);gap:0 var(--space-5);align-items:baseline}.entry__year{font:var(--type-code-md);color:var(--vim-linenr);text-align:right;font-variant-numeric:tabular-nums}.entry__stack{display:flex;flex-direction:column;gap:10px;min-width:0}.entry__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.entry__perm{color:var(--vim-type);font:var(--type-status-sm)}.entry__title{margin:0;font:var(--type-heading-lg);color:var(--text-heading);text-decoration:none;text-wrap:pretty}.entry__meta{font:var(--type-status-sm);color:var(--text-muted)}.entry__desc{margin:0;font:var(--type-prose-md);color:var(--text-body);max-width:74ch;text-wrap:pretty}.entry__links{display:flex;flex-wrap:wrap;gap:var(--space-2)var(--space-4);font:var(--type-caption-md)}.entry__links a{color:var(--text-link);text-decoration:none}.entry__links a:hover{text-decoration:underline}.filelist{display:grid;gap:var(--space-3);align-content:start;font:var(--type-caption-md)}.filelist__item{display:grid;gap:2px;text-decoration:none;color:inherit;padding:3px 6px;margin:-3px -6px;border-radius:var(--radius-sm);transition:background-color var(--duration-fast)linear}.filelist__item:hover{background:var(--surface-hover)}.filelist__item:hover .filelist__name,.filelist__item:hover .row__title{text-decoration:underline;text-underline-offset:3px}.filelist__date{color:var(--text-muted)}.filelist__name{color:var(--vim-type);word-break:break-all}.filelist__item[aria-current=page] .filelist__name{color:var(--vim-linenr-cursor)}.stack-links{display:flex;flex-wrap:wrap;gap:var(--space-2)var(--space-4);font:var(--type-caption-md)}.stack-links a{color:var(--text-link);text-decoration:none}.stack-links a:hover{text-decoration:underline}.toc{font:var(--font-weight-regular,400)var(--text-size-sm)/var(--leading-normal)var(--font-mono)}.toc ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.toc ul ul{padding-left:1ch;margin-top:10px}.toc li{display:block}.toc a{color:var(--text-body);text-decoration:none;display:grid;grid-template-columns:4ch minmax(0,1fr);gap:0 8px;text-wrap:pretty;transition:color var(--duration-fast)linear}.toc__hash{color:var(--vim-comment)}.toc a:hover{color:var(--text-link)}.toc a:hover .toc__hash{color:var(--vim-comment)}.cards{display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));padding:var(--space-5)var(--space-6)}.card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-soft);border:1px solid var(--border-hairline);border-radius:var(--radius-card);text-decoration:none;color:inherit;transition:transform var(--duration-fast)linear,box-shadow var(--duration-fast)linear,border-color var(--duration-fast)linear}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card-hover);border-color:var(--border-strong);color:inherit}.card__title{font:var(--type-heading-ml);color:var(--text-heading);text-wrap:pretty}.card__desc{margin:0;font:var(--type-caption-md);color:var(--text-body);text-wrap:pretty}.highlight{border-radius:var(--radius-sm);overflow:hidden}.highlight pre{margin:0}.chroma .k,.chroma .kd,.chroma .kn,.chroma .kr,.chroma .kt{color:var(--vim-statement)}.chroma .c,.chroma .c1,.chroma .cm,.chroma .cs,.chroma .cp{color:var(--vim-comment)}.chroma .s,.chroma .s1,.chroma .s2,.chroma .sb,.chroma .sc,.chroma .sd{color:var(--vim-constant)}.chroma .m,.chroma .mi,.chroma .mf,.chroma .mh,.chroma .mo{color:var(--vim-constant)}.chroma .n,.chroma .nx{color:var(--vim-normal)}.chroma .nf,.chroma .nb{color:var(--vim-identifier)}.chroma .nc,.chroma .nn{color:var(--vim-type)}.chroma .o,.chroma .ow{color:var(--vim-special)}.chroma .p{color:var(--text-body)}.chroma .ln,.chroma .lnt{color:var(--vim-linenr)}.chroma .gd{background:var(--vim-diff-delete,transparent)}.chroma .gi{background:var(--vim-diff-add,transparent)}@media(max-width:900px){.session--split,.session--split-narrow{grid-template-columns:minmax(0,1fr)}.pane__body--prose{padding:var(--space-6)var(--space-5)var(--space-8)}}@media(max-width:684px){:root{--wm-gap-outer:var(--wm-gap)}.wm-header__name{display:none}.pane__body--prose{padding:var(--space-5)var(--space-4)var(--space-6)}.scrollback{padding:var(--space-5)var(--space-4)var(--space-6);gap:var(--space-6)}.whoami{flex-direction:column;gap:var(--space-4)}.whoami__portrait{width:96px;height:96px}.lede-row{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.prose .lede-row__portrait{width:80px;height:80px}.prose h1,.list-header h1{font:var(--type-heading-xl);color:var(--text-heading)}.row{grid-template-columns:minmax(0,1fr);gap:var(--space-1);padding:var(--space-3)var(--space-4)}.row__desc{grid-column:1;margin-top:var(--space-1)}.row-group .row__date{text-align:left}.row-group__tags{padding:0 var(--space-4)var(--space-5)}.entry--gutter{grid-template-columns:minmax(0,1fr);gap:var(--space-1)}.entry__year{text-align:left}.post-nav-row{grid-template-columns:minmax(0,1fr)}.post-nav--next{grid-column:1;text-align:left}.list-header,.group-header,.entry,.cards{padding-inline:var(--space-4)}.site-footer{gap:var(--space-3)}.site-footer__legal{margin-left:0;flex-basis:100%}.prompt{font-size:var(--text-size-md)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.cursor{opacity:1}}@media print{:root{--color-canvas:#ffffff;--color-chrome:#ffffff;--color-surface-soft:#ffffff;--color-surface-hover:#ffffff;--color-surface-card:#f0f0f0;--color-surface-card-hover:#f0f0f0;--color-surface-code:#f4f4f5;--color-ink:#000000;--color-charcoal:#1b1c1d;--color-body:#1b1c1d;--color-mute:#444444;--color-stone:#555555;--color-ash:#767676;--color-hairline:#cccccc;--color-hairline-strong:#999999;--color-link:#1b5e20;--color-link-hover:#1b5e20;--color-accent:#1b5e20;--color-accent-hover:#1b5e20;--color-fill-primary:#1b5e20;--color-terminal-green:#1b5e20;--color-on-primary:#ffffff;--color-danger:#8c1d18;--color-warning:#7a4a10;--vim-normal:#1b1c1d;--vim-comment:#00008b;--vim-constant:#a000a0;--vim-identifier:#006d6d;--vim-statement:#a52a2a;--vim-preproc:#6a0dad;--vim-type:#1f6b41;--vim-special:#4b3f9e;--vim-linenr:#6b5b00;--vim-linenr-cursor:#7a1f1f;--vim-nontext:#666666}.wm-header,.i3bar,.statusline,.site-footer,.sidebar,.cursor{display:none!important}.pane{border:none}.pane__titlebar{display:none}.session{display:block;padding:0}.prose{max-width:none}}