@font-face{font-family:ibm plex mono;src:url(/fonts/IBMPlexMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ibm plex mono;src:url(/fonts/IBMPlexMono-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:ibm plex mono;src:url(/fonts/IBMPlexMono-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:ibm plex mono;src:url(/fonts/IBMPlexMono-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{color-scheme:light dark;--font-body:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--bg:#f7f2e8;--surface:#fffaf0;--ink:#1f1b17;--muted:#74695f;--faint:#b8aa9b;--rule:#d8cbbc;--accent:#6f3f2f;--mark:#fff1b8;--measure:72ch;--note-width:18rem;--gutter:clamp(1rem, 2.5vw, 2rem);--step--2:clamp(0.72rem, 0.69rem + 0.08vw, 0.76rem);--step--1:clamp(0.82rem, 0.78rem + 0.12vw, 0.88rem);--step-0:clamp(0.98rem, 0.93rem + 0.18vw, 1.06rem);--step-1:clamp(1.12rem, 1.04rem + 0.35vw, 1.28rem);--step-2:clamp(1.28rem, 1.15rem + 0.55vw, 1.58rem);--step-3:clamp(1.48rem, 1.28rem + 0.85vw, 1.95rem)}@media(prefers-color-scheme:dark){:root{--bg:#171512;--surface:#201d19;--ink:#eee3d4;--muted:#b7a99a;--faint:#6f655b;--rule:#3c352e;--accent:#d6a06f;--mark:#44391f}}html{font-family:var(--font-body);font-size:var(--step-0);line-height:1.72;background:var(--bg);color:var(--ink);text-rendering:optimizeLegibility}body{margin:0;counter-reset:sidenote-counter}main{width:100%;max-width:none;margin:0;padding-block:clamp(2rem,6vw,5rem);padding-inline:var(--gutter);box-sizing:border-box}.article-grid{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,var(--measure))minmax(14rem,var(--note-width))minmax(0,1fr);column-gap:var(--gutter);max-width:calc(var(--measure) + var(--note-width) + var(--gutter) * 3);margin-inline:auto}.article-grid>article,.article-grid>section{grid-column:2;min-width:0}@media(max-width:72rem){main{max-width:var(--measure);margin-inline:auto}.article-grid{display:block;max-width:none}}p{margin-block:1.1em}.article>p:first-of-type{font-size:var(--step-1);line-height:1.65}h1,h2,h3{line-height:1.25;letter-spacing:-.025em;font-weight:600}h1{font-size:var(--step-3);margin-block:0 1.5rem}h2{font-size:var(--step-2);margin-block:3rem 1rem;padding-block-start:.75rem;border-block-start:1px solid var(--rule)}h3{font-size:var(--step-1);margin-block:2rem .75rem}.newthought{font-variant-caps:small-caps;letter-spacing:.08em;font-weight:500}a{color:var(--ink);text-decoration-color:var(--faint);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:var(--accent);text-decoration-color:initial}code,pre,kbd,samp{font-family:var(--font-body);font-feature-settings:"zero" 1}pre{overflow-x:auto;padding:1rem;border:1px solid var(--rule);background:var(--surface);line-height:1.55}blockquote{margin-inline:0;padding-inline-start:1.25rem;border-inline-start:.25rem solid var(--rule);color:var(--muted)}hr{border:0;border-block-start:1px solid var(--rule);margin-block:3rem}img,svg,video,canvas{max-width:100%}img,video,canvas{height:auto}::selection{background:var(--mark)}.skip-link{position:absolute;inset-block-start:.5rem;inset-inline-start:.5rem;transform:translateY(-200%);background:var(--surface);color:var(--ink);padding:.5rem;border:1px solid var(--rule)}.skip-link:focus{transform:translateY(0)}.article-header{margin-block-end:3rem}.deck{max-width:60ch;font-size:var(--step-1);color:var(--muted)}.article-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem 1rem;margin-block:1.5rem 0;padding-block:1rem;border-block:1px solid var(--rule);font-size:var(--step--1)}.article-meta div{display:grid;gap:.15rem}.article-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:var(--step--2)}.article-meta dd{margin:0}.sidenote-number{counter-increment:sidenote-counter}.sidenote-number::after{content:counter(sidenote-counter);font-size:.75em;vertical-align:super;line-height:0;margin-inline-start:.08em}.sidenote::before{content:counter(sidenote-counter)" ";font-size:.8em;vertical-align:super}.margin-toggle{display:none}.marginnote-symbol{display:none}.sidenote,.marginnote{float:right;clear:right;width:var(--note-width);margin-inline-end:calc(-1 * (var(--note-width) + var(--gutter)));margin-block:.35rem 1rem;font-size:var(--step--1);line-height:1.55;color:var(--muted)}.marginnote{padding-block-start:.2rem;border-block-start:1px solid var(--rule)}.sidenote p,.marginnote p{margin-block:0 .75rem}@media(max-width:72rem){.sidenote,.marginnote{display:none;float:none;clear:none;width:auto;margin:1rem 0;padding:.75rem 1rem;border:1px solid var(--rule);background:var(--surface)}label.margin-toggle{display:inline;cursor:pointer}.marginnote-symbol{color:var(--accent);font-weight:600}.margin-toggle:checked+.sidenote,.margin-toggle:checked+.marginnote{display:block}}figure{margin:2rem 0}figcaption{margin-block-start:.6rem;font-size:var(--step--1);line-height:1.5;color:var(--muted)}figure.fullwidth{width:calc(var(--measure) + var(--note-width) + var(--gutter));max-width:calc(100vw - 2 * var(--gutter))}@media(max-width:72rem){figure.fullwidth{width:auto;max-width:100%}}.svg-container__inner{border:1px solid var(--rule);background:var(--surface)}.anim__video{display:block;width:100%;height:auto;border:1px solid var(--rule);background:var(--surface)}.disclosure{margin-block:1.5rem;border:1px solid var(--rule);background:var(--surface)}.disclosure>summary{cursor:pointer;padding:.75rem 1rem;font-weight:500}.disclosure>summary:hover{color:var(--accent)}.disclosure__body{padding:0 1rem 1rem;border-block-start:1px solid var(--rule)}.post-list{list-style:none;padding:0}.post-list li{padding-block:1rem;border-block-start:1px solid var(--rule)}.post-list a{font-weight:600}.post-list time{display:block;margin-block-start:.25rem;color:var(--muted);font-size:var(--step--1)}.post-list p{margin-block:.5rem 0;color:var(--muted)}.sandbox-container{margin-block:2rem}.sandbox-container canvas{display:block;width:100%;aspect-ratio:3/2;border:1px solid var(--rule);background:var(--surface)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}@media print{:root{--bg:white;--surface:white;--ink:black;--muted:#444;--rule:#999}html{background:#fff;color:#000;font-size:10pt}main{padding:0}.article-grid{display:block;max-width:none}.article-meta,.disclosure,pre,blockquote,figure{break-inside:avoid}.sidenote,.marginnote{display:block;float:none;width:auto;margin:.75rem 0;padding:.5rem 0;border-block-start:1px solid var(--rule)}a{color:#000;text-decoration:underline}}