:root {
  --bs-primary: #309144;
  --bs-primary-rgb: 48, 145, 68;
}

.bg-primary {
  background-color: var(--bs-primary) !important;
}

.text-primary {
  color: var(--bs-primary) !important;
}

.border-primary {
  border-color: var(--bs-primary) !important;
}

.btn-primary {
  background-color: #309144;
  border-color: #309144;
}

.btn-primary:hover {
  background-color: #297c3b; /* versi lebih gelap */
  border-color: #297c3b;
}

.dropdown-notifications-list {
  max-height: 320px;
  overflow-y: auto;
}

.dropdown-notifications-item a {
  align-items: flex-start;
}

.notification-title {
  margin-bottom: 0.25rem;
}

.notification-message {
  margin-bottom: 0.25rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.notification-badge {
  align-self: flex-start;
  height: auto;
  padding: 0.25rem 0.5rem;
}

/* Sidebar active + hover */
.menu-vertical .menu-item.active > .menu-link,
.menu-vertical .menu-item.active > .menu-link .menu-icon,
.menu-vertical .menu-item.active > .menu-link div {
  color: #ffffff !important;
}

.menu-vertical .menu-item.active > .menu-link {
  background-color: #309144 !important;
}

.menu-vertical .menu-item:not(.active):hover > .menu-link,
.menu-vertical .menu-item:not(.active):focus-within > .menu-link {
  background-color: #deede1 !important;
  color: #384551 !important;
}

.menu-vertical .menu-item:not(.active):hover > .menu-link .menu-icon,
.menu-vertical .menu-item:not(.active):focus-within > .menu-link .menu-icon {
  color: #384551 !important;
}
