.theme[data-astro-cid-m4rhk2r6]{border:1px solid var(--rule-2);border-radius:var(--radius);gap:2px;margin:0;padding:2px;display:inline-flex}.theme[data-astro-cid-m4rhk2r6][hidden]{display:none}.theme__option[data-astro-cid-m4rhk2r6]{width:2rem;height:2rem;color:var(--ink-3);cursor:pointer;transition:color .15s var(--ease), background-color .15s var(--ease);border-radius:2px;place-items:center;display:grid;position:relative}.theme__option[data-astro-cid-m4rhk2r6]:hover{color:var(--ink)}.theme__option[data-astro-cid-m4rhk2r6]:has(input:checked){color:var(--ink);background:var(--bg-code);box-shadow:inset 0 0 0 1px var(--ink-3)}.theme__option[data-astro-cid-m4rhk2r6]:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}svg[data-astro-cid-m4rhk2r6]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.site-header[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto;grid-template-areas:"name theme""nav nav";align-items:center;gap:.75rem 1.5rem;padding-block:1.25rem;display:grid}@media (width>=44rem){.site-header[data-astro-cid-nen7h5rs]{grid-template-columns:1fr auto auto;grid-template-areas:"name nav theme";padding-block:1.5rem}}.site-header__name[data-astro-cid-nen7h5rs]{font-family:var(--font-display-stack);font-stretch:85%;font-size:var(--step-2);letter-spacing:-.01em;grid-area:name;justify-self:start;font-weight:700;text-decoration:none}.site-header__nav[data-astro-cid-nen7h5rs]{grid-area:nav}.site-header__nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:.25rem;margin-inline:-.65rem;list-style:none;display:flex}.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-radius:var(--radius);min-height:2.25rem;font-family:var(--font-mono-stack);color:var(--ink-2);transition:background-color .15s var(--ease), color .15s var(--ease);align-items:center;padding:0 .65rem;font-size:.8125rem;text-decoration:none;display:inline-flex}.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--ink);background:var(--bg-code)}@media (width>=44rem){.site-header__nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{margin-inline:0}}.site-header__theme[data-astro-cid-nen7h5rs]{grid-area:theme;display:flex}.icon[data-astro-cid-ccg5yoga]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none}.icon--threads[data-astro-cid-ccg5yoga]{fill:currentColor;stroke:none}.site-footer[data-astro-cid-jo6i4kqk]{margin-top:var(--space-section);border-top:1px solid var(--rule);color:var(--ink-3);font-family:var(--font-mono-stack);font-size:var(--text-label);flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;padding-block:2rem 2.5rem;display:flex}.site-footer__credit[data-astro-cid-jo6i4kqk]{align-items:center;gap:.4em;display:inline-flex}.coffee[data-astro-cid-jo6i4kqk]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none}.site-footer__links[data-astro-cid-jo6i4kqk]{gap:.25rem;margin-inline:-.7rem;list-style:none;display:flex}.site-footer__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{border-radius:var(--radius);width:2.75rem;height:2.75rem;color:var(--ink-3);transition:color .15s var(--ease), background-color .15s var(--ease);place-items:center;display:grid}.site-footer__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink);background:var(--bg-code)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e8eae4;--bg-code:#f2f3ef;--bg-pre:#f2f3ef;--ink:#1a1c18;--ink-2:#474b42;--ink-3:#62665c;--rule:#d2d5cc;--rule-2:#a9ad9f;--accent:#40602a;--accent-wash:#d3dfc4;--warn:#83560c;--steel:#355f63}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141513;--bg-code:#1b1c19;--bg-pre:#1b1c19;--ink:#e9e7df;--ink-2:#b6b5ab;--ink-3:#999990;--rule:#2a2b27;--rule-2:#55574f;--accent:#b8cc8f;--accent-wash:#2b3322;--warn:#d8b36a;--steel:#9fbcb6}:root{--font-display-stack:var(--font-display,"Arial Narrow"), "Arial Narrow", sans-serif;--font-body-stack:var(--font-body,system-ui), system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono-stack:var(--font-mono,ui-monospace), ui-monospace, "SFMono-Regular", Menlo, monospace;--text-label:.75rem;--step--1:.875rem;--step-0:1rem;--step-1:1.125rem;--step-2:1.3125rem;--step-3:1.5rem;--step-4:clamp(1.75rem, 1.4rem + 1.2vw, 2.25rem);--step-5:clamp(2.25rem, 1.7rem + 2vw, 3rem);--text-prose:clamp(1.0625rem, 1rem + .25vw, 1.125rem);--text-code:.875rem;--measure:38rem;--page:72rem;--margin-col:11rem;--meta-col:10.5rem;--gutter:clamp(1rem, 4vw, 2.5rem);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-section:clamp(3.5rem, 8vw, 6rem);--radius:4px;--ease:cubic-bezier(.2, 0, 0, 1)}.prose{max-width:var(--measure);font-size:var(--text-prose);line-height:1.68}.prose>*+*{margin-top:1.1em}.prose>:first-child{margin-top:0}.prose h2,.prose h3,.prose h4{scroll-margin-top:2rem}.prose h2{font-size:var(--step-4);margin-top:1.9em}.prose h3{font-size:var(--step-3);margin-top:2em}.prose h4{font-size:var(--step-2);margin-top:1.8em}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.6em}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.35em}.prose li::marker{color:var(--ink-3)}.prose strong{font-weight:600}.prose blockquote{border-left:2px solid var(--rule-2);color:var(--ink-2);margin-inline:0;padding-left:1.2em;font-style:italic}.prose hr{border:0;border-top:1px solid var(--rule);margin-block:2.5em}.prose img{border-radius:var(--radius);border:1px solid var(--rule)}.prose figure{margin-inline:0}.prose figcaption{color:var(--ink-3);font-size:var(--step-0);margin-top:.6rem;font-style:italic}.prose .table-scroll,.prose table{max-width:100%;display:block;overflow-x:auto}.prose table{border-collapse:collapse;font-size:var(--step-0);font-variant-numeric:tabular-nums}.prose th,.prose td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:.5rem 1.25rem .5rem 0}.prose th{border-bottom-color:var(--rule-2);font-weight:600}.prose :not(pre)>code{font-family:var(--font-mono-stack);border-radius:var(--radius);background:var(--bg-code);overflow-wrap:anywhere;padding:.1em .3em;font-size:.84em}.prose pre{border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-mono-stack);font-size:var(--text-code);tab-size:2;margin-block:1.6em;padding:1rem 1.15rem;line-height:1.65;overflow-x:auto}.prose pre code{font-family:inherit}.prose pre.astro-code{background-color:var(--bg-pre)!important}.astro-code,.astro-code span{color:var(--shiki-light)}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)}@media (width<=40rem){.prose pre{margin-inline:calc(-1 * var(--gutter));border-inline:0;border-radius:0}}.prose .footnotes{border-top:1px solid var(--rule);font-size:var(--step-0);color:var(--ink-2);margin-top:3em;padding-top:1em}.prose sup a{text-decoration:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-body-stack);font-size:var(--step-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;line-height:1.6;display:flex}main{flex:1}h1,h2,h3,h4{font-family:var(--font-display-stack);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:700;font-stretch:85%;line-height:1.1}p{text-wrap:pretty;margin:0}img,svg,video{max-width:100%;height:auto;display:block}ul,ol{margin:0;padding:0}a{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--rule-2);text-decoration-color:var(--rule-2);text-underline-offset:.22em;transition:color .15s var(--ease), text-decoration-color .15s var(--ease)}a:hover{color:var(--accent);text-decoration-color:currentColor}::selection{background:var(--accent-wash);color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{left:var(--gutter);z-index:10;background:var(--ink);color:var(--bg);font-size:var(--step-0);padding:.5rem .9rem;position:absolute;top:-4rem}.skip-link:focus{top:1rem}.muted{color:var(--ink-2)}.quiet{color:var(--ink-3);font-size:var(--step--1)}.label{font-family:var(--font-mono-stack);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.mono{font-family:var(--font-mono-stack);font-size:var(--text-label);letter-spacing:.02em}.comma-list{list-style:none;display:inline}.comma-list li{white-space:nowrap;margin-right:.3em;display:inline-block}.comma-list li:not(:last-child):after{content:","}.wrap{width:100%;max-width:calc(var(--page) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.section{gap:var(--space-2);padding-block:var(--space-section) 0;display:grid}@media (width>=56rem){.section{grid-template-columns:var(--margin-col) minmax(0, 1fr);column-gap:clamp(2rem,5vw,4.5rem)}.section__body--offset{grid-column:2}}.section__title{font-family:var(--font-mono-stack);font-stretch:100%;font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding-top:.3rem;font-weight:500;line-height:1.5}.section__body{min-width:0}.section__more{margin-top:var(--space-3);font-size:var(--step-0)}.page-head{padding-top:clamp(2.5rem,7vw,5rem)}.page-head h1{font-size:var(--step-5);max-width:20ch;font-weight:800;font-stretch:80%;line-height:1}.page-head .dek{margin-top:var(--space-2);max-width:var(--measure);font-size:var(--step-1);color:var(--ink-2);line-height:1.55}@media (width>=56rem){.page-head{grid-template-columns:var(--margin-col) minmax(0, 1fr);column-gap:clamp(2rem,5vw,4.5rem);display:grid}.page-head>*{grid-column:2}}
