:root{--bg:#0d1117;--bg-card:#161b22;--bg-hover:#1c2128;--border:#30363d;--text:#e6edf3;--text-muted:#8b949e;--accent:#e8630a;--accent-dim:rgba(232,99,10,0.15);--green:#3fb950;--yellow:#d29922;--red:#f85149;--blue:#58a6ff}*{box-sizing:border-box}body,html{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,monospace;margin:0}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px}.badge-pending{background:rgba(139,148,158,.15);color:var(--text-muted)}.badge-running{background:rgba(88,166,255,.15);color:var(--blue)}.badge-done{background:rgba(63,185,80,.15);color:var(--green)}.badge-failed{background:rgba(248,81,73,.15);color:var(--red)}.badge-cancelled{background:rgba(139,148,158,.1);color:var(--text-muted)}.progress-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .5s}.progress-bar-fill-done{background:var(--green)}input,select,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 10px;font-size:13px;outline:none}input:focus,select:focus{border-color:var(--accent)}button.btn-primary{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer}button.btn-primary:hover{opacity:.9}button.btn-primary:disabled{opacity:.4;cursor:default}button.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:6px;padding:6px 12px;font-size:13px;cursor:pointer}button.btn-ghost:hover{background:var(--bg-hover);color:var(--text)}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}td,th{border-bottom:1px solid var(--border)}td{padding:10px 12px}tr:last-child td{border-bottom:none}tr:hover td{background:var(--bg-hover)}