@font-face{font-family:Doto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/doto-latin-ext-wght-normal.d9cc3697.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:Doto Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/doto-latin-wght-normal.88294d1a.woff2) format("woff2-variations");unicode-range:u+00??,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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_next/static/media/space-grotesk-vietnamese-wght-normal.a3924ff4.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_next/static/media/space-grotesk-latin-ext-wght-normal.55a1343a.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_next/static/media/space-grotesk-latin-wght-normal.5a0c43ff.woff2) format("woff2-variations");unicode-range:u+00??,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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-cyrillic-ext-wght-normal.0d2c2f66.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-cyrillic-wght-normal.23645aad.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-greek-wght-normal.c6c31cb1.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-vietnamese-wght-normal.93fc40a8.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-latin-ext-wght-normal.9c9751ca.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_next/static/media/jetbrains-mono-latin-wght-normal.a865edea.woff2) format("woff2-variations");unicode-range:u+00??,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{color-scheme:dark;--ink:#060607;--paper:#f7f7f8;--muted:#8a8a8a;--dim:#4a4a4a;--red:#d71921;--glass:rgb(255 255 255/0.055);--glass-strong:rgb(255 255 255/0.09);--stroke:rgb(255 255 255/0.12);--stroke-soft:rgb(255 255 255/0.07);--font-display:"Doto Variable","Courier New",monospace;--font-sans:"Space Grotesk Variable",ui-sans-serif,system-ui,sans-serif;--font-mono:"JetBrains Mono Variable",ui-monospace,monospace;--ease-out-expo:cubic-bezier(0.16,1,0.3,1);--ease-in-out-quint:cubic-bezier(0.83,0,0.17,1);--r-pill:9999px;--r-panel:16px;--r-tile:12px;--dot:22px;--page:1180px;--gutter:26px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:auto}body,html{background:var(--ink)}body{margin:0;color:var(--paper);font-family:var(--font-sans);font-size:15px;line-height:1.55;font-synthesis-weight:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}body>main{flex:1 0 auto;width:100%;position:relative;z-index:1}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle at center,rgb(255 255 255/.055) 1px,transparent 0);background-size:var(--dot) var(--dot);-webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 22%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse 90% 70% at 50% 22%,#000 40%,transparent 100%)}::selection{background:var(--red);color:var(--paper)}:focus-visible{outline:2px solid var(--red);outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-weight:500;letter-spacing:-.02em}p{margin:0}.glass{background:var(--glass);border:1px solid var(--stroke);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%)}.label{display:block;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.22em;color:var(--muted)}.glyph,.label{text-transform:uppercase}.glyph{font-family:var(--font-display);font-variation-settings:"ROND" 100;letter-spacing:.02em;line-height:.92}.mono{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hairline{height:1px;border:0;margin:0;background:linear-gradient(90deg,transparent,var(--stroke) 15%,var(--stroke) 85%,transparent)}.page{max-width:var(--page);margin:0 auto;padding:0 var(--gutter)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:30;padding:14px 0;background:color-mix(in srgb,var(--ink) 82%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--stroke-soft)}.site-header .page{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:10px;padding:7px 16px 7px 9px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--stroke);font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;transition:border-color .3s var(--ease-out-expo)}.brand:hover{border-color:rgb(215 25 33/.5)}.brand-mark{width:18px;height:24px;flex:none;border-radius:3px;background-image:radial-gradient(circle at center,var(--paper) 1.3px,transparent 1.4px);background-size:6px 6px;background-position:1px 3px;opacity:.8;transition:opacity .3s var(--ease-out-expo)}.brand:hover .brand-mark{opacity:1}.header-note{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}@media (max-width:760px){.header-note{display:none}}.hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;grid-gap:48px;gap:48px;padding:66px 0 78px}.hero-copy h1{font-family:var(--font-display);font-variation-settings:"ROND" 100;font-size:clamp(2.5rem,7vw,5.2rem);font-weight:500;line-height:.86;letter-spacing:-.01em;text-transform:uppercase;margin:18px 0 0}.hero-copy h1 .sig,.hero-copy h1 em{font-style:normal;color:var(--red)}.hero-copy>p{margin-top:26px;max-width:46ch;font-size:16.5px;color:rgb(247 247 248/.72)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.hero-figure{margin:0;display:flex;flex-direction:column;align-items:center}.hero-caption{margin-top:16px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);text-align:center}.plate{position:relative;width:100%;aspect-ratio:1240/1754;max-height:60vh;transform:perspective(1100px);transition:transform 1.1s var(--ease-out-expo);will-change:transform}.plate-canvas{display:block;width:100%;height:100%}.plate-scan{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent,rgb(215 25 33/.16) 46%,rgb(215 25 33/.3) 50%,rgb(215 25 33/.16) 54%,transparent);background-size:100% 24%;background-repeat:no-repeat;animation:scan 6s var(--ease-in-out-quint) infinite;mix-blend-mode:screen}@keyframes scan{0%{background-position:0 -30%;opacity:0}10%{opacity:1}62%{opacity:1}72%,to{background-position:0 130%;opacity:0}}@media (max-width:900px){.hero{grid-template-columns:1fr;gap:32px;padding:44px 0 56px}.hero-figure{order:1}.plate{max-height:none;width:min(100%,230px)}}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--stroke-soft);border:1px solid var(--stroke);border-radius:var(--r-panel);overflow:hidden;margin-bottom:74px}.step{background:var(--glass);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);padding:26px 24px 28px;transition:background .35s var(--ease-out-expo)}.step:hover{background:var(--glass-strong)}.step-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--r-tile);border:1px solid var(--stroke);background:rgb(255 255 255/.03);color:var(--paper);margin-bottom:18px;transition:border-color .35s var(--ease-out-expo),color .35s var(--ease-out-expo),transform .45s var(--ease-out-expo)}.step:hover .step-icon{border-color:rgb(215 25 33/.55);color:var(--red);transform:translateY(-3px)}.step h3{font-size:16px;font-weight:500;margin-bottom:8px}.step p{font-size:13.5px;color:var(--muted);line-height:1.6}@media (max-width:820px){.steps{grid-template-columns:1fr;margin-bottom:52px}}.group{margin-bottom:56px}.group>.label{margin-bottom:12px}.group h2{font-family:var(--font-display);font-variation-settings:"ROND" 100;font-size:clamp(1.45rem,3.2vw,2rem);font-weight:500;text-transform:uppercase;line-height:.95}.group>p{margin-top:10px;margin-bottom:22px;font-size:14px;color:var(--muted);max-width:62ch}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.filter{font:inherit;font-size:13.5px;display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--stroke);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);color:rgb(247 247 248/.55);cursor:pointer;transition:color .3s var(--ease-out-expo),border-color .3s var(--ease-out-expo),background .3s var(--ease-out-expo)}.filter:hover{color:var(--paper)}.filter[aria-pressed=true]{color:var(--paper);border-color:rgb(215 25 33/.6);background:rgb(255 255 255/.1)}.filter-count{font-size:.6rem;color:rgb(247 247 248/.3)}.filter[aria-pressed=true] .filter-count{color:var(--red)}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:20px}@media (max-width:980px){.tool-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.tool-grid{grid-template-columns:1fr}}.tool-card{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:22px;border-radius:var(--r-panel);background:var(--glass);border:1px solid var(--stroke);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);transition:border-color .5s var(--ease-out-expo),background .5s var(--ease-out-expo),transform .5s var(--ease-out-expo)}.tool-card[hidden]{display:none}.tool-card:hover{border-color:rgb(215 25 33/.4);background:rgb(255 255 255/.09);transform:translateY(-3px)}.card-sweep{pointer-events:none;position:absolute;inset:0;opacity:0;transition:opacity .7s var(--ease-out-expo);background-image:radial-gradient(circle at center,rgb(215 25 33/.55) 1px,transparent 0);background-size:14px 14px;mask-image:linear-gradient(115deg,transparent 35%,#000 50%,transparent 65%);mask-size:250% 250%;-webkit-mask-image:linear-gradient(115deg,transparent 35%,#000 50%,transparent 65%);-webkit-mask-size:250% 250%}.tool-card:hover .card-sweep{opacity:1;animation:sweep-diag 2.6s linear infinite}@keyframes sweep-diag{0%{mask-position:0 0;-webkit-mask-position:0 0}to{mask-position:100% 100%;-webkit-mask-position:100% 100%}}.card-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.card-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:var(--r-tile);border:1px solid var(--stroke);background:rgb(255 255 255/.03);color:var(--paper);transition:border-color .5s var(--ease-out-expo),color .5s var(--ease-out-expo),transform .5s var(--ease-out-expo)}.tool-card:hover .card-icon{border-color:rgb(215 25 33/.5);color:var(--red);transform:scale(1.06)}.card-index{font-size:.65rem;color:rgb(247 247 248/.3)}.card-title{font-size:1.3rem;font-weight:500;color:var(--paper)}.card-blurb,.card-title{position:relative;display:block}.card-blurb{flex:1 1;margin-top:10px;font-size:13.5px;line-height:1.55;color:rgb(247 247 248/.55)}.card-foot{position:relative;display:inline-flex;align-items:center;gap:7px;margin-top:20px;padding-top:15px;border-top:1px solid var(--stroke-soft);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgb(247 247 248/.5);transition:color .4s var(--ease-out-expo)}.tool-card:hover .card-foot{color:var(--red)}.tool-card:hover .card-foot svg{transform:translateX(4px)}.card-foot svg{transition:transform .4s var(--ease-out-expo)}.rows{grid-gap:10px;gap:10px}.row,.rows{display:grid}.row{grid-template-columns:54px 1fr auto;align-items:center;grid-gap:18px;gap:18px;padding:16px 20px;border-radius:var(--r-panel);background:var(--glass);border:1px solid var(--stroke);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);position:relative;overflow:hidden;transition:border-color .35s var(--ease-out-expo),background .35s var(--ease-out-expo),transform .35s var(--ease-out-expo)}.row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--red);transform:scaleY(0);transform-origin:50% 0;transition:transform .4s var(--ease-out-expo)}a.row:hover{border-color:rgb(215 25 33/.45);background:var(--glass-strong);transform:translateX(3px)}a.row:hover:before{transform:scaleY(1)}.row-icon{width:54px;height:54px;border-radius:var(--r-tile);border:1px solid var(--stroke);background:rgb(255 255 255/.03);display:grid;place-items:center;color:var(--paper);transition:border-color .35s var(--ease-out-expo),color .35s var(--ease-out-expo),transform .45s var(--ease-out-expo)}a.row:hover .row-icon{border-color:rgb(215 25 33/.5);color:var(--red);transform:scale(1.06)}.row-text{min-width:0}.row-name{display:block;font-size:15.5px;font-weight:500;letter-spacing:-.012em}.row-desc{display:block;font-size:13.5px;color:var(--muted);line-height:1.45;margin-top:2px}.row-go{color:var(--dim);display:flex;transition:color .3s var(--ease-out-expo),transform .4s var(--ease-out-expo)}a.row:hover .row-go{color:var(--red);transform:translateX(5px)}.row.soon{opacity:.55}.tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border:1px solid var(--stroke);border-radius:var(--r-pill);padding:3px 10px}@media (max-width:620px){.row{grid-template-columns:46px 1fr auto;gap:14px;padding:14px 16px}.row-icon{width:46px;height:46px}}.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 24px;border-radius:var(--r-pill);border:1px solid transparent;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:14.5px;font-weight:500;white-space:nowrap;cursor:pointer;transition:transform .35s var(--ease-out-expo),box-shadow .35s var(--ease-out-expo),opacity .2s linear}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px -12px rgb(247 247 248/.4)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.secondary{background:var(--glass);border-color:var(--stroke);color:var(--paper);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%)}.btn.secondary:hover:not(:disabled){border-color:rgb(215 25 33/.6);box-shadow:none}.icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border-radius:var(--r-pill);background:transparent;border:1px solid var(--stroke-soft);color:var(--muted);cursor:pointer;transition:color .25s var(--ease-out-expo),border-color .25s var(--ease-out-expo),transform .15s var(--ease-out-expo)}.icon-btn:hover:not(:disabled){color:var(--red);border-color:rgb(215 25 33/.5)}.icon-btn:active:not(:disabled){transform:scale(.92)}.icon-btn:disabled{opacity:.3;cursor:not-allowed}.back{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);transition:color .25s var(--ease-out-expo)}.back:hover{color:var(--red)}.workspace{max-width:820px;padding-top:30px;padding-bottom:80px}.tool-index{margin-top:22px}.workspace h1{font-family:var(--font-display);font-variation-settings:"ROND" 100;font-size:clamp(2rem,5.2vw,3rem);font-weight:500;text-transform:uppercase;line-height:.9;margin:10px 0 0}.lede{margin-top:14px;margin-bottom:32px;color:var(--muted);font-size:15px;max-width:58ch}.panel{background:var(--glass);border:1px solid var(--stroke);border-radius:var(--r-panel);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);padding:22px 24px 24px;animation:panel-in .7s var(--ease-out-expo) both}.panel+.panel{margin-top:14px}@keyframes panel-in{0%{opacity:0;transform:translateY(14px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}.panel>h2{font-family:var(--font-mono);font-size:.6875rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 16px}.panel.working{border-color:rgb(215 25 33/.35)}.panel.result{border-color:rgb(255 255 255/.2)}.dropzone{border:1px dashed var(--stroke);border-radius:var(--r-tile);background:rgb(255 255 255/.02);padding:46px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;position:relative;overflow:hidden;transition:border-color .35s var(--ease-out-expo),background .35s var(--ease-out-expo)}.dropzone.over,.dropzone:hover{border-color:rgb(215 25 33/.6);background:rgb(215 25 33/.04)}.dropzone strong{display:block;font-size:15px;font-weight:500;margin-bottom:3px}.dropzone span{font-size:12.5px;color:var(--dim)}.dz-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:var(--r-pill);border:1px solid var(--stroke);color:var(--muted);margin-bottom:14px;transition:color .35s var(--ease-out-expo),border-color .35s var(--ease-out-expo),transform .5s var(--ease-out-expo)}.dropzone.over .dz-icon,.dropzone:hover .dz-icon{color:var(--red);border-color:rgb(215 25 33/.55)}.dropzone.over .dz-icon{transform:translateY(-4px) scale(1.06)}.dropzone.over:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at center,rgb(215 25 33/.3) 1px,transparent 0);background-size:14px 14px;animation:breathe 1.4s ease-in-out infinite}.files{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.files li{animation:file-in .5s var(--ease-out-expo) both}@keyframes file-in{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}.file{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;grid-gap:14px;gap:14px;padding:11px 14px;border-radius:var(--r-tile);border:1px solid var(--stroke-soft);background:rgb(255 255 255/.025);transition:border-color .3s var(--ease-out-expo)}.file:hover{border-color:var(--stroke)}.file .idx{font-family:var(--font-mono);font-size:11px;color:var(--dim);width:20px;text-align:right}.download .name,.file .name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.download .size,.file .size{font-size:11.5px;color:var(--muted)}.file .controls{display:inline-flex;gap:6px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:18px}.note{font-size:12.5px;color:var(--muted)}.note.mono{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.field:last-child{margin-bottom:0}.field>label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.help{font-size:12.5px;color:var(--dim);line-height:1.5;max-width:62ch}input[type=number],input[type=password],input[type=text],select{font:inherit;font-size:14px;color:var(--paper);background:rgb(255 255 255/.03);border:1px solid var(--stroke);border-radius:var(--r-tile);padding:10px 13px;width:100%;max-width:340px;transition:border-color .25s var(--ease-out-expo)}input::placeholder{color:var(--dim);opacity:1}input:focus,select:focus{border-color:rgb(215 25 33/.6);outline:none}input:disabled,select:disabled{opacity:.45;cursor:not-allowed}input[type=checkbox],input[type=radio]{accent-color:var(--red);width:auto}.choices{display:flex;flex-wrap:wrap;gap:8px}.choice{font:inherit;font-size:13px;padding:8px 16px;border-radius:var(--r-pill);border:1px solid var(--stroke);background:transparent;color:var(--muted);cursor:pointer;transition:border-color .25s var(--ease-out-expo),color .25s var(--ease-out-expo),background .25s var(--ease-out-expo),transform .15s var(--ease-out-expo)}.choice:hover:not(:disabled){color:var(--paper);border-color:rgb(215 25 33/.5)}.choice:active:not(:disabled){transform:translateY(1px)}.choice[aria-pressed=true]{background:var(--paper);border-color:var(--paper);color:var(--ink)}.choice:disabled{opacity:.4;cursor:not-allowed}.caveat{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--stroke);background:rgb(255 255 255/.03);border-radius:var(--r-tile);padding:12px 14px;font-size:13px;line-height:1.5;color:var(--muted);margin-top:4px}.caveat .alert-icon{color:var(--paper);flex:none;margin-top:1px;display:flex}.caveat b{color:var(--paper);font-weight:500}.sigpad{position:relative;border:1px dashed var(--stroke);border-radius:var(--r-tile);background:#f4f4f6;height:150px;max-width:460px;overflow:hidden;transition:border-color .3s var(--ease-out-expo)}.sigpad:hover{border-color:rgb(215 25 33/.5)}.sigpad canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.sigpad-hint{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:13px;color:#8a8a8a}.progress-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.progress-row .stage{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);animation:breathe 2s ease-in-out infinite}.progress-row b{font-family:var(--font-display);font-variation-settings:"ROND" 100;font-size:22px;font-weight:500;color:var(--paper)}.progress-track{height:4px;border-radius:var(--r-pill);background:rgb(255 255 255/.07);overflow:hidden}.progress-fill{height:100%;border-radius:var(--r-pill);background:var(--paper);transition:width .35s var(--ease-out-expo)}.progress-fill.working{background-image:linear-gradient(115deg,var(--red) 25%,color-mix(in srgb,var(--red) 55%,var(--paper)) 25% 50%,var(--red) 50% 75%,color-mix(in srgb,var(--red) 55%,var(--paper)) 75%);background-size:34px 100%;animation:stripe .85s linear infinite}@keyframes stripe{to{background-position:34px 0}}@keyframes breathe{50%{opacity:.5}}.skeleton{display:grid;grid-gap:8px;gap:8px;margin-top:20px}.skeleton-row{height:46px;border-radius:var(--r-tile);border:1px solid var(--stroke-soft);background:linear-gradient(100deg,rgb(255 255 255/.02) 30%,rgb(255 255 255/.07) 50%,rgb(255 255 255/.02) 70%);background-size:220% 100%;animation:sweep 1.5s ease-in-out infinite}.skeleton-row:nth-child(2){animation-delay:.12s;opacity:.7}.skeleton-row:nth-child(3){animation-delay:.24s;opacity:.45}@keyframes sweep{0%{background-position:180% 0}to{background-position:-80% 0}}.result-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.ok-mark{display:grid;place-items:center;color:var(--paper);animation:pop .55s var(--ease-out-expo) both}@keyframes pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}.result-head h2{font-family:var(--font-display);font-variation-settings:"ROND" 100;font-size:26px;font-weight:500;text-transform:uppercase;margin:0;color:var(--paper)}.stats{display:flex;flex-wrap:wrap;gap:10px 26px;font-size:11.5px;color:var(--muted);padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--stroke-soft)}.stats b{color:var(--paper);font-weight:500}.stats .win{color:var(--red)}.download{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;grid-gap:14px;gap:14px;padding:13px 16px;border-radius:var(--r-tile);border:1px solid var(--stroke);background:rgb(255 255 255/.03);animation:rise .6s var(--ease-out-expo) both;animation-delay:calc(var(--i, 0) * 90ms);transition:border-color .3s var(--ease-out-expo),background .3s var(--ease-out-expo)}.download+.download{margin-top:8px}.download:hover{border-color:rgb(215 25 33/.5);background:rgb(255 255 255/.055)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.download .file-icon{display:grid;place-items:center;color:var(--muted);transition:color .3s var(--ease-out-expo)}.download:hover .file-icon{color:var(--red)}.download .go{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);transition:color .3s var(--ease-out-expo)}.download:hover .go{color:var(--red)}.download:hover .go svg{animation:nudge .7s var(--ease-out-expo) infinite}@keyframes nudge{50%{transform:translateY(3px)}}.alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--r-tile);border:1px solid rgb(215 25 33/.4);background:rgb(215 25 33/.07);font-size:14px;line-height:1.45;animation:shake .4s var(--ease-out-expo) both}.alert b{color:var(--red);font-weight:500}.alert .alert-icon{color:var(--red);display:flex;flex:none;margin-top:1px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.site-footer{position:relative;z-index:1;margin-top:46px;border-top:1px solid var(--stroke-soft)}.site-footer .page{padding-top:26px;padding-bottom:38px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;font-size:12px;color:var(--muted)}.site-footer .mono{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}.footer-link{color:var(--paper);border-bottom:1px solid rgb(215 25 33/.5);transition:color .25s var(--ease-out-expo)}.footer-link:hover{color:var(--red)}[data-reveal]{opacity:0;will-change:transform,opacity}.reveal-off [data-reveal]{opacity:1!important;transform:none!important;filter:none!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}.plate-scan{display:none}.plate{transform:none!important}}