:root{--ink:#17202a;--muted:#687386;--line:#e3e8ef;--brand:#12615b;--brand2:#0d4743;--bg:#f4f7f7;--white:#fff;--red:#a13232;--green:#13795b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}.topbar{height:68px;background:#102f2d;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1180px)/2));box-shadow:0 2px 12px #0002}.brand{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none;font-weight:750;font-size:18px}.brand span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#4fc1af;color:#092d2a}.topbar nav{display:flex;align-items:center;gap:22px}.topbar nav a,.topbar .link{color:#d7e8e6;text-decoration:none;font:inherit;background:none;border:0;cursor:pointer}.topbar nav form{display:inline}.container{max-width:1180px;margin:0 auto;padding:36px 24px 70px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.page-head h1{font-size:30px;letter-spacing:-.6px;margin:2px 0}.eyebrow{color:var(--brand);font-weight:800;font-size:12px;letter-spacing:1.4px;margin:0}.muted{color:var(--muted);margin:4px 0}.panel{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 4px 16px #17332e0a;margin-bottom:22px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.stat{background:#fff;border:1px solid var(--line);border-top:3px solid #4fb4a7;border-radius:12px;padding:20px}.stat span,.stat small{display:block;color:var(--muted)}.stat strong{display:block;font-size:28px;margin:5px 0;text-transform:capitalize}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.panel-head h2{margin:0;font-size:19px}.panel-head a,a{color:var(--brand);text-decoration:none}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.5px;background:#f8fafb}th,td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:middle}td small{display:block;color:var(--muted)}tr:last-child td{border-bottom:0}.badge{display:inline-block;padding:3px 9px;border-radius:20px;font-size:12px;font-weight:700;background:#e9eef2}.badge.completed{background:#dff3eb;color:#176248}.badge.failed{background:#fae4e4;color:#912d2d}.badge.running{background:#e3effc;color:#235a91}.badge.queued{background:#fff0d5;color:#7f5a14}.good{color:var(--green)}.warn{color:#9a6813}.button{border:1px solid #c9d3d5;background:white;color:var(--ink);border-radius:8px;padding:9px 14px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;font:inherit}.button.primary{background:var(--brand);border-color:var(--brand);color:white}.button:hover{filter:brightness(.96)}.button.small{padding:5px 9px;font-size:13px}.button.ghost{border-color:transparent}.danger-button{color:var(--red)}.wide{width:100%}.actions{display:flex;gap:8px;align-items:center}.filters{display:flex;gap:10px}.filters input{min-width:180px}.filters input:first-child{flex:1}.alert{padding:12px 16px;border-radius:9px;margin-bottom:18px}.alert.success{background:#dff3eb;color:#176248}.alert.danger{background:#fae4e4;color:#812828}input{width:100%;padding:10px 12px;border:1px solid #cbd5dc;border-radius:8px;font:inherit;background:white}label{display:block;font-weight:650;margin-bottom:16px}label input{margin-top:6px}.check{display:flex;align-items:center;gap:9px;font-weight:500}.check input{width:auto;margin:0}.form-card{max-width:650px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:5px 20px}.detail-grid div{padding:16px 10px;border-bottom:1px solid var(--line)}.detail-grid span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase}.detail-grid strong{display:block;margin-top:4px;font-weight:650;word-break:break-word}pre{background:#132522;color:#d5eee9;padding:20px;border-radius:10px;overflow:auto;max-height:520px;font-size:13px}.back{display:inline-block;margin-bottom:5px}.empty{text-align:center;color:var(--muted);padding:32px}.failure{border-top:1px solid var(--line);padding:14px 10px;color:var(--red)}.failure summary{cursor:pointer;font-weight:700}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#d3eee9,transparent 40%),#edf3f2}.login-card{width:min(420px,calc(100vw - 32px));background:white;border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 20px 60px #153a3520}.login-brand{color:var(--ink);margin-bottom:28px}.login-card h1{margin-bottom:0}.pagination{margin-top:18px}.pagination nav>div:first-child{display:none}.pagination nav>div:last-child{display:flex;justify-content:space-between;align-items:center}.pagination svg{width:18px}.pagination a,.pagination span{margin:0 2px}.pagination nav span[aria-current=page] span{background:var(--brand)!important;border-color:var(--brand)!important}
@media(max-width:760px){.topbar{height:auto;padding:14px 18px;align-items:flex-start}.topbar nav{gap:10px;flex-wrap:wrap;justify-content:flex-end}.container{padding:24px 14px}.page-head{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr}.filters{flex-direction:column}.detail-grid{grid-template-columns:1fr}.actions{flex-wrap:wrap}.topbar .brand{font-size:0}.topbar .brand span{font-size:18px}}
