/* Sentinel — Palantir/Gotham-style ops theme. Dark slate, dense tables, no external deps. */
:root{--bg:#0b1117;--panel:#111a23;--panel2:#0e151d;--line:#1e2b38;--txt:#d7e0e8;--mut:#8b98a5;--acc:#4da3ff;--acc2:#7cc4ff;--ok:#3fb950;--warn:#d29922;--bad:#f85149;--chip:#182635}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--txt);font:13px/1.5 -apple-system,"Inter","Segoe UI",Roboto,sans-serif}
a{color:var(--acc2);text-decoration:none}a:hover{text-decoration:underline}
.topbar{height:48px;display:flex;align-items:center;gap:16px;padding:0 16px;background:#0d141c;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.08em}.brand .mark{width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,#2f81f7,#7cc4ff);display:inline-block}
.brand small{color:var(--mut);font-weight:400;letter-spacing:.02em}
.nav{display:flex;gap:4px;margin-left:12px}.nav a{padding:6px 10px;border-radius:6px;color:var(--mut)}.nav a.on,.nav a:hover{background:var(--chip);color:var(--txt)}
.topright{margin-left:auto;color:var(--mut);font-size:12px;display:flex;gap:12px;align-items:center}
.layout{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 48px)}
.side{border-right:1px solid var(--line);background:var(--panel2);padding:14px 10px}.side h4{margin:10px 8px 6px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mut)}
.side a.item{display:block;padding:7px 10px;border-radius:6px;color:var(--mut)}.side a.item.on,.side a.item:hover{background:var(--chip);color:var(--txt)}
.main{padding:18px 22px;max-width:1280px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 14px}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.kpi .l{font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.08em}.kpi .v{font-size:24px;font-weight:700;margin-top:2px}.kpi .s{font-size:12px;color:var(--mut)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:14px}.card header{padding:10px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.card header h3{margin:0;font-size:13px}.card header .sp{margin-left:auto;display:flex;gap:8px;align-items:center}
table{width:100%;border-collapse:collapse;font-size:12.5px}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);text-align:left;padding:8px 12px;border-bottom:1px solid var(--line)}td{padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:top}
tr:hover td{background:#13202c}code.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;background:#0a0f14;border:1px solid var(--line);padding:1px 5px;border-radius:4px}
.pill{display:inline-block;padding:1px 8px;border-radius:20px;font-size:11px;border:1px solid var(--line);background:var(--chip)}.pill.hi{background:rgba(248,81,73,.15);border-color:#5a2326}.pill.md{background:rgba(210,153,34,.15);border-color:#5a4a1e}.pill.ok{background:rgba(63,185,80,.15);border-color:#1e4d2c}
.chip{display:inline-block;background:var(--chip);border:1px solid var(--line);border-radius:4px;padding:0 6px;margin:1px 2px;font-size:11px}
.btn{background:#1c2b3a;border:1px solid #2d4356;color:var(--txt);border-radius:6px;padding:5px 10px;font-size:12px;cursor:pointer}.btn:hover{background:#244052}.btn.primary{background:#1f6feb;border-color:#1f6feb;color:#fff}.btn.primary:hover{background:#2f81f7}
input,select{background:#0a0f14;border:1px solid var(--line);color:var(--txt);border-radius:6px;padding:5px 8px;font-size:12px}
.bar{height:6px;background:#0a0f14;border-radius:4px;overflow:hidden;min-width:90px}.bar i{display:block;height:100%;background:var(--acc)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mut{color:var(--mut)}.flash{background:rgba(63,185,80,.12);border:1px solid #1e4d2c;padding:8px 12px;border-radius:8px;margin-bottom:12px}
.toolbar{display:flex;gap:8px;align-items:center}input.search{min-width:220px}
@media(max-width:900px){.layout{grid-template-columns:1fr}.side{display:none}.kpis{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}}
.loginwrap{min-height:100vh;display:flex;align-items:center;justify-content:center}.logincard{width:360px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px}.logincard h1{margin:0 0 4px;font-size:18px}
