:root{--flexoki-black: #100f0f;--flexoki-paper: #fffcf0;--flexoki-50: #f2f0e5;--flexoki-100: #e6e4d9;--flexoki-150: #dad8ce;--flexoki-200: #cecdc3;--flexoki-300: #b7b5ac;--flexoki-400: #9f9d96;--flexoki-500: #878580;--flexoki-600: #6f6e69;--flexoki-700: #575653;--flexoki-800: #403e3c;--flexoki-850: #343331;--flexoki-900: #282726;--flexoki-950: #1c1b1a;--flexoki-cyan-400: #3aa99f;--flexoki-cyan-600: #24837b;--flexoki-orange-400: #da702c;--flexoki-orange-600: #bc5215;--font-content: -apple-system, BlinkMacSystemFont, "Inter", "IBM Plex Sans", "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "Cascadia Code", "IBM Plex Mono", Menlo, Monaco, Consolas, "Source Code Pro", monospace;--wrap-normal: 37rem;--wrap-wide: 54rem;--line-height: 1.5;--heading-weight: 500;--border-radius: 4px;--font-small: .875em;--font-smaller: .8em;--tracking-heading: -.015em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--gutter: var(--space-4);--ease-out: cubic-bezier(.23, 1, .32, 1);--color-bg: var(--flexoki-paper);--color-bg-secondary: var(--flexoki-50);--color-text: var(--flexoki-black);--color-text-muted: var(--flexoki-600);--color-text-faint: var(--flexoki-400);--color-border: var(--flexoki-150);--color-link: var(--flexoki-cyan-600);--color-link-hover: var(--flexoki-orange-600);--color-code-bg: var(--flexoki-50)}.theme-dark{--color-bg: var(--flexoki-black);--color-bg-secondary: var(--flexoki-950);--color-text: var(--flexoki-200);--color-text-muted: var(--flexoki-500);--color-text-faint: var(--flexoki-600);--color-border: var(--flexoki-900);--color-link: var(--flexoki-cyan-400);--color-link-hover: var(--flexoki-orange-400);--color-code-bg: var(--flexoki-950)}.theme-dark .astro-code,.theme-dark .astro-code span{color:var(--shiki-dark)!important;background-color:var(--color-code-bg)!important}@media(max-width:860px){:root{--wrap-normal: 88vw;--wrap-wide: 100vw;--heading-weight: 600}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:112.5%}body{margin:0;font-family:var(--font-content);line-height:var(--line-height);background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}.wrap,nav.site-nav,footer.site-footer{max-width:calc(var(--wrap-normal) + 2 * var(--gutter));margin-left:auto;margin-right:auto;padding-left:var(--gutter);padding-right:var(--gutter)}main{padding-top:var(--space-6)}.wrap>:first-child,section>:first-child,article>:first-child{margin-top:0}.wrap>:last-child,section>:last-child,article>:last-child{margin-bottom:0}nav.site-nav{display:flex;align-items:center;gap:var(--space-4);padding-top:var(--space-5);padding-bottom:var(--space-5);font-size:var(--font-small)}nav.site-nav .site-name{flex-grow:1}nav.site-nav a{color:var(--color-text);text-decoration:none}nav.site-nav a.muted{color:var(--color-text-muted)}nav.site-nav a:hover{color:var(--color-link-hover)}.theme-toggle{position:relative;width:2.25em;height:1.25em;border-radius:1em;background-color:var(--flexoki-150);cursor:pointer;border:none;padding:0;flex-shrink:0;transition:transform .16s var(--ease-out)}.theme-toggle:active{transform:scale(.95)}.theme-dark .theme-toggle{background-color:var(--flexoki-800)}.theme-toggle-knob{position:absolute;top:.125em;left:.125em;width:1em;height:1em;border-radius:50%;background-color:var(--color-bg);transition:transform .2s var(--ease-out)}.theme-dark .theme-toggle-knob{transform:translate(1em)}h1,h2,h3,h4{font-weight:var(--heading-weight);line-height:1.25;letter-spacing:var(--tracking-heading);margin:var(--space-7) 0 var(--space-3)}h1{font-size:1.6em;line-height:1.2;letter-spacing:-.02em;margin:0 0 var(--space-4)}h2{font-size:1.3em}h3{font-size:1.1em;margin-top:var(--space-6)}p,ul,ol,blockquote,pre,table,figure{margin:0 0 var(--space-4)}ul,ol{padding-left:var(--space-5)}li+li{margin-top:var(--space-1)}li>ul,li>ol{margin:var(--space-1) 0 0}a{color:var(--color-link);text-decoration:none}a:hover{color:var(--color-link-hover)}a.plain{color:var(--color-text)}a.plain:hover{color:var(--color-link-hover)}.muted{color:var(--color-text-muted)}a.muted:hover{color:var(--color-link-hover)}.small{font-size:var(--font-small)}.section-label{font-size:var(--font-small);color:var(--color-text-muted);margin:0 0 var(--space-3)}.lede{font-size:1.1em;margin-bottom:var(--space-7)}.intro .lede{margin-bottom:var(--space-3)}:focus-visible{outline:2px solid var(--color-link);outline-offset:2px;border-radius:2px}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-7) 0}blockquote{padding-left:var(--space-4);border-left:3px solid var(--color-border);color:var(--color-text-muted)}code{font-family:var(--font-mono);font-size:var(--font-small);background-color:var(--color-code-bg);padding:.15em .35em;border-radius:var(--border-radius)}pre{padding:var(--space-4);border-radius:var(--border-radius);overflow-x:auto;font-size:var(--font-small);line-height:1.6}pre code{background:none;padding:0;font-size:1em}img{max-width:100%;height:auto;border-radius:6px}table{border-collapse:collapse;width:100%;font-size:var(--font-small)}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}.metadata{color:var(--color-text-muted);font-size:var(--font-small);margin:0 0 var(--space-6)}ul.archive{list-style:none;padding:0;font-variant-numeric:tabular-nums}ul.archive li+li{margin-top:var(--space-2)}ul.archive a{display:flex;align-items:baseline;gap:var(--space-3);color:var(--color-text)}ul.archive a:hover{color:var(--color-link-hover)}ul.archive .date{color:var(--color-text-muted);font-size:var(--font-smaller);white-space:nowrap;flex-shrink:0}ul.archive u{text-decoration-color:var(--color-border);text-underline-offset:3px}ul.archive a:hover u{text-decoration-color:currentColor}.topics-cloud{line-height:1.75;margin:0}.topics-cloud .sep{color:var(--color-text-faint)}.featured a{display:block;color:var(--color-text)}.featured h2{margin:0 0 var(--space-1)}.featured .metadata{margin-bottom:var(--space-2)}.featured a:hover h2{color:var(--color-link-hover)}.wide{position:relative;width:min(var(--wrap-wide),96vw);left:50%;transform:translate(-50%);margin:var(--space-7) 0}footer.site-footer{margin-top:var(--space-7);padding-bottom:var(--space-7);font-size:var(--font-small)}footer.site-footer:before{content:"";display:block;border-top:1px solid var(--color-border);margin-bottom:var(--space-6)}footer.site-footer p{margin:0 0 var(--space-2)}footer.site-footer p:last-child{margin:var(--space-4) 0 0}footer.site-footer .subscribe-form{display:flex;gap:var(--space-2);margin:var(--space-5) 0;flex-wrap:wrap}footer.site-footer input[type=email]{font:inherit;font-size:var(--font-small);padding:.5em .75em;border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-bg);color:var(--color-text);width:20em;max-width:100%}footer.site-footer button,footer.site-footer input[type=submit]{font:inherit;font-size:var(--font-small);padding:.5em 1em;border:none;border-radius:var(--border-radius);background-color:var(--color-text);color:var(--color-bg);cursor:pointer}.post-topics{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--color-border);font-size:var(--font-small);color:var(--color-text-muted)}.work-section+.work-section{margin-top:var(--space-7)}.entry+.entry{margin-top:var(--space-6)}.entry-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;column-gap:var(--space-4);row-gap:var(--space-1);margin-bottom:var(--space-2)}.entry-head h2{font-size:1.1em;margin:0}.entry-period,.entry-stack{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums}.entry-period{white-space:nowrap}.entry p:has(+.entry-stack){margin-bottom:var(--space-2)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
