:root{
  --brand-primary: #0d3b66;
  --brand-bg: #faf0ca;
  --brand-accent: #f4d35e;
}
body{
  background: var(--brand-bg);
}
.navbar-gradient{
  background: linear-gradient(90deg, #0d3b66, #1b5e8c);
}
.boxed{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}
.card-hover:hover{
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.btn { padding: .6rem 1rem; }
.btn-login{ background-color: #0d6efd; color: #fff; }
.btn-create{ background-color: #198754; color: #fff; }
.btn-edit{ background-color: #ffc107; color: #000; }
.btn-delete{ background-color: #dc3545; color: #fff; }
.footer{
  text-align:center; padding:1rem; color:#333;
}
.card-title{ color: var(--brand-primary); }
.border-accent{ border-color: var(--brand-accent)!important; }


/* Warna teks status (bukan angkanya) pada kolom "Rinci per Status" */
.status-label {
  color: #fb5607;
  font-weight: 600; /* opsional: biar lebih terbaca */
}

.status-label { font-weight: 600; }

/* ===== Auth layout (login) ===== */
.auth-page {
  min-height: 100vh;                 /* vertikal tengah */
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 16px;                 /* ruang kiri-kanan di HP */
  padding-right: 16px;
}

.auth-card {
  width: 100%;
  max-width: 420px;                   /* batasi lebar agar tidak melebar */
}

/* Di layar >= 576px (sm), boleh rapat lagi kalau mau */
@media (min-width: 576px) {
  .auth-page {
    padding-left: 0;
    padding-right: 0;
  }
}

/* ===== Schedules list box (rapi di HP) ===== */
.list-box {
  border: 1px solid var(--bs-border-color);
  border-radius: .5rem;
  overflow: hidden;
  background: #fff;
}
.list-box-header {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
  justify-content: space-between;
  background: rgba(13, 59, 102, .06); /* tone dari #0d3b66 */
  padding: .5rem .75rem;
}
.list-box-header .btn {
  padding: .25rem .5rem;
  font-size: .85rem;
}
.list-box-body {
  padding: .5rem .75rem;
  overflow: auto;
  max-height: 220px;
}
.list-box-body .form-check-label { word-break: break-word; }
.h-cand { max-height: 180px; }
.h-user { max-height: 220px; }

/* Mobile */
@media (max-width: 576px) {
  .list-box-header { flex-direction: column; align-items: stretch; }
  .list-box-header .d-flex { flex-wrap: wrap; }
  .list-box-header .btn { width: 100%; }
}

/* Tombol: full-width di xs, auto di >= sm */
@media (min-width: 576px) { .w-sm-auto { width: auto !important; } }

/* Input minimal lebar enak di desktop; di HP auto full karena grid */
.minw-220 { min-width: 220px; }

/* ===== Search di list-box header ===== */
.list-box-search { width: 100%; }

/* Di layar >= sm, buat search tidak melebar agar tombol muat di samping */
@media (min-width: 576px) {
  .list-box-search { max-width: 280px; }
}

/* Search di header list-box: full-width di HP, dibatasi di >= sm */
.list-box-search { width: 100%; }
@media (min-width: 576px) {
  .list-box-search { max-width: 280px; }
}

/*modal warna BG putih*/
.modal-content { background-color: var(--bs-modal-bg, #fff); }

/* Persentase hasil polling (angka berwarna + bold) */
.stat-green { color:#08CB00; font-weight:700; }
.stat-red   { color:#E4004B; font-weight:700; }



