:root{color-scheme:dark;--bg:#081018;--panel:#101c27;--line:#233445;--text:#edf6ff;--muted:#8fa6b9;--cyan:#2dd4bf;--red:#fb5b68}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#12304a 0,transparent 32%),var(--bg);color:var(--text);font-family:Inter,Segoe UI,sans-serif}main{width:min(1100px,92vw);margin:48px auto}header{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}h1{font-size:clamp(36px,7vw,74px);line-height:.9;margin:8px 0}h2{margin-top:0}.eyebrow{color:var(--cyan);letter-spacing:.18em;font-weight:800}.panel{background:linear-gradient(145deg,#122331dd,#0d1721dd);border:1px solid var(--line);border-radius:22px;padding:24px;margin:18px 0;box-shadow:0 18px 60px #0005}.hero{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:16px}.metric{border-left:1px solid var(--line);padding-left:20px;display:flex;flex-direction:column;justify-content:center}.metric span,.muted{color:var(--muted)}.metric strong{font-size:26px;margin-top:8px}.badge{border:1px solid var(--line);border-radius:999px;padding:9px 14px}.controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px}button{border:1px solid #315066;background:#162b3a;color:var(--text);padding:14px;border-radius:13px;font:inherit;font-weight:750;cursor:pointer;transition:.18s}button:hover{transform:translateY(-2px);border-color:var(--cyan);color:var(--cyan)}button.danger{border-color:#7b313b;color:#ff8c95}.activity article{padding:13px 0;border-top:1px solid var(--line)}.activity code{color:var(--cyan)}
.hero{grid-template-columns:2fr repeat(5,1fr)}
.job-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.job-line time{margin-left:auto;color:var(--muted);font-size:13px}
.src{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 9px;white-space:nowrap}
.badge-status{font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px;white-space:nowrap}
.badge-status.pending{background:#f59e0b22;color:#fbbf24}
.badge-status.running{background:#3b82f622;color:#60a5fa}
.badge-status.completed{background:#22c55e22;color:#4ade80}
.badge-status.failed{background:#ef444422;color:#f87171}
pre.result{margin:10px 0 0;padding:10px 14px;background:#0b141d;border:1px solid var(--line);border-radius:10px;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5;color:#cde3f5}
.bar{height:6px;background:#233445;border-radius:99px;margin-top:10px;overflow:hidden}
.bar>div{height:100%;width:0;background:var(--cyan);border-radius:99px;transition:width .4s}
.metric strong.bad,#alarm.bad{color:var(--red)}
#toasts{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:10px;z-index:50}
.toast{background:#101c27;border:1px solid var(--line);border-left:4px solid var(--cyan);border-radius:12px;padding:12px 16px;max-width:380px;white-space:pre-wrap;word-break:break-word;font-size:14px;box-shadow:0 10px 30px #0008;animation:pop .2s}
.toast.failed{border-left-color:var(--red)}
.toast.completed{border-left-color:#22c55e}
.toast.pending{border-left-color:#f59e0b}
@keyframes pop{from{transform:translateY(8px);opacity:0}}
@media(max-width:960px){.hero{grid-template-columns:repeat(3,1fr)}.hero>div:first-child{grid-column:1/-1}}
@media(max-width:560px){.hero{grid-template-columns:1fr 1fr}}

