/**
 * Azim LMS Brand Color System
 * Primary Brand Color: #A6BF06
 * Modern professional green-gold palette for consistent branding
 */

:root {
  /* Primary Brand Color Palette */
  --brand-primary: #A6BF06;
  --brand-primary-light: #C8DC56;
  --brand-primary-lighter: #E5F0A6;
  --brand-primary-lightest: #F3F8D4;
  --brand-primary-dark: #7D8C04;
  --brand-primary-darker: #5A6603;

  /* Brand Color Variants for UI States */
  --brand-hover: #B8CF20;
  --brand-active: #7D8C04;
  --brand-disabled: #9AAF00;
  --brand-focus: rgba(166, 191, 6, 0.25);

  /* Brand Gradients */
  --brand-gradient: linear-gradient(135deg, #A6BF06 0%, #7D8C04 100%);
  --brand-gradient-light: linear-gradient(135deg, #A6BF06 0%, #C8DC56 100%);
  --brand-gradient-reverse: linear-gradient(135deg, #7D8C04 0%, #A6BF06 100%);

  /* Update Bootstrap Primary Colors */
  --bs-primary: #A6BF06;
  --bs-primary-rgb: 166, 191, 6;
}

/* ====================================================================
   BUTTONS - Brand Color Updates
   ==================================================================== */

.btn-primary {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.btn-primary:hover {
  background-color: var(--brand-hover) !important;
  border-color: var(--brand-hover) !important;
  color: #ffffff !important;
}

.btn-primary:active,
.btn-primary.active {
  background-color: var(--brand-active) !important;
  border-color: var(--brand-active) !important;
  color: #ffffff !important;
}

.btn-primary:focus {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  box-shadow: 0 0 0 0.25rem var(--brand-focus) !important;
}

.btn-primary:disabled {
  background-color: var(--brand-disabled) !important;
  border-color: var(--brand-disabled) !important;
  color: #ffffff !important;
}

/* Outline Primary Button */
.btn-outline-primary {
  color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

.btn-outline-primary:hover {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.btn-outline-primary:active,
.btn-outline-primary.active {
  background-color: var(--brand-active) !important;
  border-color: var(--brand-active) !important;
  color: #ffffff !important;
}

.btn-outline-primary:focus {
  box-shadow: 0 0 0 0.25rem var(--brand-focus) !important;
}

/* ====================================================================
   BADGES & LABELS
   ==================================================================== */

.badge-primary,
.badge.bg-primary {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.badge.bg-primary-light {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
}

/* Status Badges */
.badge-published,
.badge.bg-success {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.badge-draft,
.badge.bg-warning {
  background-color: #F59E0B !important;
  color: #ffffff !important;
}

.badge-archived,
.badge.bg-secondary {
  background-color: #6B7280 !important;
  color: #ffffff !important;
}

/* ====================================================================
   FORMS & INPUTS
   ==================================================================== */

.form-control:focus,
.form-select:focus,
textarea.form-control:focus {
  border-color: var(--brand-primary) !important;
  box-shadow: 0 0 0 0.25rem var(--brand-focus) !important;
}

.form-control.is-valid {
  border-color: var(--brand-primary) !important;
}

.form-control.is-valid:focus {
  border-color: var(--brand-primary) !important;
  box-shadow: 0 0 0 0.25rem var(--brand-focus) !important;
}

/* Checkboxes */
.form-check-input:checked {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

.form-check-input:focus {
  border-color: var(--brand-primary) !important;
  box-shadow: 0 0 0 0.25rem var(--brand-focus) !important;
}

/* Radio Buttons */
.form-check-input[type="radio"]:checked {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

/* Toggle Switches */
.form-switch .form-check-input:checked {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

/* ====================================================================
   NAVIGATION & LINKS
   ==================================================================== */

.nav-link {
  color: inherit !important;
  transition: all 0.2s ease;
}

.nav-link:hover {
  color: var(--brand-primary) !important;
}

.nav-link.active {
  color: var(--brand-primary) !important;
  background-color: var(--brand-primary-lighter) !important;
  font-weight: 600;
}

/* Navbar Brand */
.navbar-brand {
  color: var(--text-main) !important;
}

/* Public Website Header Specificity Overrides - Matching Reference Image */
.public-navbar,
nav.public-navbar,
.navbar.public-navbar {
  background: linear-gradient(135deg, #f0ebff 0%, #ede9fe 30%, #fce7f3 70%, #f5f3ff 100%) !important;
  background-color: #ede9fe !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom: 1px solid rgba(108, 64, 247, 0.1) !important;
}

.public-navbar .navbar-brand,
.public-navbar .navbar-brand span,
.public-navbar .nav-link,
.public-navbar .nav-link span,
.public-navbar .navbar-toggler,
.public-navbar .navbar-toggler i,
.public-navbar .theme-toggle-btn,
.public-navbar .theme-toggle-btn i,
.public-navbar a.btn-outline-secondary,
.public-navbar .btn-sign-in {
  color: #000000 !important;
}

.public-navbar .nav-link:hover,
.public-navbar .nav-link:focus,
.public-navbar .nav-link.active {
  color: #000000 !important;
  background-color: rgba(108, 64, 247, 0.08) !important;
}

/* Active Menu Item Highlight */
.sidebar-menu .nav-link.active {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
  border-left: 3px solid var(--brand-primary) !important;
  padding-left: calc(1rem - 3px) !important;
  font-weight: 600;
}

.sidebar-menu .nav-link.active i {
  color: var(--brand-primary) !important;
}

/* ====================================================================
   PROGRESS BARS
   ==================================================================== */

.progress {
  background-color: var(--border-light);
}

.progress-bar,
.progress-bar.bg-primary {
  background-color: var(--brand-primary) !important;
  background-image: linear-gradient(
    45deg,
    rgba(255, 255, 255, 0.15) 25%,
    transparent 25%,
    transparent 50%,
    rgba(255, 255, 255, 0.15) 50%,
    rgba(255, 255, 255, 0.15) 75%,
    transparent 75%,
    transparent
  );
  background-size: 1rem 1rem;
}

/* ====================================================================
   TABLES
   ==================================================================== */

.table tbody tr:hover {
  background-color: rgba(166, 191, 6, 0.05) !important;
}

.table-primary,
.table-primary th,
.table-primary td,
.table-primary thead th {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
}

/* Table Action Buttons */
.table .btn-sm.btn-primary {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.table .btn-sm.btn-primary:hover {
  background-color: var(--brand-hover) !important;
  border-color: var(--brand-hover) !important;
}

/* ====================================================================
   CARDS & PANELS
   ==================================================================== */

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

.card-header.bg-primary {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.card-header.bg-primary-light {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
  border-color: var(--brand-primary-lighter) !important;
}

/* Dashboard Cards with Brand Highlight */
.dashboard-card {
  border-left: 3px solid var(--brand-primary) !important;
  transition: all 0.2s ease;
}

.dashboard-card:hover {
  box-shadow: 0 0 15px rgba(166, 191, 6, 0.15) !important;
}

.dashboard-card .card-header {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
  font-weight: 600;
}

/* ====================================================================
   ALERTS & NOTIFICATIONS
   ==================================================================== */

.alert-primary {
  background-color: var(--brand-primary-lighter) !important;
  border-color: var(--brand-primary) !important;
  color: var(--brand-primary-dark) !important;
}

.alert-primary a {
  color: var(--brand-primary-dark) !important;
  font-weight: 600;
}

.alert-primary .alert-link {
  color: var(--brand-active) !important;
}

/* ====================================================================
   PAGINATION
   ==================================================================== */

.pagination .page-link {
  color: var(--brand-primary) !important;
  border-color: var(--border-color) !important;
}

.pagination .page-link:hover {
  background-color: var(--brand-primary-lighter) !important;
  border-color: var(--brand-primary) !important;
  color: var(--brand-primary) !important;
}

.pagination .page-item.active .page-link {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

/* ====================================================================
   DROPDOWNS & POPOVERS
   ==================================================================== */

.dropdown-item.active {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
}

/* ====================================================================
   MODALS & DIALOGS
   ==================================================================== */

.modal-header {
  border-color: var(--border-color) !important;
}

.modal-header.bg-primary {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.modal-header .btn-close {
  opacity: 0.5;
}

/* ====================================================================
   BREADCRUMBS
   ==================================================================== */

.breadcrumb .active {
  color: var(--brand-primary) !important;
  font-weight: 600;
}

.breadcrumb a {
  color: var(--brand-primary) !important;
}

/* ====================================================================
   TABS & PILLS
   ==================================================================== */

.nav-tabs .nav-link {
  color: var(--text-muted) !important;
  border-color: transparent !important;
  border-bottom: 2px solid transparent !important;
  transition: all 0.2s ease;
}

.nav-tabs .nav-link:hover {
  color: var(--brand-primary) !important;
  border-color: transparent !important;
}

.nav-tabs .nav-link.active {
  background-color: transparent !important;
  color: var(--brand-primary) !important;
  border-color: transparent !important;
  border-bottom: 2px solid var(--brand-primary) !important;
  font-weight: 600;
}

.nav-pills .nav-link.active {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

/* ====================================================================
   SPINNERS & LOADERS
   ==================================================================== */

.spinner-border.spinner-border-primary {
  border-color: rgba(166, 191, 6, 0.25) !important;
  border-right-color: var(--brand-primary) !important;
}

.spinner-grow.spinner-grow-primary {
  background-color: var(--brand-primary) !important;
}

/* ====================================================================
   CUSTOM UTILITY CLASSES
   ==================================================================== */

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

.bg-brand-primary-light {
  background-color: var(--brand-primary-lighter) !important;
}

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

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

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

/* Brand Accent for Icons */
.icon-brand {
  color: var(--brand-primary) !important;
}

.icon-brand-light {
  color: var(--brand-primary-light) !important;
}

/* ====================================================================
   LINKS & TEXT COLORS
   ==================================================================== */

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

a.text-primary:hover {
  color: var(--brand-hover) !important;
}

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

/* ====================================================================
   HOVER & ACTIVE STATES
   ==================================================================== */

.list-group-item.active {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

.list-group-item.list-group-item-primary {
  background-color: var(--brand-primary-lighter) !important;
  color: var(--brand-primary-dark) !important;
  border-color: var(--brand-primary) !important;
}

/* ====================================================================
   RESPONSIVE ADJUSTMENTS
   ==================================================================== */

@media (max-width: 768px) {
  .nav-link.active {
    background-color: var(--brand-primary-lighter) !important;
  }

  .btn-primary {
    width: 100%;
  }
}

/* ====================================================================
   DARK MODE ADJUSTMENTS
   ==================================================================== */

[data-bs-theme="dark"] {
  --brand-primary-lighter: rgba(166, 191, 6, 0.2);
  --brand-focus: rgba(166, 191, 6, 0.3);
}

[data-bs-theme="dark"] .alert-primary {
  background-color: rgba(166, 191, 6, 0.15) !important;
  border-color: var(--brand-primary) !important;
  color: var(--brand-primary-light) !important;
}

[data-bs-theme="dark"] .dashboard-card {
  border-left-color: var(--brand-primary) !important;
}

[data-bs-theme="dark"] .dashboard-card:hover {
  box-shadow: 0 0 20px rgba(166, 191, 6, 0.2) !important;
}

[data-bs-theme="dark"] .sidebar-menu .nav-link.active {
  background-color: rgba(166, 191, 6, 0.15) !important;
}
