@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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{color-scheme:light dark;--c-bg-l: oklch(98.2% .005 280);--c-bg-d: oklch(15.5% .018 280);--c-surface-l: oklch(100% 0 0);--c-surface-d: oklch(19.5% .02 280);--c-surface-2-l: oklch(96.5% .008 280);--c-surface-2-d: oklch(23.5% .022 280);--c-surface-3-l: oklch(94% .012 280);--c-surface-3-d: oklch(28% .024 280);--c-line-l: oklch(90% .012 280);--c-line-d: oklch(30% .02 280);--c-line-2-l: oklch(84% .016 280);--c-line-2-d: oklch(38% .022 280);--c-ink-l: oklch(21% .03 280);--c-ink-d: oklch(96% .008 280);--c-body-l: oklch(40% .03 280);--c-body-d: oklch(80% .015 280);--c-mute-l: oklch(50% .03 280);--c-mute-d: oklch(68% .02 280);--c-brand-l: oklch(52% .21 278);--c-brand-d: oklch(76% .15 278);--c-brand-hi-l: oklch(46% .22 278);--c-brand-hi-d: oklch(82% .13 278);--c-brand-soft-l: oklch(95% .03 278);--c-brand-soft-d: oklch(28% .07 278);--c-on-brand-l: oklch(99% 0 0);--c-on-brand-d: oklch(18% .05 278);--c-accent-l: oklch(67% .17 62);--c-accent-d: oklch(83% .16 84);--c-ok-l: oklch(50% .15 150);--c-ok-d: oklch(78% .16 150);--c-ok-soft-l: oklch(95% .04 150);--c-ok-soft-d: oklch(28% .06 150);--c-warn-l: oklch(70% .16 70);--c-warn-d: oklch(82% .15 80);--c-danger-l: oklch(52% .2 25);--c-danger-d: oklch(75% .17 25);--c-danger-soft-l: oklch(95% .03 25);--c-danger-soft-d: oklch(28% .07 25);--c-shadow-l: 262 25% 10%;--c-shadow-d: 262 40% 2%;--bg: light-dark(var(--c-bg-l), var(--c-bg-d));--surface: light-dark(var(--c-surface-l), var(--c-surface-d));--surface-2: light-dark(var(--c-surface-2-l), var(--c-surface-2-d));--surface-3: light-dark(var(--c-surface-3-l), var(--c-surface-3-d));--line: light-dark(var(--c-line-l), var(--c-line-d));--line-2: light-dark(var(--c-line-2-l), var(--c-line-2-d));--ink: light-dark(var(--c-ink-l), var(--c-ink-d));--body: light-dark(var(--c-body-l), var(--c-body-d));--mute: light-dark(var(--c-mute-l), var(--c-mute-d));--brand: light-dark(var(--c-brand-l), var(--c-brand-d));--brand-hi: light-dark(var(--c-brand-hi-l), var(--c-brand-hi-d));--brand-soft: light-dark(var(--c-brand-soft-l), var(--c-brand-soft-d));--on-brand: light-dark(var(--c-on-brand-l), var(--c-on-brand-d));--accent: light-dark(var(--c-accent-l), var(--c-accent-d));--ok: light-dark(var(--c-ok-l), var(--c-ok-d));--ok-soft: light-dark(var(--c-ok-soft-l), var(--c-ok-soft-d));--warn: light-dark(var(--c-warn-l), var(--c-warn-d));--danger: light-dark(var(--c-danger-l), var(--c-danger-d));--danger-soft: light-dark(var(--c-danger-soft-l), var(--c-danger-soft-d));--shadow-hsl: light-dark(var(--c-shadow-l), var(--c-shadow-d));--glass: light-dark(oklch(100% 0 0 / .72), oklch(19% .02 280 / .72));--checker-a: light-dark(oklch(93% 0 0), oklch(26% 0 0));--checker-b: light-dark(oklch(100% 0 0), oklch(32% 0 0));--grad-brand: linear-gradient(135deg, oklch(49% .23 276) 0%, oklch(57% .21 282) 100%);--grad-text: linear-gradient(90deg, var(--brand) 0%, oklch(56% .2 292) 55%, var(--accent) 100%);--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-full: 999px;--shadow-1: 0 1px 2px hsl(var(--shadow-hsl) / .06), 0 2px 8px hsl(var(--shadow-hsl) / .05);--shadow-2: 0 2px 4px hsl(var(--shadow-hsl) / .06), 0 12px 32px -8px hsl(var(--shadow-hsl) / .14);--shadow-3: 0 8px 16px -8px hsl(var(--shadow-hsl) / .18), 0 32px 64px -16px hsl(var(--shadow-hsl) / .28);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);--dur-1: .14s;--dur-2: .24s;--dur-3: .42s;--font: "Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--maxw: 1200px;--gutter: clamp(16px, 4vw, 32px);--header-h: 64px;accent-color:var(--brand);scrollbar-color:light-dark(oklch(80% .01 280),oklch(40% .02 280)) transparent}:root:has(>head>meta[name=color-scheme][content=dark]),:root[data-theme=dark]{color-scheme:dark}:root:has(>head>meta[name=color-scheme][content=light]),:root[data-theme=light]{color-scheme:light}@supports not (color: light-dark(#000,#fff)){:root{--bg: var(--c-bg-l);--surface: var(--c-surface-l);--surface-2: var(--c-surface-2-l);--surface-3: var(--c-surface-3-l);--line: var(--c-line-l);--line-2: var(--c-line-2-l);--ink: var(--c-ink-l);--body: var(--c-body-l);--mute: var(--c-mute-l);--brand: var(--c-brand-l);--brand-hi: var(--c-brand-hi-l);--brand-soft: var(--c-brand-soft-l);--on-brand: var(--c-on-brand-l);--accent: var(--c-accent-l);--ok: var(--c-ok-l);--ok-soft: var(--c-ok-soft-l);--warn: var(--c-warn-l);--danger: var(--c-danger-l);--danger-soft: var(--c-danger-soft-l);--shadow-hsl: var(--c-shadow-l);--glass: rgb(255 255 255 / .72);--checker-a: #eee;--checker-b: #fff}@media(prefers-color-scheme:dark){:root{--bg: var(--c-bg-d);--surface: var(--c-surface-d);--surface-2: var(--c-surface-2-d);--surface-3: var(--c-surface-3-d);--line: var(--c-line-d);--line-2: var(--c-line-2-d);--ink: var(--c-ink-d);--body: var(--c-body-d);--mute: var(--c-mute-d);--brand: var(--c-brand-d);--brand-hi: var(--c-brand-hi-d);--brand-soft: var(--c-brand-soft-d);--on-brand: var(--c-on-brand-d);--accent: var(--c-accent-d);--ok: var(--c-ok-d);--ok-soft: var(--c-ok-soft-d);--warn: var(--c-warn-d);--danger: var(--c-danger-d);--danger-soft: var(--c-danger-soft-d);--shadow-hsl: var(--c-shadow-d);--glass: rgb(20 20 36 / .72);--checker-a: #333;--checker-b: #444}}:root[data-theme=dark]{--bg: var(--c-bg-d);--surface: var(--c-surface-d);--surface-2: var(--c-surface-2-d);--surface-3: var(--c-surface-3-d);--line: var(--c-line-d);--line-2: var(--c-line-2-d);--ink: var(--c-ink-d);--body: var(--c-body-d);--mute: var(--c-mute-d);--brand: var(--c-brand-d);--brand-hi: var(--c-brand-hi-d);--brand-soft: var(--c-brand-soft-d);--on-brand: var(--c-on-brand-d);--accent: var(--c-accent-d);--ok: var(--c-ok-d);--ok-soft: var(--c-ok-soft-d);--warn: var(--c-warn-d);--danger: var(--c-danger-d);--danger-soft: var(--c-danger-soft-d);--shadow-hsl: var(--c-shadow-d);--glass: rgb(20 20 36 / .72);--checker-a: #333;--checker-b: #444}:root[data-theme=light]{--bg: var(--c-bg-l);--surface: var(--c-surface-l);--surface-2: var(--c-surface-2-l);--surface-3: var(--c-surface-3-l);--line: var(--c-line-l);--line-2: var(--c-line-2-l);--ink: var(--c-ink-l);--body: var(--c-body-l);--mute: var(--c-mute-l);--brand: var(--c-brand-l);--brand-hi: var(--c-brand-hi-l);--brand-soft: var(--c-brand-soft-l);--on-brand: var(--c-on-brand-l);--accent: var(--c-accent-l);--ok: var(--c-ok-l);--ok-soft: var(--c-ok-soft-l);--warn: var(--c-warn-l);--danger: var(--c-danger-l);--danger-soft: var(--c-danger-soft-l);--shadow-hsl: var(--c-shadow-l);--glass: rgb(255 255 255 / .72);--checker-a: #eee;--checker-b: #fff}}@media(prefers-reduced-motion:reduce){:root{--dur-1: 0ms;--dur-2: 0ms;--dur-3: 0ms}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--body);font-family:var(--font);font-size:16px;line-height:1.6;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}img,svg,canvas,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}h1,h2,h3,h4{margin:0;color:var(--ink);font-weight:700;line-height:1.15;letter-spacing:-.022em;text-wrap:balance}p{margin:0;text-wrap:pretty}ul,ol{margin:0;padding:0;list-style:none}code,kbd{font-family:var(--mono);font-size:.9em}kbd{display:inline-block;padding:1px 6px;border-radius:6px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--mute);font-size:11.5px;line-height:1.5}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-xs)}::selection{background:color-mix(in oklab,var(--brand) 25%,transparent)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.skip-link{position:absolute;inset-inline-start:12px;top:-48px;z-index:1000;padding:10px 14px;background:var(--brand);color:var(--on-brand);border-radius:var(--r-sm);font-weight:600}.skip-link:focus{top:12px}[hidden]{display:none!important}.num{font-variant-numeric:tabular-nums}.ltr{direction:ltr;unicode-bidi:isolate}.inline-link{display:inline-flex;align-items:center;gap:4px}.grad-text{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}.checker{background-color:var(--checker-b);background-image:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%),linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%);background-size:16px 16px;background-position:0 0,8px 8px}@view-transition{navigation:auto}::view-transition-old(root){animation:vt-out var(--dur-2) var(--ease-out) both}::view-transition-new(root){animation:vt-in var(--dur-3) var(--ease-out) both}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:var(--r-md);border:1px solid transparent;font-weight:600;font-size:15px;line-height:1.2;white-space:nowrap;cursor:pointer;user-select:none;text-decoration:none;transition:background var(--dur-1),border-color var(--dur-1),color var(--dur-1),transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2)}.btn:active{transform:scale(.98)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn svg{width:18px;height:18px;flex:none}.btn-primary{background:var(--brand);color:var(--on-brand);box-shadow:0 1px #ffffff26 inset,var(--shadow-1)}.btn-primary:hover:not(:disabled){background:var(--brand-hi);box-shadow:0 8px 24px -8px color-mix(in oklab,var(--brand) 60%,transparent)}.btn-gradient{background:var(--grad-brand);color:#fff;text-shadow:0 1px 1px rgb(0 0 0 / .22);box-shadow:0 1px #fff3 inset,0 8px 24px -10px #7960fb99}.btn-gradient:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 12px 32px -10px #7960fbb3}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-2)}.btn-secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--mute)}.btn-ghost{color:var(--body)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:hover:not(:disabled){background:color-mix(in oklab,var(--danger) 18%,var(--surface))}.btn-sm{min-height:36px;padding:6px 12px;font-size:13.5px;border-radius:var(--r-sm)}.btn-sm svg{width:16px;height:16px}.btn-lg{min-height:52px;padding:14px 26px;font-size:16px;border-radius:var(--r-lg)}.btn-icon{width:40px;height:40px;min-height:0;padding:0;border-radius:var(--r-sm);color:var(--body)}.btn-icon:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn-icon svg{width:20px;height:20px}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:6px}.field>label,.field-label{font-size:13px;font-weight:600;color:var(--ink);letter-spacing:.005em}.field-hint{font-size:12.5px;color:var(--mute)}.input,.select{width:100%;min-height:44px;padding:10px 12px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface);color:var(--ink);transition:border-color var(--dur-1),box-shadow var(--dur-1)}.input:hover,.select:hover{border-color:var(--mute)}.input:focus-visible,.select:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 22%,transparent)}.input::placeholder{color:var(--mute)}.input[type=number]{font-variant-numeric:tabular-nums}.select{appearance:none;padding-inline-end:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}[dir=rtl] .select{background-position:left 12px center;padding-inline-end:12px;padding-inline-start:36px}.input-group{display:flex;align-items:stretch}.input-group>.input{border-start-end-radius:0;border-end-end-radius:0}.input-group>.select,.input-group>.addon{border-start-start-radius:0;border-end-start-radius:0;margin-inline-start:-1px;width:auto;min-width:80px}.addon{display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--mute);font-size:13px;font-weight:600;border-radius:var(--r-sm)}.segmented{display:inline-flex;padding:3px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line);gap:2px}.segmented button{flex:1;min-height:34px;padding:4px 12px;border-radius:8px;font-size:13.5px;font-weight:600;color:var(--mute);transition:background var(--dur-1),color var(--dur-1),box-shadow var(--dur-1)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.switch{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:var(--ink);min-height:32px}.switch input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.switch .track{width:40px;height:24px;border-radius:999px;background:var(--line-2);position:relative;transition:background var(--dur-2);flex:none}.switch .track:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:translate var(--dur-2) var(--ease-spring)}.switch input:checked+.track{background:var(--brand)}.switch input:checked+.track:after{translate:16px 0}[dir=rtl] .switch input:checked+.track:after{translate:-16px 0}.switch input:focus-visible+.track{outline:2px solid var(--brand);outline-offset:2px}.range{width:100%;accent-color:var(--brand)}.color-input{width:44px;height:44px;padding:3px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface);cursor:pointer}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--surface-2);color:var(--body);border:1px solid var(--line)}.chip-ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.chip-brand{background:var(--brand-soft);color:var(--brand);border-color:transparent}.chip-danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}.chip-btn{cursor:pointer;transition:background var(--dur-1),border-color var(--dur-1)}.chip-btn:hover{border-color:var(--brand);color:var(--brand)}.chip-btn[aria-pressed=true]{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.card-hover{transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2),border-color var(--dur-2)}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:var(--line-2)}.glass{background:var(--glass);backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px)}dialog.modal{border:1px solid var(--line);border-radius:var(--r-xl);padding:0;background:var(--surface);color:var(--body);box-shadow:var(--shadow-3);max-width:min(92vw,720px);width:100%;max-height:min(92dvh,900px);margin:auto;overflow:hidden}dialog.modal::backdrop{background:#05050d8c;backdrop-filter:blur(6px)}dialog.modal[open]{animation:dlg-in var(--dur-3) var(--ease-spring) both}@keyframes dlg-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}@media(prefers-reduced-motion:reduce){dialog.modal[open]{animation:none}}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:17px}.modal-body{padding:22px;overflow:auto;max-height:calc(92dvh - 150px)}.modal-foot{display:flex;gap:10px;justify-content:flex-end;padding:14px 22px;border-top:1px solid var(--line);background:var(--surface-2)}.toast{position:fixed;inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:999;margin:0;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;max-width:min(92vw,400px);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-2);display:flex;gap:12px;align-items:center}.toast:popover-open{animation:toast-in var(--dur-3) var(--ease-spring) both}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}}.toast svg{width:20px;height:20px;flex:none;color:var(--brand)}.progress{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}.progress>span{display:block;height:100%;width:var(--p, 0%);background:var(--grad-brand);border-radius:inherit;transition:width var(--dur-2) var(--ease-out)}.progress.indeterminate>span{width:40%;animation:indet 1.2s var(--ease-out) infinite}@keyframes indet{0%{translate:-100% 0}to{translate:260% 0}}.spinner{width:20px;height:20px;border-radius:50%;border:2.5px solid color-mix(in oklab,var(--brand) 25%,transparent);border-top-color:var(--brand);animation:spin .7s linear infinite}@keyframes spin{to{rotate:1turn}}.tip{position:relative}.tip[data-tip]:hover:after,.tip[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);inset-inline-start:50%;translate:-50% 0;padding:6px 10px;border-radius:8px;background:var(--ink);color:var(--bg);font-size:12px;font-weight:600;white-space:nowrap;pointer-events:none;z-index:5}[dir=rtl] .tip[data-tip]:hover:after,[dir=rtl] .tip[data-tip]:focus-visible:after{translate:50% 0}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--r-sm)}@keyframes shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton,.progress.indeterminate>span{animation:none}}main{min-height:60dvh}.mute{color:var(--mute)}.small{font-size:13px}.lead{font-size:17px;color:var(--body);margin-top:10px;max-width:60ch}.center{text-align:center}.center .btn{margin-top:20px}.narrow{max-width:760px}.rtl-flip{transition:transform var(--dur-1)}[dir=rtl] .rtl-flip{transform:scaleX(-1)}.sec{padding-block:clamp(3rem,7vw,5.5rem)}.sec-tint{background:var(--surface-2);border-block:1px solid var(--line)}.sec-head{max-width:680px;margin-bottom:clamp(24px,4vw,44px)}.sec-head.center{margin-inline:auto;text-align:center}.sec-head h2,.sec-head h1{font-size:clamp(1.7rem,2.4vw + .6rem,2.4rem);font-weight:800}.kicker{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin-bottom:12px}.kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--grad-brand)}.page{padding-top:clamp(2rem,5vw,3.5rem)}.prose{margin-top:24px;display:grid;gap:16px;font-size:16.5px}.prose h2{font-size:22px;margin-top:12px}.prose>section{display:grid;gap:12px}.legal-operator{display:grid;gap:6px;padding:14px 16px;border-radius:var(--r-md);background:var(--surface-2)}.legal-operator .legal-contact,.legal-operator address{margin:0}.legal-label{margin:0;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}.legal-address{font-style:normal;line-height:1.6}.legal-contact{line-height:1.8}.steps{counter-reset:s;display:grid;gap:10px}.steps li{position:relative;padding-inline-start:40px;counter-increment:s}.steps li:before{content:counter(s);position:absolute;inset-inline-start:0;top:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:700;font-size:13px}.link-btn{color:var(--body);font-size:14px}.link-btn:hover{color:var(--brand)}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid transparent;transition:border-color var(--dur-2),box-shadow var(--dur-2)}.site-header.scrolled{border-color:var(--line);box-shadow:var(--shadow-1)}.nav{display:flex;align-items:center;gap:10px;height:var(--header-h)}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;font-size:19px;letter-spacing:-.02em;margin-inline-end:auto}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;box-shadow:0 6px 16px -6px #4c4ee499}.brand-mark svg{display:block}.nav-links{display:flex;gap:2px}.nav-links a{padding:8px 12px;border-radius:var(--r-sm);font-weight:500;font-size:14.5px;color:var(--body);transition:background var(--dur-1),color var(--dur-1)}.nav-links a:hover,.nav-links a[aria-current=page]{background:var(--surface-2);color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:6px}.search-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 10px 0 12px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface);color:var(--mute);font-size:14px;transition:border-color var(--dur-1),color var(--dur-1),box-shadow var(--dur-1)}.search-btn:hover{border-color:var(--mute);color:var(--ink);box-shadow:var(--shadow-1)}.search-btn kbd{margin-inline-start:6px}.lang-select{position:relative;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 8px;border-radius:var(--r-sm);color:var(--body);cursor:pointer}.lang-select:hover{background:var(--surface-2);color:var(--ink)}.lang-select select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.lang-select:focus-within{outline:2px solid var(--brand);outline-offset:2px}.theme-icon{position:relative;display:grid;width:20px;height:20px}.theme-icon svg{grid-area:1 / 1;transition:transform var(--dur-3) var(--ease-spring),opacity var(--dur-2)}.theme-icon[data-scheme=light] svg:last-child,.theme-icon[data-scheme=dark] svg:first-child{opacity:0;transform:rotate(-90deg) scale(.5)}.theme-icon[data-scheme=light] svg:first-child,.theme-icon[data-scheme=dark] svg:last-child{opacity:1;transform:none}@media(max-width:760px){.nav-links,.search-label,.search-btn kbd,.brand-name,.install-btn,.pro-btn{display:none}.search-btn{width:40px;padding:0;justify-content:center}}.hero{position:relative;overflow:clip;padding:clamp(2.5rem,6vw,5rem) 0 clamp(2rem,5vw,4rem)}.hero-bg{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:light-dark(.9,.55)}.blob{position:absolute;border-radius:50%;filter:blur(70px);animation:float 18s ease-in-out infinite alternate}.b1{width:520px;height:520px;inset-inline-start:-160px;top:-200px;background:oklch(78% .14 285 / .55)}.b2{width:460px;height:460px;inset-inline-end:-120px;top:-80px;background:#f09be873;animation-delay:-6s}.b3{width:380px;height:380px;inset-inline-end:25%;bottom:-220px;background:oklch(82% .13 20 / .4);animation-delay:-12s}@keyframes float{to{transform:translate(40px,30px) scale(1.08)}}@media(prefers-reduced-motion:reduce){.blob{animation:none}}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center}.hero-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:13px;font-weight:500;color:var(--body);box-shadow:var(--shadow-1);margin-bottom:22px}.hero-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px var(--ok-soft)}.hero h1{font-size:clamp(2.3rem,4.4vw + .8rem,4rem);font-weight:800;letter-spacing:-.035em;line-height:1.05}.hero-sub{margin:22px 0 28px;font-size:clamp(16px,1.1vw + 10px,18.5px);max-width:36rem}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}.hero-trust{display:flex;align-items:center;gap:8px;margin-top:22px;font-size:13.5px;color:var(--mute)}.hero-trust svg{color:var(--ok);flex:none}.hero-drop-wrap{display:grid;gap:16px}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.hero-stats li{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 10px;text-align:center}.hero-stats b{display:block;font-size:20px;font-weight:800;color:var(--ink);letter-spacing:-.02em}.hero-stats span{font-size:12px;color:var(--mute);font-weight:600;text-transform:uppercase;letter-spacing:.04em}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-stats{grid-template-columns:repeat(2,1fr)}}.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;min-height:280px;padding:32px;border-radius:var(--r-xl);cursor:pointer;background:var(--surface);border:2px dashed var(--line-2);transition:border-color var(--dur-2),background var(--dur-2),transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2)}.dropzone:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(600px 200px at 50% 0%,color-mix(in oklab,var(--brand) 10%,transparent),transparent 70%);opacity:0;transition:opacity var(--dur-2);pointer-events:none}.dropzone:hover,.dropzone:focus-visible,.dropzone.over{border-color:var(--brand);background:var(--surface);box-shadow:var(--shadow-2)}.dropzone:hover:before,.dropzone.over:before{opacity:1}.dropzone.over{transform:scale(1.01);border-style:solid}.dropzone.hero-drop{min-height:300px;box-shadow:var(--shadow-2)}.dz-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:var(--grad-brand);color:#fff;box-shadow:0 10px 24px -10px #7960fbb3;transition:transform var(--dur-3) var(--ease-spring)}.dropzone:hover .dz-icon,.dropzone.over .dz-icon{transform:translateY(-4px) scale(1.05)}.dz-text{display:grid;gap:6px}.dz-text strong{font-size:19px;color:var(--ink);font-weight:700;letter-spacing:-.015em}.dz-sub{font-size:14px;color:var(--mute)}.dz-link{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:3px}.dz-formats{font-size:12px;color:var(--mute);letter-spacing:.02em;margin-top:4px}.dropzone.compact{flex-direction:row;min-height:0;padding:6px 6px 6px 12px;gap:10px;border-radius:var(--r-md);border-width:1px}.dropzone.compact .dz-icon{width:32px;height:32px;border-radius:9px;box-shadow:none}.dropzone.compact .dz-text strong{font-size:13.5px}.dropzone.compact .dz-text{display:none}.dz-btn{pointer-events:none}.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.tool-card{display:flex;align-items:center;gap:14px;padding:16px 18px;color:var(--ink);text-align:start;width:100%}.tool-card.compact{padding:12px 14px;gap:12px}.tool-card:hover .tool-arrow{color:var(--brand);transform:translate(4px)}[dir=rtl] .tool-card:hover .tool-arrow{transform:scaleX(-1) translate(4px)}.tool-ico{flex:none;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:oklch(from var(--brand) l c var(--hue, 280));background:light-dark(oklch(95% .035 var(--hue, 280)),oklch(30% .07 var(--hue, 280)));border:1px solid light-dark(oklch(90% .05 var(--hue, 280)),oklch(38% .08 var(--hue, 280)));color:light-dark(oklch(48% .19 var(--hue, 280)),oklch(82% .14 var(--hue, 280)))}.tool-ico.big{width:60px;height:60px;border-radius:18px}.tool-card.compact .tool-ico{width:36px;height:36px;border-radius:10px}.tool-text{display:grid;gap:2px;min-width:0;flex:1}.tool-text strong{font-size:15.5px;font-weight:700;letter-spacing:-.01em}.tool-text span{font-size:13.5px;color:var(--mute);line-height:1.45}.tool-arrow{color:var(--mute);transition:color var(--dur-1),transform var(--dur-2) var(--ease-out);flex:none}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.cat-card{padding:20px;display:grid;gap:14px}.cat-head{display:flex;gap:12px;align-items:flex-start}.cat-head h3{font-size:16.5px}.cat-head p{font-size:13.5px;color:var(--mute);margin-top:2px}.cat-links{display:flex;flex-wrap:wrap;gap:6px}.cat-links a{display:inline-block;padding:5px 10px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;font-weight:500;color:var(--body);transition:all var(--dur-1)}.cat-links a:hover{border-color:var(--brand);color:var(--brand)}.cat-section{margin-top:44px}.cat-section-head{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center;margin-bottom:16px}.cat-section-head .tool-ico{grid-row:span 2}.cat-section-head h2{font-size:22px}.cat-section-head p{color:var(--mute);font-size:14px}.preset-chips{margin-top:14px}.search-field{position:relative;display:block;max-width:440px;margin-top:18px}.search-field svg{position:absolute;inset-inline-start:14px;top:50%;translate:0 -50%;color:var(--mute);pointer-events:none}.search-field .input{padding-inline-start:42px}.chips{display:flex;flex-wrap:wrap;gap:8px}.priv-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}.priv-grid h2{font-size:clamp(1.7rem,2.4vw + .6rem,2.4rem);font-weight:800}.priv-list{margin-top:24px;display:grid}.priv-list li{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.priv-list li:last-child{border-bottom:0}.priv-list svg{color:var(--ok);flex:none;margin-top:2px}.priv-list b{display:block;color:var(--ink);font-weight:700}.priv-list p{font-size:14px;color:var(--mute);margin-top:2px}.flow{position:relative;padding:28px;display:grid}.flow-step{display:flex;gap:14px;align-items:flex-start}.flow-step b{display:block;color:var(--ink);font-weight:700;font-size:15px}.flow-step p{font-size:13.5px;color:var(--mute);margin-top:2px}.flow-dot{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.flow-dot.ok{background:var(--ok-soft);color:var(--ok)}.flow-line{width:2px;height:28px;margin:6px 0 6px 18px;background:linear-gradient(var(--line),var(--brand-soft))}[dir=rtl] .flow-line{margin:6px 18px 6px 0}.flow-badge{position:absolute;top:16px;inset-inline-end:16px;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--ok-soft);color:var(--ok);font-size:12px;font-weight:700}@media(max-width:860px){.priv-grid{grid-template-columns:1fr}}.why-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.why{padding:22px;display:grid;gap:8px;align-content:start}.why-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);margin-bottom:4px}.why b{color:var(--ink);font-size:15.5px}.why p{font-size:13.5px;color:var(--mute)}.cta-card{position:relative;overflow:hidden;display:grid;justify-items:center;gap:12px;text-align:center;padding:clamp(2.4rem,5vw,4rem) 24px;border-radius:var(--r-xl);border:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--surface-2))}.cta-card>svg{color:var(--brand)}.cta-card h2{font-size:clamp(1.5rem,2.4vw + .4rem,2.1rem)}.cta-card p{color:var(--body);max-width:44ch}.cta-card .btn{margin-top:8px}.tool-head{padding:clamp(1.4rem,3vw,2.4rem) 0 clamp(1rem,2vw,1.6rem)}.crumbs{display:flex;gap:8px;font-size:13px;color:var(--mute);margin-bottom:14px}.crumbs a:hover{color:var(--brand)}.tool-title{display:flex;align-items:center;gap:18px}.tool-title h1{font-size:clamp(1.6rem,2.6vw + .5rem,2.4rem);font-weight:800}.tool-title .lead{margin-top:4px;font-size:15.5px}.tool-about{padding-block:clamp(2.5rem,5vw,4rem)}.about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.about-card{padding:26px;display:grid;gap:14px;align-content:start}.about-card h2{font-size:20px}.about-card h3{font-size:15px;margin-top:6px}.seo-card{margin-bottom:18px}.seo-card p{max-width:72ch;line-height:1.6}.about-card p{font-size:15px}.related-title{font-size:20px;margin:40px 0 16px}@media(max-width:860px){.about-grid{grid-template-columns:1fr}}.wb{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start;container-type:inline-size}.wb-main{display:grid;gap:14px;min-width:0}.wb-side{position:sticky;top:calc(var(--header-h) + 16px);display:grid;gap:14px}@media(max-width:860px){.side-ad{display:none}}.side-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-1);padding:20px;display:grid;gap:18px}.side-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}.side-actions{display:grid;gap:10px;padding-top:6px;border-top:1px solid var(--line)}.side-hint{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mute)}.pattern-group{border-top:0;padding-top:0}.pattern-group summary{font-size:12px}.pattern-group .input{font-family:var(--mono);font-size:13px}.side-hint.ok{color:var(--ok)}.opts{display:grid;gap:16px}.opts-group{border-top:1px solid var(--line);padding-top:6px}.opts-group summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);padding:8px 0}.opts-group summary::-webkit-details-marker{display:none}.opts-group[open] summary svg{transform:rotate(180deg)}.opts-group-body{display:grid;gap:16px;padding-top:8px}.range-head{display:flex;justify-content:space-between;align-items:baseline}.range-head output{font-size:13px;color:var(--mute);font-weight:600}.segmented.wrapable{flex-wrap:wrap}.color-row{display:flex;align-items:center;gap:10px}.swatches{display:flex;gap:6px;flex-wrap:wrap}.swatch{width:28px;height:28px;border-radius:8px;border:1px solid var(--line-2);cursor:pointer;transition:transform var(--dur-1),box-shadow var(--dur-1)}.swatch:hover{transform:scale(1.08)}.dims-row{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end}.lock-btn{width:40px;height:44px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface);color:var(--mute);display:grid;place-items:center}.lock-btn.on{color:var(--brand);border-color:var(--brand);background:var(--brand-soft)}.dims-row2{display:flex;gap:10px;margin-top:10px;align-items:center;flex-wrap:wrap}.dpi-group{flex:1;min-width:150px}.dpi-group .input{min-height:40px}.logo-field{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.logo-thumb{width:44px;height:44px;object-fit:contain;border-radius:8px;border:1px solid var(--line)}.wb-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.wb-toolbar-actions{margin-inline-start:auto;display:flex;gap:8px;align-items:center}.how{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.how li{display:flex;gap:10px;align-items:flex-start;padding:14px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line);font-size:13.5px;color:var(--body)}.how svg{color:var(--brand);flex:none;margin-top:2px}@container (max-width: 860px){.wb{grid-template-columns:1fr}.wb-side{position:static}.how{grid-template-columns:1fr}}@media(max-width:860px){.wb{grid-template-columns:1fr}.wb-side{position:static}.how{grid-template-columns:1fr}}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:14px}.file-card{overflow:hidden;display:grid;grid-template-rows:auto 1fr;transition:box-shadow var(--dur-2),border-color var(--dur-2),transform var(--dur-2);view-transition-class:card}.file-card.drag-over{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 25%,transparent)}.orderable .file-card{cursor:grab}.fc-media{position:relative;aspect-ratio:4 / 3;background:var(--surface-2)}.fc-thumb{width:100%;height:100%;position:relative}.fc-thumb img{width:100%;height:100%;object-fit:contain}.fc-badge{position:absolute;bottom:8px;inset-inline-start:8px;padding:3px 8px;border-radius:6px;background:#14151fb3;color:#fff;font-size:11px;font-weight:700;backdrop-filter:blur(4px)}.fc-index{position:absolute;top:8px;inset-inline-start:8px;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--ink);color:var(--bg);font-size:12px;font-weight:800}.fc-actions{position:absolute;top:8px;inset-inline-end:8px;display:flex;gap:4px;padding:3px;border-radius:10px;background:var(--glass);backdrop-filter:blur(8px);border:1px solid var(--line);opacity:0;transition:opacity var(--dur-2)}.file-card:hover .fc-actions,.file-card:focus-within .fc-actions{opacity:1}.fc-actions .btn-icon{width:32px;height:32px}@media(hover:none){.fc-actions{opacity:1}.fc-actions .btn-icon{width:40px;height:40px}}.fc-actions .btn-icon.active{color:var(--brand);background:var(--brand-soft)}.fc-progress{position:absolute;inset-inline:12px;bottom:12px}.pick img{cursor:crosshair}.pick-hint{display:inline-flex;align-items:center;gap:6px}.pick-result{position:absolute;inset-inline:8px;bottom:8px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;border-radius:10px;background:var(--glass);backdrop-filter:blur(8px);border:1px solid var(--line);animation:pop-in var(--dur-2) var(--ease-spring) both}.pick-result i{width:22px;height:22px;border-radius:6px;border:1px solid var(--line-2)}.pick-code{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-family:var(--mono);font-size:11.5px;color:var(--ink);background:var(--surface);border:1px solid var(--line)}.pick-code:hover{border-color:var(--brand);color:var(--brand)}@keyframes pop-in{0%{opacity:0;translate:0 6px}}.file-card.working .fc-media:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,oklch(100% 0 0 / .25) 50%,transparent 70%);background-size:200% 100%;animation:shimmer 1.2s infinite}.fc-body{padding:14px 16px 16px;display:grid;gap:10px}.fc-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px}.fc-name{font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.fc-dims{display:inline-flex;align-items:center;gap:3px;color:var(--mute);font-size:12.5px}.fc-sizes{color:var(--body)}.fc-sizes strong{color:var(--ink)}.fc-error,.fc-note{display:flex;gap:8px;align-items:flex-start;font-size:13px;padding:10px 12px;border-radius:var(--r-sm)}.fc-error{background:var(--danger-soft);color:var(--danger)}.fc-note{background:var(--brand-soft);color:var(--brand)}.fc-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--mute)}.fc-meta b{color:var(--body);font-weight:600}.meta-color{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:12px;color:var(--ink)}.meta-color i{width:16px;height:16px;border-radius:5px;border:1px solid var(--line-2)}.fc-download{display:flex;gap:8px;align-items:center}.fc-download .input{min-height:40px;font-size:13.5px;flex:1;min-width:0}.fc-download .btn-primary{min-height:40px;padding-inline:14px}.inspect{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;font-size:12.5px;padding:10px 12px;border-radius:var(--r-sm);background:var(--surface-2)}.inspect div{display:contents}.inspect dt{color:var(--mute)}.inspect dd{margin:0;color:var(--ink);font-weight:600;text-align:end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-out{display:grid;gap:8px}.text-out textarea{width:100%;resize:vertical;padding:10px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface-2);color:var(--body);font-family:var(--mono);font-size:12px}.text-details summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--body);padding:6px 0}.multi-out{display:grid;gap:12px}.multi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.multi-item{display:grid;gap:6px}.multi-item img,.multi-file{width:100%;aspect-ratio:1;object-fit:contain;border-radius:var(--r-sm);border:1px solid var(--line)}.multi-file{display:grid;place-items:center;align-content:center;gap:4px;background:var(--surface-2);color:var(--mute);font-size:11px;font-weight:700}.multi-dl{display:grid;grid-template-columns:auto 1fr;gap:2px 6px;align-items:center;text-align:start;font-size:11.5px;color:var(--body);padding:4px 6px;border-radius:6px}.multi-dl:hover{background:var(--surface-2);color:var(--brand)}.multi-dl span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;grid-column:2}.multi-dl span:nth-child(3){grid-column:2}.compare{position:relative;width:100%;height:100%;overflow:hidden;touch-action:pan-y;cursor:ew-resize;user-select:none}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.cmp-after{clip-path:inset(0 0 0 var(--pos))}[dir=rtl] .cmp-after{clip-path:inset(0 var(--pos) 0 0)}.cmp-handle{position:absolute;top:0;bottom:0;inset-inline-start:var(--pos);width:2px;background:#fff;box-shadow:0 0 0 1px #0003;translate:-1px 0}.cmp-handle span{position:absolute;top:50%;left:50%;translate:-50% -50%;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 4px 12px #0000004d;display:grid;place-items:center}.cmp-handle span:before{content:"◀ ▶";font-size:9px;color:#333;letter-spacing:1px}.cmp-label{position:absolute;bottom:8px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;background:#14151fb3;backdrop-filter:blur(4px);pointer-events:none}.cmp-label-a{inset-inline-start:8px}.cmp-label-b{inset-inline-end:8px}.cmp-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:ew-resize}.compare:focus-within{outline:2px solid var(--brand);outline-offset:-2px}.batch{padding:18px;display:grid;gap:12px}.batch-head{display:flex;align-items:center;gap:10px;color:var(--ink)}.batch-done{display:grid;grid-template-columns:auto 1fr auto;gap:10px 14px;align-items:center}.batch-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:var(--ok-soft);color:var(--ok)}.batch-info{display:grid;gap:2px}.batch-info strong{color:var(--ink)}.batch-thumb{width:72px;height:72px;object-fit:contain;border-radius:var(--r-sm);border:1px solid var(--line)}.batch .fc-download{grid-column:1 / -1}.crop-modal{max-width:min(96vw,960px)}.crop-stage{position:relative;background:#050509;min-height:320px;max-height:62dvh;display:grid;place-items:center}.crop-stage img{max-height:62dvh}.crop-spinner{position:absolute}.crop-tools{display:flex;gap:4px;align-items:center;padding:10px 14px;border-top:1px solid var(--line);flex-wrap:wrap}.crop-sep{width:1px;height:24px;background:var(--line);margin:0 6px}.crop-circle .cropper-view-box,.crop-circle .cropper-face{border-radius:50%}.crop-guide .cropper-face{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 90'%3E%3Cellipse cx='35' cy='40' rx='22' ry='30' fill='none' stroke='white' stroke-width='1.2' stroke-dasharray='3 3' opacity='.9'/%3E%3Cline x1='0' y1='12' x2='70' y2='12' stroke='white' stroke-width='.6' stroke-dasharray='2 2' opacity='.6'/%3E%3Cline x1='0' y1='72' x2='70' y2='72' stroke='white' stroke-width='.6' stroke-dasharray='2 2' opacity='.6'/%3E%3C/svg%3E");background-size:100% 100%;opacity:.85!important;background-color:transparent!important}.cropper-modal{background-color:#050509!important}.palette{max-width:min(92vw,640px);margin-top:10dvh}.palette-input{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);color:var(--mute)}.palette-input input{flex:1;min-width:0;border:0;background:none;font-size:17px;color:var(--ink);outline:none}.palette-list{max-height:min(60dvh,520px);overflow:auto;padding:8px}.palette-list li a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-md);color:var(--ink)}.palette-list li.active a{background:var(--surface-2)}.palette-list li.active .pal-arrow{color:var(--brand)}.pal-text{display:grid;flex:1;min-width:0}.pal-text strong{font-size:14.5px}.pal-text span{font-size:12.5px;color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pal-arrow{color:var(--mute)}.palette-empty{padding:24px;text-align:center;color:var(--mute)}.picker{max-width:min(92vw,760px)}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:16px}.toasts{position:fixed;inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:200;display:grid;gap:10px;max-width:min(92vw,420px);pointer-events:none}.toast-item{pointer-events:auto;display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-2);font-size:14px;animation:toast-in var(--dur-3) var(--ease-spring) both}.toast-item>svg{flex:none;color:var(--brand)}.toast-item.error>svg{color:var(--danger)}.toast-item.success>svg{color:var(--ok)}.toast-body{display:flex;align-items:center;gap:12px;flex:1;flex-wrap:wrap}.toast-actions{display:flex;gap:6px;margin-inline-start:auto}.site-footer{margin-top:clamp(2rem,5vw,4rem);border-top:1px solid var(--line);background:var(--surface);padding:48px 0 24px}.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px}.foot-about p{margin-top:12px;font-size:14px;color:var(--body);max-width:300px}.site-footer h3{font-size:12.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink);margin-bottom:14px}.site-footer li{margin-bottom:8px;font-size:14px}.site-footer li a{color:var(--body)}.site-footer li a:hover{color:var(--brand)}.foot-langs{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.foot-lang-select{max-width:220px;min-height:40px}.lang-select select,.foot-lang-select{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.foot-lang-count{margin-top:8px}.foot-bottom{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--mute)}@media(max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.foot-grid{grid-template-columns:1fr}}.working{position:absolute;inset:0;display:grid;place-items:center;background:color-mix(in oklab,var(--surface) 72%,transparent);overflow:hidden;contain:strict}.working.inline{position:relative;min-height:150px;border-radius:var(--r-md);background:var(--surface-2)}.beam{position:absolute;inset-inline:0;height:38%;top:0;transform:translateY(-110%);will-change:transform;background:linear-gradient(180deg,transparent,color-mix(in oklab,var(--brand) 28%,transparent) 50%,transparent);animation:beam 1.6s var(--ease-out) infinite;pointer-events:none}.beam:after{content:"";position:absolute;inset-inline:0;top:50%;height:2px;background:var(--grad-brand);opacity:.9}@keyframes beam{to{transform:translateY(270%)}}.working-core{position:relative;display:grid;justify-items:center;gap:6px;padding:14px 18px;border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow-2);animation:core-in var(--dur-3) var(--ease-spring) both}@keyframes core-in{0%{opacity:0;transform:scale(.9)}}.ring{width:56px;height:56px;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:4;stroke-linecap:round}.ring-bg{stroke:var(--line-2)}.ring-fg{stroke:var(--brand);transition:stroke-dashoffset var(--dur-3) var(--ease-out)}.working-pct{position:absolute;top:31px;font-size:12px;font-weight:800;color:var(--ink)}.working-msg{font-size:12.5px;font-weight:600;color:var(--body);animation:msg-in var(--dur-3) var(--ease-out) both;min-height:1.3em}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}}.file-card.working{box-shadow:0 0 0 1px color-mix(in oklab,var(--brand) 40%,transparent),0 0 28px -6px color-mix(in oklab,var(--brand) 45%,transparent)}.file-card.working .fc-media:after{display:none}.fc-done-pop{position:absolute;top:10px;inset-inline-start:10px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ok);color:#fff;box-shadow:0 6px 16px -4px color-mix(in oklab,var(--ok) 70%,transparent);animation:pop var(--dur-3) var(--ease-spring) both}.fc-done-pop i{position:absolute;left:50%;top:50%;width:6px;height:6px;border-radius:50%;background:var(--accent);animation:confetti .9s var(--ease-out) both;transform:rotate(calc(var(--i) * 60deg)) translateY(0)}.fc-done-pop i:nth-child(odd){background:var(--brand)}@keyframes pop{0%{transform:scale(0)}}@keyframes confetti{to{transform:rotate(calc(var(--i) * 60deg)) translateY(-34px) scale(.3);opacity:0}}.btn-gradient[aria-busy=true]{position:relative;overflow:hidden}.btn-gradient[aria-busy=true]:after{content:"";position:absolute;inset:0;width:50%;background:linear-gradient(110deg,transparent,oklch(100% 0 0 / .28),transparent);transform:translate(-120%);animation:sheen 1.4s var(--ease-out) infinite;pointer-events:none}@keyframes sheen{to{transform:translate(320%)}}.batch-working{padding:4px}@media(prefers-reduced-motion:reduce){.beam,.fc-done-pop i,.btn-gradient[aria-busy=true]:after,.working-core,.working-msg,.fc-done-pop{animation:none}.fc-done-pop i{display:none}}.mobile-bar{display:none}@media(max-width:860px){.mobile-bar{position:fixed;inset-inline:0;bottom:0;z-index:40;display:flex;gap:10px;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));border-top:1px solid var(--line);box-shadow:0 -8px 24px -12px hsl(var(--shadow-hsl) / .25)}.mobile-bar .btn-gradient{flex:1}body:has(.mobile-bar){padding-bottom:84px}.toasts{bottom:calc(96px + env(safe-area-inset-bottom))}}.demo-banner{display:flex;gap:8px;align-items:flex-start;padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));background:var(--brand-soft);color:var(--brand);font-size:13px;font-weight:500;line-height:1.4}.demo-banner svg{flex:none;margin-top:2px}.ad{display:grid;gap:6px;margin-block:8px}.ad-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}.ad-head .link-btn{font-size:11px;text-transform:none;letter-spacing:0;color:var(--brand)}.ad-box{border-radius:var(--r-md);background:var(--surface-2);border:1px dashed var(--line);display:grid;place-items:center;overflow:hidden}.ad-auto .ad-box{min-height:100px}.ad-banner .ad-box{min-height:90px}.ad-rect .ad-box{min-height:250px}.ad-box .adsbygoogle{width:100%}.house-ad{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;color:var(--ink)}.house-ico{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--grad-brand);color:#fff}.house-text{display:grid;flex:1;min-width:0}.house-text strong{font-size:14.5px}.house-text span{font-size:13px;color:var(--mute)}.consent{position:fixed;inset-inline:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:300;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 16px;max-width:760px;margin-inline:auto;box-shadow:var(--shadow-3);animation:toast-in var(--dur-3) var(--ease-spring) both}.consent-body{display:flex;gap:12px;align-items:flex-start;flex:1;min-width:260px}.consent-ico{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand)}.consent strong{color:var(--ink);font-size:14.5px}.consent p{font-size:13px;color:var(--body);margin-top:2px}.consent p a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.consent-actions{display:flex;gap:8px}@media(max-width:860px){body:has(.mobile-bar) .consent{bottom:calc(96px + env(safe-area-inset-bottom,0px))}}.pro-modal{max-width:min(92vw,560px)}.pro-hero{position:relative;padding:28px 24px 22px;background:var(--grad-brand);color:#fff;display:grid;gap:8px}.pro-hero h2{color:#fff;font-size:24px}.pro-hero p{color:#ffffffd9;font-size:14.5px}.pro-badge{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:4px 10px;border-radius:999px;background:#ffffff2e;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pro-close{position:absolute;top:12px;inset-inline-end:12px;color:#fff}.pro-close:hover{background:#ffffff26;color:#fff}.pro-body{display:grid;gap:18px}.pro-perks{display:grid;gap:8px}.pro-perks li{display:flex;gap:10px;align-items:center;font-size:14.5px;color:var(--ink)}.pro-perks svg{color:var(--ok);flex:none}.pro-active{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:var(--r-md);background:var(--ok-soft);color:var(--ok)}.pro-active div{display:grid;flex:1}.pro-active strong{color:var(--ink)}.field-hint.error{color:var(--danger)}.pro-btn{gap:6px}.pro-btn .pro-on{color:var(--accent)}.share{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin-top:18px}.share-title{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--mute)}.faq{margin-top:44px}.faq h2{font-size:22px;margin-bottom:14px}.faq details{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);margin-bottom:8px}.faq summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;cursor:pointer;list-style:none;font-weight:600;color:var(--ink);font-size:15px}.faq summary::-webkit-details-marker{display:none}.faq summary svg{flex:none;color:var(--mute);transition:transform var(--dur-2)}.faq details[open] summary svg{transform:rotate(180deg)}.faq details p{padding:0 18px 16px;font-size:14.5px;color:var(--body)}.table-wrap{overflow-x:auto;margin:12px 0 28px;border:1px solid var(--line);border-radius:var(--r-md)}table.specs{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}table.specs th,table.specs td{padding:10px 12px;text-align:start;vertical-align:top;border-bottom:1px solid var(--line)}table.specs th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--mute);background:var(--surface-2);position:sticky;top:0}table.specs tr:last-child td{border-bottom:0}table.specs a{font-weight:600}table.specs td a svg{vertical-align:middle;margin-inline-start:2px}.privacy-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12.5px;font-weight:600;text-decoration:none;border:1px solid var(--line)}.privacy-pill.ok{color:var(--ok);background:color-mix(in oklab,var(--ok) 10%,transparent)}.privacy-pill.warn{color:var(--danger);background:color-mix(in oklab,var(--danger) 10%,transparent)}.rate{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:var(--body)}.rate-done{color:var(--ok);font-weight:600}.proof-counter{display:flex;gap:14px;align-items:center;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line);margin:20px 0 28px}.proof-counter.ok{color:var(--ok);background:color-mix(in oklab,var(--ok) 8%,transparent)}.proof-counter.warn{color:var(--danger);background:color-mix(in oklab,var(--danger) 8%,transparent)}.proof-counter strong{font-size:17px}.proof-counter p{margin:2px 0 0;color:var(--body)}.post-list{list-style:none;padding:0;margin:24px 0;display:grid;gap:14px}.post-list a{display:block;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);text-decoration:none;color:inherit}.post-list a:hover{border-color:var(--brand)}.post-list h2{font-size:18px;margin:0 0 6px}.post-list p{margin:0 0 8px;color:var(--body)}.prose table{width:100%;border-collapse:collapse;margin:14px 0 22px;font-size:14px}.prose th,.prose td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:start;vertical-align:top}.prose th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--mute)}.app-shell{display:contents}.offline-gate{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:color-mix(in oklch,var(--bg) 70%,transparent);backdrop-filter:blur(6px);animation:offline-fade var(--dur-2) var(--ease-out)}.offline-card{width:min(440px,100%);display:grid;justify-items:center;gap:12px;text-align:center;padding:32px 28px;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-3);outline:none}.offline-card h2{margin:0;font-size:1.35rem;text-wrap:balance}.offline-card p{margin:0;color:var(--mute);line-height:1.55}.offline-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--brand-soft);color:var(--brand)}.offline-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}@keyframes offline-fade{0%{opacity:0}}.ocr-out{display:grid;gap:10px}.ocr-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}.ocr-text{width:100%;min-height:220px;resize:vertical;padding:12px;line-height:1.55;font-size:14.5px;font-family:var(--font);white-space:pre-wrap}.ocr-meta{display:flex;justify-content:space-between;align-items:center;font-size:12.5px}.ocr-actions{display:flex;flex-wrap:wrap;gap:8px}.photo-editor{display:grid;gap:12px;margin-block:8px 24px}.ed-bar{position:sticky;top:calc(var(--header-h) + 8px + env(safe-area-inset-top,0px));z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:6px}.ed-bar .btn-icon[aria-pressed=true]{background:var(--brand-soft);color:var(--brand)}.ed-sep{width:1px;height:24px;margin-inline:4px;background:var(--line)}.ed-main{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:start}.ed-stage{position:relative;display:grid;place-items:center;min-height:180px;padding:12px;overflow:hidden}.ed-stage .canvas-container{box-shadow:var(--shadow-2);touch-action:none}.ed-crop-bar{position:absolute;inset-inline:0;bottom:12px;display:flex;justify-content:center;gap:8px}.ed-hint{position:absolute;top:10px;inset-inline-start:50%;translate:-50% 0;margin:0;padding:4px 10px;border-radius:var(--r-full);background:var(--glass);backdrop-filter:blur(8px);font-size:12.5px;color:var(--ink);pointer-events:none;white-space:nowrap}[dir=rtl] .ed-hint{translate:50% 0}.ed-side{display:grid;gap:14px;padding:14px}.ed-tabs{width:100%}.ed-tabs button{flex:1}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--brand)}.swatch-input{width:28px;height:28px;padding:0;border:1px solid var(--line-2);border-radius:8px;background:none;cursor:pointer}.switch-row{display:flex;align-items:center;gap:10px;font-size:14px;cursor:pointer}.switch-row input{width:18px;height:18px;accent-color:var(--brand)}.ed-obj-actions{display:flex;flex-wrap:wrap;gap:6px;padding-top:6px;border-top:1px solid var(--line)}.ed-send{display:grid;gap:8px}.ed-new{display:inline-flex;align-items:center;gap:6px;justify-self:start}.flip-x{transform:scaleX(-1)}.rot-90{transform:rotate(90deg)}@media(max-width:900px){.ed-main{grid-template-columns:minmax(0,1fr)}.ed-bar{overflow-x:auto;flex-wrap:nowrap}.ed-bar .btn-icon{flex:none}}.ed-stickers{display:flex;flex-wrap:wrap;gap:4px}.ed-stickers .btn-icon{border:1px solid var(--line);background:var(--surface-2)}.chip-btn[aria-pressed=true]{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}.html-tool{display:grid;gap:12px;margin-block:8px 24px}.html-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:12px;align-items:start}.html-input{display:grid;gap:8px;padding:14px}.html-input-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.html-src{min-height:320px;resize:vertical;font-family:var(--mono);font-size:13px;line-height:1.5;white-space:pre;tab-size:2}.html-opts{display:grid;gap:14px;padding:14px}.html-result{padding:12px;overflow:auto;max-height:70vh}.html-result img{display:block;margin-inline:auto;box-shadow:var(--shadow-2)}.html-measure{position:absolute;left:-99999px;top:0;height:600px;border:0;visibility:hidden}@media(max-width:900px){.html-grid{grid-template-columns:minmax(0,1fr)}}.color-details{display:grid;gap:14px;padding-top:4px}.harmonies{display:grid;gap:10px}.harmony{display:grid;gap:4px}.harmony-row{display:flex;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--line)}.harmony-swatch{flex:1;min-height:40px;display:flex;align-items:flex-end;justify-content:center;padding:2px;border:0;cursor:pointer}.harmony-swatch span{font:600 10px var(--mono);padding:1px 4px;border-radius:4px;background:#fffc;color:#111;opacity:0;transition:opacity var(--dur-1)}.harmony-swatch:hover span,.harmony-swatch:focus-visible span{opacity:1}.contrast-row{display:flex;gap:12px;align-items:center}.contrast-sample{display:grid;place-items:center;width:64px;height:64px;border-radius:var(--r-sm);border:1px solid var(--line);font:800 26px var(--font);flex:none}.contrast-info{display:grid;gap:4px;font-size:13px}.contrast-bg{display:inline-flex;align-items:center;gap:6px}.contrast-bg input{width:26px;height:22px;padding:0;border:1px solid var(--line-2);border-radius:6px;background:none}.contrast-grades{display:flex;gap:6px}.contrast-grades span{padding:1px 8px;border-radius:var(--r-full);font-size:11.5px;font-weight:700}.contrast-grades .pass{background:var(--ok-soft);color:var(--ok)}.contrast-grades .fail{background:var(--danger-soft);color:var(--danger)}.tools-menu{position:static}.tools-menu-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--r-sm);font-weight:500;font-size:14.5px;color:var(--body);background:none;border:0;cursor:pointer}.tools-menu-btn:hover,.tools-menu-btn[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.tools-menu-caret{transition:rotate var(--dur-1)}.tools-menu-btn[aria-expanded=true] .tools-menu-caret{rotate:180deg}.tools-menu-ico{display:none}.tools-menu-panel{position:absolute;inset-inline:max(16px,calc((100vw - var(--maxw)) / 2));top:calc(var(--header-h) - 4px);z-index:60;padding:18px;max-height:calc(100dvh - var(--header-h) - 16px);overflow:auto;box-shadow:var(--shadow-3);animation:menu-in var(--dur-2) var(--ease-out) both}@keyframes menu-in{0%{opacity:0;translate:0 -6px}}.tools-menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px 24px}.tools-menu-col h3{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:oklch(55% .15 var(--hue))}.tools-menu-col ul{list-style:none;margin:0;padding:0;display:grid;gap:1px}.tools-menu-col a{display:flex;align-items:center;gap:6px;padding:5px 8px;margin-inline:-8px;border-radius:8px;font-size:14px;color:var(--ink)}.tools-menu-col a:hover,.tools-menu-col a[aria-current=page]{background:var(--brand-soft);color:var(--brand)}.tools-menu-all{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-weight:600;font-size:14px;color:var(--brand)}.badge-new{display:inline-block;margin-inline-start:6px;padding:1px 6px;border-radius:var(--r-full);font-size:10.5px;font-weight:700;letter-spacing:.02em;vertical-align:2px;background:color-mix(in oklch,var(--accent) 22%,transparent);color:light-dark(oklch(45% .12 60),var(--accent))}@media(max-width:760px){.nav-links{display:flex!important;order:3}.tools-menu-btn span,.tools-menu-caret{display:none}.tools-menu-ico{display:inline}.tools-menu-btn{padding:9px}.nav-links>a{display:none}}.after-run{position:fixed;z-index:190;inset-inline:0;bottom:calc(14px + env(safe-area-inset-bottom,0px));margin-inline:auto;width:min(1080px,calc(100vw - 32px));display:flex;align-items:center;gap:14px;padding:8px 8px 8px 14px;border-radius:var(--r-full);border:1px solid var(--line);background:var(--surface);color:var(--body);box-shadow:var(--shadow-3);animation:ar-in var(--dur-3) var(--ease-spring) both}body:has(.after-run){padding-bottom:84px}html:has(.after-run){scroll-padding-bottom:96px}.ar-msg{flex:1;min-width:0;display:flex;align-items:center;gap:10px}.ar-msg p{margin:0;font-size:13px;line-height:1.35;color:var(--mute);overflow:hidden;text-overflow:ellipsis}.ar-msg strong{color:var(--ink);font-weight:600}.ar-ok{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--ok-soft);color:var(--ok)}.ar-inline{display:inline-block;vertical-align:-2px;color:var(--brand)}.ar-actions{flex:none;display:flex;align-items:center;gap:8px}.ar-actions .btn{border-radius:var(--r-full);white-space:nowrap}.ar-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--r-full);background:var(--ok-soft);color:var(--ok);font-size:13px;font-weight:600;white-space:nowrap}.ar-x{flex:none;border-radius:50%}.ar-ios{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-full);background:var(--brand-soft);color:var(--ink);font-size:13px;font-weight:500}.ar-ios>svg:first-child{color:var(--brand)}@keyframes ar-in{0%{opacity:0;transform:translateY(18px)}}.btn-coffee{background:var(--accent);color:#301904;border-color:transparent;font-weight:600;box-shadow:var(--shadow-1)}.btn-coffee:hover{background:color-mix(in oklch,var(--accent) 88%,white);color:oklch(20% .05 60)}.foot-donate{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.rate-coffee{display:inline-flex;gap:4px;align-items:center;margin-inline-start:8px;font-weight:600}@media(max-width:1360px){.ar-msg p span{display:none}}@media(max-width:860px){.after-run{flex-wrap:wrap;gap:8px 10px;width:auto;inset-inline:10px;padding:10px 8px 10px 12px;border-radius:var(--r-xl)}body:has(.mobile-bar) .after-run{bottom:calc(76px + env(safe-area-inset-bottom,0px))}body:has(.after-run){padding-bottom:140px}body:has(.mobile-bar):has(.after-run){padding-bottom:250px}html:has(.after-run){scroll-padding-bottom:260px}.ar-msg{order:0;flex:1 1 0}.ar-msg p span{display:none}.ar-x{order:1}.ar-actions{order:2;flex:1 1 100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.ar-actions>:only-child,.ar-actions>:last-child:nth-child(odd),.ar-actions>.ar-ios{grid-column:1 / -1}.ar-ios{justify-content:center;flex-wrap:wrap;text-align:center}.ar-actions:has(>.ar-ios)>:last-child:nth-child(odd):not(.ar-ios){grid-column:auto}.ar-actions:has(>.ar-ios)>:last-child:nth-child(2n){grid-column:1 / -1}.ar-actions .btn,.ar-chip{justify-content:center;min-width:0;white-space:normal;text-align:center;line-height:1.2}}@media(prefers-reduced-motion:reduce){.after-run{animation:none}}.pro-modal{max-width:min(94vw,620px)}.pro-offline{display:flex;gap:10px;align-items:flex-start;margin:0;padding:10px 12px;border-radius:var(--r-md);background:var(--brand-soft);color:var(--ink);font-size:13.5px;line-height:1.45}.pro-offline svg{flex:none;color:var(--brand);margin-top:1px}.pro-perks{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));column-gap:16px}.plan-picker{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.plan-picker legend{padding:0;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--ink)}.plan-card{position:relative;display:grid;gap:4px;align-content:start;padding:14px 14px 12px;border-radius:var(--r-md);border:1.5px solid var(--line);background:var(--surface);cursor:pointer;transition:border-color var(--dur-1),box-shadow var(--dur-1),background var(--dur-1)}.plan-card:hover{border-color:var(--line-2)}.plan-card.is-on{border-color:var(--brand);background:color-mix(in oklab,var(--brand-soft) 55%,var(--surface));box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 18%,transparent)}.plan-card input{position:absolute;opacity:0;pointer-events:none}.plan-card:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}.plan-name{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;font-weight:600;color:var(--ink)}.plan-tag{font-style:normal;padding:1px 7px;border-radius:var(--r-full);background:var(--accent);color:#301904;font-size:11px;font-weight:700}.plan-price{color:var(--mute);font-size:12.5px}.plan-price b{color:var(--ink);font-size:22px;font-weight:800;letter-spacing:-.02em}.plan-sub{color:var(--mute);font-size:12px;line-height:1.35}.pro-cta{display:grid;gap:8px}.pro-secure{display:inline-flex;gap:6px;align-items:center;justify-content:center}.signin{display:grid;gap:10px;padding:16px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2)}.signin.is-asked{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 18%,transparent)}.signin h3{margin:0;font-size:15px;color:var(--ink)}.signin .field-hint{margin:0}.signin-providers{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.btn-provider{justify-content:flex-start;gap:10px;background:var(--surface);color:var(--ink);border:1px solid var(--line-2);font-weight:600}.btn-provider:hover:not(:disabled){background:var(--surface-3)}.btn-provider.is-apple svg{color:var(--ink)}.signin-email{display:grid;gap:8px}.signin-or{display:flex;align-items:center;gap:10px;color:var(--mute);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.signin-or:before,.signin-or:after{content:"";flex:1;height:1px;background:var(--line)}.signin-as{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0}.pro-key summary{cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink)}.pro-key .field{margin-top:10px}.pro-active{flex-wrap:wrap}.pro-active-actions{display:flex;gap:6px;flex-wrap:wrap}.pro-donate{display:flex;flex-wrap:wrap;gap:8px;align-items:center}@media(max-width:560px){.plan-picker{grid-template-columns:1fr}.plan-card{grid-template-columns:1fr auto;column-gap:10px}.plan-card .plan-price{grid-column:2;grid-row:1 / span 2;align-self:center;text-align:end}}.guide{margin-top:20px}.guide .lead{color:var(--body)}.guide section{display:grid;gap:12px}.guide h2{font-size:21px;margin-top:8px}.guide ul{padding-inline-start:1.2em;display:grid;gap:6px}.guide-table{overflow-x:auto;margin:4px 0}.guide-table table{margin:0;min-width:480px}.guide-table caption{caption-side:top;text-align:start;font-size:13px;color:var(--mute);padding-bottom:6px}.guide-table thead th{background:var(--surface-2);color:var(--ink);font-size:13px}.guide-table tbody th{font-weight:600;color:var(--ink)}.pricing-head{max-width:720px;display:grid;gap:4px}.price-grid{margin-top:28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;align-items:stretch}.price-card{position:relative;display:grid;gap:10px;align-content:start;padding:22px 20px}.price-card h2{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:17px;margin:0}.price-card .btn{margin-top:auto}.price-card.is-featured{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 18%,transparent),var(--shadow-2)}.price-flag{position:absolute;top:-11px;inset-inline-start:18px;padding:2px 10px;border-radius:var(--r-full);background:var(--grad-brand);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.03em}.price-amount{margin:0;color:var(--mute)}.price-amount b{color:var(--ink);font-size:34px;font-weight:800;letter-spacing:-.03em}.pricing .pro-secure{display:flex;justify-content:center;margin-top:14px}.pricing-sub{margin-top:48px;font-size:24px}.price-compare td,.price-compare th{vertical-align:middle}.price-compare td{text-align:center}.price-compare thead th:not(:first-child){text-align:center}.pc-yes{color:var(--ok)}.pc-no{color:var(--mute);opacity:.6}.pricing .faq{margin-top:40px}.price-compare td>svg{display:inline-block;margin-inline:auto;vertical-align:middle}.price-compare tbody th{text-transform:none;letter-spacing:0;font-size:14.5px;font-weight:500}.price-compare thead th:first-child{width:46%}.price-card .mute{min-height:2.8em}.guide.card{padding:clamp(20px,3vw,32px)}.guide ul{list-style:disc}.guide ul li::marker{color:var(--brand)}.guide-table tbody th,.guide-table thead th{text-transform:none;letter-spacing:0}.guide-table tbody th{font-size:14px}.guide .lead{max-width:70ch}.signup-btn .signup-short{display:none}@media(max-width:860px){.signup-btn .signup-long{display:none}.signup-btn .signup-short{display:inline}}.account-btn{width:34px;height:34px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--grad-brand);color:#fff;font-weight:700;font-size:14px;cursor:pointer;flex:none}.account-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.pro-gift{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px 14px;border-radius:var(--r-md);background:color-mix(in oklch,var(--accent) 18%,var(--surface));color:var(--ink);font-size:14px;line-height:1.45}.pro-gift svg{flex:none;color:light-dark(oklch(48% .12 60),var(--accent));margin-top:1px}@media(min-width:561px){.plan-picker{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.plan-tag.is-gift{background:var(--ok-soft);color:var(--ok)}.plan-card.is-free{border-style:dashed}.plan-card.is-free.is-on{border-style:solid}.pro-nudge{margin:0;color:var(--body);line-height:1.5}.pro-nudge .link-btn{color:var(--brand);font-size:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}.pro-terms{margin:0;text-align:center;color:var(--body)}.pro-credit{display:flex;gap:6px;align-items:center;justify-content:center;margin:0;color:var(--ok);font-weight:600}.pro-upgrade{display:grid;gap:8px;padding:14px;border-radius:var(--r-md);border:1px dashed var(--brand);background:color-mix(in oklab,var(--brand) 6%,var(--surface))}.pro-upgrade strong{color:var(--ink);font-size:14.5px}.pro-upgrade-actions{display:flex;flex-wrap:wrap;gap:8px}.pro-upgrade-actions .btn{white-space:normal}.price-fine{margin:-4px 0 0;font-size:12.5px;color:var(--mute);text-align:center}.toast-item .toast-body{display:grid;gap:8px}.price-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.price-card.is-free{border-style:dashed}.price-flag.is-gift{background:var(--ok)}.price-compare thead th:first-child{width:40%}.price-card{min-width:0}.price-card .btn{white-space:normal;text-align:center}@media(min-width:561px){.plan-card.is-free{grid-column:1 / -1;grid-template-columns:auto 1fr auto;column-gap:16px;align-items:center}.plan-card.is-free .plan-name{grid-column:1}.plan-card.is-free .plan-sub{grid-column:2}.plan-card.is-free .plan-price{grid-column:3;grid-row:1;text-align:end}}.pro-body{grid-template-columns:minmax(0,1fr)}.pro-cta .btn{white-space:normal;text-align:center}.plan-card .plan-price{white-space:nowrap}@media(max-width:560px){.plan-card .plan-sub{min-width:0}}.cat-bar{position:relative;z-index:40;border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--surface) 92%,transparent)}.cat-bar-inner{position:relative}.cat-bar-scroll{display:flex;gap:4px;margin:0;padding:6px 0;list-style:none;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.cat-bar-scroll::-webkit-scrollbar{display:none}.cat-btn{--c: light-dark(oklch(50% .15 var(--hue)), oklch(80% .11 var(--hue)));display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid transparent;border-radius:var(--r-full);background:none;color:var(--body);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background var(--dur-1),color var(--dur-1),border-color var(--dur-1)}.cat-btn svg{color:var(--c);flex:none}.cat-btn:hover,.cat-btn[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.cat-btn[aria-current=true]{background:color-mix(in oklch,var(--c) 14%,transparent);border-color:color-mix(in oklch,var(--c) 35%,transparent);color:var(--ink);font-weight:600}.cat-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.cat-pop{position:absolute;top:calc(100% - 2px);width:min(280px,calc(100vw - 32px));z-index:45;padding:8px;box-shadow:var(--shadow-3);animation:menu-in var(--dur-2) var(--ease-out) both}.cat-pop ul{display:grid;gap:1px;margin:0;padding:0;list-style:none}.cat-pop a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;color:var(--ink);font-size:14.5px}.cat-pop a:hover,.cat-pop a:focus-visible,.cat-pop a[aria-current=page]{background:var(--brand-soft);color:var(--brand);outline:none}.cat-pop-ico{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;flex:none;background:color-mix(in oklch,light-dark(oklch(50% .15 var(--hue)),oklch(80% .11 var(--hue))) 14%,transparent);color:light-dark(oklch(50% .15 var(--hue)),oklch(80% .11 var(--hue)))}.cat-pop-name{flex:1;min-width:0}.cat-pop .cat-pop-all{justify-content:space-between;margin-top:4px;border-top:1px solid var(--line);border-radius:0 0 10px 10px;font-weight:600;color:var(--brand)}@media(max-width:720px){.cat-bar-scroll{padding:6px 0;mask-image:linear-gradient(to right,#000 calc(100% - 28px),transparent)}[dir=rtl] .cat-bar-scroll{mask-image:linear-gradient(to left,#000 calc(100% - 28px),transparent)}.cat-btn{border-color:var(--line);padding:6px 11px;font-size:13.5px}.cat-pop{inset-inline-end:0;width:auto}}@media(prefers-reduced-motion:reduce){.cat-pop{animation:none}}.cat-pop-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;padding:8px 4px 2px;border-top:1px solid var(--line)}.cat-pop-presets .chip{font-size:12.5px;padding:4px 10px}.cat-pop .cat-pop-presets a{display:inline-flex;padding:4px 10px;border-radius:var(--r-full);color:var(--body)}.cat-pop .cat-pop-presets a:hover,.cat-pop .cat-pop-presets a[aria-current=page]{color:var(--brand)}.lazy-tool{display:grid;place-items:center;min-height:420px}.qr-grid,.sig-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;align-items:start}@media(max-width:860px){.qr-grid,.sig-grid{grid-template-columns:minmax(0,1fr)}}.qr-form,.qr-preview,.sig-input,.sig-out{padding:clamp(16px,2.4vw,24px);display:grid;gap:16px;min-width:0}.qr-kinds,.sig-modes{display:flex;width:100%}.qr-kinds button,.sig-modes button{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px}.qr-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 14px}.qr-sub{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);padding-top:8px;border-top:1px solid var(--line)}.qr-logo-row{display:flex;flex-wrap:wrap;gap:8px}.qr-more{border-top:1px solid var(--line);padding-top:6px}.qr-more summary{cursor:pointer;font-size:13.5px;font-weight:600;color:var(--body);padding:8px 0}.qr-more[open]{display:grid;gap:14px}.qr-preview{position:sticky;top:84px}@media(max-width:860px){.qr-preview{position:static}}.qr-canvas{display:grid;place-items:center;aspect-ratio:1;max-width:100%;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);padding:16px}.qr-canvas img{width:100%;max-width:320px;height:auto;image-rendering:pixelated}.qr-canvas p{text-align:center;font-size:14px;padding:0 12px}.qr-dl{display:flex;flex-wrap:wrap;gap:8px}.qr-dl .btn{flex:1 1 90px}.field-hint.error{display:flex;align-items:center;gap:6px}.sig-inks{display:flex;align-items:center;gap:10px}.sig-ink{width:30px;height:30px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line-2);cursor:pointer}.sig-ink[aria-pressed=true]{box-shadow:0 0 0 2px var(--brand)}.sig-ink-custom{width:34px;height:34px;padding:2px;border-radius:50%}.sig-pad{width:100%;height:auto;aspect-ratio:900 / 320;touch-action:none;cursor:crosshair;border-radius:var(--r-md);border:1px dashed var(--line-2);background:#fff;background-image:linear-gradient(transparent calc(72% - 1px),#c9ccd6 calc(72% - 1px),#c9ccd6 72%,transparent 72%)}.sig-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}.sig-row .range{flex:1 1 140px;width:auto}.sig-fonts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px}.sig-font{min-height:76px;padding:8px 14px;border-radius:var(--r-md);border:1px solid var(--line-2);background:#fff;font-size:clamp(22px,2.2vw,28px);line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.sig-font.is-on{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in oklab,var(--brand) 22%,transparent)}.sig-input>.btn{justify-self:start}.sig-result{--checker-a: #e6e8ee;--checker-b: #ffffff;display:grid;place-items:center;min-height:120px;padding:14px;border-radius:var(--r-md);border:1px solid var(--line);background-color:#fff}.sig-result img{max-height:200px;width:auto}.sig-out .btn-lg{width:100%}.sig-out .segmented.wrapable button,.qr-preview .segmented button{white-space:nowrap;flex:1 0 auto}.chip-swatch{display:inline-block;width:14px;height:14px;border-radius:50%;margin-inline-end:6px;vertical-align:-2px;box-shadow:inset 0 0 0 1px #0000001f}.vid-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px;align-items:start}@media(max-width:900px){.vid-grid{grid-template-columns:minmax(0,1fr)}}.vid-stage,.vid-opts{padding:clamp(16px,2.4vw,24px);display:grid;gap:16px;min-width:0}.vid-media{display:block;width:100%;max-height:60vh;object-fit:contain;border-radius:var(--r-md);background:#000}img.vid-media{background-color:var(--surface-2)}.vid-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.vid-name{font-weight:600;color:var(--ink);min-width:0;overflow-wrap:anywhere}.vid-meta .btn{margin-inline-start:auto}.vid-trim{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.vid-trim-row{display:flex;align-items:center;gap:10px}.vid-trim-row .range{flex:1}.vid-opts .btn-lg{width:100%}.vid-progress{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px}.vid-progress .progress>span{width:auto}.vid-result{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.vid-result .btn{justify-self:start}.eraser-tool{display:grid;gap:14px}.eraser-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:12px 16px}.eraser-brush{display:flex;align-items:center;gap:12px;flex:1 1 260px}.eraser-brush .range{flex:1}.eraser-actions{display:flex;flex-wrap:wrap;gap:6px}.eraser-stage{position:relative;justify-self:center;max-width:100%;line-height:0;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-1)}.eraser-view{display:block;max-width:100%;height:auto;max-height:72vh}.eraser-mask{position:absolute;inset:0;width:100%;height:100%;opacity:.55;touch-action:none}.eraser-stage.is-busy .eraser-mask{opacity:.3}.eraser-busy{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;background:#00000047;color:#fff;font-weight:600;line-height:1.2}.eraser-go{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.file-rest{margin-top:12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.file-rest-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;border:0;background:none;color:var(--ink);font:inherit;font-weight:600;text-align:start;cursor:pointer}.file-rest-toggle:hover{background:var(--surface-2)}.file-rest-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.file-rest-chev{transition:transform var(--dur-2);transform:rotate(-90deg);flex:none}[dir=rtl] .file-rest-chev{transform:rotate(90deg)}.file-rest-toggle[aria-expanded=true] .file-rest-chev{transform:none}.file-rest-sum{font-weight:500;font-size:13px}.file-rest-hint{margin-inline-start:auto;font-size:13px;color:var(--brand)}.file-rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);max-height:420px;overflow-y:auto}.file-row{display:flex;align-items:center;gap:6px;padding:6px 8px 6px 10px;border-bottom:1px solid var(--line)}.file-row:last-child{border-bottom:0}.file-row-open{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:4px;border:0;border-radius:var(--r-sm);background:none;color:inherit;font:inherit;text-align:start;cursor:pointer}.file-row-open:hover{background:var(--surface-2)}.file-row-open:focus-visible{outline:2px solid var(--brand)}.file-row-index{min-width:20px;font-size:12px;font-weight:700;color:var(--mute);text-align:center}.file-row-thumb{width:40px;height:40px;flex:none;border-radius:8px;object-fit:cover}.file-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;color:var(--ink)}.file-row-size{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--mute);white-space:nowrap}.file-row-size strong{color:var(--ink)}.file-row .chip{font-size:12px;padding:2px 8px}.file-row-status{display:inline-grid;place-items:center;width:20px;color:var(--ok, #16a34a)}.file-row.error .file-row-status{color:var(--danger)}.file-row-status .spinner{width:16px;height:16px}.file-row-actions{display:flex;gap:2px;flex:none}@media(max-width:560px){.file-row-size,.file-rest-sum{display:none}}
