/**
 * Tema Keuangan HKBP - Mandai Wildlife Reserve style
 * Hijau Tua #009B4D | Putih Gading #FAF5E9 | Kuning Tangerine #FFCC00
 */
:root {
  --hkbp-green: #006B3D;
  --hkbp-green-dark: #004D2A;
  --hkbp-ivory: #FAF5E9;
  --hkbp-yellow: #FFCC00;
  --primary: var(--hkbp-green);
  --blue: var(--hkbp-green);
  --warning: var(--hkbp-yellow);
  --gray-dark: #1e3d2a;
  --dark: #1e3d2a;
}

/* Body & halaman login - putih gading */
body.bg-gradient-primary {
  background-color: var(--hkbp-ivory) !important;
  background-image: linear-gradient(180deg, var(--hkbp-ivory) 0%, #e8e4d9 100%) !important;
}

/* Sidebar & gradient primary - hijau tua (dingin di mata) */
.bg-gradient-primary {
  background-color: var(--hkbp-green) !important;
  background-image: linear-gradient(180deg, var(--hkbp-green) 10%, var(--hkbp-green-dark) 100%) !important;
}

.sidebar .nav-item .nav-link.active {
  color: var(--hkbp-yellow) !important;
}

/* Tombol primary */
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled):active {
  background-color: var(--hkbp-green) !important;
  border-color: var(--hkbp-green) !important;
}
.btn-primary:hover {
  background-color: var(--hkbp-green-dark) !important;
  border-color: var(--hkbp-green-dark) !important;
}

.btn-outline-primary {
  color: var(--hkbp-green) !important;
  border-color: var(--hkbp-green) !important;
}
.btn-outline-primary:hover {
  background-color: var(--hkbp-green) !important;
  border-color: var(--hkbp-green) !important;
  color: #fff !important;
}

/* Teks & border primary */
.text-primary { color: var(--hkbp-green) !important; }
a.text-primary:hover, a.text-primary:focus { color: var(--hkbp-green-dark) !important; }
.border-primary { border-color: var(--hkbp-green) !important; }
.border-left-primary { border-left-color: var(--hkbp-green) !important; }
.border-bottom-primary { border-bottom-color: var(--hkbp-green) !important; }

/* Card accent */
.card.border-left-primary { border-left-color: var(--hkbp-green) !important; }

/* Badge & alert primary */
.badge-primary,
.bg-primary {
  background-color: var(--hkbp-green) !important;
}
.alert-primary {
  background-color: rgba(0, 107, 61, 0.15);
  border-color: var(--hkbp-green);
  color: #004D2A;
}

/* Topbar - background hijau, teks terang */
.topbar-green {
  background-color: var(--hkbp-green) !important;
  background-image: linear-gradient(180deg, var(--hkbp-green) 10%, var(--hkbp-green-dark) 100%) !important;
}
.topbar-green .btn-link { color: rgba(255,255,255,0.9) !important; }
.topbar-green .btn-link:hover { color: #fff !important; }
.topbar-green .nav-link { color: rgba(255,255,255,0.9) !important; }
.topbar-green .nav-link:hover { color: #fff !important; }
.topbar-green .dropdown-toggle::after { border-top-color: rgba(255,255,255,0.9); }
.topbar-green .topbar-divider { border-left-color: rgba(255,255,255,0.3); }
.topbar-green .img-profile { border: 2px solid rgba(255,255,255,0.8); }
.topbar-green .dropdown-menu { border: none; }
.topbar-green .dropdown-item:hover { background-color: var(--hkbp-ivory); }

/* Scroll to top */
.scroll-to-top { background-color: var(--hkbp-green) !important; }
.scroll-to-top:hover { background-color: var(--hkbp-green-dark) !important; }

/* Icon circle (notifications) - bisa pakai kuning sebagai aksen */
.icon-circle.bg-primary { background-color: var(--hkbp-green) !important; }

/* Progress bar primary */
.progress-bar { background-color: var(--hkbp-green) !important; }

/* Link hover di sidebar */
.sidebar .nav-link:hover { color: var(--hkbp-yellow) !important; }

/* Area konten admin - putih gading lembut */
#content-wrapper { background-color: var(--hkbp-ivory); }

/* =============================================
   SIDEBAR SCROLL & HOVER ENHANCEMENTS
   ============================================= */

/* Sidebar scrollable */
.sidebar {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    height: 100vh !important;
    position: sticky !important;
    top: 0 !important;
}

/* Custom scrollbar — ikuti warna default browser */
.sidebar::-webkit-scrollbar {
    width: 8px;
}
.sidebar::-webkit-scrollbar-track {
    background: transparent;
}
.sidebar::-webkit-scrollbar-thumb {
    background: rgba(180, 180, 180, 0.5);
    border-radius: 4px;
}
.sidebar::-webkit-scrollbar-thumb:hover {
    background: rgba(180, 180, 180, 0.85);
}

/* Firefox scrollbar */
.sidebar {
    scrollbar-width: thin;
    scrollbar-color: rgba(180, 180, 180, 0.5) transparent;
}

/* Nav item hover — background highlight + transisi */
.sidebar .nav-item .nav-link {
    transition: background-color 0.2s ease, color 0.2s ease, padding-left 0.2s ease;
    border-radius: 0.35rem;
    margin: 1px 8px;
}

.sidebar .nav-item .nav-link:hover {
    background-color: rgba(255, 204, 0, 0.18) !important;
    color: var(--hkbp-yellow) !important;
    padding-left: 1.25rem !important;
}

/* Active item — lebih terang */
.sidebar .nav-item.active .nav-link {
    background-color: rgba(255, 204, 0, 0.12) !important;
    color: var(--hkbp-yellow) !important;
    font-weight: 600;
}

/* Collapse inner items hover */
.sidebar .collapse-item {
    transition: background-color 0.15s ease, color 0.15s ease, padding-left 0.15s ease;
    border-radius: 0.25rem;
}
.sidebar .collapse-item:hover {
    background-color: rgba(0, 107, 61, 0.12) !important;
    color: var(--hkbp-green) !important;
    padding-left: 1.5rem !important;
}
.sidebar .collapse-item.active {
    color: var(--hkbp-green) !important;
    font-weight: 600;
}

/* Sidebar heading label */
.sidebar .sidebar-heading {
    color: rgba(255, 204, 0, 0.65) !important;
    font-size: 0.65rem;
    letter-spacing: 0.1em;
}
