@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./fonts/fraunces-vietnamese-wght-normal-T2Q77LJF.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./fonts/fraunces-latin-ext-wght-normal-34SSUN6Q.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./fonts/fraunces-latin-wght-normal-PV4JEXUJ.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url("./fonts/figtree-latin-ext-wght-normal-O22BDGD7.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url("./fonts/figtree-latin-wght-normal-SOXVSX3R.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#fbf8ef;--ink:#16213e;--blue:#2c5fc4;--mute:#586079;--line:#cfd6e6;--accent:#e8512b;--serif:"Fraunces Variable",Georgia,serif;--sans:"Figtree Variable",system-ui,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:radial-gradient(120% 70% at 50% 0,#f7f3e4 0,#e6edfa 70%);color:var(--ink);font:1.0625rem/1.55 var(--sans);overflow-x:hidden}.wrap{max-width:1040px;margin:0 auto;padding:0 16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}a{color:var(--blue)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}.site-head{display:flex;justify-content:space-between;align-items:center;padding-top:12px;padding-bottom:6px}.brand{display:flex;gap:8px;align-items:center;text-decoration:none;color:var(--ink);font:700 1.3rem var(--serif)}.brand svg{width:30px;height:30px}.site-nav a{text-decoration:none;color:var(--ink);font-weight:700;padding:10px;min-height:44px;display:inline-flex;align-items:center}.hero{text-align:center;padding-top:6px}.hero h1{font:600 clamp(2rem,6vw,3.6rem)/1.02 var(--serif);letter-spacing:-.02em;margin:0 0 6px}.hero h1 em{color:var(--accent);font-style:italic}.lead{color:var(--mute);margin:0 auto 10px;max-width:50ch}.stage{display:flex;flex-direction:column;align-items:center;gap:8px;margin:10px 0}.sheet-wrap{background:#fff;box-shadow:0 1px #d8d2c0,0 18px 40px #16213e38,0 2px 6px #16213e26;width:min(100%,360px);max-height:62vh;display:flex;transform:rotate(-.6deg)}.sheet-svg{display:block;width:100%;height:auto;max-height:62vh}.sheet-err{padding:40px 20px;color:#b3261e;font-weight:700;text-align:center;width:100%}.facts{color:var(--mute);text-align:center;font-size:.95rem}.tray{background:var(--paper);border:2px solid var(--ink);border-radius:2px;padding:16px;box-shadow:6px 6px 0 var(--ink);margin:18px 0}fieldset{border:0;padding:0;margin:0 0 12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}legend{font:800 .8rem var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--mute);padding:0;margin-bottom:4px;float:left;width:100%}.types{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.tp{position:relative}.tp input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.tp span{display:flex;flex-direction:column;align-items:center;gap:4px;border:2px solid var(--line);background:#fff;padding:8px 4px;min-height:84px;cursor:pointer}.tp svg{width:38px;height:38px;stroke:var(--blue);fill:none;stroke-width:1}.tp b{font-size:.8rem;text-align:center;line-height:1.1}.tp input:checked+span{border-color:var(--ink);background:#fff2c9;box-shadow:3px 3px 0 var(--ink)}.tp input:focus-visible+span,.chip input:focus-visible+span,.dot input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.row{display:flex;flex-wrap:wrap;gap:6px 24px;align-items:flex-start}.chip{position:relative}.chip input{position:absolute;opacity:0;inset:0;margin:0;width:100%;height:100%;cursor:pointer}.chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:2px solid var(--line);background:#fff;font-weight:700;cursor:pointer}.chip input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}.dot{position:relative}.dot input{position:absolute;opacity:0;inset:0;margin:0;width:100%;height:100%;cursor:pointer}.dot span{display:block;width:44px;height:44px;border:3px solid #fff;box-shadow:0 0 0 2px var(--line);border-radius:50%}.dot input:checked+span{box-shadow:0 0 0 3px var(--ink)}.num{display:flex;flex-direction:column;gap:2px;margin-bottom:8px;min-width:130px}.num label{font:800 .8rem var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}.num input{min-height:44px;border:2px solid var(--line);background:#fff;padding:0 10px;font:700 1.1rem var(--sans);width:9em;color:var(--ink)}.num input:disabled{background:#eee;color:#888}.num input[aria-invalid=true]{border-color:#b3261e}.err{margin:0;color:#b3261e;font-weight:700;font-size:.85rem;min-height:1.1em;max-width:22ch}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:6px}.btn{min-height:52px;padding:0 28px;border:2px solid var(--ink);background:var(--accent);color:#fff;font:800 1.15rem var(--sans);cursor:pointer;box-shadow:4px 4px 0 var(--ink)}.btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.btn:disabled{opacity:.45;cursor:not-allowed}.status{color:var(--mute)}.content{background:var(--paper);border-top:2px solid var(--ink);padding:26px 0}.content h2{font:600 1.7rem var(--serif);margin:0 0 8px}.cols{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.faq{border-top:2px solid var(--line);padding:2px 0}.faq summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}.faq p{margin:0 0 10px;color:var(--mute)}.site-foot{padding:20px 0 36px;color:var(--mute);font-size:.92rem}.guide{max-width:760px;padding-top:20px;padding-bottom:30px}.guide h1{font:600 2.2rem var(--serif)}.muted{color:var(--mute)}dl dt{font-weight:800;margin-top:8px}dl dd{margin:0}.chooser{min-height:60vh;display:grid;place-items:center;text-align:center;padding:20px}.btns{display:flex;gap:10px;justify-content:center;margin-top:14px}.btns .btn{display:inline-flex;align-items:center;text-decoration:none}@media(max-width:560px){.types{grid-template-columns:repeat(3,1fr)}.tp span{min-height:78px}.site-nav a{padding:10px 6px}}@media(min-width:900px){.sheet-wrap{width:340px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.warn{color:#8a4b00;font-weight:700}.num input:disabled{color:#555}@media(max-width:560px){.sheet-wrap{width:min(100%,190px);max-height:34vh}.sheet-svg{max-height:34vh}.hero h1{font-size:1.9rem}.lead{margin-bottom:4px}}
