@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-wght-normal.DLoelf7F.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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./figtree-latin-ext-wght-normal.DCwSJGxG.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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(./figtree-latin-wght-normal.D_ZTVpCC.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{--bg:oklch(97.5% 0 0);--surface:oklch(100% 0 0);--ink:oklch(22% .03 285);--ink-2:oklch(42% .03 285);--line:oklch(88% .015 285);--brand:oklch(47% .2 285);--brand-ink:oklch(36% .17 285);--brand-soft:oklch(95% .03 285);--brand-deep:oklch(26% .1 285);--hi:oklch(93% .13 112);--warn:oklch(55% .16 45);--warn-soft:oklch(96% .04 60);--ok:oklch(50% .12 160);--r:10px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:72px;--display:"Bricolage Grotesque Variable", "Arial Narrow", sans-serif;--body:"Figtree Variable", system-ui, sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:400 1.0625rem/1.6 var(--body);margin:0;overflow-x:hidden}img,svg{max-width:100%}a{color:var(--brand-ink);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:4px}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0 0 var(--s3);font-weight:700;line-height:1.12}h1{letter-spacing:-.03em;font-size:clamp(2rem,1.3rem + 3vw,3.4rem);font-weight:800}h2{margin-top:var(--s7);font-size:clamp(1.45rem,1.1rem + 1.4vw,2rem)}h3{margin-top:var(--s5);font-size:1.2rem}p{margin:0 0 var(--s4);text-wrap:pretty}.big,.num,.tape,table.data td{font-variant-numeric:tabular-nums}.wrap{max-width:1120px;padding:0 var(--s4);margin:0 auto}.prose{max-width:68ch}.prose li{margin-bottom:var(--s2)}.lede{max-width:60ch;font-size:1.15rem}.lede,.muted{color:var(--ink-2)}.small{font-size:.9rem}.top{background:var(--brand-deep);color:#fff}.top .wrap{justify-content:space-between;gap:var(--s4);min-height:60px;display:flex}.logo,.top .wrap{align-items:center}.logo{color:#fff;font:800 1.2rem/1 var(--display);letter-spacing:-.02em;gap:10px;min-height:44px;text-decoration:none;display:inline-flex}.logo b{background:var(--hi);width:30px;height:30px;color:var(--brand-deep);border-radius:7px;place-items:center;font-size:1.1rem;display:inline-grid}.menu-btn{color:#fff;min-height:44px;font:600 .95rem var(--body);cursor:pointer;background:0 0;border:1px solid oklch(100% 0 0/.35);border-radius:999px;padding:0 16px}.toolbar{background:var(--brand-deep);border-top:1px solid oklch(100% 0 0/.12)}.toolbar ul{padding:0 var(--s4);scrollbar-width:none;gap:2px;max-width:1120px;margin:0 auto;list-style:none;display:flex;overflow-x:auto}.toolbar ul::-webkit-scrollbar{display:none}.toolbar a{color:oklch(90% .03 285);white-space:nowrap;border-bottom:3px solid #0000;align-items:center;min-height:44px;padding:0 9px;font-size:.9rem;text-decoration:none;display:inline-flex}.toolbar a:hover{color:#fff}.toolbar a.router-link-exact-active{color:#fff;border-bottom-color:var(--hi)}.panel{display:none}.panel.open{background:var(--brand-deep);padding:var(--s3) var(--s4) var(--s5);display:block}.panel.open a{color:#fff;border-bottom:1px solid oklch(100% 0 0/.1);align-items:center;min-height:44px;text-decoration:none;display:flex}@media (width>=900px){.menu-btn,.panel.open{display:none}}@media (width<=899px){.toolbar{display:none}}.head{padding:var(--s7) 0 var(--s5)}.crumbs{margin-bottom:var(--s3);font-size:.88rem}.crumbs,.crumbs a{color:var(--ink-2)}.bench{gap:var(--s5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.bench>*{min-width:0}@media (width>=900px){.bench{gap:var(--s6);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:var(--s5)}.card h2:first-child,.card h3:first-child{margin-top:0}.field{margin-bottom:var(--s4);gap:6px;min-width:0;display:grid}.field>label,.field>span,.lbl{font-size:.95rem;font-weight:600}.row{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.row>*{min-width:0}.row.r3{grid-template-columns:repeat(3,minmax(0,1fr))}.row.r4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=480px){.row.r4{grid-template-columns:repeat(2,minmax(0,1fr))}}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1.5px solid var(--line);border-radius:8px;width:100%;min-width:0;min-height:48px;padding:8px 12px}input[type=number]{font-variant-numeric:tabular-nums}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px oklch(47% .2 285/.18)}textarea{resize:vertical;min-height:96px}.check{cursor:pointer;align-items:center;gap:10px;min-height:44px;display:flex}.check input{width:22px;height:22px;min-height:0;accent-color:var(--brand)}.seg{border:1.5px solid var(--line);background:var(--surface);max-width:100%;padding:3px;display:inline-flex}.seg,.seg button{border-radius:999px}.seg button{white-space:normal;min-height:40px;line-height:1.15;font:600 .95rem var(--body);color:var(--ink-2);cursor:pointer;background:0 0;border:0;flex:auto;padding:0 16px}.btn,.seg button[aria-pressed=true]{background:var(--brand);color:#fff}.btn{min-height:48px;font:700 1rem var(--body);cursor:pointer;transition:background .15s var(--ease),transform .15s var(--ease);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--brand-ink)}.btn:active{transform:translateY(1px)}.btn.ghost{color:var(--brand-ink);border:1.5px solid var(--brand);background:0 0}.btn.ghost:hover{background:var(--brand-soft)}.btn.sm{min-height:44px;padding:0 14px;font-size:.92rem}.btn[disabled]{opacity:.55;cursor:not-allowed}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--brand-soft);min-height:44px;color:var(--brand-ink);cursor:pointer;border:0;border-radius:999px;align-items:center;padding:0 14px;font-size:.93rem;font-weight:600;text-decoration:none;display:inline-flex}.chip:hover{background:oklch(91% .05 285)}.tape{background:var(--surface);padding:var(--s5) var(--s5) var(--s6);color:var(--ink);filter:drop-shadow(0 6px 14px oklch(30% .08 285/.12));position:relative}.tape:after{content:"";background:linear-gradient(135deg,var(--surface) 50%,transparent 50%) 0 0 /14px 10px,linear-gradient(225deg,var(--surface) 50%,transparent 50%) 0 0 /14px 10px;height:10px;position:absolute;bottom:-10px;left:0;right:0}.tape-title{font:700 .95rem var(--display);color:var(--brand-ink);margin-bottom:var(--s3);justify-content:space-between;gap:8px;display:flex}.tline{border-bottom:1px dashed var(--line);grid-template-columns:2.2ch minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:7px 0;font-size:1rem;display:grid}.tline .op{color:var(--brand);text-align:center;font-weight:800}.tline .val{text-align:right;overflow-wrap:anywhere;font-weight:600}.tline .lab{color:var(--ink-2);overflow-wrap:anywhere}.tline.note{color:var(--warn);border-bottom-style:dotted;grid-template-columns:2.2ch minmax(0,1fr);font-size:.9rem}.total{margin-top:var(--s3);padding-top:var(--s3);border-top:3px double var(--ink)}.total .big{font:800 clamp(1.7rem,1.2rem + 2.2vw,2.6rem)/1.1 var(--display);letter-spacing:-.02em;background:linear-gradient(transparent 58%,var(--hi) 58%);overflow-wrap:anywhere;display:inline}.total .sub{color:var(--ink-2);margin-top:6px}.tape-actions{margin-top:var(--s4);flex-wrap:wrap;gap:8px;display:flex}.stats{background:var(--line);border:1px solid var(--line);margin-top:var(--s4);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.stats>div{background:var(--surface);min-width:0;padding:10px 12px}.stats b{font:700 1.15rem var(--display);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;display:block}.stats span{color:var(--ink-2);font-size:.85rem}.explain{background:var(--brand-soft);border-radius:var(--r);padding:var(--s5);margin:var(--s5) 0}.explain h3{margin-top:0}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;max-width:360px;display:grid}.cal>div{aspect-ratio:1;background:var(--surface);font-variant-numeric:tabular-nums;border-radius:6px;place-items:center;min-width:0;font-size:.85rem;display:grid}.cal .h{color:var(--ink-2);aspect-ratio:auto;padding:2px 0;font-size:.75rem;font-weight:700}.cal .h,.cal .off{background:0 0}.cal .on{background:var(--brand);color:#fff;font-weight:700}.cal .mark{background:var(--hi);font-weight:700}.cal .dim{color:oklch(70% .02 285)}.steps{counter-reset:s;margin:0;padding:0;list-style:none}.steps li{padding:8px 0 8px 40px;position:relative}.steps li:before{counter-increment:s;content:counter(s);background:var(--surface);width:28px;height:28px;color:var(--brand-ink);border-radius:50%;place-items:center;font-size:.85rem;font-weight:800;display:grid;position:absolute;top:8px;left:0}.steps li.cur:before{background:var(--brand);color:#fff}.steps li.fut{opacity:.45}table.data{border-collapse:collapse;width:100%;font-size:.95rem}table.data td,table.data th{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 10px}table.data th{color:var(--ink-2);font-size:.85rem;font-weight:700}.tablewrap{border:1px solid var(--line);background:var(--surface);border-radius:8px;max-width:100%;overflow-x:auto}.alert{background:var(--warn-soft);color:oklch(38% .1 45);margin:var(--s3) 0;border-radius:8px;padding:10px 14px;font-size:.95rem}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;justify-content:space-between;gap:12px;min-height:44px;padding:14px 0;font-weight:700;list-style:none;display:flex}.faq summary:after{content:"+";color:var(--brand);font-weight:800}.faq details[open] summary:after{content:"−"}.faq details>div{color:var(--ink-2);padding-bottom:14px}.grid-links{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));display:grid}.tool-link{padding:var(--s4);border-radius:var(--r);background:var(--surface);border:1px solid var(--line);color:var(--ink);min-width:0;text-decoration:none;transition:border-color .15s;display:block}.tool-link:hover{border-color:var(--brand)}.tool-link strong{font:700 1.05rem var(--display);color:var(--brand-ink);display:block}.tool-link span{color:var(--ink-2);font-size:.92rem}section{scroll-margin-top:20px}.foot{margin-top:var(--s8);background:var(--brand-deep);color:oklch(88% .03 285);padding:var(--s6) 0;font-size:.92rem}.foot a{color:#fff}.foot .cols{gap:var(--s5);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}.foot ul{margin:0;padding:0;list-style:none}.foot li a{align-items:center;min-height:36px;display:inline-flex}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fade-enter-active{transition:opacity .25s var(--ease),transform .25s var(--ease)}.fade-enter-from{opacity:0;transform:translateY(-4px)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width<=520px){.seg{width:100%;display:flex}.seg button{padding:0 10px;font-size:.9rem}.row:not(.r4):not(.r3){grid-template-columns:minmax(0,1fr);gap:0}.card{padding:var(--s4)}.tape{padding:var(--s4) var(--s4) var(--s5)}}
