:root {
  --ns-orange: #F4841E;
  --ns-red: #E4392E;
  --ns-blue: #1E9BD7;
  --ns-blue-dark: #157AB3;
}

body {
  background: #f4f6f9;
  font-family: 'Segoe UI', system-ui, -apple-system, Roboto, Arial, sans-serif;
}

.ns-navbar {
  background: linear-gradient(90deg, var(--ns-blue-dark), var(--ns-blue));
}

.ns-navbar .nav-link {
  font-weight: 500;
}

.ns-navbar .nav-link.active {
  color: #fff !important;
  border-bottom: 2px solid var(--ns-orange);
}

.page-title {
  color: #1c2b39;
  font-weight: 600;
}

.card {
  border: none;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
}

.stat-card {
  border-radius: 14px;
  color: #fff;
  padding: 1.1rem 1.3rem;
}
.stat-card .stat-value { font-size: 1.8rem; font-weight: 700; }
.stat-card .stat-label { opacity: .9; font-size: .85rem; }

.stat-card.bg-orange { background: linear-gradient(135deg, var(--ns-orange), #ffb066); }
.stat-card.bg-red { background: linear-gradient(135deg, var(--ns-red), #ff7a70); }
.stat-card.bg-blue { background: linear-gradient(135deg, var(--ns-blue-dark), var(--ns-blue)); }
.stat-card.bg-dark { background: linear-gradient(135deg, #24313f, #45596e); }

.table-responsive { border-radius: 10px; overflow: hidden; }
.badge-branch { background: #e7f1ff; color: #1E9BD7; }

.login-wrap {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #157AB3, #F4841E);
  padding: 1rem;
}
.login-card {
  max-width: 400px;
  width: 100%;
  border-radius: 16px;
}

@media (max-width: 576px) {
  .stat-card .stat-value { font-size: 1.4rem; }
  main.container-fluid { padding-left: 12px; padding-right: 12px; }
}

.required::after { content: " *"; color: var(--ns-red); }

.btn-brand {
  background: var(--ns-blue-dark);
  border-color: var(--ns-blue-dark);
  color: #fff;
}
.btn-brand:hover { background: var(--ns-blue); border-color: var(--ns-blue); color: #fff; }
