:root{--bg:#f4f7fb;--panel:#fff;--ink:#172033;--muted:#637083;--line:#d9e1ec;--blue:#163d73;--green:#18794e;--amber:#a15c00;--red:#b42318}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.shell{min-height:100vh}.topbar{color:#fff;background:#0d2444;justify-content:space-between;align-items:center;gap:18px;padding:18px 28px;display:flex}.brand{font-size:20px;font-weight:800}.environment{letter-spacing:.06em;text-transform:uppercase;border:1px solid #ffffff59;border-radius:999px;padding:7px 12px;font-size:12px}.nav{border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;gap:14px;padding:12px 28px;display:flex}.nav a{color:var(--blue);border-radius:10px;padding:8px 10px;font-weight:700}.main{max-width:1320px;margin:0 auto;padding:28px}.grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 10px 30px #0d244412}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:span 12}h1{margin:0 0 8px;font-size:34px}h2{margin:0 0 14px;font-size:21px}p{color:var(--muted);line-height:1.5}.kpi{font-size:32px;font-weight:800}.badge{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-block}.ok{color:var(--green);background:#e9f7ef}.warn{color:var(--amber);background:#fff4df}.fail{color:var(--red);background:#fdecec}.info{color:var(--blue);background:#eaf2ff}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 8px}.table th{color:var(--muted);text-transform:uppercase;font-size:12px}.columns{grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px;display:grid}.lane{border:1px solid var(--line);background:#eef3f9;border-radius:16px;min-height:220px;padding:12px}.job{border:1px solid var(--line);background:#fff;border-radius:14px;margin-top:10px;padding:12px}.small{color:var(--muted);font-size:13px}.action{background:var(--blue);color:#fff;border-radius:12px;margin-top:12px;padding:10px 14px;font-weight:800;display:inline-block}@media (max-width:900px){.span-3,.span-4,.span-6,.span-8,.span-12{grid-column:span 12}.columns{grid-template-columns:1fr}}
