@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;font-style:normal;font-display:swap;font-weight:400;src:url(./atkinson-hyperlegible-latin-400-normal.BrHNak5F.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-400-normal.BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(./atkinson-hyperlegible-latin-700-normal.GZI4o3u0.woff2)format("woff2"),url(./atkinson-hyperlegible-latin-700-normal.BK6Glc0m.woff)format("woff")}:root{--hue:355;--bg:oklch(.985 .004 var(--hue));--surface:oklch(.955 .014 var(--hue));--surface-2:oklch(.925 .024 var(--hue));--ink:oklch(24% .06 335);--ink-muted:oklch(44% .05 340);--rasp:oklch(.52 .2 var(--hue));--rasp-deep:oklch(.4 .16 var(--hue));--rasp-ink:oklch(.99 .01 var(--hue));--plum:oklch(30% .09 330);--flame:oklch(86% .15 88);--border:oklch(.86 .03 var(--hue));--rule:oklch(.72 .08 var(--hue));--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--text-sm:clamp(.875rem, .85rem + .15vw, .94rem);--text-base:clamp(1rem, .96rem + .2vw, 1.0625rem);--text-lg:clamp(1.2rem, 1.1rem + .5vw, 1.45rem);--text-xl:clamp(1.55rem, 1.3rem + 1.2vw, 2.2rem);--text-2xl:clamp(2.1rem, 1.5rem + 3vw, 3.9rem);--text-3xl:clamp(2.6rem, 1.6rem + 5vw, 5.4rem);--measure:66ch;--radius:10px;--ease-out:cubic-bezier(.22, 1, .36, 1);--display:"Anybody Variable", "Arial Narrow", sans-serif;--body:"Atkinson Hyperlegible", system-ui, sans-serif}*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--display);letter-spacing:-.01em;text-wrap:balance;color:var(--plum);line-height:1.05}h1{font-size:var(--text-2xl);font-weight:850;font-stretch:130%}h2{font-size:var(--text-xl);font-weight:800;font-stretch:120%}h3{font-size:var(--text-lg);font-weight:750;font-stretch:110%}li,p{max-width:var(--measure);text-wrap:pretty}a{color:var(--rasp-deep);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}img,svg{max-width:100%;display:block}:focus-visible{outline:3px solid var(--rasp);outline-offset:2px;border-radius:4px}.num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden}.skip,.sr-only{position:absolute}.skip{background:var(--plum);color:#fff;padding:var(--space-3) var(--space-4);z-index:50;top:0;left:-999px}.skip:focus{left:var(--space-4)}.wrap{width:min(100% - 2rem,72rem);margin-inline:auto}.prose{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.prose>*{min-width:0}h1,h2{overflow-wrap:break-word}.prose h2{margin-top:var(--space-8)}.prose h3{margin-top:var(--space-4)}.prose ol,.prose ul{gap:var(--space-2);padding-left:1.25rem;display:grid}.section{padding-block:var(--space-12)}.lede{font-size:var(--text-lg);color:var(--ink-muted);max-width:58ch}.page-head{padding-block:var(--space-12) var(--space-8);gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.page-head>*{min-width:0}@media (width<=480px){h1{font-stretch:112%}}.crumbs{font-size:var(--text-sm);gap:var(--space-2);flex-wrap:wrap;display:flex}.crumbs,.crumbs a{color:var(--ink-muted)}.split{gap:var(--space-8);grid-template-columns:minmax(0,1fr);display:grid}.split>*{min-width:0}@media (width>=900px){.split{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}}.site-head{border-bottom:2px solid var(--plum);background:var(--bg);z-index:20;position:sticky;top:0}.site-head .wrap{justify-content:space-between;gap:var(--space-4);min-height:60px}.brand,.site-head .wrap{align-items:center;display:flex}.brand{gap:var(--space-2);font-family:var(--display);color:var(--plum);font-size:1.25rem;font-weight:850;font-stretch:140%;text-decoration:none}.brand b{color:var(--rasp);font-weight:850}.nav-toggle{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:2px solid var(--plum);color:var(--plum);font:700 var(--text-sm) var(--body);cursor:pointer;background:0 0;border-radius:999px;display:inline-flex}.nav-panel{display:none}.nav-panel.open{background:var(--bg);border-bottom:2px solid var(--plum);padding:var(--space-4) 0 var(--space-6);max-height:calc(100vh - 60px);display:block;position:absolute;top:100%;left:0;right:0;overflow:auto}.nav-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));display:grid}.nav-grid h2{color:var(--rasp-deep);margin-bottom:var(--space-2);font-size:.95rem;font-stretch:115%}.nav-grid ul{padding:0;list-style:none;display:grid}.nav-grid a{min-height:44px;color:var(--ink);border-bottom:1px dashed var(--border);align-items:center;text-decoration:none;display:flex}.nav-grid a.router-link-exact-active,.nav-grid a:hover{color:var(--rasp-deep)}.site-foot{margin-top:var(--space-16);background:var(--plum);color:oklch(93% .02 340);padding-block:var(--space-12) var(--space-8)}.site-foot a{color:oklch(95% .02 340)}.site-foot .cols{gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.site-foot h2{color:var(--flame);margin-bottom:var(--space-2);font-size:1rem}.site-foot ul{gap:var(--space-1);font-size:var(--text-sm);padding:0;list-style:none;display:grid}.site-foot small{margin-top:var(--space-8);font-size:var(--text-sm);opacity:.85;max-width:70ch;display:block}.field{gap:var(--space-1);display:grid}.field label,.label{font-weight:700;font-size:var(--text-sm);color:var(--plum)}.field .hint{font-size:var(--text-sm);color:var(--ink-muted)}input,select,textarea{font:inherit;color:var(--ink);border:2px solid var(--plum);min-height:48px;padding:var(--space-2) var(--space-3);background:#fff;border-radius:8px;width:100%}textarea{resize:vertical;min-height:5rem}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--rasp);outline-offset:1px}.row{gap:var(--space-3);flex-wrap:wrap;align-items:end;display:flex}.row>.field{flex:10rem;min-width:0}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-6);border:2px solid var(--rasp-deep);background:var(--rasp);color:var(--rasp-ink);font:700 var(--text-base) var(--body);cursor:pointer;transition:transform var(--dur,.12s) var(--ease-out),background .12s;border-radius:999px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--rasp-deep)}.btn:active{transform:translateY(1px)}.btn.ghost{color:var(--plum);border-color:var(--plum);background:0 0}.btn.ghost:hover{background:var(--surface)}.btn.small{min-height:44px;padding:0 var(--space-4);font-size:var(--text-sm)}.btn[disabled]{opacity:.5;pointer-events:none}.ticket{--notch:14px;border:2px solid var(--plum);border-radius:var(--radius);background:#fff;grid-template-columns:minmax(0,1fr);display:grid;position:relative}.ticket>*{min-width:0}.ticket-main{padding:var(--space-6);gap:var(--space-4);display:grid}.ticket-stub{padding:var(--space-4) var(--space-6);background:var(--rasp);color:var(--rasp-ink);border-top:2px dashed var(--plum);justify-content:space-between;align-items:center;gap:var(--space-4);border-radius:0 0 8px 8px;flex-wrap:wrap;display:flex}.ticket-stub .serial{font-family:var(--display);letter-spacing:.06em;font-variant-numeric:tabular-nums;font-weight:800;font-stretch:150%}.ticket:after,.ticket:before{content:"";width:calc(var(--notch)*2);height:calc(var(--notch)*2);background:var(--bg);border:2px solid var(--plum);bottom:calc(var(--stub-h,64px) - var(--notch) - 1px);clip-path:inset(0 0 0 50%);border-radius:50%;position:absolute}.ticket:before{left:calc(var(--notch)*-1 - 2px)}.ticket:after{right:calc(var(--notch)*-1 - 2px);clip-path:inset(0 50% 0 0)}.ticket.nostub:after,.ticket.nostub:before{display:none}.admit{letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:800;font-stretch:150%}.admit,.big{font-family:var(--display);color:var(--rasp-deep)}.big{font-weight:850;font-stretch:125%;font-size:var(--text-3xl);font-variant-numeric:tabular-nums;line-height:.95}.stat-row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));display:grid}.stat{padding:var(--space-3) var(--space-4);background:var(--surface);border-radius:8px;gap:2px;min-width:0;display:grid}.stat .v{font-family:var(--display);font-weight:800;font-stretch:115%;font-size:var(--text-lg);color:var(--plum);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat .k{color:var(--ink-muted)}.pill,.stat .k{font-size:var(--text-sm)}.pill{align-items:center;gap:var(--space-1);padding:2px var(--space-3);background:var(--surface-2);color:var(--plum);border-radius:999px;font-weight:700;display:inline-flex}.note{font-size:var(--text-sm);color:var(--ink-muted)}.callout{background:var(--surface);padding:var(--space-4) var(--space-6)}.callout,.empty{border-radius:var(--radius)}.empty{color:var(--ink-muted);padding:var(--space-6);border:2px dashed var(--border);text-align:center}.error{color:oklch(45% .18 25);font-weight:700;font-size:var(--text-sm)}.table-wrap{border:2px solid var(--plum);border-radius:var(--radius);background:#fff;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}td,th{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:top}thead th{background:var(--plum);color:#fff;font-family:var(--display);font-weight:750;font-stretch:115%}tbody tr:last-child td{border-bottom:0}tr.hit td{background:oklch(.93 .05 var(--hue));font-weight:700}.faq{gap:var(--space-2);display:grid}.faq details{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;min-height:48px;color:var(--plum);padding-block:var(--space-2);align-items:center;gap:var(--space-3);font-weight:700;list-style:none;display:flex}.faq summary:before{content:"+";font-family:var(--display);color:var(--rasp);width:1ch;font-size:1.4rem}.faq details[open] summary:before{content:"–"}.faq details>div{padding:0 0 var(--space-4) calc(1ch + var(--space-3));gap:var(--space-2);display:grid}.tool-list{border-top:2px solid var(--plum);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:0;display:grid}.tool-list a{padding:var(--space-4) var(--space-2);border-bottom:1px dashed var(--rule);color:var(--ink);gap:2px;min-width:0;text-decoration:none;display:grid}.tool-list a strong{font-family:var(--display);color:var(--plum);font-weight:750;font-stretch:115%}.tool-list a span{font-size:var(--text-sm);color:var(--ink-muted)}.tool-list a:hover strong{color:var(--rasp-deep)}.explainer{border:2px solid var(--plum);border-radius:var(--radius);padding:var(--space-6);gap:var(--space-4);background:#fff;display:grid}.explainer h2{margin:0}input[type=range]{accent-color:var(--rasp);background:0 0;border:0;min-height:44px;padding:0}.stepper{gap:var(--space-2);flex-wrap:wrap;display:flex}.stepper button[aria-pressed=true]{background:var(--plum);color:#fff;border-color:var(--plum)}.ai-out{white-space:pre-wrap;background:var(--surface);padding:var(--space-4) var(--space-6);border-radius:var(--radius);min-height:4rem}.skeleton{background:linear-gradient(90deg,var(--surface-2),var(--surface),var(--surface-2));background-size:200% 100%;border-radius:4px;height:.9em;margin-block:.45em;animation:1.2s linear infinite sk}@keyframes sk{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
