:root{color-scheme:light dark;--bg-canvas:#fbf7f1;--bg-surface:#fffdf9;--bg-sunken:#f3ede3;--ink:#2e2a26;--ink-secondary:#6b625a;--sage:#7a9a7e;--sage-soft:#dce6dc;--sage-text:#4e6b52;--clay:#c78a6b;--clay-text:#9a5f44;--plum:#8b6b8a;--gold:#d4a853;--hairline:#e8e0d5;--shadow-tint:66 54 43;--radius-md:14px;--radius-lg:22px;--shadow-raised:0 2px 8px rgb(var(--shadow-tint) / .06);--shadow-floating:0 6px 20px rgb(var(--shadow-tint) / .1);--measure:65ch;--gutter:16px}@media (prefers-color-scheme:dark){:root{--bg-canvas:#1a1714;--bg-surface:#231f1b;--bg-sunken:#151210;--ink:#ede6dc;--ink-secondary:#a89c90;--sage:#8fae93;--sage-soft:#2f3a31;--sage-text:#8fae93;--clay:#c99678;--clay-text:#c99678;--plum:#9e819d;--gold:#c9a25c;--hairline:#332d28;--shadow-tint:14 11 9}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg-canvas);color:var(--ink);font-family:var(--font-sans);overflow-wrap:break-word;flex-direction:column;min-height:100vh;margin:0;font-size:1.0625rem;line-height:1.6;display:flex}main{width:100%;max-width:calc(var(--measure) + 2 * var(--gutter));padding:0 var(--gutter) 64px;flex:1;margin:0 auto}img{max-width:100%;height:auto;display:block}h1,h2,h3{font-family:var(--font-serif);color:var(--ink);text-wrap:balance;font-weight:500;line-height:1.2}h1{letter-spacing:-.01em;margin:0 0 16px;font-size:clamp(2.25rem,1.6rem + 3vw,3.25rem)}h2{margin:48px 0 12px;font-size:1.5rem}h3{text-wrap:pretty;margin:32px 0 8px;font-size:1.1875rem}p,ul,ol,table{margin:0 0 16px}ul,ol{padding-left:1.25em}li+li{margin-top:6px}a{color:var(--sage-text);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--sage-text);outline-offset:3px;border-radius:4px}strong{font-weight:600}hr{border:0;border-top:1px solid var(--hairline);margin:48px 0}.skip{left:var(--gutter);background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-floating);z-index:10;padding:8px 16px;position:absolute;top:-100px}.skip:focus{top:12px}.site-header{width:100%;max-width:calc(var(--measure) + 2 * var(--gutter));padding:24px var(--gutter) 8px;margin:0 auto}.brand{color:var(--ink);align-items:center;gap:12px;min-height:48px;text-decoration:none;display:inline-flex}.brand-icon{width:36px;height:36px;box-shadow:var(--shadow-raised);border-radius:9px}.brand-name{font-family:var(--font-serif);font-size:1.25rem;font-weight:500}.site-footer{border-top:1px solid var(--hairline);padding:32px var(--gutter) 48px;text-align:center;color:var(--ink-secondary);font-size:.9375rem}.footer-links{flex-wrap:wrap;justify-content:center;gap:4px 8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.footer-links li+li{margin-top:0}.footer-links a{min-height:44px;color:var(--ink);border-radius:var(--radius-md);align-items:center;padding:0 12px;text-decoration:none;display:inline-flex}.footer-links a:hover,.footer-links a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--sage)}.footer-note{margin:0 0 4px}.footer-small{margin:0;font-size:.8125rem}.eyebrow{font-family:var(--font-hand);color:var(--clay-text);margin:32px 0 4px;font-size:1.625rem;line-height:1.2}.lead{font-family:var(--font-serif);color:var(--ink-secondary);margin-bottom:24px;font-size:1.3125rem;line-height:1.45}.card{background:var(--bg-surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);padding:24px}.button{background:var(--sage-soft);min-height:52px;color:var(--ink);border:1px solid color-mix(in srgb, var(--sage) 45%, transparent);box-shadow:var(--shadow-raised);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{box-shadow:var(--shadow-floating);text-decoration:none}.note{color:var(--ink-secondary);font-size:.9375rem}.prose h1{margin-top:32px;font-size:clamp(2rem,1.5rem + 2.5vw,2.75rem)}.prose h1+p em:only-child{color:var(--ink-secondary);font-size:.9375rem;font-style:normal}.prose h2{border-top:1px solid var(--hairline);padding-top:16px}.prose table{border-collapse:collapse;width:100%;font-size:.9375rem;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--hairline);padding:10px 12px 10px 0}.prose th{font-weight:600}.prose th:first-child,.prose td:first-child{min-width:10em}
