@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-vietnamese-wght-normal.CHiFlh_0.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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-latin-ext-wght-normal.Dg-wlmqe.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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-latin-wght-normal.CaVRRdDk.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-opsz-normal.BjhtXyW2.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-opsz-normal.BQn1nviT.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-opsz-normal.s-izfB6B.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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-opsz-italic.DTr-ymY4.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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-opsz-italic.CSPGnFdO.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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-opsz-italic.kJKFiXvB.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff")}:root{color-scheme:light;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.953rem;--text-3xl:2.441rem;--text-display-s:clamp(2.25rem, 4vw + .5rem, 3.75rem);--text-display:clamp(2.75rem, 5vw + 1rem, 5.25rem);--text-section:clamp(2rem, 2.5vw + 1rem, 3.5rem);--text-title:clamp(1.25rem, .75vw + .875rem, 1.625rem);--text-lead:clamp(1.125rem, .35vw + 1rem, 1.375rem);--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;--color-error:oklch(52% .19 27);--color-success:oklch(50% .12 150);--container:1440px;--gutter:64px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:oklch(84% .012 245);--color-paper-2:oklch(81% .012 245);--color-paper-3:oklch(77% .012 245);--color-ink:oklch(16% .02 245);--color-ink-2:oklch(24% .018 245);--color-muted:oklch(38% .016 245);--color-rule:oklch(73% .013 240);--color-rule-2:oklch(32% .018 240);--color-accent:oklch(45% .18 350);--color-accent-2:oklch(37% .16 350);--color-accent-ink:oklch(97% .006 245);--color-focus:oklch(46% .19 350);--color-sheet:oklch(93.5% .008 245);--font-display:"Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--font-body:"Newsreader", ui-serif, Georgia, serif;--font-outlier:"IBM Plex Mono", ui-monospace, monospace;--radius-card:0;--radius-pill:2px;--rule-hair:1px;--rule-bar:2px;--shadow-card:none;--tracking-display:-.02em;--display-weight:600}*,:before,:after{box-sizing:border-box}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);max-width:52ch;line-height:1.45}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-slot]{background:linear-gradient(160deg, var(--color-paper-2,var(--color-paper)), var(--color-paper-3,var(--color-paper)));position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (width<=60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (width<=40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-slot]>img{filter:saturate(.65)contrast(.97)}:root{--font-display:"Hanken Grotesk Variable", ui-sans-serif, system-ui, sans-serif;--font-body:"Newsreader Variable", ui-serif, Georgia, serif;--container:1200px;--measure:68ch;--nav-h:64px}body{color:var(--color-ink-2)}h1,h2,h3{color:var(--color-ink)}h1{font-size:var(--text-display-s);letter-spacing:-.03em;max-width:22ch;line-height:1}h2{font-size:var(--text-2xl);max-width:36ch}h3{font-size:var(--text-lg)}a{color:var(--color-ink);text-decoration-color:var(--color-accent);text-underline-offset:.15em;transition:text-decoration-thickness var(--dur-micro) var(--ease-out)}a:hover{text-decoration-thickness:2px}.skip{left:var(--space-md);top:calc(-1 * var(--space-3xl));z-index:var(--z-tooltip);background:var(--color-ink);color:var(--color-paper);padding:var(--space-xs) var(--space-md);position:absolute}.skip:focus-visible{top:var(--space-xs)}.site-head{border-bottom:var(--rule-bar) solid var(--color-rule-2);background:var(--color-paper)}.site-head .container{justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:var(--nav-h);display:flex}.wordmark{font:600 var(--text-lg)/1 var(--font-display);letter-spacing:-.02em;color:var(--color-ink);text-decoration:none}.nav-links{gap:var(--space-lg);margin:0;padding:0;list-style:none;display:flex}.nav-links a{font:500 var(--text-sm)/1 var(--font-display);color:var(--color-ink-2);padding-block:var(--space-xs);text-decoration:none}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-accent)}.nav-menu{display:none}.nav-menu summary{font:500 var(--text-sm)/1 var(--font-display);cursor:pointer;padding:var(--space-sm) 0;list-style:none}.nav-menu summary::-webkit-details-marker{display:none}@media (width<=60rem){.nav-links{display:none}.nav-menu{display:block;position:relative}.nav-menu ul{z-index:var(--z-dropdown);padding:var(--space-sm) var(--space-lg);background:var(--color-sheet);border-top:var(--rule-bar) solid var(--color-ink);min-width:14rem;margin:0;list-style:none;position:absolute;top:100%;right:0}.nav-menu li a{padding:var(--space-sm) 0;font:500 var(--text-md)/1.2 var(--font-display);text-decoration:none;display:block}}.draft-note{background:var(--color-paper-2);border-bottom:var(--rule-hair) solid var(--color-rule);font-size:var(--text-sm);color:var(--color-ink-2)}.draft-note .container{padding-block:var(--space-xs)}.site-foot{margin-top:var(--section-gap-s);border-top:var(--rule-bar) solid var(--color-rule-2);padding-block:var(--space-xl) var(--space-2xl);font-size:var(--text-sm)}.site-foot .container{gap:var(--gap-columns);grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));display:grid}.site-foot h2{font-size:var(--text-md);margin-bottom:var(--space-sm);letter-spacing:-.01em}.site-foot ul{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.site-foot p{max-width:48ch}.site-foot p+p{margin-top:var(--space-sm)}@media (width<=60rem){.site-foot .container{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.site-foot .colophon{grid-column:1/-1}}.page{padding-top:var(--space-xl)}.crumbs{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-lg)}.crumbs ol{gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li:before{content:"/";margin-right:var(--space-xs);color:var(--color-rule-2)}.crumbs a{color:var(--color-muted)}.answer{margin-top:var(--space-lg);font-size:var(--text-lead);max-width:60ch;color:var(--color-ink);line-height:1.5}.checked{margin-top:var(--space-md);font-size:var(--text-sm);color:var(--color-muted);max-width:var(--measure)}.checked strong{color:var(--color-ink-2);font-weight:500}.flag{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-accent-2);white-space:nowrap;font-weight:500}.prose{max-width:var(--measure);line-height:1.65}.prose>*+*{margin-top:var(--space-md)}.prose h2{margin-top:var(--space-2xl)}.prose h3{margin-top:var(--space-xl)}.prose ul,.prose ol{padding-left:1.25em}.prose li+li{margin-top:var(--space-xs)}.section{margin-top:var(--space-2xl)}.section>h2{margin-bottom:var(--space-md)}.section>p{max-width:var(--measure)}.section>p+p{margin-top:var(--space-sm)}.sheet{margin-top:var(--space-xl);background:var(--color-sheet);border-top:var(--rule-bar) solid var(--color-ink);padding:var(--space-lg) var(--space-lg) var(--space-md)}.sheet-head{justify-content:space-between;align-items:baseline;gap:var(--space-xs) var(--space-lg);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.sheet-head h2,.sheet-head h3{font-size:var(--text-xl);max-width:none}.sheet-head .meta{font-size:var(--text-sm);color:var(--color-muted)}.table-scroll{overflow-x:auto}.spec{border-collapse:collapse;width:100%;font-size:var(--text-md)}.spec caption{caption-side:bottom;text-align:left;padding-top:var(--space-sm);font-size:var(--text-sm);color:var(--color-muted)}.spec thead th{font:500 var(--text-sm)/1.3 var(--font-body);color:var(--color-muted);text-align:left;vertical-align:bottom;border-bottom:var(--rule-bar) solid var(--color-rule-2);padding:var(--space-xs) var(--space-sm) var(--space-xs) 0;white-space:nowrap}.spec thead th.num{text-align:right}.spec thead .units th{border-bottom-width:var(--rule-bar);font-size:var(--text-xs);padding-top:0}.spec thead tr:first-child:not(:only-child) th{border-bottom:0;padding-bottom:0}.spec td,.spec tbody th{border-top:var(--rule-hair) solid var(--color-rule);padding:var(--space-xs) var(--space-sm) var(--space-xs) 0;vertical-align:baseline}.spec tbody th{text-align:left;color:var(--color-ink);min-width:8rem;font-weight:500}.spec .nw{white-space:nowrap}.spec td.num{font-family:var(--font-outlier);font-size:var(--text-sm);text-align:right;white-space:nowrap;color:var(--color-ink)}.spec td.text{font-size:var(--text-sm)}.spec .row-note{max-width:40ch;margin-top:var(--space-3xs);font:400 var(--text-xs)/1.4 var(--font-body);color:var(--color-muted);display:block}.spec .alt{font-size:var(--text-xs);color:var(--color-muted);display:block}.spec td:last-child,.spec th:last-child{padding-right:0}.spec tr.is-unverified td.num{color:var(--color-muted)}.spec tr.is-point th,.spec tr.is-point td{color:var(--color-accent-2)}.spec sup a{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-muted);padding-inline:var(--space-3xs);text-decoration:none}.cite{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);font-size:var(--text-sm);color:var(--color-muted);justify-content:space-between;gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;display:flex}.cite code{font-family:var(--font-body);font-style:italic}@media (width<=40rem){.sheet{padding-inline:var(--space-md);margin-inline:calc(-1 * var(--space-md))}}.depends dl{gap:0 var(--gap-columns);grid-template-columns:minmax(0,16rem) minmax(0,1fr);max-width:60rem;margin:0;display:grid}.depends dt,.depends dd{border-top:var(--rule-hair) solid var(--color-rule);padding-block:var(--space-sm);margin:0}.depends dt{font:600 var(--text-md)/1.35 var(--font-display);color:var(--color-ink);letter-spacing:-.01em}@media (width<=40rem){.depends dl{grid-template-columns:minmax(0,1fr)}.depends dd{border-top:0;padding-top:0}}.qa{max-width:var(--measure)}.qa h3{margin-top:var(--space-lg);font-size:var(--text-lg)}.qa h3+p{margin-top:var(--space-xs)}.sources ol{max-width:var(--measure);font-size:var(--text-sm);margin:0;padding-left:1.5em}.sources li{padding-block:var(--space-2xs)}.sources li+li{border-top:var(--rule-hair) solid var(--color-rule)}.sources .src-meta{color:var(--color-muted)}.related ul{gap:0 var(--gap-columns);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));max-width:60rem;margin:0;padding:0;list-style:none;display:grid}.related li{border-top:var(--rule-hair) solid var(--color-rule);padding-block:var(--space-sm)}.related a{font:500 var(--text-md)/1.3 var(--font-display)}.ad-slot{margin-block:var(--space-xl);background:var(--color-paper-2);min-height:280px;font-size:var(--text-xs);color:var(--color-muted);place-items:center;display:grid}.tool{margin-top:var(--space-xl);gap:var(--gap-columns);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}@media (width<=60rem){.tool{grid-template-columns:minmax(0,1fr)}}.tool form{gap:var(--space-md);display:grid}.tool-title{font-size:var(--text-xl)}.field{gap:var(--space-2xs);display:grid}.field label,.field legend{font:500 var(--text-sm)/1.3 var(--font-body);color:var(--color-ink-2)}.field-row{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.field-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}fieldset{border:0;min-width:0;margin:0;padding:0}input[type=number],input[type=text],select{width:100%;min-height:44px;padding:var(--space-xs) var(--space-sm);border:var(--rule-hair) solid var(--color-muted);border-radius:var(--radius-pill);background:var(--color-sheet);color:var(--color-ink);font-family:var(--font-outlier);font-size:var(--text-md);font-variant-numeric:tabular-nums}select{font-family:var(--font-body)}input:hover,select:hover{border-color:var(--color-ink-2)}input:focus-visible,select:focus-visible{outline:2px solid var(--color-focus);outline-offset:-1px}input:disabled,select:disabled{opacity:.55;cursor:not-allowed}input[aria-invalid=true]{border-color:var(--color-error)}.seg{border:var(--rule-hair) solid var(--color-ink);border-radius:var(--radius-pill);display:inline-flex}.seg label{position:relative}.seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg span{min-height:36px;padding:var(--space-xs) var(--space-md);font:500 var(--text-sm)/1.4 var(--font-display);color:var(--color-ink-2);display:inline-block}.seg input:checked+span{background:var(--color-ink);color:var(--color-paper)}.seg input:focus-visible+span{outline:2px solid var(--color-focus);outline-offset:2px}.seg label+label span{border-left:var(--rule-hair) solid var(--color-ink)}.check{align-items:center;gap:var(--space-xs);font-size:var(--text-md);display:flex}.check input{width:20px;height:20px;accent-color:var(--color-accent)}.hint{font-size:var(--text-sm);color:var(--color-muted);min-height:1lh}.btn{border:var(--rule-hair) solid var(--color-ink);border-radius:var(--radius-pill);min-height:44px;padding:var(--space-xs) var(--space-lg);font:500 var(--text-sm)/1 var(--font-display);color:var(--color-ink);cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);background:0 0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn:hover{background:var(--color-paper-2)}.btn:active{background:var(--color-paper-3)}.btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.btn--primary:hover{background:var(--color-accent-2);border-color:var(--color-accent-2)}.btn--primary:active{background:var(--color-accent-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.result{background:var(--color-sheet);border-top:var(--rule-bar) solid var(--color-ink);padding:var(--space-lg)}.result-figure{font:500 var(--text-display-s)/1 var(--font-outlier);letter-spacing:-.04em;color:var(--color-ink);font-variant-numeric:tabular-nums}.result-label{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-2xs)}.result dl{gap:0 var(--space-md);margin:var(--space-lg) 0 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.result dl>div{border-top:var(--rule-hair) solid var(--color-rule);padding-top:var(--space-xs)}.result dt{font-size:var(--text-sm);color:var(--color-muted)}.result dd{font-family:var(--font-outlier);font-size:var(--text-lg);color:var(--color-ink);font-variant-numeric:tabular-nums;margin:0}.result .working{margin-top:var(--space-md);font-size:var(--text-sm);color:var(--color-ink-2)}.result .working code{font-family:var(--font-outlier);font-size:var(--text-xs)}.result-actions{margin-top:var(--space-md);gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}@media (width<=40rem){.result dl{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.floor{margin-top:var(--space-md)}.floor svg{width:100%;height:auto}.floor .deck{fill:var(--color-paper-2);stroke:var(--color-rule-2);stroke-width:1px}.floor .pal{fill:var(--color-sheet);stroke:var(--color-ink-2);stroke-width:1px}.floor .pal.turned{fill:var(--color-paper-3)}.floor text{font:500 11px var(--font-body);fill:var(--color-muted)}.legend{gap:var(--space-xs) var(--space-lg);font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.swatch{width:12px;height:12px;margin-right:var(--space-2xs);vertical-align:-1px;border:var(--rule-hair) solid var(--color-ink-2);background:var(--color-sheet);display:inline-block}.swatch.turned{background:var(--color-paper-3)}.home-head{padding-block:var(--space-2xl) var(--space-lg)}.home-head h1{font-size:var(--text-display);max-width:14ch}.home-head p{margin-top:var(--space-md)}.answers td.text,.answers td.num{font-size:var(--text-md)}.answers tbody th a{font:600 var(--text-md)/1.3 var(--font-display);letter-spacing:-.01em;text-decoration:none}.answers tbody th a:hover{text-decoration:underline;text-decoration-color:var(--color-accent)}.answers tbody tr:hover{background:var(--color-paper-2)}@media (width<=40rem){.answers thead{display:none}.answers tr{padding-block:var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);grid-template-columns:minmax(0,1fr);display:grid}.answers td,.answers tbody th{text-align:left;border:0;padding:0}}.band-ink{margin-top:var(--section-gap-s);background:var(--color-ink);color:var(--color-paper);padding-block:var(--space-2xl)}.band-ink h2{color:var(--color-sheet)}.band-ink p{color:var(--color-paper);max-width:52ch;margin-top:var(--space-sm)}.band-ink a{color:var(--color-sheet)}.band-ink pre{margin:var(--space-lg) 0 0;font:400 var(--text-sm)/1.7 var(--font-outlier);color:var(--color-sheet);overflow-x:auto}.band-ink pre .hd{color:var(--color-sheet);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.2em;font-weight:500}.band-ink+.site-foot{margin-top:0}.two-col{gap:var(--gap-columns);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;display:grid}@media (width<=60rem){.two-col{grid-template-columns:minmax(0,1fr)}}.index-list{gap:0 var(--gap-columns);grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));max-width:72rem;margin:0;padding:0;list-style:none;display:grid}.index-list li{border-top:var(--rule-hair) solid var(--color-rule);padding-block:var(--space-md);gap:var(--space-2xs);display:grid}.index-list a{font:600 var(--text-lg)/1.2 var(--font-display)}.index-list span{font-size:var(--text-sm);color:var(--color-muted);max-width:44ch}html,body{overflow-x:clip}
