@font-face{font-family:"source sans 3";src:url(./fonts/SourceSans3-latin-wght.woff2)format("woff2-variations");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:"source sans 3";src:url(./fonts/SourceSans3-latin-wght-italic.woff2)format("woff2-variations");font-weight:200 900;font-style:italic;font-display:swap}@font-face{font-family:"source serif 4";src:url(./fonts/SourceSerif4-latin-wght.woff2)format("woff2-variations");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:"source serif 4";src:url(./fonts/SourceSerif4-latin-wght-italic.woff2)format("woff2-variations");font-weight:200 900;font-style:italic;font-display:swap}@font-face{font-family:sourcecodepro;src:url(./fonts/SourceCodePro-Regular.ttf.woff2)format("woff2-variations"),url(./fonts/SourceCodePro-Regular.ttf.woff)format("woff-variations");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:sourcecodepro;src:url(./fonts/SourceCodePro-Bold.ttf.woff2)format("woff2-variations"),url(./fonts/SourceCodePro-Bold.ttf.woff)format("woff-variations");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:sourcecodepro;src:url(./fonts/SourceCodePro-It.ttf.woff2)format("woff2-variations"),url(./fonts/SourceCodePro-It.ttf.woff)format("woff-variations");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:sourcecodepro;src:url(./fonts/SourceCodePro-BoldIt.ttf.woff2)format("woff2-variations"),url(./fonts/SourceCodePro-BoldIt.ttf.woff)format("woff-variations");font-weight:700;font-style:italic;font-display:swap}:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root[data-reading-font=sans]{--font-reading:var(--font-sans)}:root[data-text-size=small]{--reading-scale:0.9}:root[data-text-size=large]{--reading-scale:1.12}:root[data-text-size=larger]{--reading-scale:1.25}:root{--font-sans:"Source Sans 3", -apple-system, "Segoe UI", Roboto, "Noto Sans",
    Cantarell, "Helvetica Neue", sans-serif;--font-serif:"Source Serif 4", Charter, "Iowan Old Style", Georgia, serif;--font-mono:SourceCodePro, "JetBrains Mono", Menlo, Consolas, monospace;--font-reading:var(--font-serif);--reading-scale:1;--accent:light-dark(hsl(211, 100%, 38%), hsl(211, 100%, 70%));--accent-strong:light-dark(hsl(211, 100%, 28%), hsl(211, 100%, 80%));--accent-soft:light-dark(hsla(211, 100%, 45%, 10%), hsla(211, 100%, 70%, 16%));--surface-page:light-dark(hsl(210, 33%, 99%), hsl(213, 40%, 6%));--surface-header:light-dark(hsla(210, 33%, 99%, 86%), hsla(213, 40%, 6%, 85%));--surface-menu:light-dark(hsl(0, 0%, 100%), hsl(211, 60%, 7%));--surface-raised:light-dark(hsla(211, 60%, 92%, 60%), hsl(213, 36%, 10.5%));--surface-code-inline:light-dark(hsla(215, 16%, 50%, 9%), hsla(215, 20%, 62%, 12%));--border-soft:light-dark(hsla(211, 40%, 30%, 16%), hsla(211, 100%, 72%, 20%));--border-strong:light-dark(hsla(211, 100%, 38%, 45%), hsla(211, 100%, 65%, 55%));--ink-primary:light-dark(hsl(211, 40%, 14%), hsl(211, 25%, 90%));--ink-secondary:light-dark(hsl(211, 22%, 28%), hsl(211, 22%, 78%));--ink-muted:light-dark(hsl(211, 14%, 40%), hsl(211, 18%, 70%));--ink-code-inline:light-dark(hsl(220, 14%, 22%), hsl(215, 25%, 86%));--link-color:var(--accent);--link-hover:var(--accent-strong);--link-visited:light-dark(hsl(262, 40%, 45%), hsl(262, 65%, 80%));--focus-color:light-dark(hsl(211, 100%, 45%), hsl(190, 100%, 68%));--shadow-color:light-dark(hsla(211, 40%, 30%, 12%), hsla(211, 100%, 2%, 58%));--shadow-soft:0 0 0 1px var(--border-soft), 0 12px 36px var(--shadow-color);--shadow-hairline:0 0 0 1px var(--border-soft);--logo-mark:hsl(211, 100%, 50%);--logo-prompt:light-dark(hsl(0, 0%, 42%), hsl(0, 0%, 75%));--logo-mark-hover:light-dark(hsl(211, 100%, 36%), hsl(200, 100%, 62%));--logo-bar-from:light-dark(hsl(0, 0%, 30%), white);--logo-bar-to:light-dark(hsl(0, 0%, 65%), grey);--image-backdrop:light-dark(transparent, hsl(211, 60%, 95%));--code-bg:light-dark(hsl(212, 40%, 96.5%), hsl(214, 34%, 10%));--code-ink:light-dark(hsl(220, 14%, 24%), hsl(215, 22%, 80%));--code-chrome:light-dark(hsl(212, 14%, 42%), hsl(214, 14%, 62%));--syn-comment:light-dark(#676b76, #7f848e);--syn-keyword:light-dark(#a626a4, #c678dd);--syn-name:light-dark(#c3392c, #e06c75);--syn-operator:light-dark(#0b72a2, #56b6c2);--syn-constant:light-dark(#8a6000, #e5c07b);--syn-number:light-dark(#a3501d, #d19a66);--syn-string:light-dark(#3a7d39, #98c379);--syn-function:light-dark(#2d62d3, #61afef);--motion-fast:180ms;--motion-medium:260ms;--ease-out:cubic-bezier(0.22, 1, 0.36, 1);--layout-gutter:clamp(0.75rem, 4vw, 1.5rem);--layout-prose-max:42rem;--header-max:calc(var(--layout-prose-max) + (var(--layout-gutter) * 2));--header-height:4.5rem;--section-bar-height:2.5rem;--space-block:clamp(1.5rem, 5vw, 2.25rem);--space-section:clamp(2.5rem, 7vw, 3.5rem);--space-rule:clamp(1.75rem, 4vw, 2.25rem)}*,*::before,*::after{box-sizing:border-box}html{background:var(--surface-page);color:var(--ink-primary);font-family:var(--font-sans);font-size:112.5%;line-height:1.6;scroll-behavior:smooth;scrollbar-color:var(--border-strong)transparent;text-rendering:optimizeLegibility}body{display:flex;flex-direction:column;min-width:0;min-height:100vh;min-height:100dvh;margin:0;background:var(--surface-page)}body>main{flex:1 0 auto}a{color:var(--link-color);text-decoration:none;text-decoration-thickness:.08em;text-underline-offset:.2em;transition:color var(--motion-fast)var(--ease-out),background-color var(--motion-fast)var(--ease-out),border-color var(--motion-fast)var(--ease-out),box-shadow var(--motion-fast)var(--ease-out),text-decoration-color var(--motion-fast)var(--ease-out)}a:visited{color:var(--link-visited)}a:hover{color:var(--link-hover)}:where(a,button,input,textarea,select,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--focus-color);outline-offset:4px;border-radius:4px}h1,h2,h3,h4,h5,h6{max-width:100%;color:var(--ink-primary);font-weight:500;letter-spacing:0;line-height:1.22;overflow-wrap:break-word;text-wrap:balance}h1{font-size:2rem}h2{font-size:1.65rem}h3{font-size:1.4rem}h4{font-size:1.22rem}h5{font-size:1.08rem}h6{font-size:1rem}@media(min-width:1024px){h1{font-size:2.35rem}h2{font-size:2rem}h3{font-size:1.65rem}h4{font-size:1.4rem}h5{font-size:1.18rem}}:is(h1,h2,h3,h4,h5,h6) code{font-size:.85em;word-spacing:-.25em}code,kbd,pre{font-family:var(--font-mono)}ul{list-style-type:square}strong,em{color:inherit}img,iframe,video{max-width:100%}img{height:auto}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.section-label{margin:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem;font-weight:700;letter-spacing:.12em;line-height:1.4;text-align:left;text-transform:uppercase}.section-label::before{content:">";margin-right:.6em;color:var(--accent)}.meta-row{--meta-gap:1.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:.2rem var(--meta-gap);margin:0;overflow-x:clip;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem;line-height:1.55}.meta-row>*{position:relative;min-width:0}.meta-row__term{font-family:var(--font-sans)}.book-label{display:inline-flex;align-items:center;gap:.35em;color:var(--ink-secondary)}.ai-label{color:var(--ink-secondary)}.book-icon{flex-shrink:0;opacity:.75}.book-mark{display:inline-block;margin-right:.4em;color:var(--accent);font-size:.85em;vertical-align:-.05em}.book-mark .book-icon{display:block;opacity:1}.read-mark{display:inline-block;margin-left:.5em;color:var(--ink-muted);font-family:var(--font-mono);font-size:.75rem;font-weight:400;white-space:nowrap}.read-mark--since-visit{color:var(--accent)}.meta-row>*+*::before{content:"·";position:absolute;left:calc(var(--meta-gap)/-2);color:var(--ink-muted);transform:translateX(-50%)}.sibling-fade{visibility:hidden}.sibling-fade>*{visibility:visible;transition:opacity var(--motion-medium)var(--ease-out)60ms,transform var(--motion-medium)var(--ease-out)60ms}.sibling-fade:hover>*{opacity:.75;transform:scale(.97)}.sibling-fade>*:hover{opacity:1;transform:scale(1);transition-delay:0ms,0ms}@keyframes cursor-pulse{0%,100%{fill:var(--logo-bar-from);background-color:var(--logo-bar-from)}50%{fill:var(--logo-bar-to);background-color:var(--logo-bar-to)}}.prompt-line{margin:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.9rem;line-height:1.5}.prompt-line__sign{margin-right:.6em;color:var(--accent);font-weight:700}.prompt-line__cursor{display:inline-block;width:.6em;height:.15em;margin-left:.1em;vertical-align:baseline;background-color:var(--logo-bar-from);animation:cursor-pulse 2s linear infinite}@keyframes page-fade-in{from{opacity:.85;transform:translateY(6px)}}main{animation:page-fade-in 400ms var(--ease-out)40ms backwards}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:100;padding:.5rem .9rem;border:1px solid var(--accent);border-radius:.375rem;background-color:var(--surface-menu);color:var(--accent);font-weight:600;transform:translateY(-200%)}.skip-link:focus{transform:none}main:focus{outline:none}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--border-soft);background-color:var(--surface-header);backdrop-filter:saturate(140%)blur(10px)}.site-header__inner{display:flex;align-items:center;gap:1.5rem;max-width:var(--header-max);min-height:var(--header-height);margin:0 auto;padding:.5rem var(--layout-gutter)}.site-header__logo{display:inline-flex;flex-shrink:0;line-height:0}.svgLogo{width:2.75rem;height:2.75rem}.svgLogo__mark{fill:var(--logo-mark);transition:fill var(--motion-medium)var(--ease-out)}.site-header__logo:hover .svgLogo__mark{fill:var(--logo-mark-hover)}.svgLogo__prompt{fill:var(--logo-prompt)}.svgLogo__bar{fill:var(--logo-bar-from);animation:cursor-pulse 2s linear infinite}.site-nav{position:relative;flex:auto;min-width:0}.site-nav__list{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.4rem;margin:0;padding:0;list-style:none}.site-nav__link,.site-nav__link:visited{position:relative;display:inline-flex;align-items:center;gap:.3em;padding:.35rem 0;border:0;background:0 0;color:var(--ink-secondary);font-family:var(--font-sans);font-size:.95rem;font-weight:500;letter-spacing:.01em;text-decoration:none;cursor:pointer}.site-nav__link::after{content:"";position:absolute;right:0;bottom:0;left:0;height:2px;border-radius:2px;background-color:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--motion-medium)var(--ease-out),opacity var(--motion-medium)var(--ease-out)}.site-nav__link:hover,.site-nav__link:focus-visible{color:var(--ink-primary)}.site-nav__link:hover::after{transform:scaleX(1);opacity:.5}.site-nav__link.is-active{color:var(--accent)}.site-nav__link.is-active::after{transform:scaleX(1);opacity:1}.site-nav__external{margin-left:-.05em;opacity:.6}.site-header__actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:0;border-radius:8px;background:0 0;color:var(--ink-secondary);cursor:pointer;transition:background-color var(--motion-fast)var(--ease-out),color var(--motion-fast)var(--ease-out)}.icon-button:hover{background-color:var(--accent-soft);color:var(--ink-primary)}.icon-button svg{display:block}#search-icon{pointer-events:none}.icon-button .theme-toggle__moon{display:none}:root[data-theme=light] .icon-button .theme-toggle__sun{display:none}:root[data-theme=light] .icon-button .theme-toggle__moon{display:block}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .icon-button .theme-toggle__sun{display:none}:root:not([data-theme=dark]) .icon-button .theme-toggle__moon{display:block}}main{width:100%;max-width:calc(var(--layout-prose-max) + (var(--layout-gutter) * 2));min-width:0;margin:0 auto;padding:clamp(2rem,6vw,3.5rem)var(--layout-gutter)0}.pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;max-width:var(--layout-prose-max);margin:0 auto;padding:2rem 0 0;border-top:1px solid var(--border-soft)}.pagination__next{text-align:right}.pagination__status{margin:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem}.pagination a,.pagination a:visited{display:inline-block;padding:.45rem .9rem;border:1px solid var(--border-strong);border-radius:8px;color:var(--accent);font-weight:700;text-decoration:none}.pagination a:hover,.pagination a:focus-visible{background-color:var(--accent-soft);color:var(--accent-strong)}.site-footer{margin-top:clamp(3rem,8vw,5rem);border-top:1px solid var(--border-soft);color:var(--ink-muted);font-size:.9rem}.site-footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;max-width:var(--header-max);margin:0 auto;padding:1.5rem var(--layout-gutter)2rem}.site-footer p{margin:0}.site-footer a,.site-footer a:visited{color:var(--ink-secondary);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:.2em}.site-footer a:hover{color:var(--accent)}.site-footer__author{display:flex;align-items:center;gap:.85rem}.site-footer__author .avatar{width:2.5rem;height:2.5rem}.site-footer .site-footer__name{color:var(--ink-primary);font-family:var(--font-serif);font-weight:600;line-height:1.3}.site-footer__links{padding:0;font-family:var(--font-sans);font-size:.85rem;list-style:none}.site-footer__colophon{font-size:.85rem}@media(max-width:767px){.site-header{position:relative}.site-header__inner{gap:.5rem;min-height:3.5rem;padding-top:.35rem;padding-bottom:.35rem}.svgLogo{width:2.25rem;height:2.25rem}.site-header__actions{gap:0}.icon-button{width:2.25rem;height:2.25rem}#theme-toggle{display:none}.site-nav__list{flex-wrap:nowrap;gap:.8rem;padding:.25rem 0;overflow-x:auto;white-space:nowrap;scrollbar-width:none}.site-nav__link,.site-nav__link:visited{font-size:.9rem}.site-nav__list::-webkit-scrollbar{display:none}.site-nav::before,.site-nav::after{content:"";position:absolute;top:0;bottom:0;z-index:1;width:2.5rem;opacity:0;pointer-events:none;transition:opacity var(--motion-fast)var(--ease-out)}.site-nav::before{left:0;background:linear-gradient(to left,transparent,var(--surface-page))}.site-nav::after{right:0;background:linear-gradient(to right,transparent,var(--surface-page))}.site-nav[data-more~=start]::before,.site-nav[data-more~=end]::after{opacity:1}.pagination{grid-template-columns:1fr 1fr}.pagination__status{grid-column:1/-1;grid-row:2;text-align:center}}@media(max-width:479px){.site-nav__item--home{display:none}}.site-footer__shortcuts[hidden]{display:none}.site-footer__shortcuts button{padding:0;border:0;background:0 0;color:inherit;font:inherit;cursor:pointer}.site-footer__shortcuts button:hover,.site-footer__shortcuts button:focus-visible{color:var(--link-hover);text-decoration:underline}@media(hover:none) and (pointer:coarse){.site-footer__shortcuts{display:none}}kbd{display:inline-block;min-width:1.6em;padding:.05rem .35rem;border:1px solid var(--border-soft);border-bottom-width:2px;border-radius:4px;font-size:.78em;line-height:1.4;text-align:center}.search-dialog.shortcuts-dialog{width:min(24rem,calc(100% - 2rem))}.shortcuts-list{display:grid;gap:.6rem;margin:0;padding:1rem 1rem 1.15rem}.shortcuts-list>div{display:flex;align-items:baseline;gap:1rem}.shortcuts-list dt{display:flex;flex:0 0 6.5rem;align-items:baseline;gap:.3rem}.shortcuts-list__then{color:var(--ink-muted);font-family:var(--font-sans);font-size:.8rem}.shortcuts-list dd{margin:0;color:var(--ink-secondary);font-family:var(--font-sans)}.toast{position:fixed;bottom:1.5rem;left:50%;z-index:50;padding:.45rem .85rem;border:1px solid var(--border-soft);border-radius:6px;background-color:var(--surface-menu);box-shadow:var(--shadow-soft);color:var(--ink-secondary);font-family:var(--font-sans);font-size:.9rem;opacity:0;pointer-events:none;transform:translate(-50%,.5rem);transition:opacity var(--motion-fast)var(--ease-out),transform var(--motion-fast)var(--ease-out)}.toast[data-visible]{opacity:1;transform:translate(-50%,0)}.resume-prompt{position:fixed;bottom:1.5rem;left:50%;z-index:50;display:flex;align-items:center;gap:.5rem;max-width:calc(100vw - 2rem);padding:.35rem .4rem .35rem .9rem;border:1px solid var(--border-soft);border-radius:6px;background-color:var(--surface-menu);box-shadow:var(--shadow-soft);font-family:var(--font-sans);font-size:.9rem;opacity:0;transform:translate(-50%,.5rem);transition:opacity var(--motion-fast)var(--ease-out),transform var(--motion-fast)var(--ease-out)}.resume-prompt[data-visible]{opacity:1;transform:translate(-50%,0)}.resume-prompt__jump{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.resume-prompt__close{flex:none;padding:.1rem .45rem;border:0;border-radius:4px;background:0 0;color:var(--ink-muted);font:inherit;font-size:1.1rem;line-height:1;cursor:pointer}.resume-prompt__close:hover,.resume-prompt__close:focus-visible{background-color:var(--accent-soft);color:var(--ink-primary)}.reading-settings{inset:calc(var(--header-height) - .25rem)max(1rem,calc((100vw - var(--header-max))/2 + var(--layout-gutter)))auto auto;width:min(18rem,calc(100vw - 2rem));margin:0;padding:1rem 1.1rem;border:0;border-radius:10px;background:var(--surface-menu);box-shadow:var(--shadow-soft);color:var(--ink-primary);font-family:var(--font-sans)}.reading-settings__title{margin:0 0 .75rem;font-family:var(--font-sans);font-size:.95rem;font-weight:600}.reading-settings__group{margin:0 0 .9rem;padding:0;border:0}.reading-settings__group legend{margin-bottom:.35rem;padding:0;color:var(--ink-muted);font-size:.8rem}.reading-settings__options{display:flex;gap:.4rem}.reading-settings__options label{display:flex;flex:1;align-items:center;justify-content:center;min-height:2.4rem;border:1px solid var(--border-soft);border-radius:8px;color:var(--ink-secondary);cursor:pointer;transition:border-color var(--motion-fast)var(--ease-out),background-color var(--motion-fast)var(--ease-out)}.reading-settings__options label:hover{border-color:var(--border-strong);color:var(--ink-primary)}.reading-settings__options label:has(:checked){border-color:var(--border-strong);background-color:var(--accent-soft);color:var(--accent)}.reading-settings__options label:has(:focus-visible){outline:2px solid var(--focus-color);outline-offset:2px}.reading-settings__options input{position:absolute;opacity:0;pointer-events:none}.reading-settings__a{font-family:var(--font-serif);line-height:1}.reading-settings__a--small{font-size:.85rem}.reading-settings__a--large{font-size:1.15rem}.reading-settings__a--larger{font-size:1.3rem}.reading-settings__serif{font-family:var(--font-serif)}.reading-settings__footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0;color:var(--ink-muted);font-size:.8rem}.reading-settings__reset{padding:.2rem .6rem;border:1px solid var(--border-soft);border-radius:6px;background:0 0;color:var(--ink-secondary);font:inherit;cursor:pointer}.reading-settings__reset:hover{border-color:var(--border-strong);color:var(--ink-primary)}@media(pointer:coarse){.reading-settings__hint{visibility:hidden}}.home-intro{max-width:var(--layout-prose-max);margin:0 auto clamp(2rem,6vw,3rem)}.home-intro__identity{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.avatar{display:block;flex-shrink:0;border-radius:50%;object-fit:cover}.home-intro__avatar{width:4rem;height:4rem;box-shadow:0 0 0 3px var(--surface-page),0 0 0 4px var(--border-strong)}.home-intro__name{margin:0;font-family:var(--font-serif);font-size:clamp(1.6rem,5vw,2rem);font-weight:600;line-height:1.15}.home-intro__name::after{content:"";display:inline-block;width:.5em;height:.13em;margin-left:.15em;background-color:var(--logo-bar-from);animation:cursor-pulse 2s linear infinite}.home-intro p{margin:0;color:var(--ink-secondary);font-family:var(--font-serif);font-size:clamp(1.15rem,3vw,1.35rem);line-height:1.55;text-wrap:pretty}.home-intro__links{margin-top:1.25rem;padding:0;font-size:.85rem;list-style:none}.home-intro__links a,.home-intro__links a:visited{color:var(--ink-secondary);text-decoration:underline;text-decoration-color:var(--border-strong)}.home-intro__links a:hover,.home-intro__links a:focus-visible{color:var(--link-hover);text-decoration-color:initial}.home-featured{max-width:var(--layout-prose-max);margin:0 auto clamp(2.5rem,7vw,3.5rem)}.home-featured .section-label{margin-bottom:1rem}.home-featured__list{margin:0;padding:0;overflow:hidden;border:1px solid light-dark(var(--border-strong),hsla(211,100%,68%,75%));border-radius:8px;background-color:light-dark(transparent,var(--surface-raised));list-style:none;counter-reset:featured}.home-featured__list li{margin:0;counter-increment:featured}.home-featured__list li+li{border-top:1px solid var(--border-soft)}main .home-featured__card,main .home-featured__card:visited{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:1rem;row-gap:.3rem;padding:1rem 1.15rem;color:var(--ink-primary);text-decoration:none}main .home-featured__card::before{content:counter(featured,decimal-leading-zero);grid-row:1/span 3;padding-top:.2rem;color:var(--accent);font-family:var(--font-mono);font-size:.8rem;font-weight:700;line-height:1.5}main .home-featured__card:hover,main .home-featured__card:focus-visible{background-color:var(--surface-raised);color:var(--ink-primary)}main .home-featured__card:focus-visible{outline-offset:-2px}.home-featured__title{font-family:var(--font-serif);font-size:1.12rem;font-weight:600;line-height:1.3;text-wrap:pretty}main .home-featured__card:hover .home-featured__title{color:var(--link-hover)}.home-featured__teaser{color:var(--ink-secondary);font-family:var(--font-serif);font-size:.95rem;line-height:1.55}@media(max-width:599px){.home-featured__teaser{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}}.home-featured__meta{font-size:.75rem}.home-featured__category{color:var(--ink-secondary)}.home-topics{max-width:var(--layout-prose-max);margin:0 auto clamp(2.5rem,7vw,3.5rem)}.home-topics .section-label{margin-bottom:1.25rem}.home-topic+.home-topic{margin-top:2rem}.home-topic__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem 1rem}.home-topic__title{margin:0;font-family:var(--font-serif);font-size:1.2rem;font-weight:600}.home-topic__title a,.home-topic__title a:visited{color:var(--ink-primary)}.home-topic__title a:hover,.home-topic__title a:focus-visible{color:var(--link-hover);text-decoration:underline}.home-topic__all,.home-topic__all:visited{color:var(--ink-secondary);font-size:.88rem;white-space:nowrap}.home-topic__all:hover,.home-topic__all:focus-visible{color:var(--link-hover);text-decoration:underline}.home-topic__blurb{margin:.25rem 0 .6rem;color:var(--ink-muted);font-size:.92rem;line-height:1.5}.home-topic__list{margin:0;padding:0;list-style:none}.home-topic__list li{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.55rem 0;border-top:1px solid var(--border-soft)}.home-topic__post,.home-topic__post:visited{min-width:0;color:var(--ink-primary);font-family:var(--font-serif);font-size:1.02rem;line-height:1.4;text-wrap:pretty}.home-topic__post:visited{color:var(--ink-secondary)}.home-topic__post:hover,.home-topic__post:focus-visible{color:var(--link-hover);text-decoration:underline}.home-topic__meta{flex-shrink:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.75rem;white-space:nowrap}.home-more{margin-bottom:0}.home-more+.home-more{margin-top:clamp(2.5rem,7vw,3.5rem)}.article-card{max-width:var(--layout-prose-max);margin:0 auto;padding:clamp(1.35rem,5vw,2rem)0;border-top:1px solid var(--border-soft)}.article-card__header{display:grid;gap:.5rem}.article-card__title{margin:0;font-family:var(--font-serif);font-size:1.3rem;font-weight:600;text-align:left;text-wrap:pretty}.article-card__title a{color:var(--ink-primary)}.article-card__title a:visited{color:var(--ink-secondary)}.article-card__title a:hover,.article-card__title a:focus-visible{color:var(--link-hover);text-decoration:underline;text-underline-offset:.18em}.article-card__category,.article-card__category:visited{color:var(--ink-secondary)}.article-card__category:hover,.article-card__category:focus-visible{color:var(--link-hover);text-decoration:underline}.article-card__badge{color:var(--accent);white-space:nowrap}.article-card__summary{margin:.85rem 0 0;color:var(--ink-secondary);font-family:var(--font-serif);font-size:1.02rem;line-height:1.6}@media(min-width:768px){.article-card__title{font-size:1.5rem}}.home-end{max-width:var(--layout-prose-max);margin:clamp(2.5rem,7vw,3.5rem)auto 0;padding-top:1.75rem;border-top:1px solid var(--border-soft)}.home-end__archives{margin:1rem 0 0;font-family:var(--font-serif);font-size:1.15rem;font-weight:600}.home-end__archives a,.home-end__archives a:visited{color:var(--ink-primary)}.home-end__archives a:hover,.home-end__archives a:focus-visible{color:var(--link-hover);text-decoration:underline;text-underline-offset:.18em}.home-end__feed{margin:.35rem 0 0;color:var(--ink-secondary);font-size:.95rem}.home-end__rss,.home-end__rss:visited{color:var(--link-color);white-space:nowrap}.home-end__rss svg{width:.75em;height:.75em;margin-right:.25em;vertical-align:baseline}.home-end__rss:hover,.home-end__rss:focus-visible{color:var(--link-hover);text-decoration:underline}.home-end__links{margin-top:1rem;padding:0;font-size:.85rem;list-style:none}.home-end__links a,.home-end__links a:visited{color:var(--ink-secondary);text-decoration:underline;text-decoration-color:var(--border-strong)}.home-end__links a:hover,.home-end__links a:focus-visible{color:var(--link-hover);text-decoration-color:initial}.post-reading__header,.article_title{max-width:var(--layout-prose-max);margin:0 auto}.post-reading__header{margin-top:clamp(.25rem,2vw,1rem);margin-bottom:clamp(1.75rem,5vw,2.5rem)}.post-reading__title,article>.article_title h1{margin:0 0 1rem;font-family:var(--font-serif);font-size:2rem;font-weight:600;line-height:1.1;overflow-wrap:anywhere}.post-reading__standfirst{max-width:70ch;margin:-.25rem 0 1.1rem;color:var(--ink-secondary);font-family:var(--font-serif);font-size:clamp(1.1rem,2.5vw,1.25rem);line-height:1.55;text-wrap:pretty}.post-reading__meta{font-size:.85rem}.post-reading__history,.post-reading__history:visited{color:inherit;text-decoration:underline dotted;text-underline-offset:.2em}.post-reading__history:hover{color:var(--ink-secondary);text-decoration-style:solid}.post-reading__tags{display:flex;flex-wrap:wrap;gap:.4rem .5rem;margin:.9rem 0 0;padding:0;list-style:none}.post-reading__tags a,.post-reading__tags a:visited{display:inline-flex;align-items:center;padding:.1rem .45rem;border:1px solid var(--border-soft);border-radius:999px;color:var(--ink-secondary);font-size:.85rem;line-height:1.5}.post-reading__tags a:hover,.post-reading__tags a:focus-visible{border-color:var(--border-strong);background-color:var(--accent-soft);color:var(--link-hover)}.post-reading__tags .post-reading__category,.post-reading__tags .post-reading__category:visited{border-color:transparent;background-color:var(--accent-soft);color:var(--accent-strong);font-weight:600}.post-reading__tags .post-reading__category:hover,.post-reading__tags .post-reading__category:focus-visible{border-color:var(--border-strong)}.post-reading__tags .tag-icon{flex-shrink:0;margin-right:.2em;opacity:.7}.post-reading__skim{margin:1rem 0 0;color:var(--ink-muted);font-size:.92rem;font-style:italic;line-height:1.6}.series{margin:1.25rem 0 0;padding:.75rem 1rem;border:1px solid var(--border-soft);border-radius:8px;font-family:var(--font-sans);font-size:.92rem}.series__title{margin:0 0 .4rem;color:var(--ink-primary);font-weight:600}.series__title a{color:inherit;text-decoration:none}.series__title a:hover,.series__title a:focus-visible{text-decoration:underline}.series__position{margin-right:.5rem;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem;font-weight:400}.series__list{margin:0;padding-left:1.4rem;color:var(--ink-muted)}.series__list li+li{margin-top:.15rem}.series__list [aria-current=page]{color:var(--ink-primary);font-weight:600}@media(min-width:768px){.post-reading__title,article>.article_title h1{font-size:2.35rem}}@media(min-width:1024px){.post-reading__title,article>.article_title h1{font-size:2.6rem}}@media(max-width:420px){.post-reading__title,article>.article_title h1{font-size:1.9rem}}.post-reading__toc{max-width:var(--layout-prose-max);margin:0 auto clamp(1.75rem,5vw,2.5rem);padding:clamp(.85rem,3vw,1rem)clamp(1rem,4vw,1.25rem);border:1px solid var(--border-soft);border-radius:6px;background-color:var(--surface-raised)}.toc-title{display:flex;align-items:center;gap:.5em;padding-left:calc(.6rem + 2px);color:var(--ink-muted);font-family:var(--font-mono);font-size:.78rem;font-weight:700;letter-spacing:.12em;line-height:1.25;text-transform:uppercase;cursor:pointer;list-style:none}.toc-title::before{content:">";margin-right:.1em;color:var(--accent)}.toc-title::-webkit-details-marker{display:none}.toc-title:hover{color:var(--ink-secondary)}.toc-details__chevron{transition:transform var(--motion-medium)var(--ease-out)}.toc-details[open] .toc-details__chevron{transform:rotate(180deg)}.toc-details[open]>.toc-title{margin-bottom:.75rem}.toc ul{margin:0;padding-left:0;list-style:none}.toc ul ul{margin-top:.35rem;padding-left:.9rem}.toc li{margin:.3rem 0;line-height:1.45;overflow-wrap:anywhere}.toc a,.toc a:visited{display:block;padding:.05rem 0 .05rem .6rem;border-left:2px solid transparent;color:var(--ink-secondary)}.toc code{font-size:.9em;word-spacing:-.25em}.toc a:hover,.toc a:focus-visible{color:var(--link-hover)}.toc a.is-active{border-left-color:var(--accent);color:var(--link-color)}.toc a.is-passed{color:var(--ink-muted)}.toc a.is-passed:hover,.toc a.is-passed:focus-visible{color:var(--link-hover)}.toc-top{display:none;margin-top:1rem;padding-left:calc(.6rem + 2px);font-family:var(--font-mono);font-size:.78rem}.toc-top,.toc-top:visited{color:var(--ink-muted)}.toc-collapse{display:block;margin-top:1rem;padding:0 0 0 calc(.6rem + 2px);border:0;background:0 0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.78rem;cursor:pointer}.toc-collapse:hover,.toc-collapse:focus-visible{color:var(--link-hover)}.toc-collapse+.toc-top{margin-top:.4rem}.toc-top:hover,.toc-top:focus-visible{color:var(--link-hover)}@media(min-width:1280px){.post-reading--with-toc{--layout-prose-max:40rem;--toc-gap:2.5rem;--toc-width:clamp(
      12rem,
      calc((100vw + var(--header-max)) / 2 - var(--layout-gutter) - var(--layout-prose-max) - var(--toc-gap) - 2rem),
      16rem
    );width:calc(var(--layout-prose-max) + var(--toc-gap) + var(--toc-width));display:grid;grid-template-columns:minmax(0,var(--layout-prose-max))var(--toc-width);column-gap:var(--toc-gap)}.post-reading--with-toc>*{grid-column:1;width:100%}.post-reading--with-toc>.post-reading__header{grid-row:1}.post-reading--with-toc>.article_text{grid-row:2}.post-reading--with-toc>.post-footer{grid-row:3}.post-reading--with-toc>.post-reading__toc{grid-column:2;grid-row:1/span 3;position:sticky;top:calc(var(--header-height) + 1.5rem);align-self:start;max-width:var(--toc-width);max-height:calc(100vh - var(--header-height) - 3rem);margin:0;padding:0;overflow-y:auto;border:0;background:0 0;font-size:.88rem;scrollbar-width:thin}.post-reading--with-toc #TableOfContents>ul{border-left:1px solid var(--border-soft)}.post-reading--with-toc .toc a{margin-left:-1px}.post-reading--with-toc .toc ul ul{padding-left:0}.post-reading--with-toc .toc ul ul a{padding-left:1.5rem}.post-reading--with-toc .toc ul ul ul a{padding-left:2.4rem}.post-reading--with-toc .toc-title{cursor:default;pointer-events:none}.post-reading--with-toc .toc-details__chevron{display:none}.post-reading--with-toc .toc li:not(.is-open)>ul{display:none}.toc-top{display:block}}.article_text{max-width:var(--layout-prose-max);margin:0 auto}.article_text>:first-child,.article_text>hr:first-child+*{margin-top:0}.article_text>:is(p,ul,ol,dl,blockquote){max-width:70ch}.article_text :is(p,li,dd,dt,blockquote){font-family:var(--font-reading);font-size:calc(1.04rem * var(--reading-scale));line-height:1.7;overflow-wrap:break-word}.article_text :is(li,dd,blockquote) :is(p,li){font-size:inherit}.article_text p{margin:1.45rem 0}.article_text :is(ul,ol){padding-left:1.5em}.article_text li{margin-bottom:.35em}.article_text li>:is(ul,ol){margin-top:.35em}.article_text :is(h2,h3,h4,h5,h6){margin-bottom:.6em;font-family:var(--font-serif);font-weight:600;text-align:left}.article_text h2{margin-top:var(--space-section);font-size:calc(1.45rem * var(--reading-scale))}.article_text h3{font-size:calc(1.22rem * var(--reading-scale))}.article_text h4{font-size:calc(1.08rem * var(--reading-scale))}.article_text :is(h5,h6){font-size:calc(1rem * var(--reading-scale))}@media(min-width:1024px){.article_text h2{font-size:calc(1.7rem * var(--reading-scale))}.article_text h3{font-size:calc(1.35rem * var(--reading-scale))}.article_text h4{font-size:calc(1.15rem * var(--reading-scale))}}.article_text :is(h2,h3,h4,h5,h6) code{padding:0;background:0 0;color:inherit}.article_text h3{margin-top:clamp(2rem,6vw,2.75rem)}.article_text :is(h4,h5,h6){margin-top:clamp(1.75rem,5vw,2.25rem)}.article_text hr{height:1px;margin:var(--space-rule)0;border:0;background-image:linear-gradient( 90deg,transparent,var(--border-strong) 50%,transparent )}.article_text>hr:first-child{display:none}.article_text hr:has(+h2){display:none}.article_text hr+:is(h3,h4,h5,h6){margin-top:0}.article_text blockquote{margin:var(--space-block)0;padding:.1rem 0 .1rem 1rem;border-left:3px solid var(--border-strong);color:var(--ink-secondary)}.article_text blockquote>:first-child{margin-top:0}.article_text blockquote>:last-child{margin-bottom:0}.article_text q.note-quote{color:var(--ink-secondary)}.article_text q.note-quote::before,.article_text q.note-quote::after{color:var(--accent)}.article_text .quote-author{margin:calc(var(--space-block) * -.5)0 var(--space-block);color:var(--ink-muted);font-size:.92rem;font-style:italic;text-align:right}.article_text a{padding:0 .08em;border-radius:3px;text-decoration:underline;text-decoration-color:var(--link-hover);text-underline-offset:.18em}.article_text a:hover,.article_text a:focus-visible{background-color:var(--accent-soft);box-shadow:var(--shadow-hairline);text-underline-offset:.28em}.article_text code{padding:.05em .2em;border-radius:4px;background-color:var(--surface-code-inline);color:var(--ink-code-inline);font-size:.88em;overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone}.article_text a code{padding:0;background:0 0;color:inherit}.article_text pre{max-width:100%;margin:var(--space-block)0;padding:1.25rem clamp(.75rem,4vw,1.5rem);overflow-x:auto;border:1px solid var(--border-soft);border-radius:6px;background-color:var(--code-bg);color:var(--code-ink);font-size:calc(.9rem * var(--reading-scale));line-height:1.5;tab-size:4}.article_text pre code{padding:0;border:0;border-radius:0;background:0 0;color:inherit;overflow-wrap:normal}.code-block{position:relative;max-width:100%;margin:var(--space-block)0}.code-block .highlight,.code-block pre{margin:0}.code-block pre{padding-top:2.6rem}.code-block__bar{position:absolute;top:.5rem;right:.5rem;left:clamp(.75rem,4vw,1.5rem);z-index:1;display:flex;align-items:center;gap:.75rem;color:var(--code-chrome);font-family:var(--font-mono);font-size:.75rem;pointer-events:none}.code-block__title{min-width:0;overflow:hidden;color:var(--code-ink);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.code-block__lang{letter-spacing:.06em;text-transform:lowercase}.code-block__title+.code-block__lang{opacity:.8}.code-block__wrap,.code-block__copy{margin-left:auto;padding:.15rem .5rem;border:1px solid var(--border-soft);border-radius:4px;background:var(--code-bg);color:var(--code-chrome);font:inherit;cursor:pointer;pointer-events:auto}.code-block__wrap:not([hidden])~.code-block__copy{margin-left:-.4rem}.code-block__wrap:hover,.code-block__wrap:focus-visible,.code-block__copy:hover,.code-block__copy:focus-visible{border-color:var(--border-strong);color:var(--code-ink)}.code-block__wrap[aria-pressed=true],.code-block__copy[data-copied]{border-color:var(--accent);color:var(--accent)}.code-block__prompt{color:var(--code-chrome);user-select:none}@media(hover:hover) and (pointer:fine){.code-block:not(.code-block--titled) pre{padding-top:1.25rem}.code-block:not(.code-block--titled) .code-block__bar{left:auto;padding-left:.6rem;border-radius:4px;background-color:var(--code-bg);opacity:0;transition:opacity var(--motion-fast)var(--ease-out)}.code-block:not(.code-block--titled):is(:hover,:focus-within) .code-block__bar,.code-block__bar:has([data-copied]){opacity:1}}.code-block--wrap pre,.code-block--wrapped pre{white-space:pre-wrap;overflow-wrap:anywhere}.code-block--wrap .line,.code-block--wrapped .line{display:block;padding-left:4ch;text-indent:-4ch}.code-block.is-collapsed pre{max-height:var(--code-collapsed-height,26rem);overflow:hidden}.code-block.is-collapsed::after{content:"";position:absolute;right:1px;bottom:1px;left:1px;height:6rem;border-radius:0 0 5px 5px;background:linear-gradient(to bottom,transparent,var(--code-bg) 85%);pointer-events:none}.code-block__toggle{position:absolute;bottom:.75rem;left:50%;z-index:1;padding:.3rem .85rem;border:1px solid var(--border-strong);border-radius:999px;background-color:var(--code-bg);color:var(--accent);font-family:var(--font-mono);font-size:.78rem;transform:translateX(-50%);cursor:pointer}.code-block__toggle:hover,.code-block__toggle:focus-visible{background-color:var(--accent-soft);color:var(--accent-strong)}.code-block.is-expanded{padding-bottom:2.75rem}.code-block.is-expanded .code-block__toggle{bottom:0}.table-wrapper{max-width:100%;margin:var(--space-block)0;overflow-x:auto;border:1px solid var(--border-soft);border-radius:6px}.table-wrapper table{min-width:100%;border-collapse:collapse;font-size:.92rem}.table-wrapper th,.table-wrapper td{padding:.55rem .85rem;border-bottom:1px solid var(--border-soft);line-height:1.5;text-align:left;vertical-align:top}.table-wrapper th{background-color:var(--accent-soft);color:var(--ink-primary);font-weight:500;white-space:nowrap}.table-sort{display:inline-flex;align-items:center;gap:.35em;padding:0;border:0;background:0 0;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.article_text th:has(>.table-sort){position:relative}.table-sort::before{position:absolute;inset:0;content:""}.table-sort::after{content:"↕";color:var(--ink-muted);font-size:.8em;opacity:.6}.table-sort:hover::after,.table-sort:focus-visible::after{opacity:1}[aria-sort=ascending]>.table-sort::after{content:"↑";color:var(--accent);opacity:1}[aria-sort=descending]>.table-sort::after{content:"↓";color:var(--accent);opacity:1}.table-wrapper tbody tr:nth-child(even){background-color:var(--surface-raised)}.table-wrapper tbody tr:last-child td{border-bottom:0}.table-wrapper td code{white-space:nowrap}.article_text img{display:block;max-width:100%;height:auto;margin:clamp(1.25rem,5vw,2rem)auto;border:1px solid var(--border-soft);border-radius:6px;background-color:var(--image-backdrop)}.article_text figure{max-width:100%;margin:var(--space-block)auto}.article_text figure img{margin-bottom:.75rem}.article_text figure a{padding:0;background:0 0;box-shadow:none}.article_text figcaption{color:var(--ink-muted);font-size:.9rem;line-height:1.55;text-align:center;text-wrap:balance}.article_text p:has(>:is(img,picture,a>img,a>picture):only-child){margin:var(--space-block)0}.article_text p:has(>:is(img,picture,a>img,a>picture):only-child) img{margin-block:0}.article_text p>a:only-child:has(>:is(img,picture)){display:block;padding:0;background:0 0;box-shadow:none}.article_text .image{display:flex;justify-content:center}.article_text img.is-zoomable{cursor:zoom-in}.article_text img.is-zoomable:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.zoom-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:0 0;overflow:auto;overscroll-behavior:contain;cursor:zoom-out}.zoom-dialog[open]{display:grid;place-items:center;animation:backdrop-fade-in var(--motion-medium)var(--ease-out)}.zoom-dialog::backdrop{background-color:hsla(211,60%,2%,85%);backdrop-filter:blur(3px)}.zoom-dialog__image{max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);border-radius:6px;background-color:var(--image-backdrop)}.zoom-dialog.is-larger .zoom-dialog__image{cursor:zoom-in}.zoom-dialog.is-actual{place-items:start}.zoom-dialog.is-actual .zoom-dialog__image{max-width:none;max-height:none;margin:1rem;cursor:zoom-out}.zoom-dialog__close{position:fixed;top:1rem;right:1rem;z-index:1;color:#dae0e7}.zoom-dialog__close kbd{border-color:hsla(210,20%,88%,.4)}.article_text .youtube{margin:var(--space-block)0;overflow:hidden;border:1px solid var(--border-soft);border-radius:6px}.article_text .youtube-16x9{aspect-ratio:16/9}.article_text .youtube iframe{display:block;width:100%;height:100%;border:0}.post-footer{max-width:var(--layout-prose-max);margin:clamp(3rem,9vw,5rem)auto 0}.post-footer>.prompt-line{margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-soft)}.post-footer__actions{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;margin:-1rem 0 1.5rem;padding:0;list-style:none}.post-footer__actions a,.post-footer__actions button{padding:0;border:0;background:0 0;color:var(--link-color);font:600 1rem/1.4 var(--font-sans);text-decoration:none;cursor:pointer}.post-footer__actions a:hover,.post-footer__actions a:focus-visible,.post-footer__actions button:hover,.post-footer__actions button:focus-visible{color:var(--link-hover);text-decoration:underline}.post-footer__pager{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}.post-footer__pager-link,.post-footer__pager-link:visited{display:flex;flex-direction:column;gap:.25rem;padding:.9rem 1rem;border:1px solid var(--border-soft);border-radius:6px;color:var(--ink-primary)}.post-footer__pager-link:hover,.post-footer__pager-link:focus-visible{border-color:var(--border-strong);background-color:var(--accent-soft);color:var(--ink-primary)}.post-footer__label{color:var(--ink-muted);font-family:var(--font-mono);font-size:.78rem}.post-footer__title{font-family:var(--font-serif);font-weight:600;line-height:1.35}.post-footer__related{margin-top:2.5rem}.post-footer__related .section-label{margin-bottom:1rem}.post-footer__related-list{margin:0;padding:0;list-style:none}.post-footer__related-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;padding:.6rem 0;border-bottom:1px solid var(--border-soft)}.post-footer__related-list a:hover{text-decoration:underline}.post-footer__related-meta{color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem;white-space:nowrap}@media(min-width:768px){.post-footer__pager{grid-template-columns:repeat(2,minmax(0,1fr))}.post-footer__pager-link--newer{text-align:right}.post-footer__pager-link--newer:only-child{grid-column:2}}.section-bar{display:none}@media(max-width:1279px){.section-bar:not([hidden]){position:fixed;top:var(--header-height);right:0;left:0;z-index:49;display:flex;align-items:baseline;gap:.75rem;height:var(--section-bar-height);padding:0 max(var(--layout-gutter),calc((100% - var(--layout-prose-max))/2));overflow:hidden;border-bottom:1px solid var(--border-soft);background-color:var(--surface-header);backdrop-filter:saturate(140%)blur(10px);line-height:var(--section-bar-height);text-decoration:none;animation:section-bar-in var(--motion-medium)var(--ease-out)}.section-bar__hint{flex-shrink:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.section-bar__hint::before{content:">";margin-right:.5em;color:var(--accent)}.section-bar__current{min-width:0;overflow:hidden;color:var(--ink-primary);font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.section-bar__left{flex-shrink:0;margin-left:auto;color:var(--ink-muted);font-family:var(--font-mono);font-size:.72rem;white-space:nowrap}.section-bar:hover .section-bar__current{color:var(--link-hover)}.post-reading__toc{scroll-margin-top:calc(var(--header-height) + var(--section-bar-height) + 1rem)}}@media(max-width:767px){.section-bar:not([hidden]){top:0}.section-bar__hint{display:none}.post-reading__toc{scroll-margin-top:calc(var(--section-bar-height) + 1rem)}}@keyframes section-bar-in{from{opacity:0;transform:translateY(-100%)}}.reading-progress{display:none}@supports(animation-timeline:view()){.post-reading{timeline-scope:--article}.post-reading>.article_text{view-timeline:--article block}.reading-progress{position:fixed;top:var(--header-height);left:0;z-index:51;display:block;width:100%;height:2px;background-color:var(--accent);transform-origin:left;animation:reading-progress linear both;animation-timeline:--article;animation-range:contain 0% contain 100%;pointer-events:none}@media(max-width:767px){.reading-progress{top:0}}@media(max-width:1279px){.post-reading:has(.section-bar:not([hidden])) .reading-progress{top:calc(var(--header-height) + var(--section-bar-height) - 2px)}}@media(max-width:767px){.post-reading:has(.section-bar:not([hidden])) .reading-progress{top:calc(var(--section-bar-height) - 2px)}}}@keyframes reading-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}.article_text :is(h2,h3,h4,h5,h6)[id]{scroll-margin-top:calc(var(--header-height) + 1rem)}@media(max-width:1279px){.post-reading--with-toc .article_text :is(h2,h3,h4,h5,h6)[id]{scroll-margin-top:calc(var(--header-height) + var(--section-bar-height) + 1rem)}}@media(max-width:767px){.article_text :is(h2,h3,h4,h5,h6)[id]{scroll-margin-top:1rem}.post-reading--with-toc .article_text :is(h2,h3,h4,h5,h6)[id]{scroll-margin-top:calc(var(--section-bar-height) + 1rem)}}.article_text .heading-anchor,.article_text .heading-anchor:visited{position:relative;margin-left:.35em;padding:0 .15em;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8em;font-weight:400;text-decoration:none;opacity:.35;transition:opacity var(--motion-fast)var(--ease-out),color var(--motion-fast)var(--ease-out)}@media(hover:hover) and (pointer:fine){.article_text .heading-anchor{opacity:0}}.article_text .section-toggle{margin-left:.25em;padding:.1em .25em;border:0;background:0 0;color:var(--ink-muted);vertical-align:middle;line-height:1;cursor:pointer;opacity:.8;transition:opacity var(--motion-fast)var(--ease-out),color var(--motion-fast)var(--ease-out)}.article_text .section-toggle svg{display:block;transition:transform var(--motion-medium)var(--ease-out)}.article_text .section-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}.article_text .section-toggle:hover,.article_text .section-toggle:focus-visible{color:var(--link-hover);opacity:1}@media screen{.article_text [data-collapsed]{display:none!important}}.article_text :is(h2,h3,h4,h5,h6):hover .heading-anchor,.article_text .heading-anchor:focus-visible{opacity:1}.article_text .heading-anchor:hover,.article_text .heading-anchor:focus-visible{color:var(--link-hover)}.article_text .heading-anchor[data-copied]{opacity:1;color:var(--accent)}.article_text .heading-anchor[data-copied]::after{content:"Link copied";position:absolute;bottom:100%;left:50%;padding:.15rem .45rem;border-radius:4px;background-color:var(--surface-menu);box-shadow:var(--shadow-soft);color:var(--ink-secondary);font-family:var(--font-sans);font-size:.75rem;white-space:nowrap;transform:translateX(-50%)}.article_text .callout{--callout-color:var(--accent);margin:var(--space-block)0;padding:.75rem 1rem;border-left:3px solid var(--callout-color);border-radius:0 6px 6px 0;background-color:var(--surface-raised)}.article_text .callout--tip{--callout-color:light-dark(hsl(145, 55%, 30%), hsl(145, 45%, 62%))}.article_text .callout--important{--callout-color:light-dark(hsl(262, 45%, 45%), hsl(262, 65%, 78%))}.article_text .callout--warning{--callout-color:light-dark(hsl(35, 90%, 32%), hsl(40, 85%, 62%))}.article_text .callout--caution{--callout-color:light-dark(hsl(355, 65%, 42%), hsl(355, 75%, 72%))}.article_text .callout__title{margin:0 0 .35rem;color:var(--callout-color);font-family:var(--font-sans);font-size:.85rem;font-weight:700;letter-spacing:.04em}.article_text .callout__title+*{margin-top:0}.article_text .callout>:last-child{margin-bottom:0}.article_text .footnote-ref{padding:0 .15em;font-family:var(--font-sans);font-size:.75em;font-weight:600;text-decoration:none}.article_text :is([id^="fn:"],[id^="fnref:"]){scroll-margin-top:calc(var(--header-height) + 1rem)}.article_text .footnotes{margin-top:var(--space-section);color:var(--ink-secondary);font-family:var(--font-sans);font-size:.92rem}.article_text .footnotes ol{padding-left:1.4rem}.article_text .footnotes li:target{border-radius:4px;background-color:var(--accent-soft)}.article_text .footnote-backref{text-decoration:none}.footnote-preview{position:absolute;z-index:30;width:max-content;max-width:min(26rem,calc(100vw - 2rem));padding:.75rem 1rem;border-radius:6px;background:var(--surface-menu);box-shadow:var(--shadow-soft);color:var(--ink-secondary);font-family:var(--font-sans);font-size:.92rem;line-height:1.5}.footnote-preview>:first-child{margin-top:0}.footnote-preview>:last-child{margin-bottom:0}.link-preview{max-width:min(24rem,calc(100vw - 2rem))}.link-preview p{margin:0}.link-preview__title{color:var(--ink-primary);font-family:var(--font-serif);font-size:1.02rem;font-weight:600;line-height:1.35}.link-preview__section:not(:empty){margin-top:.15rem;color:var(--accent);font-size:.85rem}.link-preview__description{display:-webkit-box;margin-top:.4rem;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}.link-preview__meta{margin-top:.5rem;color:var(--ink-muted);font-family:var(--font-mono);font-size:.75rem}.post-footer__actions [data-save][aria-pressed=true]::before{content:"✓ "}.discovery-page,.taxonomy-listing{max-width:var(--layout-prose-max);margin:0 auto}.discovery-page__header{margin-bottom:1.5rem}.article_title.discovery-page__header h1{margin:0;font-family:var(--font-serif);font-size:2rem;font-weight:600}@media(min-width:1024px){.article_title.discovery-page__header h1{font-size:2.35rem}}.crumbs ol{display:flex;flex-wrap:wrap;gap:0 .5em;margin:0 0 .5rem;padding:0;font-size:.9rem;list-style:none}.crumbs li+li::before{content:"\203A";margin-right:.5em;color:var(--ink-muted)}.crumbs a,.crumbs a:visited{color:var(--ink-secondary)}.crumbs a:hover,.crumbs a:focus-visible{color:var(--link-hover);text-decoration:underline}.discovery-page__meta{margin:.45rem 0 0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.84rem;line-height:1.45}.discovery-page__feed,.discovery-page__feed:visited{margin-left:1.25rem;color:var(--link-color);font-family:var(--font-sans);white-space:nowrap}.discovery-page__feed svg{width:.75em;height:.75em;margin-right:.35em;vertical-align:baseline}.discovery-page__feed:hover,.discovery-page__feed:focus-visible{color:var(--link-hover);text-decoration:underline}.archives-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2rem}.archives-filter[hidden]{display:none}.archives-filter__chip{display:inline-flex;align-items:baseline;gap:.4em;padding:.3rem .75rem;border:1px solid var(--border-soft);border-radius:999px;background:0 0;color:var(--ink-secondary);font-family:var(--font-sans);font-size:.9rem;line-height:1.4;cursor:pointer;transition:border-color var(--motion-fast)var(--ease-out),background-color var(--motion-fast)var(--ease-out),color var(--motion-fast)var(--ease-out)}.archives-filter__chip:hover{border-color:var(--border-strong);color:var(--ink-primary)}.archives-filter__chip[aria-pressed=true]{border-color:var(--border-strong);background-color:var(--accent-soft);color:var(--accent)}.archives-filter__count{color:var(--ink-muted);font-family:var(--font-mono);font-size:.78em}.archives-filter__chip[aria-pressed=true] .archives-filter__count{color:inherit}.archives-filter__tag[hidden]{display:none}.archives-filter__tag .tag-icon{align-self:center;width:.85em;height:.85em;margin-right:-.2em}.archives-year[hidden],.archives-article[hidden]{display:none}.archives-year:not([hidden])~.archives-year:not([hidden]){margin-top:2.25rem}.archives-year__title{position:sticky;top:calc(var(--header-height) + 1px);z-index:1;display:flex;align-items:baseline;gap:.75rem;margin:0;padding:.5rem 0;background-color:var(--surface-page);font-family:var(--font-serif);font-size:1.4rem;font-weight:600}.archives-year__count{color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem;font-weight:400}.archives__list{display:grid;margin:.5rem 0 0}.archives-article{display:grid;grid-template-columns:4.5rem minmax(0,1fr)auto;align-items:start;gap:.35rem 1rem;padding:.82rem 0;border-top:1px solid var(--border-soft)}.archives-article:nth-child(1 of :not([hidden])){border-top-color:var(--border-strong)}.archives-article__date{color:var(--ink-muted);font-family:var(--font-mono);font-size:.82rem;line-height:1.5}.archives-article__title{min-width:0;margin:0;font-family:var(--font-serif);font-size:1.05rem;font-weight:500;line-height:1.45;text-wrap:pretty}.archives-article__title a{color:var(--ink-primary);overflow-wrap:anywhere}.archives-article__title a:visited{color:var(--ink-secondary)}.archives-article__title a:hover,.archives-article__title a:focus-visible{color:var(--link-hover);text-decoration:underline}.archives-article__category{margin:0;color:var(--ink-secondary);font-family:var(--font-sans);font-size:.85rem;line-height:1.75;white-space:nowrap}.archives-article__category a,.archives-article__category a:visited{color:inherit}.archives-article__category a:hover,.archives-article__category a:focus-visible{color:var(--link-hover);text-decoration:underline}.archives[data-filtered] .archives-article{grid-template-columns:4.5rem minmax(0,1fr)}.archives[data-filtered] .archives-article__category{display:none}@media(max-width:559px){.archives-article{grid-template-columns:4.5rem minmax(0,1fr)}.archives-article__category{display:none}}@media(max-width:767px){.archives-year__title{top:0}}.tag-list{columns:3 11rem;column-gap:2rem;margin:1rem 0 0;padding:0;list-style:none}.tag-list li{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:0;padding:.4rem 0;border-bottom:1px solid var(--border-soft);break-inside:avoid;line-height:1.35}.tag-list__link{min-width:0;overflow-wrap:anywhere}.tag-list__link:hover,.tag-list__link:focus-visible{text-decoration:underline}.tag-list__more{margin-top:1.25rem}.tag-list__more>summary{display:inline-flex;align-items:center;gap:.5em;color:var(--ink-secondary);font-family:var(--font-mono);font-size:.82rem;cursor:pointer;list-style:none}.tag-list__more>summary::-webkit-details-marker{display:none}.tag-list__more>summary::before{content:"+";color:var(--accent);font-weight:700}.tag-list__more[open]>summary::before{content:"\2212"}.tag-list__more>summary:hover{color:var(--link-hover)}.tag-list__count{flex-shrink:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.78rem}.taxonomy-index__count{flex-shrink:0;border:1px solid var(--border-soft);border-radius:999px;color:var(--ink-secondary);font-family:var(--font-mono);font-size:.78em;line-height:1}.discovery-page .taxonomy-index{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.65rem;margin:1.25rem 0 0;padding:0;list-style:none}.discovery-page .taxonomy-index__item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:44px;margin:0;padding:.65rem .8rem;border:1px solid var(--border-soft);border-radius:6px;line-height:1.3;transition:border-color var(--motion-fast)var(--ease-out),background-color var(--motion-fast)var(--ease-out)}.discovery-page .taxonomy-index__item:has(a:hover,a:focus-visible){border-color:var(--border-strong);background-color:var(--surface-raised)}.taxonomy-index__link{min-width:0;overflow-wrap:anywhere}.taxonomy-index__count{padding:.28em .45em}.topics-section+.topics-section{margin-top:var(--space-section)}.tag-list--categories li{padding:.55rem 0}.tag-list--categories .tag-list__link{font-size:1.1rem;font-weight:600}.taxonomy-listing__pagination{margin-top:1rem}.not-found__shell{max-width:var(--layout-prose-max);margin:0 auto 2rem;padding:1rem 1.25rem;border-radius:8px;background-color:var(--code-bg)}.not-found__shell .prompt-line{color:var(--code-ink);overflow-wrap:anywhere}.not-found__error{margin:0;color:var(--syn-name);font-family:var(--font-mono);font-size:.9rem;line-height:1.5}.not-found .post-reading__standfirst p{margin:0}.not-found__links{max-width:var(--layout-prose-max);margin:0 auto;padding:0;list-style:none}.not-found__links li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;padding:.75rem 0;border-top:1px solid var(--border-soft)}.not-found__links li:last-child{border-bottom:1px solid var(--border-soft)}.not-found__links a,.not-found__search{min-width:6rem;padding:0;border:0;background:0 0;color:var(--link-color);font:600 1.1rem/1.4 var(--font-serif);text-align:left;cursor:pointer}.not-found__links a:hover,.not-found__links a:focus-visible,.not-found__search:hover,.not-found__search:focus-visible{color:var(--link-hover);text-decoration:underline}.not-found__links span{color:var(--ink-muted);font-size:.92rem}.not-found__suggestions{max-width:var(--layout-prose-max);margin:0 auto 2rem}.not-found__suggestions .section-label{margin-bottom:.5rem}.learning-log{margin:0 0 var(--space-block)}.learning-log__years{margin-bottom:1rem}.learning-log__years [aria-current]{color:var(--ink-primary);font-weight:600}.learning-log__summary{margin:0 0 1rem;color:var(--ink-secondary)}.learning-log__calendar{display:flex;flex-wrap:wrap;gap:1rem 1.1rem;margin:0 0 1.5rem;padding:0;list-style:none}.learning-log__month{display:grid;align-content:start;gap:.35rem}.learning-log__month-name,.learning-log__month-entries{color:var(--ink-muted);font-family:var(--font-mono);font-size:.75rem}.learning-log__month-name:hover,.learning-log__month-name:focus-visible{color:var(--link-hover)}.learning-log__days{--day-size:0.62rem;display:grid;grid-auto-columns:var(--day-size);grid-auto-flow:column;grid-template-rows:repeat(7,var(--day-size));gap:2px}.learning-log__day{border-radius:2px;background-color:var(--surface-raised)}.learning-log__day:first-child{grid-row-start:var(--first-weekday,1)}.learning-log__day[data-level="1"]{background-color:color-mix(in srgb,var(--accent) 25%,transparent)}.learning-log__day[data-level="2"]{background-color:color-mix(in srgb,var(--accent) 45%,transparent)}.learning-log__day[data-level="3"]{background-color:color-mix(in srgb,var(--accent) 70%,transparent)}.learning-log__day[data-level="4"]{background-color:var(--accent)}a.learning-log__day:hover,a.learning-log__day:focus-visible{outline:2px solid var(--ink-primary);outline-offset:1px}.learning-log__day.is-filtered-out{opacity:.2}.learning-log__filter label{display:block;margin-bottom:.35rem;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem}.learning-log__filter input{width:100%;padding:.5rem .75rem;border:1px solid var(--border-soft);border-radius:6px;background-color:var(--surface-page);color:var(--ink-primary);font:inherit;appearance:none}.learning-log__filter input::placeholder{color:var(--ink-muted);opacity:1}.learning-log__filter input:focus{border-color:var(--border-strong);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.learning-log__matches{min-height:1.5em;margin:.4rem 0 0;color:var(--ink-muted);font-size:.9rem}.stats__totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:1rem;margin:0 0 var(--space-section)}.stats__totals div{padding:.85rem 1rem;border:1px solid var(--border-soft);border-radius:6px}.stats__totals dt{color:var(--ink-muted);font-size:.85rem}.stats__totals dd{margin:.15rem 0 0;color:var(--ink-primary);font-family:var(--font-serif);font-size:1.75rem;font-weight:600;font-variant-numeric:tabular-nums}.stats__section{margin-bottom:var(--space-section)}.stats__section .section-label{margin-bottom:1rem}.stats__bars{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.stats__row{display:grid;grid-template-columns:minmax(4rem,10rem)1fr auto;align-items:center;gap:.75rem;font-size:.92rem}.stats__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}span.stats__label{color:var(--ink-muted)}.stats__bar{height:.6rem;min-width:2px;width:var(--share);border-radius:0 4px 4px 0;background-color:var(--accent)}.stats__row:hover .stats__bar{background-color:var(--accent-strong)}.stats__value{color:var(--ink-secondary);font-family:var(--font-mono);font-size:.8rem;font-variant-numeric:tabular-nums;text-align:right}.stats__detail{color:var(--ink-muted)}@media(max-width:30rem){.stats__detail{display:none}}.saved-posts__list li{align-items:baseline}.saved-posts__list a{flex:1 1 16rem}.saved-posts__remove{padding:0;border:0;background:0 0;color:var(--ink-muted);font:.85rem/1.4 var(--font-sans);cursor:pointer}.saved-posts__remove:hover,.saved-posts__remove:focus-visible{color:var(--link-hover);text-decoration:underline}.chroma :is(.c,.ch,.cm,.cp,.cpf,.c1,.cs){color:var(--syn-comment);font-style:italic}.chroma :is(.k,.kd,.kn,.kp,.kr){color:var(--syn-keyword)}.chroma :is(.n,.na,.no,.ni,.ne,.nl,.nn,.nx,.py,.nt,.nv,.vc,.vg,.vi,.vm){color:var(--syn-name)}.chroma :is(.o,.ow){color:var(--syn-operator)}.chroma :is(.kc,.kt,.nb,.nc,.bp){color:var(--syn-constant)}.chroma :is(.m,.mb,.mf,.mh,.mi,.mo,.il){color:var(--syn-number)}.chroma :is(.s,.sa,.sb,.sc,.dl,.sd,.s2,.se,.sh,.si,.sx,.sr,.s1,.ss){color:var(--syn-string)}.chroma :is(.nf,.fm,.nd){color:var(--syn-function)}.chroma :is(.nf,.fm){font-weight:700}.chroma .gd{color:var(--syn-name)}.chroma .gi{color:var(--syn-string)}.chroma .ge{font-style:italic}.chroma .gs{font-weight:700}.code-block:not(.code-block--wrap,.code-block--wrapped) .chroma code{display:block;width:max-content;min-width:100%}.chroma .hl{display:block;margin:0 calc(clamp(.75rem,4vw,1.5rem) * -1);padding:0 clamp(.75rem,4vw,1.5rem);background-color:var(--accent-soft)}.chroma :is(.ln,.lnt){margin-right:1em;color:var(--code-chrome);user-select:none}.search-dialog{width:min(42rem,calc(100% - 2rem));max-width:none;max-height:min(80vh,48rem);margin:10vh auto auto;padding:0;border:1px solid var(--border-soft);border-radius:10px;background-color:var(--surface-menu);box-shadow:var(--shadow-soft);color:var(--ink-primary);overflow:hidden}.search-dialog[open]{display:flex;flex-direction:column;animation:dialog-fade-in var(--motion-medium)var(--ease-out)}.search-dialog::backdrop{background-color:hsla(211,60%,2%,.6);backdrop-filter:blur(3px)}.search-dialog[open]::backdrop{animation:backdrop-fade-in var(--motion-medium)var(--ease-out)}@keyframes dialog-fade-in{from{opacity:0;transform:translateY(-6px)scale(.99)}}@keyframes backdrop-fade-in{from{opacity:0}}.search-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem 0}.search-dialog .search-dialog__title{margin:0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.search-dialog__close{padding:0;border:0;background:0 0;color:var(--ink-muted);cursor:pointer}.search-dialog__close kbd{display:inline-block;padding:.1rem .4rem;border:1px solid var(--border-soft);border-radius:4px;font-family:var(--font-mono);font-size:.75rem}.search-dialog__close:hover kbd,.search-dialog__close:focus-visible kbd{border-color:var(--border-strong);color:var(--ink-primary)}.search-dialog__body{min-height:0;padding:.75rem 1rem 1rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.pagefind-ui__hidden{display:none!important}.pagefind-ui__suppressed{opacity:0;pointer-events:none}.pagefind-ui__form{--search-input-height:46px;position:relative}.pagefind-ui__search-input{width:100%;height:var(--search-input-height);padding:0 4.5rem 0 .85rem;border:1px solid var(--border-soft);border-radius:6px;background-color:var(--surface-page);color:var(--ink-primary);font-family:var(--font-sans);font-size:1.05rem;appearance:none}.pagefind-ui__search-input::placeholder{color:var(--ink-muted);opacity:1}.pagefind-ui__search-input:focus{border-color:var(--border-strong);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.pagefind-ui__search-clear{position:absolute;top:calc(var(--search-input-height)/2);right:.5rem;padding:.2rem .5rem;border:0;border-radius:4px;background:0 0;color:var(--ink-muted);font-family:var(--font-mono);font-size:.78rem;cursor:pointer;transform:translateY(-50%)}.pagefind-ui__search-clear:hover,.pagefind-ui__search-clear:focus-visible{background-color:var(--accent-soft);color:var(--ink-primary)}.pagefind-ui__message{margin:1rem 0 .25rem;color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem}.pagefind-ui__results{margin:0;padding:0;list-style:none}.pagefind-ui__result{margin:0;padding:.9rem 0;border-bottom:1px solid var(--border-soft)}.pagefind-ui__result:last-child{border-bottom:0}.pagefind-ui__result-title{margin:0;font-size:1.05rem;font-weight:500;line-height:1.35}.pagefind-ui__result-link{color:var(--link-color);text-decoration:none}.pagefind-ui__result-link:hover,.pagefind-ui__result-link:focus-visible{color:var(--link-hover);text-decoration:underline}.pagefind-ui__result-excerpt{margin:.3rem 0 0;color:var(--ink-secondary);font-size:.92rem;line-height:1.6}.pagefind-ui__result-excerpt mark,mark.pagefind-highlight{padding:0 .1em;border-radius:2px;background-color:var(--accent-soft);color:var(--ink-primary);font-weight:500}.pagefind-ui__result-nested{margin:.6rem 0 0;padding-left:.85rem;border-left:2px solid var(--border-soft)}.pagefind-ui__result-nested .pagefind-ui__result-title{font-size:.95rem}.pagefind-ui__result-nested .pagefind-ui__result-excerpt{font-size:.88rem}.pagefind-ui__result-tags{display:none}.pagefind-ui__button{display:block;width:100%;margin-top:.75rem;padding:.6rem;border:1px solid var(--border-soft);border-radius:6px;background:0 0;color:var(--link-color);font-family:var(--font-sans);font-size:.95rem;cursor:pointer}.pagefind-ui__button:hover,.pagefind-ui__button:focus-visible{border-color:var(--border-strong);background-color:var(--accent-soft)}@media(max-width:560px){.search-dialog{width:100%;max-height:100%;height:100%;margin:0;border:0;border-radius:0}}.search-filters{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.search-filters[hidden],.pagefind-ui__filter-panel,.pagefind-ui__filter-panel-label{display:none}.search-filters .search-filters__chip{padding:.15rem .6rem;font-size:.82rem}.search-filters__tag{max-width:100%;padding:.15rem .6rem;border:1px solid var(--border-soft);border-radius:999px;background:var(--surface-page);color:var(--ink-secondary);font-family:var(--font-sans);font-size:.82rem;line-height:1.4;cursor:pointer}.search-filters__tag:hover,.search-filters__tag:focus-visible{border-color:var(--border-strong)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}main{animation:none!important}.sibling-fade:hover>*,.sibling-fade>*:hover{transform:none!important}}@media print{:root{color-scheme:light}body{background:#fff;font-size:11pt}.site-header,.site-footer,.post-footer,.post-reading__toc,.section-bar,.reading-progress,.prompt-line,.archives-filter,.code-block__copy,.code-block__toggle,.heading-anchor,.section-toggle,.toast,.resume-prompt,.footnote-preview,dialog{display:none!important}main{margin:0;padding:0}.post-reading,.post-reading>*{max-width:none}.code-block.is-collapsed pre{max-height:none;overflow:visible}.code-block.is-collapsed::after{display:none}.code-block.is-expanded{padding-bottom:0}.code-block pre,.code-block code{white-space:pre-wrap;overflow-wrap:anywhere}.article_text a[href^=http]::after{content:" (" attr(href)")";color:var(--ink-muted);font-family:var(--font-sans);font-size:.85em;overflow-wrap:anywhere}.article_text a{background:0 0!important;box-shadow:none!important}.article_text :is(h2,h3,h4,h5,h6){break-after:avoid}.table-sort::after{content:none}.article_text :is(pre,figure,img,table,blockquote,.callout){break-inside:avoid}.article_text :is(p,li){orphans:3;widows:3}}