:root{--bg: #0b0e14;--surface: #11151f;--surface-2: #171c28;--surface-3: #1e2432;--border: #232a3a;--border-strong: #303950;--text: #d7dce6;--text-muted: #8b93a7;--text-faint: #5c6478;--accent: #34d399;--accent-dim: rgba(52, 211, 153, .12);--danger: #f87171;--danger-dim: rgba(248, 113, 113, .12);--ok: #34d399;--warn: #fbbf24;--warn-dim: rgba(251, 191, 36, .12);--info: #60a5fa;--info-dim: rgba(96, 165, 250, .12);--radius: 6px;--radius-lg: 10px;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px}.btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s}.btn:hover:not(:disabled){background:var(--surface-3)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.btn.primary:hover:not(:disabled){background:#34d39938}.btn.danger{background:transparent;border-color:var(--border);color:var(--danger)}.btn.danger:hover:not(:disabled){background:var(--danger-dim);border-color:var(--danger)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn.ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.btn.sm{padding:2px 8px;font-size:12px}.field{display:flex;flex-direction:column;gap:4px}.field>label{font-size:12px;font-weight:500;color:var(--text-muted)}.field>input,.field>select,.field>textarea{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text);padding:6px 10px;font-size:13px;outline:none;width:100%}.field>input:focus,.field>select:focus,.field>textarea:focus{border-color:var(--accent)}.field>input::placeholder,.field>select::placeholder,.field>textarea::placeholder{color:var(--text-faint)}.field>textarea{font-family:var(--mono);font-size:12.5px;resize:vertical}.field .hint{font-size:11.5px;color:var(--text-faint)}.checkbox{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.checkbox input{accent-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-4)}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:8px 12px;border-bottom:1px solid var(--border)}.table td{padding:8px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:hover{background:var(--surface-2)}.table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;gap:5px;padding:1px 8px;border-radius:999px;font-size:11.5px;font-weight:600;background:var(--surface-3);color:var(--text-muted)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.ok,.badge.running{background:var(--accent-dim);color:var(--ok)}.badge.error{background:var(--danger-dim);color:var(--danger)}.badge.warn,.badge.starting{background:var(--warn-dim);color:var(--warn)}.badge.info{background:var(--info-dim);color:var(--info)}.badge.plain:before{display:none}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.console{background:#05070b;border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-3);font-family:var(--mono);font-size:12px;color:var(--text-muted);overflow:auto;white-space:pre-wrap;word-break:break-all}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:13.5px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--mono);font-size:12.5px}h1,h2,h3{font-weight:600;margin:0}h1{font-size:18px}h2{font-size:15px}h3{font-size:13.5px}::selection{background:var(--accent-dim)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}input,select,textarea,button{font:inherit;color:inherit}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.danger-text{color:var(--danger)}.row{display:flex;align-items:center;gap:var(--sp-2)}.grow{flex:1}.stack{display:flex;flex-direction:column;gap:var(--sp-3)}
