@font-face{font-family:Anybody Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:50% 150%;src:url(./anybody-vietnamese-wdth-normal.9GtAklmW.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:Anybody Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:50% 150%;src:url(./anybody-latin-ext-wdth-normal.BaQ5u-C4.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:Anybody Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:50% 150%;src:url(./anybody-latin-wdth-normal.CHqbGEEr.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:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(./atkinson-hyperlegible-next-latin-400-normal.FfmJh7DR.woff2)format("woff2"),url(./atkinson-hyperlegible-next-latin-400-normal.DPp7N0cD.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(./atkinson-hyperlegible-next-latin-700-normal.Dpiyiu63.woff2)format("woff2"),url(./atkinson-hyperlegible-next-latin-700-normal.C2qZD_Q9.woff)format("woff")}:root{--rule:oklch(87% .17 92);--rule-deep:oklch(80% .16 88);--rule-soft:oklch(96% .05 95);--ink:oklch(21% .012 250);--ink-2:oklch(30% .015 250);--steel:oklch(45% .02 250);--steel-line:oklch(82% .008 250);--steel-faint:oklch(93% .005 250);--surface:oklch(97.5% .003 250);--white:oklch(100% 0 0);--fail:oklch(52% .19 28);--fail-soft:oklch(95% .03 28);--pass:oklch(48% .12 150);--pass-soft:oklch(95% .04 150);--display:"Anybody Variable", "Arial Narrow", sans-serif;--body:"Atkinson Hyperlegible Next", system-ui, sans-serif;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--r:8px;--ease:cubic-bezier(.2,.7,.2,1)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--surface);color:var(--ink);font-family:var(--body);margin:0;font-size:1.0625rem;line-height:1.6}img,svg{max-width:100%;display:block}a{color:var(--ink);-webkit-text-decoration-color:var(--rule-deep);text-decoration-color:var(--rule-deep);text-underline-offset:3px;text-decoration-thickness:2px}a:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}:focus-visible{outline:3px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 6px var(--rule);border-radius:4px}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;text-wrap:balance;margin:0 0 var(--s3);font-weight:800;font-stretch:72%;line-height:1.08}h1{font-size:clamp(2.1rem,1.4rem + 3.2vw,3.9rem)}h2{margin-top:var(--s7);font-size:clamp(1.6rem,1.3rem + 1.4vw,2.3rem)}h3{margin-top:var(--s5);font-size:1.3rem;font-weight:700;font-stretch:85%}p{margin:0 0 var(--s4);text-wrap:pretty}.num,.tnum{font-variant-numeric:tabular-nums}.wrap{width:min(1180px,100% - 2 * var(--s4));margin-inline:auto}.prose{max-width:68ch}.prose ol,.prose ul{margin:0 0 var(--s4);padding-left:1.3em}.prose li{margin-bottom:var(--s2)}.lede{color:var(--ink-2);max-width:60ch;font-size:1.2rem}.skip{position:absolute;left:-999px}.skip:focus{left:var(--s4);top:var(--s4);background:var(--rule);padding:var(--s2) var(--s4);z-index:10}.site-head{background:var(--ink);color:var(--white);position:relative}.site-head .wrap{justify-content:space-between;gap:var(--s4);min-height:64px}.brand,.site-head .wrap{align-items:center;display:flex}.brand{gap:var(--s3);color:var(--white);font-family:var(--display);letter-spacing:.01em;min-height:44px;font-size:1.45rem;font-weight:800;font-stretch:70%;text-decoration:none}.brand-mark{width:30px;height:30px}.brand b{color:var(--rule);font-weight:800}.nav-toggle{align-items:center;gap:var(--s2);color:var(--white);border-radius:var(--r);min-height:44px;padding:0 var(--s4);font:inherit;cursor:pointer;background:0 0;border:1px solid oklch(100% 0 0/.35);font-weight:700;display:inline-flex}.site-nav{background:var(--ink-2)}.site-nav[hidden]{display:none}.site-nav .wrap{gap:var(--s5);padding-block:var(--s5);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.site-nav h2{letter-spacing:.06em;text-transform:uppercase;color:var(--rule);margin:0 0 var(--s2);font-size:.95rem;font-stretch:100%}.site-nav ul{margin:0;padding:0;list-style:none}.site-nav a{min-height:44px;color:var(--white);align-items:center;text-decoration:none;display:flex}.site-nav a.router-link-active,.site-nav a:hover{color:var(--rule)}.tick-edge{background-color:var(--rule);background-image:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 64px),repeating-linear-gradient(90deg,var(--ink) 0 1px,transparent 1px 32px),repeating-linear-gradient(90deg,var(--ink) 0 1px,transparent 1px 16px),repeating-linear-gradient(90deg,var(--ink) 0 1px,transparent 1px 8px);background-position:0 0;background-repeat:no-repeat;background-size:100% 14px,100% 10px,100% 7px,100% 4px;height:14px}.hero{padding:var(--s7) 0 var(--s5)}.crumbs{margin-bottom:var(--s3);font-size:.95rem}.crumbs,.crumbs a{color:var(--steel)}.hero .lede{margin-bottom:0}.calc{gap:var(--s5);margin-bottom:var(--s7);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=900px){.calc{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}.calc.wide{grid-template-columns:1fr}}.panel{background:var(--white);border:1px solid var(--steel-line);border-radius:var(--r);padding:var(--s5)}.panel>h2:first-child,.panel>h3:first-child{margin-top:0}.fields{gap:var(--s4);grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));display:grid}.field{min-width:0}select{text-overflow:ellipsis}.calc>*{min-width:0}@media (width<=480px){.panel,.result-body{padding:var(--s4)}}details.more>summary{cursor:pointer;font-family:var(--display);min-height:44px;margin-top:var(--s5);align-items:center;font-size:1.3rem;font-weight:700;font-stretch:85%;display:flex}.field{gap:var(--s1);flex-direction:column;display:flex}.field .lbl,.field label{font-size:.95rem;font-weight:700}.field .hint{color:var(--steel);font-size:.85rem}input[type=number],input[type=text],select,textarea{font:inherit;color:var(--ink);background:var(--white);border:2px solid var(--steel-line);min-height:48px;padding:var(--s2) var(--s3);font-variant-numeric:tabular-nums;border-radius:6px;width:100%}input:hover,select:hover,textarea:hover{border-color:var(--steel)}input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--rule);outline:none}input[type=range]{width:100%;accent-color:var(--ink);min-height:44px}.seg{border:2px solid var(--ink);border-radius:6px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.seg button{font:inherit;background:var(--white);color:var(--ink);min-height:44px;padding:0 var(--s4);cursor:pointer;border:0;font-weight:700}.seg button+button{border-left:2px solid var(--ink)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--rule)}.btn{justify-content:center;align-items:center;gap:var(--s2);font:inherit;min-height:48px;padding:0 var(--s5);border:2px solid var(--ink);background:var(--ink);color:var(--white);cursor:pointer;transition:transform .15s var(--ease),background .15s;border-radius:999px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--ink-2)}.btn:active{transform:translateY(1px)}.btn.ghost{color:var(--ink);background:0 0}.btn.ghost:hover{background:var(--steel-faint)}.btn.small{min-height:44px;padding:0 var(--s4);font-size:.95rem}.btn[disabled]{opacity:.5;pointer-events:none}.row-actions{gap:var(--s3);margin-top:var(--s4);flex-wrap:wrap;display:flex}.result{background:var(--rule);color:var(--ink);border-radius:var(--r);overflow:hidden}.result .tick-edge{background-color:var(--rule-deep)}.result-body{padding:var(--s5)}.result-main{font-family:var(--display);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(3rem,2rem + 5vw,5.2rem);font-weight:800;font-stretch:65%;line-height:1}.result-main small{margin-left:.2em;font-size:.38em;font-weight:700;font-stretch:90%}.result-label{margin:0 0 var(--s2);font-weight:700}.stats{margin-top:var(--s5);background:oklch(21% .012 250/.25);border-top:1px solid oklch(21% .012 250/.25);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;display:grid}.stats>div{background:var(--rule);padding:var(--s3) 0}.stats>div:nth-child(n){padding-right:var(--s3)}.stats dt{font-size:.88rem;font-weight:700}.stats dd{font-family:var(--display);font-variant-numeric:tabular-nums;margin:0;font-size:1.5rem;font-weight:700;font-stretch:80%;line-height:1.2}.result .note{margin:var(--s4) 0 0;font-size:.95rem}.checks{margin:var(--s4) 0 0;padding:0;list-style:none}.checks,.checks li{gap:var(--s2);display:grid}.checks li{padding:var(--s2) var(--s3);background:var(--white);border-radius:6px;grid-template-columns:28px 1fr;align-items:start;font-size:.97rem}.checks .ok{color:var(--pass)}.checks .bad{background:var(--fail-soft)}.checks .bad .ic{color:var(--fail)}.checks .ic{font-size:1.1rem;font-weight:800;line-height:1.4}.tbl-wrap{margin:0 0 var(--s5);border:1px solid var(--steel-line);border-radius:var(--r);background:var(--white);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.97rem}td,th{text-align:left;padding:var(--s2) var(--s3);border-bottom:1px solid var(--steel-faint);font-variant-numeric:tabular-nums}thead th{background:var(--ink);color:var(--white);white-space:nowrap;font-weight:700}tbody tr:hover,tr.hl{background:var(--rule-soft)}tr.hl{font-weight:700}.explainer{background:var(--ink);color:var(--white);border-radius:var(--r);padding:var(--s5);margin:var(--s6) 0}.explainer h2,.explainer h3{color:var(--rule);margin-top:0}.explainer p{color:oklch(92% .005 250);max-width:68ch}.explainer input[type=range]{accent-color:var(--rule)}.explainer .btn{background:var(--rule);color:var(--ink);border-color:var(--rule)}.explainer .btn.ghost{color:var(--white);background:0 0;border-color:oklch(100% 0 0/.5)}.explainer a{color:var(--rule)}.explainer .field label{color:var(--white)}.explainer .seg{border-color:var(--rule)}.explainer .seg button+button{border-left-color:var(--rule)}.explainer .seg button[aria-pressed=true]{background:var(--rule);color:var(--ink)}.explainer .diagram{max-height:520px}.faq details{border-top:1px solid var(--steel-line)}.faq details:last-child{border-bottom:1px solid var(--steel-line)}.faq summary{cursor:pointer;padding:var(--s4) 0;justify-content:space-between;gap:var(--s4);min-height:44px;font-weight:700;list-style:none;display:flex}.faq summary:after{content:"+";font-family:var(--display);font-size:1.5rem;line-height:1}.faq details[open] summary:after{content:"–"}.faq details>div{padding-bottom:var(--s4);max-width:68ch}.ask{background:var(--white);border:2px solid var(--ink);border-radius:var(--r);padding:var(--s5);margin:var(--s7) 0}.ask h2{margin-top:0}.ask-out{white-space:pre-wrap;background:var(--steel-faint);padding:var(--s4);margin-top:var(--s4);border-radius:6px;min-height:3em}.ask-err{color:var(--fail);font-weight:700}.chips{gap:var(--s2);margin:var(--s3) 0;flex-wrap:wrap;display:flex}.chip{font:inherit;background:var(--rule-soft);border:1px solid var(--rule-deep);min-height:44px;padding:0 var(--s4);cursor:pointer;color:var(--ink);text-align:left;border-radius:999px;font-size:.92rem}.chip:hover{background:var(--rule)}.tool-index{border-top:2px solid var(--ink);grid-template-columns:1fr;gap:0;display:grid}@media (width>=720px){.tool-index{-moz-column-gap:var(--s6);column-gap:var(--s6);grid-template-columns:1fr 1fr}}.tool-index a{gap:var(--s1) var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--steel-line);grid-template-columns:1fr auto;align-items:baseline;min-height:44px;text-decoration:none;display:grid}.tool-index a:hover .t-name{text-decoration:underline;-webkit-text-decoration-color:var(--rule-deep);text-decoration-color:var(--rule-deep);text-decoration-thickness:3px}.t-name{font-family:var(--display);font-size:1.4rem;font-stretch:78%}.t-arrow,.t-name{font-weight:800}.t-blurb{color:var(--steel);grid-column:1/-1;font-size:.97rem}.related{margin-top:var(--s8)}.site-foot{background:var(--ink);color:oklch(88% .005 250);margin-top:var(--s9);padding:var(--s7) 0 var(--s6);font-size:.95rem}.site-foot a{color:var(--white)}.foot-grid{gap:var(--s5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.foot-grid ul{margin:0;padding:0;list-style:none}.foot-grid li a{align-items:center;min-height:36px;display:inline-flex}.foot-grid h2{color:var(--rule);margin:0 0 var(--s2);font-size:1.05rem;font-stretch:90%}.disclaim{margin-top:var(--s6);color:oklch(80% .005 250);max-width:80ch}.list-rows{gap:var(--s3);display:grid}.lrow{gap:var(--s2);padding:var(--s3);background:var(--surface);grid-template-columns:repeat(auto-fit,minmax(90px,1fr));align-items:end;display:grid}.icon-btn,.lrow{border-radius:6px}.icon-btn{font:inherit;border:2px solid var(--steel-line);cursor:pointer;min-width:48px;min-height:48px;color:var(--ink);background:0 0;font-weight:700}.icon-btn:hover{border-color:var(--fail);color:var(--fail)}.diagram{background:var(--white);border:1px solid var(--steel-line);border-radius:var(--r);padding:var(--s3);margin-top:var(--s4)}.diagram text{font-family:var(--body)}.warn{background:var(--fail-soft);color:var(--ink);border:1px solid var(--fail);padding:var(--s3);border-radius:6px}.muted{color:var(--steel)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
