:root{--bg: #0b1117;--surface: #141c24;--surface-2: #1a2430;--border: #2a3644;--text: #e8edf2;--muted: #8b9aab;--accent: #2dd4a8;--accent-dim: #1a9e7a;--danger: #f87171;--warning: #fbbf24;--radius: 10px;--font: "DM Sans", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}#root{min-height:100vh}button,input,select,textarea{font:inherit}a{color:var(--accent)}.app{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}.header{margin-bottom:2.5rem}.header h1{margin:0 0 .35rem;font-size:1.75rem;font-weight:700;letter-spacing:-.02em}.header p{margin:0;color:var(--muted);font-size:.95rem}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border);padding-bottom:0}.tab{background:none;border:none;color:var(--muted);padding:.65rem 1rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:500;transition:color .15s,border-color .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.card h2{margin:0 0 .35rem;font-size:1.1rem}.card .subtitle{margin:0 0 1.25rem;color:var(--muted);font-size:.875rem}.form-grid{display:grid;gap:1rem}.form-row{display:grid;gap:.35rem}.form-row.two-col{grid-template-columns:1fr 1fr}@media(max-width:600px){.form-row.two-col{grid-template-columns:1fr}}label{font-size:.8rem;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}input[type=text],input[type=email],input[type=number],input[type=file],select{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.6rem .75rem;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-dim);outline-offset:1px}textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:.6rem .75rem;width:100%;min-height:80px;resize:vertical;font-family:var(--mono);font-size:.85rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--accent);color:#04120e;border:none;border-radius:6px;padding:.65rem 1.25rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.btn:hover:not(:disabled){background:#3ee8b8}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--border)}.job-panel{margin-top:1.5rem;padding:1rem 1.25rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.job-panel h3{margin:0 0 .75rem;font-size:.9rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.status-badge{display:inline-block;padding:.2rem .55rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-family:var(--mono)}.status-queued,.status-running{background:#fbbf2426;color:var(--warning)}.status-completed{background:#2dd4a826;color:var(--accent)}.status-failed{background:#f8717126;color:var(--danger)}.job-meta{margin:.5rem 0 0;font-size:.875rem;color:var(--muted)}.job-error{margin:.5rem 0 0;color:var(--danger);font-size:.875rem}.job-actions{margin-top:.75rem;display:flex;gap:.5rem}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
