@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-cyrillic-ext-wght-normal-Duf7tWJ7.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-cyrillic-wght-normal-DINSYtDx.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-vietnamese-wght-normal-DlPkZmYr.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-latin-ext-wght-normal-B5pmZ151.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Exo 2 Variable";font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/exo-2-latin-wght-normal-CQ1lLIdm.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-cyan:#00b9f2;--brand-magenta:#ec008c;--brand-yellow:#fff200;--brand-black:#000;--font-sans:"Exo 2 Variable", "Segoe UI", system-ui, sans-serif;--radius-sm:6px;--radius-md:10px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141418;--surface:#1c1c22;--surface-raised:#24242c;--border:#33333d;--text:#ececf1;--text-muted:#a3a4ab;--accent:var(--brand-cyan);--accent-text:#001a24;--accent-soft:#00b9f21f;--accent-ink:#7fdcff;--border-strong:#464653;--warning:#ffe14d;--success:#5fd39a;--danger:#ff6b8b;--focus-ring:var(--brand-cyan)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f6f8;--surface:#fff;--surface-raised:#eeeef2;--border:#d6d6de;--text:#1c1c1f;--text-muted:#5a5b63;--accent:#0077a3;--accent-text:#fff;--accent-soft:#0077a31a;--accent-ink:#005f82;--border-strong:#b9b9c4;--warning:#7a5d00;--success:#1d7a4c;--danger:#b0003a;--focus-ring:#0077a3}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.layout{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{gap:var(--space-4);height:100vh;padding:var(--space-6) var(--space-3) var(--space-4);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar__brand{padding:0 var(--space-3) var(--space-2);border-radius:var(--radius-sm);display:block}.sidebar__brand img{width:180px;height:auto}.sidebar__nav{gap:var(--space-4);display:grid}.sidebar__nav ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sidebar__group-label{margin:0 0 var(--space-1);padding:0 var(--space-3);color:var(--text-muted);font-size:.8125rem}.sidebar__link{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text);text-align:left;background:0 0;border:0;font-size:.9375rem;text-decoration:none;display:flex}.sidebar__link .icon{color:var(--text-muted);flex:none}.sidebar__link:hover{background:var(--surface-raised)}.sidebar__link[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.sidebar__link[aria-current=page] .icon{color:var(--accent-ink)}.sidebar__footer{padding-top:var(--space-3);border-top:1px solid var(--border);gap:2px;margin-top:auto;display:grid}.layout__main{padding:var(--space-8) clamp(var(--space-4), 5vw, 56px);align-content:start;gap:var(--space-4);display:grid}.tool{gap:var(--space-4);width:100%;max-width:820px;display:grid}.tool__header h1{margin:0;font-size:1.625rem;font-weight:600;line-height:1.25}.tool__description{margin:var(--space-1) 0 0;color:var(--text-muted);max-width:64ch}.notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);margin:0;font-size:.9375rem;display:flex}.notice .icon{flex:none;margin-top:2px}.notice--warning{color:var(--warning)}.notice--privacy{color:var(--text)}.notice--privacy .icon{color:var(--accent)}.choices{gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.choice{position:relative}.choice input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.choice span{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);padding:6px 14px;font-size:.9375rem;display:inline-block}.choice input:hover+span{background:var(--surface-raised)}.choice input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.choice input:focus-visible+span{outline:2px solid var(--focus-ring);outline-offset:2px}.dropzone{justify-items:center;gap:var(--space-1);padding:56px var(--space-6);border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);text-align:center;transition:border-color .12s,background-color .12s;display:grid}.dropzone--active{border-color:var(--accent);background:var(--accent-soft)}.dropzone__icon{color:var(--accent);margin-bottom:var(--space-2)}.dropzone__label{margin:0;font-size:1.125rem;font-weight:500}.dropzone__hint{color:var(--text-muted);margin:0}.link-button{color:var(--accent-ink);text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.file-list{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin:0;padding:0;list-style:none}.file-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.file-row+.file-row{border-top:1px solid var(--border)}.file-row__icon{color:var(--text-muted);display:flex}.file-row--ready .file-row__icon{color:var(--success)}.file-row--rejected .file-row__icon{color:var(--danger)}.file-row__body{min-width:0;display:grid}.file-row__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-row__meta{color:var(--text-muted);font-size:.875rem}.file-row__error{color:var(--danger)}.file-row__warning{color:var(--warning);display:block}.file-row__progress{width:100%;max-width:320px;height:6px;margin-top:var(--space-1);accent-color:var(--accent);display:block}.file-row__actions{align-items:center;gap:var(--space-2);display:flex}.file-row--done .file-row__icon{color:var(--success)}.file-row--needs-password .file-row__icon{color:var(--warning)}.password-form{gap:var(--space-2);margin-top:var(--space-2);display:flex}.password-form input{font:inherit;padding:var(--space-1) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}.file-row__detail{color:var(--text-muted);white-space:pre-wrap;font-size:.8125rem}.icon-button{padding:var(--space-1);border-radius:var(--radius-sm);color:var(--text-muted);background:0 0;border:0;display:flex}.icon-button:hover{background:var(--surface-raised);color:var(--text)}.banner{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:820px;padding:var(--space-3) var(--space-4);border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-soft);display:flex}.button{padding:var(--space-2) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);align-items:center;gap:var(--space-2);display:inline-flex}.button--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-text);font-weight:600}.about__block h2{margin:0 0 var(--space-2);font-size:1.125rem;font-weight:600}.about__list{margin:0 0 var(--space-3);gap:var(--space-2);padding:0;list-style:none;display:grid}.about__list li{justify-content:space-between;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.about__muted{color:var(--text-muted);margin:0}.about__select{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.about__actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.about__licenses summary{cursor:pointer;color:var(--accent-ink)}.about__licenses pre{max-height:320px;padding:var(--space-4);border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);white-space:pre-wrap;font-size:.8125rem;overflow:auto}.model-card{gap:var(--space-3);padding:var(--space-4) var(--space-6);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);display:grid}.model-card h2{margin:0;font-size:1.125rem;font-weight:600}.model-card__text{color:var(--text-muted);max-width:64ch;margin:0}.model-card__progress{width:100%;accent-color:var(--accent)}.model-card__actions{justify-content:flex-end;gap:var(--space-2);display:flex}.button:disabled,.icon-button:disabled{opacity:.45;cursor:not-allowed}.button--selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.editor{gap:var(--space-3);height:calc(100dvh - 2 * var(--space-8));grid-template-rows:auto auto auto minmax(0,1fr);min-height:420px;display:grid}.editor__bar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.editor__back{align-items:center;gap:var(--space-2);min-width:0;color:var(--text);text-decoration:none;display:inline-flex}.editor__name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.editor__meta{color:var(--text-muted);white-space:nowrap}.editor__actions,.editor__group{align-items:center;gap:var(--space-2);display:flex}.editor__tools{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.editor__slider{align-items:center;gap:var(--space-2);color:var(--text-muted);display:inline-flex}.editor__slider input{width:110px;accent-color:var(--accent)}.editor__select select,.about__select select{padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text)}.editor__zoom{text-align:center;min-width:4.5ch;color:var(--text-muted);font-variant-numeric:tabular-nums}.editor__stage{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-height:0;position:relative;overflow:hidden}.editor__canvas{touch-action:none;cursor:none;width:100%;height:100%;display:block}.editor__canvas--pan{cursor:grab}.editor__loading{padding:var(--space-6);color:var(--text-muted);margin:0}@media (width<=760px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;position:static}.sidebar__footer{margin-top:0}.layout__main{padding-top:var(--space-6)}}.settings{gap:var(--space-4) var(--space-6);flex-wrap:wrap;display:flex}.settings__hint{margin:calc(-1 * var(--space-2)) 0 0;color:var(--text-muted);font-size:.875rem}.number-field,.range-field{align-content:start;display:grid}.number-field__row,.range-field__row{align-items:center;gap:var(--space-2);font-size:.875rem;display:flex}.number-field input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:7em;color:var(--text);padding:4px 8px}.range-field input{width:160px;accent-color:var(--accent)}.range-field output{min-width:3em}.image-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0;padding:0;list-style:none;display:grid}.image-card{gap:var(--space-1);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:grab;display:grid}.image-card--dragged{opacity:.5}.image-card--rejected{border-color:var(--danger);cursor:default}.image-card__frame{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--surface-raised);justify-content:center;align-items:center;display:flex;overflow:hidden}.image-card__frame img{max-width:100%;max-height:100%}.image-card__placeholder{color:var(--text-muted);font-size:.8125rem}.image-card__name{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.image-card__error{color:var(--danger);font-size:.8125rem}.image-card__actions{justify-content:center;gap:var(--space-1);display:flex}.choices--small .choice span{padding:4px 12px;font-size:.875rem}.choices__legend{width:100%;margin-bottom:var(--space-2);color:var(--text-muted);padding:0;font-size:.875rem}.pdf-file-bar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);display:flex}.pdf-file-bar__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pdf-file-bar__meta{color:var(--text-muted);white-space:nowrap;margin-right:auto}.pdf-toolbar,.pdf-actions{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.pdf-actions__info{color:var(--text-muted);margin-right:auto}.page-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(104px,1fr));margin:0;padding:0;list-style:none;display:grid}.page-thumb{gap:var(--space-1);width:100%;padding:var(--space-1);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:2px solid #0000;display:grid}.page-thumb:hover{background:var(--surface-raised)}.page-thumb[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.page-thumb__frame{aspect-ratio:1;justify-content:center;align-items:center;display:flex;overflow:hidden}.page-thumb__frame img{max-width:100%;max-height:100%;box-shadow:0 0 0 1px var(--border);background:#fff;transition:transform .15s}.page-thumb__label{text-align:center;font-size:.8125rem}.crop-layout{align-items:start;gap:var(--space-4);grid-template-columns:auto minmax(0,1fr) 200px;display:grid}.crop-strip{gap:var(--space-2);width:76px;max-height:70dvh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.crop-stage{justify-content:center;min-width:0;display:flex}.crop-page{box-shadow:0 0 0 1px var(--border);background:#fff;position:relative;overflow:hidden}.crop-page img{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.crop-overlay{cursor:crosshair;touch-action:none;position:absolute;inset:0}.crop-rect{border:2px dashed var(--accent);cursor:move;position:absolute;box-shadow:0 0 0 9999px #00000073}.crop-handle{border:2px solid var(--accent);background:var(--surface);width:12px;height:12px;position:absolute}.crop-handle--nw{cursor:nwse-resize;top:-2px;left:-2px}.crop-handle--ne{cursor:nesw-resize;top:-2px;right:-2px}.crop-handle--sw{cursor:nesw-resize;bottom:-2px;left:-2px}.crop-handle--se{cursor:nwse-resize;bottom:-2px;right:-2px}.crop-panel{gap:var(--space-3);display:grid}.crop-panel__title{color:var(--text-muted);margin:0;font-size:.875rem}.crop-panel__hint{color:var(--text-muted);margin:0;font-size:.8125rem}.crop-field{align-items:center;gap:var(--space-2);grid-template-columns:64px minmax(0,1fr);font-size:.875rem;display:grid}.crop-field input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:0;color:var(--text);padding:4px 8px}.crop-scope{gap:var(--space-1);border:0;margin:0;padding:0;display:grid}@media (width<=720px){.crop-layout{grid-template-columns:minmax(0,1fr)}.crop-strip{width:auto;display:flex;overflow-x:auto}.crop-strip li{flex:none;width:76px}}
