
:root{
  --bg:#07090d;--panel:#10141c;--panel2:#151b25;--line:#283040;--red:#ff2a2a;
  --red2:#b80000;--text:#f5f7fb;--muted:#99a3b3;--blue:#2d7cff;--green:#21c784;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:
radial-gradient(circle at 15% 0%,rgba(255,35,35,.14),transparent 28%),
linear-gradient(180deg,#080a0f,#05070a);color:var(--text)}
a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}
.sidebar{width:245px;background:linear-gradient(180deg,#0d1118,#090c12);border-right:1px solid #1d2530;padding:20px 14px;position:fixed;inset:0 auto 0 0}
.brand{font-weight:900;font-size:24px;letter-spacing:.5px;margin:2px 8px 24px}.brand span{color:var(--red)}
.nav a{display:block;padding:12px 14px;margin:5px 0;border-radius:10px;color:#cbd3df}.nav a:hover,.nav a.active{background:linear-gradient(90deg,#2a1013,#171a22);color:#fff;border-left:3px solid var(--red)}
.main{margin-left:245px;width:calc(100% - 245px);padding:24px}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.title h1{margin:0;font-size:26px}.muted{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.metric{font-size:30px;font-weight:800;margin-top:6px}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;background:#162233;color:#b9d0ff}.badge.green{background:#0f2d22;color:#7fe0b3}.badge.red{background:#311416;color:#ff9a9a}
.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer}.btn-primary{background:linear-gradient(180deg,#ff3d3d,#c80d0d);color:#fff}.btn-secondary{background:#202838;color:#fff}.btn-danger{background:#5d1014;color:#fff}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.input,.select,textarea{width:100%;background:#0c1118;color:#fff;border:1px solid #293244;border-radius:9px;padding:11px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.field label{display:block;font-size:12px;color:#aab3c2;margin:0 0 7px;text-transform:uppercase}
.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;border-bottom:1px solid #222a35;text-align:left;vertical-align:top}.table th{font-size:12px;color:#9da7b5;text-transform:uppercase}
.alert{padding:12px 14px;border-radius:10px;margin-bottom:14px}.alert-ok{background:#0f2d22;border:1px solid #1b6d4d}.alert-err{background:#351417;border:1px solid #81242b}
.login{min-height:100vh;display:grid;place-items:center;padding:20px}.loginbox{width:min(430px,100%);background:linear-gradient(180deg,#141923,#0d1118);border:1px solid #2c3440;border-radius:18px;padding:28px;box-shadow:0 25px 70px rgba(0,0,0,.45)}.loginlogo{text-align:center;font-size:34px;font-weight:900;margin-bottom:8px}.loginlogo span{color:var(--red)}
.actions{display:flex;gap:7px;flex-wrap:wrap}.small{font-size:12px}
@media(max-width:900px){.sidebar{position:static;width:100%;height:auto}.shell{display:block}.main{margin:0;width:100%}.cards{grid-template-columns:1fr 1fr}.grid2,.grid3{grid-template-columns:1fr}}
@media(max-width:560px){.cards{grid-template-columns:1fr}.main{padding:14px}.topbar{align-items:flex-start;gap:12px;flex-direction:column}}
