:root{--red-500:#ef4444;--red-600:#dc2626;--red-700:#991b1b;--gradient-primary:linear-gradient(135deg, #dc2626 0%, #991b1b 50%, #450a0a 100%);--bg-deep:#0a0606;--bg-mid:#120808;--glass-bg:#280a0a73;--glass-border:#ffffff14;--text-primary:#f8fafc;--text-muted:#fca5a5;--text-secondary:#f87171;--glow-red:0 0 60px #dc262659;--radius-panel:20px;--radius-button:12px;--bg-scene:radial-gradient(ellipse 80% 50% at 20% 20%, #dc262638 0%, transparent 50%), radial-gradient(ellipse 60% 40% at 80% 80%, #991b1b2e 0%, transparent 50%), linear-gradient(180deg, #120808 0%, #0a0606 40%, #050303 100%);--input-bg:#00000059;--input-border:#ffffff40;--focus-ring:#dc262640;--error-text:#fca5a5;--card-shadow:0 25px 50px -12px #00000080;--topbar-bg:#0a0606a6;--link-hover:#fff;--ghost-text:#fff;--badge-bg:#00000040;--mode-card-bg:#00000040;--progress-track:#ffffff14;--toast-bg:#1e0808eb;--dot-idle:#444;--pill-ok-bg:#16a34a40;--pill-ok-fg:#86efac;--pill-err-bg:#dc26264d;--pill-err-fg:#fecaca;--pill-run-bg:#dc262638;--pill-run-fg:#fecaca;--pill-idle-bg:#ffffff14;--drop-hover:#dc262614;--error-bg:#991b1b40;--error-border:#ef444459;--modal-scrim:#0000008c;--tl-active:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-primary);background:var(--bg-deep);font-family:system-ui,Segoe UI,Roboto,sans-serif}html[data-theme=light]{--gradient-primary:linear-gradient(135deg, #ef4444 0%, #dc2626 52%, #b91c1c 100%);--bg-deep:#f8f4f2;--bg-mid:#fff8f6;--glass-bg:#ffffffb8;--glass-border:#7f1d1d1f;--text-primary:#1c0a0a;--text-muted:#7f1d1d;--text-secondary:#b91c1c;--glow-red:0 12px 36px #dc26262e;--bg-scene:radial-gradient(ellipse 80% 50% at 18% 12%, #ef444429 0%, transparent 52%), radial-gradient(ellipse 60% 40% at 88% 88%, #b91c1c1a 0%, transparent 50%), linear-gradient(180deg, #fff8f6 0%, #f8f4f2 42%, #f3ecea 100%);--input-bg:#ffffffe6;--input-border:#7f1d1d38;--focus-ring:#dc262647;--error-text:#991b1b;--card-shadow:0 20px 40px -16px #7f1d1d2e;--topbar-bg:#fff8f6d1;--link-hover:#7f1d1d;--ghost-text:#1c0a0a;--badge-bg:#ffffffb3;--mode-card-bg:#ffffffb3;--progress-track:#7f1d1d1f;--toast-bg:#fffffff0;--dot-idle:#d4b4b4;--pill-ok-bg:#16a34a24;--pill-ok-fg:#166534;--pill-err-bg:#dc26261f;--pill-err-fg:#991b1b;--pill-run-bg:#dc26261f;--pill-run-fg:#b91c1c;--pill-idle-bg:#7f1d1d14;--drop-hover:#dc26260f;--error-bg:#fee2e2d9;--error-border:#dc262647;--modal-scrim:#1c0a0a59;--tl-active:#1c0a0a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg-scene);background-attachment:fixed;margin:0}a{color:var(--text-muted)}a:hover{color:var(--link-hover)}h1,h2,h3{margin:0 0 8px;font-weight:600}p{margin:0}.muted{color:var(--text-muted)}.hint{color:var(--text-secondary);margin-top:20px;font-size:14px}.mono{font-family:ui-monospace,Consolas,monospace;font-size:13px}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--card-shadow)}.pad{padding:28px}.topbar{z-index:20;background:var(--topbar-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);align-items:center;gap:24px;padding:12px 24px;display:flex;position:sticky;top:0}.brand{color:var(--text-primary);letter-spacing:.04em;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:flex}.nav{flex:1;gap:16px;display:flex}.nav a{color:var(--text-muted);text-decoration:none}.nav a.active,.nav a:hover{color:var(--link-hover)}.userbox{align-items:center;gap:14px;display:flex}.username{color:var(--text-muted)}.linkish{color:var(--text-muted);cursor:pointer;text-underline-offset:3px;font:inherit;background:0 0;border:none;text-decoration:underline}.linkish:hover{color:var(--link-hover)}.theme-toggle{border:1px solid var(--glass-border);background:var(--input-bg);width:40px;height:40px;color:var(--text-primary);cursor:pointer;border-radius:12px;font-size:18px;line-height:1}.theme-toggle:hover{border-color:var(--red-500)}.page{max-width:1100px;margin:0 auto;padding:32px 20px 80px}.page-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.btn-primary{appearance:none;border-radius:var(--radius-button);color:#fff;background:var(--gradient-primary);box-shadow:var(--glow-red);cursor:pointer;font:inherit;border:0;padding:12px 18px;font-weight:600}.btn-primary:disabled{opacity:.6;cursor:wait}.btn-ghost{color:var(--ghost-text);border:1px solid var(--input-border);border-radius:var(--radius-button);cursor:pointer;font:inherit;background:0 0;margin-top:16px;padding:10px 16px}label{color:var(--text-muted);flex-direction:column;gap:8px;font-size:14px;display:flex}input,select,textarea{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);font:inherit;border-radius:12px;padding:12px 14px}input:focus,select:focus,textarea:focus{outline:2px solid var(--focus-ring);border-color:var(--red-600)}.form{flex-direction:column;gap:20px;display:flex}.row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.signs{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.dropzone{border:1px dashed var(--input-border);cursor:pointer;color:var(--text-muted);border-radius:16px;flex-direction:column;gap:6px;padding:22px;display:flex}.dropzone.over,.dropzone:hover{border-color:var(--red-500);background:var(--drop-hover)}.error-box{color:var(--error-text);background:var(--error-bg);border:1px solid var(--error-border);white-space:pre-wrap;border-radius:12px;padding:12px 14px}.login-wrap{place-items:center;min-height:100svh;padding:24px;display:grid;position:relative}.login-wrap .theme-toggle{position:absolute;top:20px;right:20px}.login-card{text-align:center;width:min(420px,100%);box-shadow:var(--glow-red);flex-direction:column;gap:16px;padding:36px 28px;display:flex}.login-card h1{letter-spacing:.12em}.login-card label{text-align:left}.table-wrap{border-radius:var(--radius-panel);border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:auto}table.jobs{border-collapse:collapse;width:100%}table.jobs th,table.jobs td{text-align:left;border-bottom:1px solid var(--glass-border);padding:14px 16px}table.jobs th{color:var(--text-muted);font-size:13px;font-weight:500}.badge{border:1px solid var(--glass-border);background:var(--badge-bg);border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.pill{border-radius:999px;padding:4px 10px;font-size:12px}.pill.ok{background:var(--pill-ok-bg);color:var(--pill-ok-fg)}.pill.err{background:var(--pill-err-bg);color:var(--pill-err-fg)}.pill.run{background:var(--pill-run-bg);color:var(--pill-run-fg)}.pill.idle{background:var(--pill-idle-bg);color:var(--text-muted)}.empty{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:48px;display:flex}.modal{background:var(--modal-scrim);z-index:40;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{width:min(920px,100%);padding:28px}.modes{flex-wrap:wrap;gap:16px;margin-top:16px;display:flex}.mode-card{border:1px solid var(--glass-border);background:var(--mode-card-bg);color:inherit;border-radius:16px;flex:220px;padding:22px;text-decoration:none;transition:transform .15s,box-shadow .15s}.mode-card:hover{background:var(--gradient-primary);color:#fff;box-shadow:var(--glow-red);transform:translateY(-3px)}.mode-icon{margin-bottom:8px;font-size:28px;display:block}.timeline{margin:0;padding:0;list-style:none}.tl{color:var(--text-muted);gap:14px;padding:10px 0;display:flex}.dot{background:var(--dot-idle);border-radius:50%;flex:none;width:14px;height:14px;margin-top:4px}.tl.done .dot{background:#22c55e}.tl.current .dot{background:var(--red-500);box-shadow:0 0 0 6px var(--focus-ring);animation:1.4s ease-in-out infinite pulse}.tl.error .dot{background:var(--red-600)}.tl.current,.tl.done,.tl.error{color:var(--tl-active)}.tl-time{color:var(--text-secondary);font-size:12px}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--focus-ring)}50%{box-shadow:0 0 0 8px #dc26261f}}.progress{background:var(--progress-track);border-radius:99px;height:6px;margin-bottom:20px;overflow:hidden}.bar{background:var(--gradient-primary);height:100%}.bar.ok{background:#22c55e}.bar.err{background:var(--red-600)}.results ul{flex-direction:column;gap:12px;margin:12px 0 0;padding:0;list-style:none;display:flex}.results li{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.username{color:var(--text-muted);text-decoration:none}.username:hover,.username.active{color:var(--link-hover)}.check{color:var(--text-primary);cursor:pointer;align-items:center;flex-direction:row!important;gap:12px!important}.check input{width:18px;height:18px;accent-color:var(--red-600)}.check.disabled{opacity:.55;cursor:not-allowed}.history-files{flex-direction:column;gap:16px;margin-top:24px;display:flex}.history-card-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.history-card ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.history-card li{justify-content:space-between;align-items:center;gap:12px;display:flex}.toast-stack{z-index:80;flex-direction:column;gap:10px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--toast-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--card-shadow);border-radius:14px;padding:14px 16px;animation:.22s ease-out toast-in}.toast strong{margin-bottom:4px;display:block}.toast p{color:var(--text-muted);word-break:break-word;margin:0 0 8px;font-size:13px}.toast-ok{border-color:#22c55e73}.toast-err{border-color:#ef444480}.toast-link{color:var(--text-primary);font-size:13px}.theme-row{flex-wrap:wrap;gap:10px;display:flex}.theme-choice{border:1px solid var(--glass-border);background:var(--input-bg);color:var(--text-primary);cursor:pointer;font:inherit;border-radius:12px;flex:140px;padding:12px 14px}.theme-choice.active{border-color:var(--red-500);box-shadow:0 0 0 3px var(--focus-ring)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.topbar{flex-wrap:wrap}.nav{order:3;width:100%}}
