@charset "UTF-8";:root{--ground: #17150f;--ground-raised: #211e17;--ground-sunken: #100e0a;--ink: #ede6d4;--ink-soft: #b0a896;--ink-faint: #8f8878;--hairline: #39352c;--hairline-strong: #4c473b;--glow: #4fa98f;--halo: #17150f;--glow-soft: color-mix(in oklab, var(--glow) 22%, transparent);--glow-faint: color-mix(in oklab, var(--glow) 9%, transparent);--accent: var(--glow);--accent-glow: var(--glow);--font-display: "Newsreader", "Amiri", Georgia, "Times New Roman", serif;--font-body: "Inter", "Amiri", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--t-eyebrow: clamp(.6875rem, .66rem + .14vw, .8125rem);--t-small: clamp(.8125rem, .79rem + .12vw, .875rem);--t-body: clamp(1rem, .96rem + .2vw, 1.125rem);--t-lede: clamp(1.0625rem, .99rem + .34vw, 1.3125rem);--t-h3: clamp(1.25rem, 1.14rem + .5vw, 1.625rem);--t-h2: clamp(1.625rem, 1.35rem + 1.25vw, 2.5rem);--t-h1: clamp(2.25rem, 1.5rem + 3.4vw, 4rem);--t-display: clamp(2.75rem, 1.55rem + 5.4vw, 5.75rem);--lh-tight: 1.08;--lh-snug: 1.28;--lh-body: 1.7;--ls-display: -.022em;--ls-h2: -.015em;--ls-body: 0;--ls-eyebrow: .24em;--sp-3xs: .25rem;--sp-2xs: .5rem;--sp-xs: .75rem;--sp-s: 1rem;--sp-m: 1.5rem;--sp-l: 2.5rem;--sp-xl: 4rem;--sp-2xl: 6rem;--sp-3xl: 9rem;--measure: 34rem;--measure-read: 38rem;--measure-narrow: 26rem;--shell: 68rem;--shell-wide: 82rem;--gutter: clamp(1.25rem, .7rem + 2.4vw, 3rem);--r-xs: 6px;--r-s: 10px;--r-m: 14px;--r-icon: 19px;--r-pill: 999px;--e-flat: none;--e-raised: 0 1px 0 0 color-mix(in oklab, var(--ink) 6%, transparent), 0 12px 32px -18px rgb(0 0 0 / .9);--e-lifted: 0 1px 0 0 color-mix(in oklab, var(--ink) 9%, transparent), 0 24px 60px -28px rgb(0 0 0 / .95);--e-bloom: 0 0 0 1px color-mix(in oklab, var(--accent-glow) 18%, transparent), 0 8px 40px -12px color-mix(in oklab, var(--accent-glow) 45%, transparent);--dur-instant: 90ms;--dur-fast: .18s;--dur-med: .42s;--dur-slow: .7s;--dur-phase: 1.4s;--stagger: 90ms;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-entrance: cubic-bezier(.16, 1, .3, 1);--focus-ring: 2px solid var(--glow);--focus-offset: 3px}:root[data-register=quiet]{--dur-phase: 0ms;--e-bloom: none;--glow-soft: transparent;--glow-faint: transparent}@media(prefers-reduced-motion:reduce){:root{--dur-instant: 0ms;--dur-fast: 0ms;--dur-med: 0ms;--dur-slow: 0ms;--dur-phase: 0ms;--stagger: 0ms}}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrainsmono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Amiri;src:url(/fonts/amiri-translit.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0600-06FF,U+02B0-02FF,U+1E00-1EFF}.prose{max-width:var(--measure);padding-block:var(--sp-l) var(--sp-2xl)}.prose__title{font-size:var(--t-h1);margin-block-end:var(--sp-s)}.prose__meta{font-size:var(--t-small);color:var(--ink-faint);margin-block-end:var(--sp-l);padding-block-end:var(--sp-m);border-block-end:1px solid var(--hairline)}.prose h2{font-size:var(--t-h3);margin-block:var(--sp-l) var(--sp-xs)}.prose h3{font-family:var(--font-body);font-size:var(--t-body);font-weight:600;letter-spacing:0;margin-block:var(--sp-m) var(--sp-2xs)}.prose p,.prose li{color:var(--ink-soft)}.prose p+p,.prose ul+p,.prose ol+p,.prose dl+p{margin-block-start:var(--sp-s)}.prose ul,.prose ol{margin-block-start:var(--sp-2xs);padding-inline-start:1.3rem;display:flex;flex-direction:column;gap:var(--sp-3xs)}.prose dl{margin-block-start:var(--sp-2xs);border-block-start:1px solid var(--hairline)}.prose dt{font-size:var(--t-small);color:var(--ink-faint);padding-block-start:var(--sp-xs)}.prose dd{margin:0 0 var(--sp-xs);padding-block-end:var(--sp-xs);border-block-end:1px solid var(--hairline);color:var(--ink-soft)}.prose a{color:var(--ink)}.legal-note{font-size:var(--t-small);color:var(--ink-faint);border:1px solid var(--hairline);border-inline-start:2px solid var(--hairline-strong);border-radius:var(--r-s);padding:var(--sp-xs) var(--sp-s);margin-block-end:var(--sp-l)}.todo-legal{font-size:var(--t-small);color:#e8b45e;border:1px dashed #7a5a25;border-radius:var(--r-s);padding:var(--sp-xs) var(--sp-s);margin-block:var(--sp-s)}.prose-post{max-width:var(--measure-read);font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-soft)}.prose-post>*+*{margin-block-start:var(--sp-s)}.prose-post h2{font-size:var(--t-h3);color:var(--ink);margin-block-start:var(--sp-xl);margin-block-end:var(--sp-2xs)}.prose-post h3{font-family:var(--font-body);font-size:var(--t-body);font-weight:600;letter-spacing:0;color:var(--ink);margin-block-start:var(--sp-m);margin-block-end:0}.prose-post p{text-wrap:pretty}.prose-post strong{color:var(--ink);font-weight:600}.prose-post a{color:var(--ink);text-decoration-color:var(--glow);text-decoration-thickness:1px;text-underline-offset:.22em;transition:text-decoration-color var(--dur-fast) var(--ease-out)}.prose-post a:hover{text-decoration-color:var(--ink)}.prose-post ul,.prose-post ol{padding-inline-start:1.35rem;display:flex;flex-direction:column;gap:var(--sp-3xs)}.prose-post blockquote{margin-inline:0;padding-inline-start:var(--sp-s);border-inline-start:2px solid var(--glow);color:var(--ink);font-family:var(--font-display);font-size:var(--t-lede);line-height:1.55;transition:border-color var(--dur-phase) var(--ease-in-out)}.prose-post blockquote p{margin:0}.prose-post pre{position:relative;max-width:min(100%,var(--measure-read) + 6rem);overflow-x:auto;background:var(--ground-raised);border:1px solid var(--hairline);border-radius:var(--r-s);padding:var(--sp-s) var(--sp-s) var(--sp-s);font-size:.875rem;line-height:1.6;tab-size:2}.prose-post pre[data-lang]:before{content:attr(data-lang);position:absolute;inset-block-start:.45rem;inset-inline-end:.7rem;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.prose-post code{font-family:var(--font-mono);color:var(--ink)}.prose-post :not(pre)>code{font-size:.875em;background:color-mix(in oklab,var(--ink) 7%,transparent);border-radius:var(--r-xs);padding:.1em .35em}.prose-post img{inline-size:100%;block-size:auto;border-radius:var(--r-s);border:1px solid var(--hairline)}.prose-post table{inline-size:100%;border-collapse:collapse;font-size:var(--t-small);display:block;overflow-x:auto}.prose-post th,.prose-post td{text-align:start;padding:var(--sp-2xs) var(--sp-xs) var(--sp-2xs) 0;border-block-end:1px solid var(--hairline)}.prose-post th{color:var(--ink);font-weight:600;white-space:nowrap}.prose-post .footnotes{margin-block-start:var(--sp-xl);padding-block-start:var(--sp-m);border-block-start:1px solid var(--hairline);font-size:var(--t-small)}.prose-post .footnotes hr{display:none}.prose-post .footnotes ol{padding-inline-start:1.1rem}.prose-post .footnote-item p{margin-block:.15rem}.prose-post .footnote-ref a,.prose-post .footnote-backref{color:var(--glow);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em;transition:color var(--dur-phase) var(--ease-in-out)}.prose-post .footnote-ref a{font-size:.78em;vertical-align:super;padding-inline:.1em}.prose-post .footnote-item:target{background:color-mix(in oklab,var(--glow) 12%,transparent);border-radius:var(--r-xs)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{min-height:100svh;background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:var(--t-body);line-height:var(--lh-body);font-synthesis-weight:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;transition:background-color var(--dur-phase) var(--ease-in-out)}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:var(--lh-tight);letter-spacing:var(--ls-display);text-wrap:balance;overflow-wrap:break-word;hyphens:auto}h2{font-size:var(--t-h2);letter-spacing:var(--ls-h2)}h3{font-size:var(--t-h3);line-height:var(--lh-snug)}p{text-wrap:pretty}a{color:inherit;text-decoration-color:color-mix(in oklab,currentColor 35%,transparent);text-underline-offset:.22em;text-decoration-thickness:1px;transition:color var(--dur-fast) var(--ease-out),text-decoration-color var(--dur-fast) var(--ease-out)}a:hover{text-decoration-color:currentColor}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--r-xs)}.shell{width:100%;max-width:var(--shell);margin-inline:auto;padding-inline:var(--gutter)}.shell--wide{max-width:var(--shell-wide)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;inset-inline-start:var(--gutter);inset-block-start:-4rem;z-index:100;padding:var(--sp-2xs) var(--sp-s);background:var(--ground-raised);border:1px solid var(--hairline-strong);border-radius:var(--r-s);text-decoration:none;transition:inset-block-start var(--dur-fast) var(--ease-out)}.skip-link:focus-visible{inset-block-start:var(--sp-2xs)}.eyebrow{font-family:var(--font-body);font-size:var(--t-eyebrow);font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--glow);transition:color var(--dur-phase) var(--ease-in-out)}.lede{font-size:var(--t-lede);line-height:1.6;color:var(--ink-soft);max-width:var(--measure)}.numeral{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.92em}
