@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-paper:oklch(14.5% .02 262);--color-paper-2:oklch(17.5% .022 262);--color-paper-3:oklch(21% .024 262);--color-rule-2:oklch(23.5% .022 262);--color-rule:oklch(30% .024 262);--color-rule-strong:oklch(50% .022 262);--color-ink:oklch(96% .008 262);--color-ink-2:oklch(83% .014 262);--color-muted:oklch(68% .018 262);--color-accent:oklch(76% .15 234);--color-accent-hover:oklch(83% .13 234);--color-accent-ink:oklch(17% .03 250);--color-accent-wash:oklch(23% .05 240);--color-focus:oklch(84% .16 234);--color-ok:oklch(79% .14 158);--color-err:oklch(73% .16 25);--color-scrim:oklch(8% .02 262/.62);--color-glass:oklch(14.5% .02 262/.84);--shadow-panel:0 24px 48px -24px oklch(4% .02 262/.9);--font-display:"Space Grotesk Variable", "Space Grotesk", ui-sans-serif, sans-serif;--font-body:"Geist Variable", "Geist", ui-sans-serif, sans-serif;--font-mono:"Geist Mono Variable", "Geist Mono", ui-monospace, monospace;--text-sm:.8125rem;--text-base:1rem;--text-md:1.25rem;--text-2xl:clamp(1.75rem, 1.6vw + 1.2rem, 2.5rem);--text-display-s:clamp(2.25rem, 3vw + 1.2rem, 3.5rem);--text-display:clamp(2.6rem, 4.2vw + 1rem, 4.6rem);--weight-body:370;--weight-strong:560;--weight-display:620;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-max:76rem;--page-gutter:clamp(1rem, 4vw, 2.5rem);--header-h:4rem;--radius-sm:6px;--radius-md:10px;--radius-pill:999px;--rule-hair:1px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + var(--space-md));overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink-2);font-family:var(--font-body);font-weight:var(--weight-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.6;overflow-x:clip}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,pre,blockquote{margin:0}ul,ol{padding:0;list-style:none}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-display);color:var(--color-ink);letter-spacing:-.025em;text-wrap:balance;overflow-wrap:anywhere;min-width:0;line-height:1.1}h1{font-size:var(--text-display-s);letter-spacing:-.035em;line-height:1.04}h2{font-size:var(--text-2xl);letter-spacing:-.03em}h3{font-size:var(--text-md);letter-spacing:-.015em;line-height:1.25}h4{font-size:var(--text-base);letter-spacing:-.01em;line-height:1.35}p{text-wrap:pretty}strong{font-weight:var(--weight-strong);color:var(--color-ink)}::selection{background:var(--color-accent);color:var(--color-accent-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.skip-link{left:var(--space-md);z-index:var(--z-modal);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-accent-ink);font-weight:var(--weight-strong);position:absolute;top:-6rem}.skip-link:focus{top:var(--space-md)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap{width:100%;max-width:var(--page-max);padding-inline:var(--page-gutter);margin-inline:auto}.wrap--narrow{max-width:calc(46rem + 2 * var(--page-gutter))}.sec{padding-block:var(--space-3xl)}.sec--tight{padding-block:var(--space-2xl) var(--space-3xl)}.sec--rule{border-top:var(--rule-hair) solid var(--color-rule-2)}.sec--band{background:var(--color-paper-2);border-block:var(--rule-hair) solid var(--color-rule-2)}.stack-lg>*+*{margin-top:var(--space-2xl)}.page{animation:page-in var(--dur-long) var(--ease-out) both}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}.mono{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.01em}.muted{color:var(--color-muted)}.lede{font-size:var(--text-md);color:var(--color-ink-2);max-width:56ch;line-height:1.5}.sec-head{gap:var(--space-md);max-width:46rem;margin-bottom:var(--space-xl);display:grid}.sec-head p{color:var(--color-muted);font-size:var(--text-md);max-width:58ch;line-height:1.5}@media (width>=60rem){.sec-head--split{align-items:end;gap:var(--space-2xl);grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:none}}.btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:2.75rem;padding:0 var(--space-lg);border:var(--rule-hair) solid transparent;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:var(--weight-strong);font-size:var(--text-base);white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out);line-height:1;display:inline-flex}.btn svg{flex:none;width:1.05em;height:1.05em}.btn--sm{min-height:2.25rem;padding:0 var(--space-md);font-size:var(--text-sm)}.btn--primary{background:var(--color-accent);color:var(--color-accent-ink)}.btn--ghost{border-color:var(--color-rule);color:var(--color-ink)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn[data-state=loading]{cursor:progress}@media (hover:hover){.btn--primary:hover{background:var(--color-accent-hover)}.btn--ghost:hover{border-color:var(--color-rule-strong);background:var(--color-paper-2)}.btn:hover .arrow{transform:translate(2px)}}.arrow{transition:transform var(--dur-short) var(--ease-out)}.btn-row{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.tlink{align-items:center;gap:var(--space-2xs);color:var(--color-ink);font-weight:var(--weight-strong);white-space:nowrap;-webkit-text-decoration:underline 1px var(--color-rule-strong);text-decoration:underline 1px var(--color-rule-strong);text-underline-offset:.2em;transition:text-decoration-color var(--dur-micro) var(--ease-out);display:inline-flex}.tlink svg{width:1em;height:1em}@media (hover:hover){.tlink:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}}.tag{min-height:1.625rem;padding:0 var(--space-xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap;align-items:center;display:inline-flex}.tags{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.status{align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-ok);white-space:nowrap;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.ico{background:var(--color-paper-3);width:2.25rem;height:2.25rem;color:var(--color-ink-2);transition:color var(--dur-micro) var(--ease-out);border-radius:8px;flex:none;place-items:center;display:grid}.ico svg{width:1.125rem;height:1.125rem}kbd{min-width:1.5rem;height:1.375rem;padding:0 var(--space-2xs);border:var(--rule-hair) solid var(--color-rule);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-muted);border-radius:4px;place-items:center;line-height:1;display:inline-grid}.index__row:active,.mega-link:active,.node:active,.cmdk__item:active,.navlink:active,.tab:active,.drawer__sub a:active{background:var(--color-paper-3)}.tlink:active,.crumb a:active,.facts dd a:active,.ftr__links a:active{color:var(--color-muted)}.hdr{z-index:var(--z-sticky);background:var(--color-glass);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);border-bottom:var(--rule-hair) solid var(--color-rule-2);position:sticky;top:0}.hdr__bar{align-items:center;gap:var(--space-md);height:var(--header-h);display:flex}.hdr__brand{border-radius:var(--radius-sm);flex:none;align-items:center;display:flex}.hdr__brand img{width:auto;height:28px}.hdr__nav{display:none}.hdr__right{align-items:center;gap:var(--space-xs);margin-left:auto;display:flex}.hdr__right .hdr__desktop-only{display:none}.navlink{align-items:center;gap:var(--space-2xs);height:2.25rem;padding:0 var(--space-sm);border-radius:var(--radius-sm);color:var(--color-ink-2);font-size:var(--text-sm);white-space:nowrap;transition:color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out);font-weight:500;display:inline-flex;position:relative}.navlink svg{width:14px;height:14px;transition:transform var(--dur-short) var(--ease-out)}.navlink[aria-expanded=true]{color:var(--color-ink);background:var(--color-paper-2)}.navlink[aria-expanded=true] svg{transform:rotate(180deg)}.navlink[aria-current=page]{color:var(--color-ink)}.navlink[aria-current=page]:after{content:"";left:var(--space-sm);right:var(--space-sm);background:var(--color-accent);border-radius:2px;height:2px;position:absolute;bottom:-.875rem}@media (hover:hover){.navlink:hover{color:var(--color-ink);background:var(--color-paper-2)}}.search-btn{align-items:center;gap:var(--space-xs);height:2.25rem;padding:0 var(--space-xs) 0 var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap;transition:border-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);display:inline-flex}.search-btn svg{width:15px;height:15px}.search-btn__label,.search-btn kbd{display:none}@media (hover:hover){.search-btn:hover{border-color:var(--color-rule-strong);color:var(--color-ink)}}.icon-btn{border-radius:var(--radius-sm);width:2.75rem;height:2.75rem;color:var(--color-ink);place-items:center;display:grid}.icon-btn svg{width:20px;height:20px}@media (hover:hover){.icon-btn:hover{background:var(--color-paper-2)}}.mega{background:var(--color-paper-2);border-bottom:var(--rule-hair) solid var(--color-rule);box-shadow:var(--shadow-panel);opacity:0;visibility:hidden;transition:opacity var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out), visibility var(--dur-short);position:absolute;top:100%;left:0;right:0;transform:translateY(-6px)}.mega.is-open{opacity:1;visibility:visible;transform:none}.mega__inner{gap:var(--space-xl);padding-block:var(--space-lg) var(--space-xl);grid-template-columns:minmax(0,2fr) minmax(0,1fr);display:grid}.mega__head{padding-bottom:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule-2);grid-column:1/-1;justify-content:space-between;align-items:baseline;display:flex}.mega__grid{gap:var(--space-2xs) var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;display:grid}.mega-link{gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-md);transition:background-color var(--dur-micro) var(--ease-out);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.mega-link__title{color:var(--color-ink);font-weight:var(--weight-strong);font-size:var(--text-sm);display:block}.mega-link__desc{color:var(--color-muted);font-size:var(--text-sm);line-height:1.45;display:block}@media (hover:hover){.mega-link:hover{background:var(--color-paper-3)}}.mega__feature{align-content:space-between;gap:var(--space-lg);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper);display:grid}.mega__feature pre{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-muted);white-space:pre-wrap;line-height:1.8}.mega__feature pre b{color:var(--color-accent);font-weight:500}.scrim{inset:var(--header-h) 0 0 0;z-index:calc(var(--z-sticky) - 1);background:var(--color-scrim);opacity:0;visibility:hidden;transition:opacity var(--dur-short) var(--ease-out), visibility var(--dur-short);position:fixed}.scrim.is-active{opacity:1;visibility:visible}.drawer{inset:var(--header-h) 0 0 0;z-index:var(--z-sticky);overscroll-behavior:contain;padding:var(--space-md) var(--page-gutter) var(--space-2xl);background:var(--color-paper);position:fixed;overflow-y:auto}.drawer[hidden]{display:none}.drawer__group{border-bottom:var(--rule-hair) solid var(--color-rule-2)}.drawer__group>summary,.drawer__link{min-height:3.25rem;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.01em;cursor:pointer;justify-content:space-between;align-items:center;font-weight:560;list-style:none;display:flex}.drawer__group>summary::-webkit-details-marker{display:none}.drawer__group>summary svg{width:18px;height:18px;color:var(--color-muted);transition:transform var(--dur-short) var(--ease-out)}.drawer__group[open]>summary svg{transform:rotate(180deg)}.drawer__sub{padding-bottom:var(--space-sm);display:grid}.drawer__sub a{min-height:2.75rem;padding-left:var(--space-sm);color:var(--color-ink-2);align-items:center;display:flex}.drawer__link{border-bottom:var(--rule-hair) solid var(--color-rule-2)}.drawer .btn{width:100%;margin-top:var(--space-lg)}@media (width>=40rem){.search-btn__label,.search-btn kbd{display:inline-grid}.search-btn{padding-right:var(--space-2xs)}}@media (width>=72rem){.hdr__nav{align-items:center;gap:var(--space-3xs);margin-left:var(--space-md);display:flex}.hdr__right .hdr__desktop-only{display:inline-flex}.hdr__mobile-only{display:none}}.cmdk{width:min(40rem, calc(100% - 2 * var(--space-md)));border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);max-height:min(34rem,80dvh);color:var(--color-ink-2);box-shadow:var(--shadow-panel);margin:12dvh auto auto;padding:0;overflow:hidden}.cmdk[open]{animation:cmdk-in var(--dur-short) var(--ease-out);flex-direction:column;display:flex}.cmdk::backdrop{background:var(--color-scrim)}@keyframes cmdk-in{0%{opacity:0;transform:scale(.98)}}.cmdk__field{align-items:center;gap:var(--space-sm);padding:0 var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);display:flex}.cmdk__field svg{width:18px;height:18px;color:var(--color-muted);flex:none}.cmdk__field input{min-width:0;height:3.25rem;color:var(--color-ink);font-size:var(--text-base);background:0 0;border:0;outline:0;flex:1}.cmdk__field input::placeholder{color:var(--color-muted)}.cmdk__list{padding:var(--space-xs);overflow-y:auto}.cmdk__group{padding:var(--space-sm) var(--space-sm) var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-muted)}.cmdk__item{gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.cmdk__item .ico{width:2rem;height:2rem}.cmdk__item-title{color:var(--color-ink);font-size:var(--text-sm);font-weight:var(--weight-strong)}.cmdk__item-desc{color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.cmdk__item svg.cmdk__enter{width:16px;height:16px;color:var(--color-muted);opacity:0}.cmdk__item[aria-selected=true]{background:var(--color-paper-3)}.cmdk__item[aria-selected=true] .ico{color:var(--color-accent)}.cmdk__item[aria-selected=true] svg.cmdk__enter{opacity:1}.cmdk__empty{padding:var(--space-xl) var(--space-md);text-align:center;color:var(--color-muted)}.cmdk__foot{gap:var(--space-md);padding:var(--space-xs) var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);color:var(--color-muted);font-size:var(--text-sm);display:flex}.cmdk__foot span{align-items:center;gap:var(--space-2xs);display:inline-flex}.hero{padding-block:var(--space-xl) var(--space-2xl)}.hero__grid{gap:var(--space-2xl);align-items:center;display:grid}.hero h1{font-size:var(--text-display);max-width:13ch}.hero__lede{margin-top:var(--space-lg)}.hero .btn-row{margin-top:var(--space-xl)}.hero__meta{gap:var(--space-xs);margin-top:var(--space-xl);padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule-2);color:var(--color-muted);font-size:var(--text-sm);display:grid}@media (width>=60rem){.hero{padding-block:var(--space-2xl) var(--space-3xl)}.hero__grid{gap:var(--space-2xl);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.trace{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);overflow:hidden}.trace__head{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule-2);display:flex}.trace__label{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trace pre{padding:var(--space-md);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-muted);tab-size:2;-webkit-mask-image:linear-gradient(to right, var(--color-ink) calc(100% - 2.5rem), transparent);-webkit-mask-image:linear-gradient(to right, var(--color-ink) calc(100% - 2.5rem), transparent);mask-image:linear-gradient(to right, var(--color-ink) calc(100% - 2.5rem), transparent);line-height:1.75;overflow-x:auto}.trace pre:focus-visible{outline-offset:-2px}.seg{white-space:pre;display:block}.seg b{color:var(--color-accent);font-weight:500}.seg i{color:var(--color-ink);font-style:normal}.trace__step{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border-block:var(--rule-hair) solid var(--color-rule-2);background:var(--color-paper);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);display:flex}.trace__step svg{width:14px;height:14px;color:var(--color-accent)}.trace table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.trace th{padding:var(--space-xs) var(--space-md);text-align:left;color:var(--color-muted);font-weight:500;font-family:var(--font-mono)}.trace td{padding:var(--space-xs) var(--space-md);border-top:var(--rule-hair) solid var(--color-rule-2);color:var(--color-ink)}.trace td:nth-child(n+2),.trace th:nth-child(n+2){text-align:right;white-space:nowrap}.trace__out{gap:var(--space-2xs);padding:var(--space-sm) var(--space-md) var(--space-md);border-top:var(--rule-hair) solid var(--color-rule-2);display:grid}.trace__out li{justify-content:space-between;gap:var(--space-md);font-size:var(--text-sm);display:flex}.trace__out li span:first-child{color:var(--color-ink-2)}.trace figcaption{padding:var(--space-xs) var(--space-md);border-top:var(--rule-hair) solid var(--color-rule-2);color:var(--color-muted);font-size:var(--text-sm)}@media (prefers-reduced-motion:no-preference){.trace .seg,.trace tbody tr,.trace__out li{animation:trace-in var(--dur-long) var(--ease-out) both;animation-delay:calc(.15s + var(--i,0) * 70ms)}@keyframes trace-in{0%{opacity:.18}}}.signal{width:100%;height:56px;color:var(--color-rule);display:block}.signal path{fill:none;stroke:currentColor;stroke-width:1.5px;vector-effect:non-scaling-stroke}.signal path.signal__peak{stroke:var(--color-accent)}@media (prefers-reduced-motion:no-preference){.signal path.signal__peak{stroke-dasharray:1;stroke-dashoffset:1px;animation:draw 1.4s var(--ease-out) .5s forwards}@keyframes draw{to{stroke-dashoffset:0}}}.map{gap:var(--space-lg);display:grid}.map__label{height:2rem;color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);align-items:center;display:flex}.map__nodes{gap:var(--space-xs);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));display:grid}.map__wire{display:none}.node{align-items:center;gap:var(--space-sm);height:100%;min-height:3.5rem;padding:var(--space-xs) var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);transition:border-color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out), opacity var(--dur-short) var(--ease-out);display:flex}.node__text{min-width:0;display:grid}.node__name{color:var(--color-ink);font-weight:var(--weight-strong);font-size:var(--text-sm);line-height:1.3}.node__proto{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;line-height:1.4;overflow:hidden}.node.is-active{border-color:var(--color-accent);background:var(--color-paper-3)}.node.is-active .ico{color:var(--color-accent)}.map.has-active .node:not(.is-active){opacity:.5}.engine{align-content:center;gap:var(--space-md);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-md);background:var(--color-paper);height:100%;display:grid}.engine__mark{width:40px;height:auto}.engine h3{font-size:var(--text-md)}.engine__caps{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.engine__inspect{min-height:4.8em;padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule-2);font-size:var(--text-sm);color:var(--color-muted)}.engine__inspect strong{color:var(--color-ink);display:block}.map__hint{margin-top:var(--space-md);color:var(--color-muted);font-size:var(--text-sm)}@media (width>=60rem){.map{grid-template-columns:minmax(0,1fr) 4.5rem minmax(0,1.05fr) 4.5rem minmax(0,1fr);gap:0}.map__col{grid-template-rows:auto 1fr;display:grid}.map__nodes{grid-template-columns:1fr;gap:0}.map__nodes--src{grid-template-rows:repeat(6,minmax(0,1fr))}.map__nodes--dst{grid-template-rows:repeat(4,minmax(0,1fr))}.map__nodes li{padding-block:var(--space-2xs)}.map__wire{width:100%;height:100%;display:block;overflow:visible}.map__wire path{fill:none;stroke:var(--color-rule);stroke-width:1.25px;vector-effect:non-scaling-stroke;transition:stroke var(--dur-short) var(--ease-out)}.map__wire path.is-active{stroke:var(--color-accent);stroke-width:2px}.engine{margin-block:var(--space-2xs)}}.symptoms{border-top:var(--rule-hair) solid var(--color-rule-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));display:grid}.symptoms li{gap:var(--space-sm);padding:var(--space-sm) var(--space-md) var(--space-sm) 0;border-bottom:var(--rule-hair) solid var(--color-rule-2);color:var(--color-ink-2);align-items:baseline;display:flex}.symptoms li:before{content:"×";color:var(--color-err);font-family:var(--font-mono);flex:none}.verdict{gap:var(--space-xs);margin-top:var(--space-xl);max-width:60ch;display:grid}.verdict p:first-child:before{content:"";width:.5rem;height:.5rem;margin-right:var(--space-sm);vertical-align:.15em;background:var(--color-accent);display:inline-block}.verdict p:first-child{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.01em;font-weight:560}.traces{border-top:var(--rule-hair) solid var(--color-rule-2);display:grid}.traces>li{gap:var(--space-md);padding-block:var(--space-lg);border-bottom:var(--rule-hair) solid var(--color-rule-2);display:grid}.traces h3{font-size:var(--text-md)}.path{align-items:center;gap:var(--space-2xs) var(--space-xs);font-family:var(--font-mono);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.path__label{width:4rem;color:var(--color-muted)}.path__step,.path__sep{color:var(--color-muted)}.path--before .path__step{-webkit-text-decoration:line-through 1px var(--color-rule-strong);text-decoration:line-through 1px var(--color-rule-strong)}.path--after .path__step{color:var(--color-ink)}.path--after .path__step--us{color:var(--color-accent)}.traces__gain{gap:var(--space-2xs);flex-wrap:wrap;display:flex}@media (width>=60rem){.traces>li{gap:var(--space-xl);grid-template-columns:minmax(0,16rem) minmax(0,1fr) minmax(0,13rem);align-items:start}.traces__paths{gap:var(--space-sm);display:grid}.traces__gain{flex-direction:column;align-items:flex-start}}.index{border-top:var(--rule-hair) solid var(--color-rule-2)}.index__row{gap:var(--space-md);padding:var(--space-md) var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-rule-2);transition:background-color var(--dur-micro) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.index__title{color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-md);letter-spacing:-.01em;font-weight:560}.index__title,.index__desc{display:block}.index__desc{color:var(--color-muted)}.index__tags{display:none}.index__go{color:var(--color-muted)}.index__go svg{width:20px;height:20px}@media (hover:hover){.index__row:hover{background:var(--color-paper-2)}.index__row:hover .arrow{transform:translate(3px)}}@media (width>=60rem){.index__row{padding-inline:var(--space-sm);gap:var(--space-lg);grid-template-columns:auto minmax(0,1.1fr) minmax(0,1fr) auto}.index__tags{display:flex}}.tabs{gap:var(--space-2xs);padding:var(--space-3xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);width:fit-content;max-width:100%;display:flex;overflow-x:auto}.tab{min-height:2.5rem;padding:0 var(--space-md);border-radius:var(--radius-sm);color:var(--color-muted);font-size:var(--text-sm);font-weight:var(--weight-strong);white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out)}.tab[aria-selected=true]{background:var(--color-paper-3);color:var(--color-ink)}@media (hover:hover){.tab:hover{color:var(--color-ink)}}.track{margin-top:var(--space-xl);counter-reset:step;gap:0;display:grid}.track li{gap:var(--space-md);padding-bottom:var(--space-lg);counter-increment:step;grid-template-columns:1.25rem minmax(0,1fr);display:grid;position:relative}.track li:before{content:"";border:1.5px solid var(--color-rule-strong);background:var(--color-paper);border-radius:50%;width:.75rem;height:.75rem;margin:.35rem 0 0 .25rem}.track li.is-auto:before{border-color:var(--color-accent);background:var(--color-accent)}.track li:after{content:"";background:var(--color-rule);width:1px;position:absolute;top:1.35rem;bottom:.1rem;left:.6rem}.track li:last-child:after{display:none}.track__n{margin-right:var(--space-xs);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm)}.track__n:before{content:counter(step, decimal-leading-zero)}.track__t{color:var(--color-ink)}.legend{gap:var(--space-lg);margin-top:var(--space-md);color:var(--color-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.legend span{align-items:center;gap:var(--space-xs);display:inline-flex}.legend i{border:1.5px solid var(--color-rule-strong);border-radius:50%;width:.75rem;height:.75rem}.legend i.is-auto{background:var(--color-accent);border-color:var(--color-accent)}@media (width>=60rem){.track{grid-template-columns:repeat(7,minmax(0,1fr))}.track li{gap:var(--space-sm);padding:0 var(--space-md) 0 0;grid-template-columns:1fr}.track li:before{margin:0}.track__n,.track__t{display:block}.track li:after{width:auto;height:1px;inset:.375rem 0 auto 1rem}}.hgrid{border-top:var(--rule-hair) solid var(--color-rule-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));display:grid}.hgrid>li{gap:var(--space-xs);padding:var(--space-lg) var(--space-lg) var(--space-lg) 0;border-bottom:var(--rule-hair) solid var(--color-rule-2);align-content:start;display:grid}.hgrid h3{align-items:center;gap:var(--space-sm);font-size:var(--text-base);letter-spacing:-.005em;display:flex}.hgrid h3 svg{width:18px;height:18px;color:var(--color-accent);flex:none}.hgrid p{color:var(--color-muted)}.steps{gap:var(--space-lg);display:grid}.steps li{gap:var(--space-2xs);padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);align-content:start;display:grid}.steps .mono{color:var(--color-accent)}.steps p{color:var(--color-muted);font-size:var(--text-sm)}@media (width>=40rem){.steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=72rem){.steps{grid-template-columns:repeat(6,minmax(0,1fr))}}.cta{gap:var(--space-lg);padding:var(--space-xl);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);align-items:center;display:grid}.cta h2{max-width:20ch}.cta p{margin-top:var(--space-sm);color:var(--color-muted);max-width:52ch}@media (width>=60rem){.cta{padding:var(--space-2xl) var(--space-xl);grid-template-columns:minmax(0,1fr) auto}}.page-hero{padding-block:var(--space-xl) var(--space-2xl)}.page-hero+.sec{padding-top:var(--space-2xl)}.page-hero__grid{gap:var(--space-xl);align-items:start;display:grid}.page-hero h1{max-width:18ch}.page-hero .lede{margin-top:var(--space-lg)}.page-hero .btn-row{margin-top:var(--space-xl)}.crumb{gap:var(--space-xs);margin-bottom:var(--space-lg);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.crumb a{-webkit-text-decoration:underline 1px var(--color-rule);text-decoration:underline 1px var(--color-rule);text-underline-offset:.2em}@media (hover:hover){.crumb a:hover{color:var(--color-ink)}}@media (width>=60rem){.page-hero{padding-block:var(--space-2xl) var(--space-3xl)}.page-hero__grid--split{gap:var(--space-2xl);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.spec{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2)}.spec__head{padding:var(--space-sm) var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule-2);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm)}.spec dl{display:grid}.spec dl>div{gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-top:var(--rule-hair) solid var(--color-rule-2);grid-template-columns:minmax(0,8rem) minmax(0,1fr);display:grid}.spec dl>div:first-child{border-top:0}.spec dt{color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm)}.spec dd{color:var(--color-ink);font-size:var(--text-sm)}.caps{gap:var(--space-xl) var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));display:grid}.caps>li{gap:var(--space-md);padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);align-content:start;display:grid}.caps h3{align-items:center;gap:var(--space-sm);display:flex}.caps h3 svg{width:18px;height:18px;color:var(--color-accent);flex:none}.checks{gap:var(--space-xs);display:grid}.checks li{gap:var(--space-xs);color:var(--color-ink-2);align-items:baseline;display:flex}.checks li svg{width:15px;height:15px;color:var(--color-accent);flex:none;transform:translateY(2px)}.patterns{border-top:var(--rule-hair) solid var(--color-rule-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));display:grid}.patterns>li{gap:var(--space-md);padding:var(--space-lg) var(--space-lg) var(--space-lg) 0;border-bottom:var(--rule-hair) solid var(--color-rule-2);grid-template-columns:auto minmax(0,1fr);display:grid}.patterns h3{font-size:var(--text-base);letter-spacing:-.005em}.patterns p{margin-top:var(--space-2xs);color:var(--color-muted)}.patterns .sol-links{margin-top:var(--space-sm)}.rail{gap:var(--space-xs);flex-direction:column;display:flex}.rail__stage{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);align-items:center;display:flex}.rail__stage h3{font-size:var(--text-base)}.rail__stage p{color:var(--color-muted);font-size:var(--text-sm)}.rail__arrow{color:var(--color-rule-strong);place-items:center;display:grid}.rail__arrow svg{width:18px;height:18px;transform:rotate(90deg)}.rail__outs{gap:var(--space-xs);flex-wrap:wrap;align-content:center;display:flex}.rail__outs .tag{color:var(--color-ink-2);gap:var(--space-xs);min-height:2.25rem;padding-inline:var(--space-sm)}.rail__outs .tag svg{width:15px;height:15px;color:var(--color-accent)}@media (width>=60rem){.rail{flex-direction:row;align-items:stretch}.rail__stage{flex:1 1 0;min-width:0}.rail__outs{flex:1.4 1 0;min-width:0}.rail__arrow svg{transform:none}}.questions{gap:var(--space-xs);grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));display:grid}.questions li{padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);color:var(--color-ink);font-family:var(--font-display);font-weight:520}.plans{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));align-items:stretch;display:grid}.plan{gap:var(--space-md);padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2);grid-template-rows:auto auto 1fr auto;display:grid}.plan--featured{border-color:var(--color-accent)}.plan__top{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.plan__badge{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-sm)}.plan p{color:var(--color-muted)}.protocols{border-top:var(--rule-hair) solid var(--color-rule-2);display:grid}.protocols>div{gap:var(--space-sm);padding-block:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule-2);display:grid}.protocols dt{color:var(--color-ink);font-weight:var(--weight-strong)}@media (width>=40rem){.protocols>div{grid-template-columns:minmax(0,12rem) minmax(0,1fr);align-items:baseline}}.prose{gap:var(--space-md);max-width:62ch;display:grid}.prose p,.prose li{color:var(--color-ink-2)}.prose h2{margin-top:var(--space-xl);font-size:var(--text-md);letter-spacing:-.015em}.prose ul{gap:var(--space-xs);padding-left:var(--space-lg);list-style:outside;display:grid}.prose ul li::marker{color:var(--color-accent)}.prose a{color:var(--color-ink);-webkit-text-decoration:underline 1px var(--color-accent);text-decoration:underline 1px var(--color-accent);text-underline-offset:.2em}.split{gap:var(--space-xl);display:grid}@media (width>=60rem){.split{gap:var(--space-2xl);grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.facts{border-top:var(--rule-hair) solid var(--color-rule-2);display:grid}.facts>div{gap:var(--space-md);padding-block:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule-2);grid-template-columns:minmax(0,8rem) minmax(0,1fr);align-items:start;display:grid}.facts dt{color:var(--color-muted);font-size:var(--text-sm)}.facts dd{color:var(--color-ink)}.facts dd a{-webkit-text-decoration:underline 1px var(--color-rule-strong);text-decoration:underline 1px var(--color-rule-strong);text-underline-offset:.2em}@media (hover:hover){.facts dd a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}}.form,.form__row{gap:var(--space-lg);display:grid}@media (width>=40rem){.form__row{grid-template-columns:repeat(2,minmax(0,1fr))}}.field{gap:var(--space-xs);min-width:0;display:grid}.field>label,.field>legend{color:var(--color-ink);font-size:var(--text-sm);font-weight:var(--weight-strong)}.field .hint{color:var(--color-muted);font-size:var(--text-sm)}.field input,.field select,.field textarea{width:100%;min-height:2.75rem;padding:var(--space-sm) var(--space-md);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);transition:border-color var(--dur-micro) var(--ease-out)}.field textarea{resize:vertical;min-height:8.5rem;line-height:1.5}.field select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--color-muted) 50%), linear-gradient(135deg, var(--color-muted) 50%, transparent 50%);padding-right:var(--space-xl);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px}.field input::placeholder,.field textarea::placeholder{color:var(--color-muted)}@media (hover:hover){.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--color-muted)}}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px;border-color:var(--color-focus)}:is(.field input:user-invalid,.field textarea:user-invalid){border-color:var(--color-err)}fieldset.field{border:0;margin:0;padding:0}.choices{gap:var(--space-xs);margin-top:var(--space-2xs);grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));display:grid}.choice{align-items:center;gap:var(--space-sm);min-height:2.75rem;padding:0 var(--space-sm);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-sm);color:var(--color-ink-2);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out);display:flex}.choice input{width:1rem;height:1rem;accent-color:var(--color-accent);flex:none;margin:0}.choice:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-wash);color:var(--color-ink)}.choice:has(input:focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}@media (hover:hover){.choice:hover{border-color:var(--color-rule-strong)}}.honey{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-msg{gap:var(--space-xs);margin-top:var(--space-md);color:var(--color-ok);align-items:baseline;display:flex}.form-msg svg{flex:none;width:16px;height:16px;transform:translateY(2px)}.form-msg.error{color:var(--color-err)}.form-msg.pending{color:var(--color-ink-2)}.form-msg a{text-underline-offset:.2em;text-decoration:underline}.lines>span{display:block}.field--narrow{max-width:16rem}.panel__title{margin-bottom:var(--space-lg);font-size:var(--text-md)}.panel{padding:var(--space-lg);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper-2)}@media (width>=40rem){.lines>span{display:block}.field--narrow{max-width:16rem}.panel__title{margin-bottom:var(--space-lg);font-size:var(--text-md)}.panel{padding:var(--space-xl)}}.aside-note{gap:var(--space-lg);align-content:start;display:grid}.aside-note ul{gap:var(--space-xs);display:grid}@media (width>=60rem){.aside-note--sticky{top:calc(var(--header-h) + var(--space-xl));position:sticky}}.aside-note h2{font-size:var(--text-md)}.aside-note li{gap:var(--space-xs);color:var(--color-ink-2);display:flex}.aside-note li svg{width:15px;height:15px;color:var(--color-accent);flex:none;transform:translateY(5px)}.ftr{padding-block:var(--space-2xl) var(--space-xl);border-top:var(--rule-hair) solid var(--color-rule-2)}.ftr__line{overflow-wrap:anywhere;min-width:0;max-width:22ch;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-display);color:var(--color-ink);letter-spacing:-.03em;text-wrap:balance;line-height:1.1}.ftr__grid{gap:var(--space-xl);margin-top:var(--space-2xl);padding-top:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule-2);display:grid}.ftr__brand img{width:auto;height:28px}.ftr__brand p{margin-top:var(--space-md);color:var(--color-muted);font-size:var(--text-sm);max-width:45ch}.ftr__links{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(min(100%,10rem),1fr));display:grid}.ftr__links h2{margin-bottom:var(--space-xs);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.01em;font-weight:400}.ftr__links a{min-height:2rem;color:var(--color-ink-2);font-size:var(--text-sm);white-space:nowrap;align-items:center;display:inline-flex}@media (hover:hover){.ftr__links a:hover{color:var(--color-ink)}}.ftr__meta{justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-xl);color:var(--color-muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.ftr__meta a{-webkit-text-decoration:underline 1px var(--color-rule);text-decoration:underline 1px var(--color-rule);text-underline-offset:.2em}@media (width>=60rem){.ftr__grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.page{animation-name:fade-only}@keyframes fade-only{0%{opacity:0}}}
