:root{--bg:#0f172a;--panel:#111827;--muted:#94a3b8;--text:#e5e7eb;--accent:#38bdf8;--ok:#22c55e;--warn:#f59e0b;--danger:#ef4444;--line:#253047}*{box-sizing:border-box}body{margin:0;background:#0b1020;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:#070b16;border-right:1px solid var(--line);padding:22px}.brand{font-size:22px;font-weight:800;margin-bottom:28px;color:white}.sidebar a{display:block;color:#cbd5e1;text-decoration:none;padding:11px 12px;border-radius:10px;margin:4px 0}.sidebar a:hover{background:#172033;color:white}.main{margin-left:230px;padding:28px}.login-main{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top,#1e3a8a55,transparent 45%),#0b1020}.login-card{width:min(430px,92vw);background:#111827;border:1px solid var(--line);padding:30px;border-radius:22px;box-shadow:0 20px 60px #0008}.login-card h1{margin:0 0 8px}.login-card p{color:var(--muted)}label{display:block;color:#cbd5e1;font-size:14px;margin-bottom:10px}input,select,textarea{width:100%;border:1px solid #334155;background:#0b1220;color:white;border-radius:10px;padding:11px 12px;margin-top:5px}textarea{min-height:86px}button{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:white;border:0;border-radius:10px;padding:11px 16px;font-weight:700;cursor:pointer}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.topbar h1{margin:0}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.card,.panel{background:#111827;border:1px solid var(--line);border-radius:18px;padding:18px}.card b{display:block;font-size:28px}.card span{color:var(--muted);font-size:14px}.card.ok b{color:var(--ok)}.card.warn b{color:var(--warn)}.card.danger b{color:var(--danger)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel h2{margin:0 0 14px;font-size:18px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;border-bottom:1px solid #243047;padding:10px 8px;vertical-align:top}th{color:#93c5fd;font-weight:700}td{color:#e2e8f0}.muted{color:var(--muted)}.row-danger{background:#7f1d1d33}.badge{display:inline-block;background:#1e293b;color:#cbd5e1;padding:3px 8px;border-radius:999px;font-size:12px}.prio-critica{background:#7f1d1d;color:#fecaca}.prio-alta{background:#78350f;color:#fde68a}.scopebar{background:#0b1220;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:-6px 0 18px;color:#cbd5e1}.scopebar a{color:#7dd3fc;margin-left:10px}.filters{display:flex;gap:10px;margin-bottom:16px}.filters input,.filters select{max-width:360px;margin:0}.stack{display:grid;gap:10px}.stack input,.stack select,.stack textarea{margin:0}.check{display:flex;align-items:center;gap:9px}.check input{width:auto}.alert{padding:12px;border-radius:12px;margin:12px 0}.danger{background:#7f1d1d66;border-color:#991b1b}.todo{color:#cbd5e1;line-height:1.8}@media(max-width:1000px){.sidebar{position:static;width:auto}.main{margin-left:0}.cards,.grid2{grid-template-columns:1fr}.topbar{display:block}}

/* Layout fixes: prevent page-level horizontal scroll; tables scroll inside each card if needed */
html,body{max-width:100%;overflow-x:hidden}.main{width:calc(100vw - 230px);max-width:calc(100vw - 230px);overflow-x:hidden}.cards,.grid2{width:100%;min-width:0}.card,.panel{min-width:0;max-width:100%;overflow:hidden}.panel{overflow-x:auto}.panel table{width:100%;max-width:100%;table-layout:auto}.grid2>*{min-width:0}.cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}th,td{overflow-wrap:anywhere;word-break:normal}.panel::-webkit-scrollbar{height:8px}.panel::-webkit-scrollbar-thumb{background:#334155;border-radius:999px}
@media(max-width:1400px){.grid2{grid-template-columns:1fr}.panel table{font-size:13px}.main{padding:22px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.sidebar{position:static;width:100%}.main{margin-left:0;width:100%;max-width:100%;padding:16px}.cards{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.topbar{display:block}}
