*{box-sizing:border-box}:root{--bg:#08111f;--card:#111c2d;--line:#263954;--text:#f5f7fb;--muted:#a8c1df;--accent:#28d9ff;--ok:#23d18b;--warn:#ffc857;--bad:#ff5d5d;--blue:#2f7df6}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#07101d,#0d1b31);color:var(--text)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:22px 36px;border-bottom:1px solid var(--line);background:rgba(12,24,42,.9)}.brand{display:flex;flex-direction:column;gap:4px}.brand img{max-height:48px;width:auto;object-fit:contain}.brand strong{font-size:22px}.brand span{color:var(--muted);font-size:13px}.actions{display:flex;gap:12px;align-items:center}.actions a,.actions button,button{background:#173054;color:white;border:1px solid #2d4a73;border-radius:12px;padding:11px 18px;text-decoration:none;font-weight:700;cursor:pointer}.actions button,button[type=submit]{background:var(--blue);border-color:var(--blue)}.container{max-width:1180px;margin:28px auto;padding:0 20px}.hero,.panel,.login-card{background:rgba(17,28,45,.92);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 18px 40px rgba(0,0,0,.25)}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.hero small{color:var(--accent);font-weight:800;letter-spacing:2px}.hero h1{font-size:42px;margin:10px 0}.hero p{color:var(--muted)}.pulse{width:130px;height:130px;border-radius:50%;border:1px solid var(--ok);display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:900}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.card{background:rgba(21,36,58,.8);border:1px solid var(--line);border-radius:18px;padding:20px}.card span{display:block;color:var(--muted);font-size:13px;margin-bottom:8px}.card strong{font-size:30px}.panel h2{margin-top:0}.agent-list{display:flex;flex-direction:column;gap:18px}.agent-card{background:rgba(8,17,31,.55);border:1px solid var(--line);border-radius:18px;padding:18px}.agent-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}.agent-head h3{margin:0 0 6px}.agent-head p,.agent-head small{color:var(--muted);margin:3px 0}.right{text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:14px}th{color:var(--muted)}.status{display:inline-block;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;background:#20334f}.status.ok{background:rgba(35,209,139,.15);color:var(--ok);border:1px solid rgba(35,209,139,.35)}.status.warn{background:rgba(255,200,87,.15);color:var(--warn);border:1px solid rgba(255,200,87,.35)}.status.bad{background:rgba(255,93,93,.15);color:var(--bad);border:1px solid rgba(255,93,93,.35)}.status.muted{color:var(--muted)}.empty,.loading,.alert{padding:18px;border-radius:14px;background:rgba(255,255,255,.05);color:var(--muted)}.alert{color:#ffd2d2;border:1px solid rgba(255,93,93,.35)}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:420px}.login-card h1{margin:0 0 6px}.login-card p{color:var(--muted)}.login-card label{display:block;margin-top:16px;color:var(--muted)}.login-card input{width:100%;margin-top:6px;padding:14px;border-radius:12px;border:1px solid var(--line);background:#07101d;color:white}.login-card button{width:100%;margin-top:22px}@media(max-width:800px){.topbar,.hero,.agent-head{flex-direction:column;align-items:flex-start}.cards{grid-template-columns:1fr 1fr}.hero h1{font-size:30px}.right{text-align:left;align-items:flex-start}}@media(max-width:520px){.cards{grid-template-columns:1fr}.container{padding:0 12px}.topbar{padding:18px}}
/* BDTEC Monitor v2.2 - Agentes inativos e remoção manual */
.status.inactive{
    background:rgba(168,193,223,.10);
    color:#a8c1df;
    border:1px solid rgba(168,193,223,.25);
}
.inactive-agent{
    opacity:.72;
}
.danger-btn{
    background:rgba(255,93,93,.14);
    color:#ff8b8b;
    border:1px solid rgba(255,93,93,.38);
    border-radius:10px;
    padding:8px 12px;
    font-weight:800;
    cursor:pointer;
}
.danger-btn:hover{
    background:rgba(255,93,93,.22);
}
.actions{
    flex-wrap:wrap;
}


/* BDTEC Monitor v3 - NOC / Quedas e instabilidades */
.section-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:16px;
}
.section-head h2{
    margin:0;
}
.section-head span{
    color:var(--muted);
    font-size:13px;
}
.outages-section{
    margin-top:22px;
}
.outages-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
}
.outage-card{
    background:rgba(8,17,31,.55);
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    padding:18px;
}
.outage-card.open{
    border-color:rgba(255,93,93,.45);
    box-shadow:0 0 25px rgba(255,93,93,.12);
}
.outage-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:14px;
}
.outage-top strong{
    font-size:16px;
}
.outage-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}
.outage-grid label{
    display:block;
    color:var(--muted);
    font-size:12px;
    margin-bottom:4px;
}
.outage-grid span{
    font-weight:700;
}
@media(max-width:820px){
    .outage-grid{
        grid-template-columns:1fr;
    }
    .section-head{
        align-items:flex-start;
        flex-direction:column;
    }
}
