:root{
  --card-radius: 16px;
  --cis-blue: #0b5ed7;
  --cis-green: #198754;
  --cis-yellow: #ffc107;
  --cis-ink: #0b1220;
}

.navbar-cis{
  background: linear-gradient(90deg, var(--cis-blue), var(--cis-green), var(--cis-yellow));
}
.navbar-cis .navbar-brand, .navbar-cis .nav-link{ text-shadow: 0 1px 0 rgba(0,0,0,.15); }
.card{ border-radius: var(--card-radius); }
.badge{ border-radius: 999px; }
.table thead th{ white-space: nowrap; }

.btn-cis{
  background: linear-gradient(90deg, var(--cis-blue), var(--cis-green));
  border: 0;
  color: #fff;
}
.btn-cis:hover{ filter: brightness(0.95); color:#fff; }

.kpi{
  border:1px solid rgba(0,0,0,.08);
  border-radius: var(--card-radius);
  padding: 14px 16px;
  background:#fff;
}
.kpi .value{ font-size: 1.6rem; font-weight: 700; }
.kpi .label{ color:#6c757d; font-size: .9rem; }

#map{ height: calc(100vh - 220px); min-height: 520px; border-radius: var(--card-radius); }

.legend{
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  padding: 10px 12px;
  font-size: 0.9rem;
}
.legend .swatch{ display:inline-block; width:14px; height:14px; border-radius:4px; margin-right:8px; border:1px solid rgba(0,0,0,.15); }
