@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/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(/_astro/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(/_astro/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}:root{--paper:#fff;--mist:#eef1f6;--check:#dde3ec;--ink:#14213d;--ink-soft:#4a5672;--cobalt:#2148f3;--cobalt-deep:#1636c2;--tape:#ffcf33;--danger:#b3261e;--font:"Bricolage Grotesque Variable", "Bricolage Grotesque", system-ui, sans-serif;--measure:62ch;--wrap:68rem;--gap:clamp(1rem, 3vw, 2rem);--radius:.6rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-optical-sizing:auto;margin:0;font-size:1.0625rem;line-height:1.55}a{color:var(--cobalt);text-underline-offset:.18em}a:hover{color:var(--cobalt-deep)}:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px;border-radius:.25rem}.wrap{width:min(100% - 2 * var(--gap), var(--wrap));margin-inline:auto}.skip{left:var(--gap);background:var(--ink);color:#fff;border-radius:var(--radius);z-index:10;padding:.5rem .9rem;position:absolute;top:-4rem}.skip:focus{color:#fff;top:.75rem}.site-header{padding-block:1.1rem}.site-header .wrap{justify-content:space-between;align-items:center;gap:1rem;display:flex}.wordmark{letter-spacing:-.02em;color:var(--ink);align-items:stretch;font-size:1.35rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.wordmark span{padding:.35rem .12rem .35rem 0}.wordmark .bg{background:linear-gradient(90deg, transparent, var(--paper) 110%), repeating-conic-gradient(var(--check) 0 25%, transparent 0 50%) 0 0 / .6rem .6rem;border-radius:.3rem 0 0 .3rem;padding-left:.3rem}.intro{padding-block:clamp(1.5rem,5vw,3.5rem) clamp(1.25rem,3vw,2rem)}.intro h1{letter-spacing:-.035em;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(2.3rem,6.4vw,4.6rem);font-weight:750;font-stretch:88%;line-height:.98}.intro p{max-width:var(--measure);color:var(--ink-soft);text-wrap:pretty;margin:1.1rem 0 0;font-size:1.2rem}.tool{padding-bottom:clamp(2.5rem,6vw,4.5rem)}.stage{--ratio:16 / 9;border:2px dashed var(--cobalt);border-radius:calc(var(--radius) * 1.6);background:repeating-conic-gradient(var(--check) 0 25%, var(--paper) 0 50%) 0 0 / 1.5rem 1.5rem;place-items:center;min-height:19rem;transition:border-color .15s;display:grid;position:relative;overflow:hidden}.stage.is-over{border-style:solid;border-color:var(--tape);box-shadow:inset 0 0 0 6px var(--tape)}.drop{text-align:center;justify-items:center;gap:.5rem;padding:2rem 1.25rem;display:grid}.drop-title{letter-spacing:-.02em;background:var(--paper);border-radius:.3rem;margin:0;padding:.1rem .6rem;font-size:clamp(1.4rem,3.4vw,2rem);font-weight:700}.drop-hint,.drop-formats{color:var(--ink-soft);background:var(--paper);border-radius:.3rem;margin:0;padding:0 .5rem}.drop-formats{font-size:.92rem}.btn{border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper);min-height:2.9rem;color:var(--ink);font:inherit;cursor:pointer;touch-action:manipulation;justify-content:center;align-items:center;padding:.65rem 1.25rem;font-weight:650;display:inline-flex}.btn:hover{background:var(--mist)}.btn-primary{background:var(--cobalt);border-color:var(--cobalt);color:#fff}.btn-primary:hover{background:var(--cobalt-deep);border-color:var(--cobalt-deep)}.btn-tape{background:var(--tape);border-color:var(--ink);margin-block:.6rem .3rem;font-size:1.1rem;transform:rotate(-1.2deg)}.btn-tape:hover{background:#ffdb5c}.file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.file-input:focus-visible+.btn-tape{outline:3px solid var(--cobalt);outline-offset:3px}.result{width:100%;max-height:70vh;aspect-ratio:var(--ratio);display:none;position:relative}.result canvas{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.result .original{opacity:1;transition:opacity 1.1s cubic-bezier(.3,0,.2,1)}.tool.is-revealed .result .original{opacity:0}.tool.is-comparing .result .original{opacity:1;transition-duration:.12s}.progress{background:var(--mist);height:.45rem;display:none;position:absolute;inset:auto 0 0}.progress i{height:100%;width:calc(var(--p,0) * 100%);background:var(--cobalt);transition:width .2s linear;display:block}.status{min-height:1.6em;margin:.9rem 0 0;font-weight:600}.mode{color:var(--ink-soft);max-width:var(--measure);margin:.25rem 0 0;font-size:.95rem}.mode:empty{display:none}.controls{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:1rem;display:none}.bg-group{border:0;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;padding:0;display:flex}.bg-group legend{float:left;margin-right:.6rem;padding:0;font-weight:600}.chip{border:2px solid var(--check);background:var(--paper);min-height:2.5rem;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:.35rem .85rem}.chip[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}.chip-color{align-items:center;gap:.45rem;display:inline-flex}.chip-color input{cursor:pointer;background:0 0;border:0;width:1.5rem;height:1.5rem;padding:0}.actions{flex-wrap:wrap;gap:.6rem;margin-left:auto;display:flex}.privacy{color:var(--ink-soft);margin:1rem 0 0;font-size:.98rem}.tool[data-state=loading] .progress{display:block}.tool[data-state=working] .stage,.tool[data-state=loading] .stage{cursor:progress}.tool:is([data-state=working],[data-state=loading],[data-state=done]) .drop{display:none}.tool:is([data-state=working],[data-state=loading],[data-state=done]) .result{display:block}.tool:is([data-state=working],[data-state=loading],[data-state=done]) .stage{border-style:solid;border-color:var(--check);min-height:0}.tool[data-state=done] .controls{display:flex}.tool[data-state=error] .status{color:var(--danger)}.band{background:var(--mist);padding-block:clamp(2.5rem,6vw,4.5rem)}.plain{padding-block:clamp(2.5rem,6vw,4.5rem)}h2{letter-spacing:-.025em;margin:0 0 1.25rem;font-size:clamp(1.6rem,3.6vw,2.3rem);font-weight:720;font-stretch:90%;line-height:1.08}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.5rem 2.5rem;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;max-width:34ch}.steps li:before{content:counter(step);color:var(--cobalt);margin-bottom:.35rem;font-size:2.6rem;font-weight:760;line-height:1;display:block}.faq{max-width:var(--measure)}.faq details{border-top:2px solid var(--ink);padding-block:.9rem}.faq details:last-child{border-bottom:2px solid var(--ink)}.faq summary{cursor:pointer;font-size:1.12rem;font-weight:650}.faq p{color:var(--ink-soft);margin:.6rem 0 0}.more{flex-wrap:wrap;gap:.5rem 1.75rem;margin:0;padding:0;font-size:1.1rem;font-weight:600;list-style:none;display:flex}.legal{padding-bottom:clamp(2.5rem,6vw,4.5rem)}.legal section{max-width:var(--measure);border-top:2px solid var(--ink);padding-block:1.4rem .6rem}.legal h2{margin-bottom:.7rem;font-size:1.4rem}.legal p{overflow-wrap:anywhere;margin:0 0 .7rem}.legal .updated{color:var(--ink-soft);margin-top:1.2rem;font-size:.95rem}.site-footer{border-top:2px solid var(--ink);color:var(--ink-soft);padding-block:1.75rem 2.5rem;font-size:.96rem}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;display:flex}.site-footer p{max-width:46ch;margin:0}.langs{flex-wrap:wrap;gap:.25rem 1rem;margin:0;padding:0;list-style:none;display:flex}.langs a[aria-current=page]{color:var(--ink);font-weight:650;text-decoration:none}@media (width<=40rem){.actions{width:100%;margin-left:0}.actions .btn{flex:auto}}@media (prefers-reduced-motion:reduce){.result .original,.progress i,.stage{transition:none}.btn-tape{transform:none}}
