:root{--bg: #ffffff;--fg: #000000;--muted: #6b6b6b;--faint: #a3a3a3;--rule: #e2e2e2;--surface: #f6f6f6;--inverse-bg: #000000;--inverse-fg: #ffffff;--measure: 42rem;--wide: 60rem;--step: clamp(1rem, .9rem + .5vw, 1.125rem);--font-sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Helvetica, Arial, sans-serif;--font-serif: ui-serif, "Iowan Old Style", "Charter", Georgia, serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;color-scheme:light}:root[data-theme=dark],html.dark{--bg: #000000;--fg: #ffffff;--muted: #9a9a9a;--faint: #6b6b6b;--rule: #262626;--surface: #111111;--inverse-bg: #ffffff;--inverse-fg: #000000;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--step);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;display:flex;flex-direction:column;min-height:100dvh}.wrap{width:100%;max-width:var(--wide);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}main{flex:1 0 auto;padding-block:clamp(2.5rem,7vw,5rem)}.prose{max-width:var(--measure)}h1,h2,h3,h4{font-weight:600;line-height:1.15;letter-spacing:-.022em;margin:0 0 .5em;text-wrap:balance}h1{font-size:clamp(2rem,1.4rem + 3vw,3.25rem)}h2{font-size:clamp(1.375rem,1.1rem + 1.2vw,1.75rem);margin-top:2.5em}h3{font-size:1.15rem;margin-top:2em}p,ul,ol{margin:0 0 1.25em}ul,ol{padding-left:1.15em}li{margin-bottom:.35em}li::marker{color:var(--faint)}small,.small{font-size:.8125rem}.muted{color:var(--muted)}.mono{font-family:var(--font-mono);font-size:.8125rem;letter-spacing:.02em}.eyebrow{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 1.5rem}.lede{font-size:clamp(1.0625rem,1rem + .4vw,1.3125rem);line-height:1.55;color:var(--fg)}a{color:inherit;text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px;text-decoration-color:var(--faint);transition:text-decoration-color .15s ease,background-color .15s ease,color .15s ease}a:hover{text-decoration-color:var(--fg)}a:focus-visible,button:focus-visible{outline:2px solid var(--fg);outline-offset:3px;border-radius:2px}.plain,.plain:hover{text-decoration:none}hr,.rule{border:0;border-top:1px solid var(--rule);margin:3rem 0}.section{margin-top:clamp(3rem,8vw,5rem)}.section>h2{margin-top:0;padding-top:1.5rem;border-top:1px solid var(--rule)}.site-header{border-bottom:1px solid var(--rule);position:sticky;top:0;background:var(--bg);z-index:10}.site-header .bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem;flex-wrap:wrap}.brand{font-weight:600;letter-spacing:-.03em;font-size:1.0625rem;text-decoration:none;display:inline-flex;align-items:center;gap:.55rem}.brand .mark{display:grid;place-items:center;width:1.75rem;height:1.75rem;background:var(--inverse-bg);color:var(--inverse-fg);font-family:var(--font-mono);font-size:.8125rem;font-weight:700;border-radius:2px}.site-nav{display:flex;align-items:center;gap:clamp(.85rem,2.5vw,1.5rem)}.site-nav a{text-decoration:none;font-size:.9375rem;color:var(--muted);padding-block:.25rem;border-bottom:1px solid transparent}.site-nav a:hover{color:var(--fg)}.site-nav a[aria-current=page]{color:var(--fg);border-bottom-color:var(--fg)}.theme-toggle{appearance:none;background:transparent;border:1px solid var(--rule);color:var(--fg);width:2rem;height:2rem;border-radius:999px;display:grid;place-items:center;cursor:pointer;padding:0}.theme-toggle:hover{border-color:var(--fg)}.theme-toggle svg{width:15px;height:15px}.theme-toggle .icon-dark{display:none}:root[data-theme=dark] .theme-toggle .icon-dark{display:block}:root[data-theme=dark] .theme-toggle .icon-light{display:none}.site-footer{border-top:1px solid var(--rule);padding-block:2.5rem;font-size:.875rem;color:var(--muted)}.site-footer .cols{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:baseline}.site-footer nav{display:flex;flex-wrap:wrap;gap:1rem}.hero{max-width:var(--measure)}.hero h1{margin-bottom:.35em}.hero .lede{color:var(--muted)}.hero .lede strong{color:var(--fg);font-weight:600}.inline-links{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-top:2rem;padding:0;list-style:none}.inline-links li{margin:0}.inline-links a{text-decoration:none;font-size:.875rem;border:1px solid var(--rule);border-radius:999px;padding:.3rem .85rem;display:inline-block}.inline-links a:hover{background:var(--inverse-bg);color:var(--inverse-fg);border-color:var(--inverse-bg)}.items{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}.items>li{margin:0;border-bottom:1px solid var(--rule)}.item{display:grid;grid-template-columns:8rem 1fr;gap:0 2rem;padding:1.5rem 0;text-decoration:none}a.item:hover .item-title{text-decoration:underline;text-underline-offset:.18em}.item-meta{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.04em;color:var(--muted);padding-top:.35em;text-transform:uppercase}.item-title{font-size:1.0625rem;font-weight:600;letter-spacing:-.015em;margin:0 0 .25rem}.item-note{color:var(--muted);font-size:.9375rem;margin:0}.item-roles{list-style:none;padding:0;margin:.5rem 0 .35rem;font-size:.9375rem}.item-roles li{margin:0;color:var(--muted)}.item-roles li:first-child{color:var(--fg)}@media(max-width:40rem){.item{grid-template-columns:1fr;gap:.35rem}.item-meta{padding-top:0;order:-1}}.stat-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:2.5rem 3rem}.stat-group .eyebrow a{text-decoration:none;color:var(--muted)}.stat-group .eyebrow a:hover{color:var(--fg)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:1.5rem 1rem;margin:0;border-top:1px solid var(--rule);padding-top:1.5rem}.stat{margin:0}.stat-value{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.25rem);font-weight:600;letter-spacing:-.04em;line-height:1.05;font-variant-numeric:tabular-nums}.stat-label{margin:.35rem 0 0;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.post-header{max-width:var(--measure);margin-bottom:3rem}.post-header h1{margin-bottom:.4em}.post-meta{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);display:flex;flex-wrap:wrap;gap:.75rem}.post-body{max-width:var(--measure)}.post-body h2,.post-body h3{scroll-margin-top:5rem}.post-body img,.post-body video{max-width:100%;height:auto;display:block;border:1px solid var(--rule)}.post-body blockquote{margin:2rem 0;padding-left:1.25rem;border-left:3px solid var(--fg);font-family:var(--font-serif);font-size:1.125rem;color:var(--muted)}.post-body blockquote p:last-child{margin-bottom:0}.post-body code{font-family:var(--font-mono);font-size:.85em;background:var(--surface);border:1px solid var(--rule);border-radius:3px;padding:.1em .35em}.post-body pre{background:#000;color:#fff;border:1px solid var(--rule);border-radius:4px;padding:1rem 1.15rem;overflow-x:auto;font-size:.85rem;line-height:1.6;margin:1.75rem 0}.post-body pre code{background:none;border:0;padding:0;font-size:inherit}.post-body table{width:100%;border-collapse:collapse;font-size:.9375rem;margin:1.75rem 0;display:block;overflow-x:auto}.post-body th,.post-body td{border-bottom:1px solid var(--rule);padding:.6rem .75rem;text-align:left}.post-body th{font-weight:600;border-bottom-color:var(--fg)}.tags{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0}.tags li{margin:0}.tag{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--rule);border-radius:999px;padding:.15rem .6rem;color:var(--muted)}.post-footer{max-width:var(--measure);margin-top:4rem;padding-top:1.75rem;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;font-size:.9375rem}.skip-link{position:absolute;left:-9999px;top:0;background:var(--inverse-bg);color:var(--inverse-fg);padding:.6rem 1rem;z-index:100}.skip-link:focus{left:0}.callout{border:1px solid var(--rule);border-left:3px solid var(--fg);padding:1.25rem 1.5rem;margin:2rem 0;background:var(--surface)}.callout p:last-child{margin-bottom:0}.center-note{text-align:center;color:var(--muted);padding:4rem 0}
