@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/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(/assets/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(/assets/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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-normal-DHTKMUil.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-normal-B1g8a0vD.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-normal-BpXpdlRW.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-normal-BsaNuasd.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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-normal-BVZ5su8S.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-normal-DMe4EKeb.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}@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,p{margin:0}img{block-size:auto;max-inline-size:100%;display:block}}@layer base{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:var(--lightningcss-light,#e3e8e2)var(--lightningcss-dark,#0f1819);--mat:var(--lightningcss-light,#f7f9f5)var(--lightningcss-dark,#172426);--ink:var(--lightningcss-light,#17272b)var(--lightningcss-dark,#e5ede8);--ink-muted:var(--lightningcss-light,#4a5d61)var(--lightningcss-dark,#9db0ab);--line:var(--lightningcss-light,#b4c0b9)var(--lightningcss-dark,#2e4245);--accent:var(--lightningcss-light,#0b6b5b)var(--lightningcss-dark,#5fd3b8);--on-accent:var(--lightningcss-light,#f7f9f5)var(--lightningcss-dark,#0b1a18);--danger:var(--lightningcss-light,#a3261d)var(--lightningcss-dark,#ff9d94);--font-ui:"Bricolage Grotesque Variable", system-ui, sans-serif;--font-caption:"Source Serif 4 Variable", Georgia, serif;--space-sm:.5rem;--space-md:1rem;--space-lg:clamp(1rem, 3vw, 1.75rem);--radius:.25rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{font-family:var(--font-ui);background:var(--paper);color:var(--ink);font-size:clamp(1rem,.95rem + .25vw,1.125rem);line-height:1.5}a{color:var(--accent);text-underline-offset:.2em}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}@layer layout{.page{gap:clamp(2rem,5vw,4rem);max-inline-size:72rem;margin-inline:auto;padding:clamp(1.5rem,4vw,3rem);display:grid}.masthead{gap:var(--space-md);display:grid}.masthead h1{letter-spacing:-.035em;font-size:clamp(2.75rem,1.5rem + 6vw,5.5rem);font-weight:800;line-height:.95}.masthead p{max-inline-size:38rem;color:var(--ink-muted);font-size:1.125em}.workspace{align-items:start;gap:clamp(2rem,5vw,3rem);display:grid}@media (width>=52rem){.workspace{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}.controls{gap:var(--space-lg);display:grid}footer{max-inline-size:40rem;border-block-start:1px solid var(--line);color:var(--ink-muted);padding-block-start:var(--space-md);font-size:.875rem}}@layer components{.frame{gap:var(--space-md);padding:var(--space-lg);background:var(--mat);border:1px solid var(--line);display:grid;position:relative}.frame:before,.frame:after{content:"";border:0 solid var(--ink);block-size:1.25rem;inline-size:1.25rem;position:absolute}.frame:before{border-block-start-width:2px;border-inline-start-width:2px;inset-block-start:-.5rem;inset-inline-start:-.5rem}.frame:after{border-block-end-width:2px;border-inline-end-width:2px;inset-block-end:-.5rem;inset-inline-end:-.5rem}.dropzone{aspect-ratio:4/3;background:var(--paper);border:2px dashed var(--ink-muted);cursor:pointer;place-items:center;display:grid;overflow:hidden}.dropzone:hover,.dropzone[data-dragging]{border-color:var(--accent)}.dropzone[data-dragging]{background:color-mix(in oklab, var(--accent) 12%, var(--paper))}.dropzone:has(img){border-style:solid;border-color:var(--line)}.dropzone:has(:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.dropzone img{object-fit:contain;block-size:100%;inline-size:100%}.dropzone-prompt{padding:var(--space-md);text-align:center;color:var(--ink-muted);gap:.25rem;display:grid}.dropzone-prompt strong{color:var(--ink);font-size:1.375rem;font-weight:700}.frame-caption{color:var(--ink-muted);overflow-wrap:anywhere;font-size:.875rem}.error{color:var(--danger);font-weight:600}.field{gap:.375rem;display:grid}.field label{font-weight:700}.hint{color:var(--ink-muted);font-size:.9rem}select{min-block-size:2.75rem;font:inherit;background:var(--mat);color:var(--ink);border:1px solid var(--ink-muted);border-radius:var(--radius);padding-inline:.75rem}select:disabled{opacity:.6}button{min-block-size:2.75rem;font:inherit;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;padding-inline:1.25rem;font-weight:700}button:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:no-preference){button{transition:opacity .15s}}.placard{gap:var(--space-md);padding:var(--space-lg);background:var(--mat);border:1px solid var(--ink);display:grid}.placard h2{font-size:1rem;font-weight:700}.placard button{color:var(--accent);background:0 0;justify-self:start}progress{block-size:.5rem;inline-size:100%;accent-color:var(--accent)}.status-message{color:var(--ink-muted)}.options{gap:var(--space-md);margin:0;padding:0;list-style:none;display:grid}.options li{gap:var(--space-sm);border-block-start:1px solid var(--line);padding-block-start:var(--space-md);display:grid}.options li:first-child{border-block-start:0;padding-block-start:0}.option-footer{gap:var(--space-sm) var(--space-md);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.result{font-family:var(--font-caption);font-size:clamp(1.125rem,1rem + .5vw,1.375rem);line-height:1.5}}
