:root{--bg:#0f172a;--panel:#1e293b;--border:#334155;--text:#e2e8f0;--muted:#94a3b8;--accent:#38bdf8;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:var(--accent)}h1,h2,h3,h4{margin:0 0 .75rem}h4{margin-top:1.25rem}input,select,button{font:inherit;border:1px solid var(--border);color:var(--text);background:#0b1220;border-radius:6px;padding:.45rem .7rem}button{background:var(--accent);color:#0b1220;cursor:pointer;border:none;font-weight:600}button:disabled{opacity:.5;cursor:default}button.danger{color:#fff;background:#ef4444}button.link{color:var(--accent);background:0 0;padding:0;font-weight:400}header{background:var(--panel);border-bottom:1px solid var(--border);align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}header nav{flex:1;gap:.25rem;display:flex}header nav button{color:var(--muted);background:0 0;align-items:center;gap:.4rem;display:inline-flex}header nav button svg{flex-shrink:0}header nav button.active{color:var(--text);background:var(--border)}main{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.card{background:var(--panel);border:1px solid var(--border);border-radius:10px;margin-bottom:1rem;padding:1rem 1.25rem;overflow-x:auto}.card form{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.card form.inline{flex-flow:wrap;margin:0 0 .75rem}.card form.inline input{flex:1;min-width:220px}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.toolbar h2,.toolbar h3{flex:1;margin:0}.muted{color:var(--muted)}.small{color:var(--muted);font-size:.8rem}.mono{font-family:ui-monospace,monospace;font-size:.85rem}.error{color:#fca5a5}.info{color:var(--accent);margin-bottom:.75rem}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.45rem .5rem}th{color:var(--muted);font-weight:500}tr.clickable{cursor:pointer}tr.clickable:hover{background:#24324a}tr.details pre,pre.ai{white-space:pre-wrap;background:#0b1220;border-radius:6px;padding:.75rem}.badge{text-transform:uppercase;border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:700}.sev-critical{color:#fecaca;background:#7f1d1d}.sev-high{color:#fed7aa;background:#9a3412}.sev-medium{color:#fef08a;background:#854d0e}.sev-low{color:#bfdbfe;background:#1e3a8a}.sev-info{color:#e2e8f0;background:#334155}.st-completed{color:#bbf7d0;background:#14532d}.st-running{color:#bfdbfe;background:#1e3a8a}.st-failed{color:#fecaca;background:#7f1d1d}.stats{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;display:flex}.stat{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.35rem;min-width:130px;padding:.75rem 1rem;display:flex}.stat span{color:var(--muted);font-size:.85rem}.stat strong{font-size:1.6rem}.grid2{grid-template-columns:2fr 1fr;gap:1rem;display:grid}.grid-side{grid-template-columns:300px 1fr;align-items:start;gap:1rem;display:grid}.list{margin:0;padding:0;list-style:none}.list li{cursor:pointer;border-radius:6px;flex-direction:column;padding:.5rem;display:flex}.list li.active,.list li:hover{background:var(--border)}.list small{color:var(--muted)}.bar{background:#0b1220;border-radius:4px;width:120px;height:10px}.bar div{background:linear-gradient(90deg,#facc15,#ef4444);border-radius:4px;height:100%}.login{place-items:center;min-height:100vh;padding:1rem;display:grid;position:relative;overflow:hidden}.login .card{z-index:1;width:360px;position:relative}.login-bg{z-index:0;pointer-events:none;background:radial-gradient(1200px 800px at 20% 10%,#7f1d1d8c,#0000 60%),radial-gradient(1000px 700px at 85% 90%,#9f123973,#0000 55%),radial-gradient(900px 600px at 70% 20%,#be185d2e,#0000 60%),linear-gradient(160deg,#1a0508 0%,#2b0a12 45%,#450a1a 100%);position:fixed;inset:0}.login-mesh{opacity:.9;width:100%;height:100%;position:absolute;inset:0}.login-card input{width:70%;margin-left:auto;margin-right:auto;display:block}.password-wrap{width:70%;margin:0 auto;display:flex;position:relative}.password-wrap input{width:100%;padding-right:2.6rem}.eye-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.35rem;font-weight:400;display:inline-flex;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.eye-btn:hover{color:var(--text);background:#94a3b81f}.version-tag{color:var(--muted);letter-spacing:.03em;margin-top:.75rem;font-family:ui-monospace,monospace;font-size:.75rem}.login-card{text-align:center}.login-image{border-radius:10px;width:100%;max-width:280px;margin-bottom:.75rem;margin-left:auto;margin-right:auto;display:block;box-shadow:0 4px 18px #0006}@media (width<=480px){.login .card{width:100%}.login-image{max-width:220px}}@media (width<=900px){.grid2,.grid-side{grid-template-columns:1fr}}.spacer{flex:1}.icon-btn{align-items:center;gap:.35rem;display:inline-flex}.host-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.75rem;margin-top:.75rem;display:grid}.host-card{border:1px solid var(--border);background:#0b1220;border-radius:10px;flex-direction:column;gap:.5rem;padding:.75rem;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;box-shadow:0 2px 8px #00000059}.host-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000073}.host-card.alive{border-color:#14532d}.host-card.idle{opacity:.75}.host-head{align-items:center;gap:.5rem;display:flex}.icon-alive{color:#4ade80}.icon-idle{color:var(--muted)}.chips{flex-wrap:wrap;gap:.3rem;display:flex}.chip{color:#bfdbfe;background:#1e3a8a;border-radius:999px;padding:.1rem .55rem;font-size:.72rem;font-weight:700}.empty-state{color:var(--muted);justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.card,.stat{box-shadow:0 2px 10px #00000040}.stat{transition:transform .15s}.stat:hover{transform:translateY(-2px)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;display:grid}.form-grid label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.form-grid label.check{flex-direction:row;align-items:center;gap:.5rem}@media (width<=700px){header{flex-wrap:wrap;padding:.6rem .9rem}main{padding:.9rem}.host-grid{grid-template-columns:1fr}.toolbar{gap:.5rem}}
