:root { --bg:#0b1020; --card:#111a33; --muted:#93a4c7; --text:#eaf0ff; --accent:#4ea1ff; --danger:#ff4e4e; --warn:#ffb020; }
body{font-family:system-ui,Segoe UI,Roboto,Arial; margin:0; background:#0b1020; color:var(--text);}
a{color:var(--accent); text-decoration:none}
.topbar{display:flex; gap:12px; align-items:center; padding:12px 16px; background:#0f1730; position:sticky; top:0; z-index:10;}
.topbar .brand{font-weight:700;}
.topbar .spacer{flex:1;}
.topbar .pill{padding:6px 10px; border-radius:999px; background:#14204a; color:var(--text); font-size:12px;}
.pill.ok{background:#143a22;}
.pill.bad{background:#3a1420;}
.container{max-width:1100px; margin:0 auto; padding:16px;}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px;}
.card{background:var(--card); border:1px solid #1b2a55; border-radius:14px; padding:14px;}
.card h2{margin:0 0 8px 0; font-size:16px;}
.muted{color:var(--muted); font-size:13px;}
.btn{display:inline-block; padding:9px 12px; background:var(--accent); color:#001028; border-radius:10px; border:0; cursor:pointer; font-weight:600;}
.btn.secondary{background:#243460; color:var(--text);}
.btn.danger{background:var(--danger); color:white;}
input,select,textarea{width:100%; padding:10px; border-radius:10px; border:1px solid #243460; background:#0f1730; color:var(--text);}
label{display:block; margin:10px 0 6px; font-size:13px; color:var(--muted);}
table{width:100%; border-collapse:collapse;}
th,td{padding:8px; border-bottom:1px solid #21325f; font-size:13px;}
th{text-align:left; color:var(--muted); font-weight:600;}
.row{display:flex; gap:10px; align-items:center; flex-wrap:wrap}
.right{margin-left:auto}
.badge{display:inline-block; padding:3px 8px; border-radius:999px; font-size:12px; border:1px solid #2a3c74;}
.badge.neg{background:#3a1420; border-color:#ff4e4e;}
.badge.low{background:#3a2b14; border-color:#ffb020;}
.nav{display:flex; gap:10px; flex-wrap:wrap;}
.nav a{padding:7px 10px; border-radius:10px; background:#14204a;}
.nav a.active{background:#2a3f86;}
.notice{padding:10px 12px; border-radius:12px; background:#14204a; border:1px solid #243460;}
.notice.warn{background:#3a2b14; border-color:#ffb020;}
.notice.danger{background:#3a1420; border-color:#ff4e4e;}
