@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.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("./media/inter-cyrillic-wght-normal-JEOLYBOO.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("./media/inter-greek-ext-wght-normal-EOVOK2B5.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("./media/inter-greek-wght-normal-IRE366VL.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("./media/inter-vietnamese-wght-normal-CE5GGD3W.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("./media/inter-latin-ext-wght-normal-HA22NDSG.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("./media/inter-latin-wght-normal-NRMW37G5.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{--brand-700: #4416a8;--brand-600: #5a23c8;--brand-500: #6c2bd9;--brand-400: #8b5cf6;--brand-300: #b79df5;--brand-100: #ece4fb;--brand-50: #f6f2fe;--accent-600: #e8590c;--accent-500: #ff7a1a;--navy-950: #070d22;--navy-900: #0b1437;--navy-800: #131d4a;--navy-700: #1d2a63;--white: #ffffff;--bg: #f5f6fb;--surface:#ffffff;--line: #e7eaf3;--line-strong: #d4d9e8;--ink: #131722;--muted: #626c7e;--faint: #98a1b3;--green-bg: #e7f8ef;--green-fg: #0f7a45;--amber-bg: #fef3d8;--amber-fg: #9a6700;--red-bg: #fdeaea;--red-fg: #c4321f;--red: #e0402b;--spk-a: #6c2bd9;--spk-b: #0ea5a3;--spk-c: #e8590c;--spk-d: #d6409f;--spk-e: #2563eb;--r-sm: 8px;--r: 12px;--r-lg: 16px;--r-xl: 22px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .04);--shadow: 0 4px 14px rgba(16, 24, 40, .08);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .12);--ring: 0 0 0 3px rgba(108, 43, 217, .18);--font: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font);font-size:14.5px;line-height:1.55;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0 0 .4em;letter-spacing:-.018em;font-weight:700;line-height:1.2}h1{font-size:1.55rem}h2{font-size:1.2rem}h3{font-size:1rem}p{margin:0 0 1em}a{color:var(--brand-600);text-decoration:none}a:hover{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:10px;font:inherit;font-weight:600;font-size:.92rem;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s,transform .05s}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--brand-500);color:#fff;box-shadow:var(--shadow-sm)}.btn--primary:hover:not(:disabled){background:var(--brand-600)}.btn--accent{background:var(--accent-500);color:#fff;box-shadow:var(--shadow-sm)}.btn--accent:hover:not(:disabled){background:var(--accent-600)}.btn--ghost{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.btn--ghost:hover:not(:disabled){border-color:var(--brand-400);color:var(--brand-600)}.btn--subtle{background:var(--brand-50);color:var(--brand-600)}.btn--subtle:hover:not(:disabled){background:var(--brand-100)}.btn--sm{padding:7px 14px;font-size:.85rem;border-radius:9px}.btn--block{width:100%}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:22px}.field{display:grid;gap:6px}label{font-weight:600;font-size:.85rem;color:var(--ink)}input,select,textarea{font:inherit;width:100%;padding:10px 13px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink);transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-400);box-shadow:var(--ring)}.error-text{color:var(--red);font-size:.85rem;font-weight:600;margin:0}.muted{color:var(--muted)}.faint{color:var(--faint)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.02em}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9}.badge--queued,.badge--processing{background:var(--amber-bg);color:var(--amber-fg)}.badge--completed{background:var(--green-bg);color:var(--green-fg)}.badge--failed{background:var(--red-bg);color:var(--red-fg)}.page-head{margin-bottom:22px}.page-head h1{margin-bottom:2px}.page-head .sub{color:var(--muted);margin:0;font-size:.95rem}.stack{display:grid;gap:16px}.row{display:flex;align-items:center;gap:12px}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.text-center{text-align:center}.spinner{width:18px;height:18px;flex-shrink:0;border:2.5px solid var(--brand-100);border-top-color:var(--brand-500);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
