:root {
  --primary-500: #0d6efd;
  --primary-600: #0b5ed7;
  --primary-700: #0a3e91;
  --surface: #f1f6ff;
  --card-radius: 18px;
}

body {
  background: radial-gradient(circle at 20% 20%, rgba(13,110,253,0.18), transparent 32%),
              radial-gradient(circle at 85% 10%, rgba(10,62,145,0.15), transparent 28%),
              linear-gradient(180deg, #f8fbff 0%, #eaf2ff 55%, #f8fbff 100%);
  min-height: 100vh;
  color: #0a1f44;
}

.navbar {
  background: linear-gradient(90deg, var(--primary-500), var(--primary-700));
}

.navbar .navbar-brand,
.navbar .nav-link,
.navbar .nav-link:focus,
.navbar .nav-link:hover,
.navbar .navbar-toggler {
  color: #fff !important;
}

.navbar .btn-outline-danger {
  border-color: rgba(255,255,255,0.7);
  color: #fff;
}

.navbar .btn-outline-danger:hover {
  background: #fff;
  color: var(--primary-600);
}

.card {
  border-radius: var(--card-radius);
  border: 1px solid rgba(13,110,253,0.08);
  box-shadow: 0 20px 50px rgba(13, 110, 253, 0.08);
  background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.badge { border-radius: 999px; }

.table td, .table th { vertical-align: middle; }

.btn-primary,
.btn-outline-primary:hover,
.btn-primary:focus {
  background: var(--primary-600);
  border-color: var(--primary-600);
  box-shadow: 0 6px 16px rgba(13,110,253,0.25);
}

.btn-outline-light {
  border-color: rgba(255,255,255,0.7);
  color: #0a1f44;
}

.btn-outline-light:hover { background: rgba(255,255,255,0.9); }

.btn-outline-primary {
  color: var(--primary-600);
  border-color: var(--primary-600);
}

.section-title {
  font-weight: 700;
  color: var(--primary-700);
}

.stat-pill {
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(13,110,253,0.12), rgba(9,77,181,0.05));
  border: 1px solid rgba(13,110,253,0.12);
}

.table thead th {
  background: #f0f5ff;
  border-bottom: 0;
}

.table > :not(caption) > * > * {
  padding: 12px;
}

.bg-glass {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(13,110,253,0.06);
  backdrop-filter: blur(8px);
}

.scroll-pane {
  max-height: 520px;
  overflow-y: auto;
  padding-right: 6px;
}

.scroll-pane::-webkit-scrollbar { width: 8px; }
.scroll-pane::-webkit-scrollbar-thumb { background: rgba(13,110,253,0.3); border-radius: 10px; }
.scroll-pane::-webkit-scrollbar-track { background: rgba(13,110,253,0.08); border-radius: 10px; }

.dashboard-equal { height: 100%; display: flex; flex-direction: column; }
.dashboard-equal .card-body { display: flex; flex-direction: column; height: 100%; }

.table-scroll-sm { max-height: 240px; overflow-y: auto; }
.table-scroll-lg { max-height: 380px; overflow-y: auto; }

.table-scroll-sm::-webkit-scrollbar,
.table-scroll-lg::-webkit-scrollbar { width: 8px; }
.table-scroll-sm::-webkit-scrollbar-thumb,
.table-scroll-lg::-webkit-scrollbar-thumb { background: rgba(13,110,253,0.25); border-radius: 10px; }
.table-scroll-sm::-webkit-scrollbar-track,
.table-scroll-lg::-webkit-scrollbar-track { background: rgba(13,110,253,0.06); border-radius: 10px; }
