:root{
  --brand-bg: #0b0f19;
  --brand-elev: #121829;
  --brand-surface: #0f1424;
  --brand-border: #1c2540;
  --brand-text: #e2e8f0;
  --brand-muted: #94a3b8;
  --accent: #e20074;
  --accent-2: #6a00f4;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
}
html,body{height:100%}
body{
  background: radial-gradient(1200px 600px at 10% -10%, rgba(226,0,116,.08), transparent 60%),
              radial-gradient(900px 400px at 120% 10%, rgba(106,0,244,.08), transparent 60%),
              var(--brand-bg);
  color: var(--brand-text);
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans";
}
.navbar{
  background: linear-gradient(90deg, rgba(10,13,24,.85), rgba(10,13,24,.85)) !important;
  backdrop-filter: blur(6px);
  border-bottom: 1px solid var(--brand-border);
}
.navbar .navbar-brand{
  font-weight: 700; letter-spacing: .3px; display: inline-flex; align-items: center; gap: .6rem;
}
.brand-dot{ inline-size:.85rem; block-size:.85rem; background: linear-gradient(135deg, var(--accent), var(--accent-2)); border-radius: 50%; box-shadow:0 0 16px rgba(226,0,116,.65); }
.btn-primary{ background: linear-gradient(135deg, var(--accent), var(--accent-2)); border:0; }
.btn-primary:hover{ opacity:.95 }
.card{ background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.02)) , var(--brand-surface); border:1px solid var(--brand-border); border-radius:16px; box-shadow: var(--shadow); }
.card-neo{ position:relative; overflow:hidden; }
.card-neo:before{ content:""; position:absolute; inset:-2px; background: conic-gradient(from 120deg, rgba(226,0,116,.12), rgba(106,0,244,.12), transparent 30%); filter: blur(24px); z-index:0; opacity:.35; pointer-events:none; }
.card-neo>*{ position:relative; z-index:1; }
.stat-icon{ inline-size:56px; block-size:56px; display:inline-flex; align-items:center; justify-content:center; border-radius:12px; background: rgba(226,0,116,.12); border:1px solid rgba(226,0,116,.35); }
.table{ --bs-table-bg: transparent; color: var(--brand-text); border-color: var(--brand-border); }
.table thead th{ color: #94a3b8; font-weight:600; text-transform: uppercase; letter-spacing:.04em; border-bottom-color: var(--brand-border); }
.table-hover tbody tr:hover{ background-color: rgba(226,0,116,.06); }
.badge{ border:1px solid var(--brand-border); background: rgba(255,255,255,.04); }
.footer-lite{ color:#94a3b8; border-top:1px solid var(--brand-border); }
.auth-wrap{ min-height:100vh; display:grid; grid-template-columns:1fr; }
@media(min-width:992px){ .auth-wrap{ grid-template-columns:1.2fr 1fr; } }
.auth-visual{ position:relative; background: radial-gradient(600px 280px at -10% 10%, rgba(226,0,116,.33), transparent 60%), radial-gradient(500px 220px at 110% 0%, rgba(106,0,244,.33), transparent 60%), linear-gradient(160deg, #0b0f19, #121829 50%, #0b0f19); border-right:1px solid var(--brand-border); }
.auth-visual .copy{ position:absolute; inset:0; display:grid; place-items:center; padding:clamp(2rem,4vw,4rem); text-align:center; }
.auth-visual h1{ font-size: clamp(1.625rem, 2.2vw, 2rem); margin:0; }
.auth-visual p{ margin:.75rem 0 0; color:#94a3b8; }
.glow{ position:absolute; inset:auto -40% -40% auto; inline-size:60%; aspect-ratio:1/1; background: radial-gradient(closest-side, rgba(226,0,116,.38), transparent); filter: blur(40px); }
.link-muted{ color:#94a3b8; } .link-muted:hover{ color:#e2e8f0; }
.nav-link{ color:#94a3b8 !important; } .nav-link.active, .nav-link:hover{ color:#fff !important; }
.form-control,.form-select{ background-color:#0d1427; border-color: var(--brand-border); color: var(--brand-text); }
.form-control:focus,.form-select:focus{ background-color:#0d1427; border-color: var(--accent); box-shadow:0 0 0 .2rem rgba(226,0,116,.15); }
.form-label{ color:#94a3b8; }
.kpi{ font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight:700; }
