:root {
    --primary-color: #3ec325;
    --primary-gradient: #30981d;
    --primary-text: #212529;
}

/* Force icon colors in dashboard stats - Highest priority */
.card-body .bg-primary.bg-opacity-10.text-primary,
.card-body div.bg-primary.bg-opacity-10.text-primary,
.card-body .bg-primary.bg-opacity-10.text-primary *,
.card-body div.bg-primary.bg-opacity-10.text-primary *,
.card-body .bg-primary.bg-opacity-10.text-primary i.bi,
.card-body div.bg-primary.bg-opacity-10.text-primary i.bi,
.card-body .bg-primary.bg-opacity-10.text-primary .bi,
.card-body div.bg-primary.bg-opacity-10.text-primary .bi {
    color: #3ec325 !important;
}

.card-body .bg-info.bg-opacity-10.text-info,
.card-body div.bg-info.bg-opacity-10.text-info,
.card-body .bg-info.bg-opacity-10.text-info *,
.card-body div.bg-info.bg-opacity-10.text-info *,
.card-body .bg-info.bg-opacity-10.text-info i.bi,
.card-body div.bg-info.bg-opacity-10.text-info i.bi,
.card-body .bg-info.bg-opacity-10.text-info .bi,
.card-body div.bg-info.bg-opacity-10.text-info .bi {
    color: #3ec325 !important;
}

.card-body .bg-success.bg-opacity-10.text-success,
.card-body div.bg-success.bg-opacity-10.text-success,
.card-body .bg-success.bg-opacity-10.text-success *,
.card-body div.bg-success.bg-opacity-10.text-success *,
.card-body .bg-success.bg-opacity-10.text-success i.bi,
.card-body div.bg-success.bg-opacity-10.text-success i.bi,
.card-body .bg-success.bg-opacity-10.text-success .bi,
.card-body div.bg-success.bg-opacity-10.text-success .bi {
    color: #3ec325 !important;
}

.card-body .bg-warning.bg-opacity-10.text-warning,
.card-body div.bg-warning.bg-opacity-10.text-warning,
.card-body .bg-warning.bg-opacity-10.text-warning *,
.card-body div.bg-warning.bg-opacity-10.text-warning *,
.card-body .bg-warning.bg-opacity-10.text-warning i.bi,
.card-body div.bg-warning.bg-opacity-10.text-warning i.bi,
.card-body .bg-warning.bg-opacity-10.text-warning .bi,
.card-body div.bg-warning.bg-opacity-10.text-warning .bi {
    color: #ffc107 !important;
}

.card-body .bg-danger.bg-opacity-10.text-danger,
.card-body div.bg-danger.bg-opacity-10.text-danger,
.card-body .bg-danger.bg-opacity-10.text-danger *,
.card-body div.bg-danger.bg-opacity-10.text-danger *,
.card-body .bg-danger.bg-opacity-10.text-danger i.bi,
.card-body div.bg-danger.bg-opacity-10.text-danger i.bi,
.card-body .bg-danger.bg-opacity-10.text-danger .bi,
.card-body div.bg-danger.bg-opacity-10.text-danger .bi {
    color: #dc3545 !important;
}

.card-body .bg-secondary.bg-opacity-10.text-secondary,
.card-body div.bg-secondary.bg-opacity-10.text-secondary,
.card-body .bg-secondary.bg-opacity-10.text-secondary *,
.card-body div.bg-secondary.bg-opacity-10.text-secondary *,
.card-body .bg-secondary.bg-opacity-10.text-secondary i.bi,
.card-body div.bg-secondary.bg-opacity-10.text-secondary i.bi,
.card-body .bg-secondary.bg-opacity-10.text-secondary .bi,
.card-body div.bg-secondary.bg-opacity-10.text-secondary .bi {
    color: #6c757d !important;
}

/* Override Bootstrap Primary Color */
.bg-primary,
.btn-primary,
.border-primary,
.nav-link.active,
.badge.bg-primary {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: white !important;
}

.btn-primary {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-gradient) 100%);
    border: none;
}

.btn-primary:hover {
    background: linear-gradient(135deg, var(--primary-gradient) 0%, var(--primary-color) 100%);
    opacity: 0.9;
}

.text-primary {
    color: var(--primary-gradient) !important;

    background-color: transparent !important;
}

.border-primary {
    border-color: var(--primary-color) !important;
}

.bg-primary.bg-opacity-10 {
    background-color: rgba(62, 195, 37, 0.1) !important;
}

.nav-link.active {
    border-left-color: var(--primary-color) !important;
}

/* Additional green theme styles */
.btn-outline-primary {
    color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.btn-outline-primary:hover {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: white !important;
}

.link-primary {
    color: var(--primary-color) !important;
}

.link-primary:hover {
    color: var(--primary-gradient) !important;
}

.alert-primary {
    background-color: rgba(62, 195, 37, 0.1) !important;
    border-color: var(--primary-color) !important;
    color: var(--primary-gradient) !important;
}

.form-check-input:checked {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 0.25rem rgba(62, 195, 37, 0.25) !important;
}

/* Auth pages specific styles */
a.text-decoration-none.fw-medium {
    color: var(--primary-color) !important;
}

a.text-decoration-none.fw-medium:hover {
    color: var(--primary-gradient) !important;
}

/* Info Color - Blue for Programs and Available for Review (with inline style) */
.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"],
div.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] {
    background-color: rgba(13, 202, 240, 0.1) !important;
}

.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] *,
.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] i,
.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] .bi,
div.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] *,
div.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] i,
div.bg-info.bg-opacity-10[style*="background-color: rgba(13, 202, 240"] .bi {
    color: #0dcaf0 !important;
}

/* Override Bootstrap Info Color to Green (for badges and other elements) */
.bg-info:not(.bg-opacity-10),
.badge.bg-info {
    background-color: var(--primary-color) !important;
    color: white !important;
}

.text-info:not([style*="color: #0dcaf0"]) {
    color: var(--primary-color) !important;
}

.bg-info.bg-opacity-10:not([style*="background-color: rgba(13, 202, 240"]) {
    background-color: rgba(62, 195, 37, 0.1) !important;
}

.badge.bg-white.text-info {
    background-color: white !important;
    color: var(--primary-color) !important;
}

/* Button Gradients - Success (Green) */
.btn-success,
.badge.bg-success,
.bg-success {
    background: linear-gradient(135deg, #3ec325 0%, #30981d 100%) !important;
    border: none !important;
    color: white !important;
}

.btn-success:hover {
    background: linear-gradient(135deg, #30981d 0%, #3ec325 100%) !important;
    opacity: 0.9;
}

.text-success {
    color: var(--primary-color) !important;
    background-color: transparent !important;
}

/* Button Gradients - Danger (Red) */
.btn-danger,
.badge.bg-danger {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    border: none !important;
    color: white !important;
}

.btn-danger:hover {
    background: linear-gradient(135deg, #c82333 0%, #dc3545 100%) !important;
    opacity: 0.9;
}

/* Button Gradients - Warning (Yellow) */
.btn-warning,
.badge.bg-warning {
    background: linear-gradient(135deg, #ffc107 0%, #e0a800 100%) !important;
    border: none !important;
    color: #212529 !important;
}

.btn-warning:hover {
    background: linear-gradient(135deg, #e0a800 0%, #ffc107 100%) !important;
    opacity: 0.9;
}

/* Button Gradients - Secondary (Gray) */
.btn-secondary,
.badge.bg-secondary {
    background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%) !important;
    border: none !important;
    color: white !important;
}

.btn-secondary:hover {
    background: linear-gradient(135deg, #5a6268 0%, #6c757d 100%) !important;
    opacity: 0.9;
}

/* Button Gradients - Info (Blue to Green for consistency) */
.btn-info,
.badge.bg-info {
    background: linear-gradient(135deg, #3ec325 0%, #30981d 100%) !important;
    border: none !important;
    color: white !important;
}

.btn-info:hover {
    background: linear-gradient(135deg, #30981d 0%, #3ec325 100%) !important;
    opacity: 0.9;
}

/* Outline buttons */
.btn-outline-success {
    color: #3ec325 !important;
    border-color: #3ec325 !important;
    background-color: transparent !important;
}

.btn-outline-success:hover {
    background: linear-gradient(135deg, #3ec325 0%, #30981d 100%) !important;
    border-color: #3ec325 !important;
    color: white !important;
}

.btn-outline-danger {
    color: #dc3545 !important;
    border-color: #dc3545 !important;
    background-color: transparent !important;
}

.btn-outline-danger:hover {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    border-color: #dc3545 !important;
    color: white !important;
}

.btn-outline-warning {
    color: #ffc107 !important;
    border-color: #ffc107 !important;
    background-color: transparent !important;
}

.btn-outline-warning:hover {
    background: linear-gradient(135deg, #ffc107 0%, #e0a800 100%) !important;
    border-color: #ffc107 !important;
    color: #212529 !important;
}

.btn-outline-secondary {
    color: #6c757d !important;
    border-color: #6c757d !important;
    background-color: transparent !important;
}

.btn-outline-secondary:hover {
    background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%) !important;
    border-color: #6c757d !important;
    color: white !important;
}

.btn-outline-info {
    color: #3ec325 !important;
    border-color: #3ec325 !important;
    background-color: transparent !important;
}

.btn-outline-info:hover {
    background: linear-gradient(135deg, #3ec325 0%, #30981d 100%) !important;
    border-color: #3ec325 !important;
    color: white !important;
}

/* Dashboard Stats Icons - Background with Opacity */
.bg-primary.bg-opacity-10,
div.bg-primary.bg-opacity-10 {
    background-color: rgba(62, 195, 37, 0.1) !important;
}

.bg-info.bg-opacity-10,
div.bg-info.bg-opacity-10 {
    background-color: rgba(62, 195, 37, 0.1) !important;
}

.bg-success.bg-opacity-10,
div.bg-success.bg-opacity-10 {
    background-color: rgba(62, 195, 37, 0.1) !important;
}

.bg-warning.bg-opacity-10,
div.bg-warning.bg-opacity-10 {
    background-color: rgba(255, 193, 7, 0.1) !important;
}

.bg-danger.bg-opacity-10,
div.bg-danger.bg-opacity-10 {
    background-color: rgba(220, 53, 69, 0.1) !important;
}

.bg-secondary.bg-opacity-10,
div.bg-secondary.bg-opacity-10 {
    background-color: rgba(108, 117, 125, 0.1) !important;
}

/* Dashboard Stats Icons - Text Colors (Green Theme) */
.bg-primary.bg-opacity-10.text-primary,
div.bg-primary.bg-opacity-10.text-primary,
.bg-primary.bg-opacity-10.text-primary i,
div.bg-primary.bg-opacity-10.text-primary i,
.bg-primary.bg-opacity-10.text-primary .bi,
div.bg-primary.bg-opacity-10.text-primary .bi {
    color: #3ec325 !important;
}

.bg-info.bg-opacity-10.text-info,
div.bg-info.bg-opacity-10.text-info,
.bg-info.bg-opacity-10.text-info i,
div.bg-info.bg-opacity-10.text-info i,
.bg-info.bg-opacity-10.text-info .bi,
div.bg-info.bg-opacity-10.text-info .bi {
    color: #3ec325 !important;
}

.bg-success.bg-opacity-10.text-success,
div.bg-success.bg-opacity-10.text-success,
.bg-success.bg-opacity-10.text-success i,
div.bg-success.bg-opacity-10.text-success i,
.bg-success.bg-opacity-10.text-success .bi,
div.bg-success.bg-opacity-10.text-success .bi {
    color: #3ec325 !important;
}

/* Dashboard Stats Icons - Text Colors (Other Colors) */
.bg-warning.bg-opacity-10.text-warning,
div.bg-warning.bg-opacity-10.text-warning,
.bg-warning.bg-opacity-10.text-warning i,
div.bg-warning.bg-opacity-10.text-warning i,
.bg-warning.bg-opacity-10.text-warning .bi,
div.bg-warning.bg-opacity-10.text-warning .bi {
    color: #ffc107 !important;
}

.bg-danger.bg-opacity-10.text-danger,
div.bg-danger.bg-opacity-10.text-danger,
.bg-danger.bg-opacity-10.text-danger i,
div.bg-danger.bg-opacity-10.text-danger i,
.bg-danger.bg-opacity-10.text-danger .bi,
div.bg-danger.bg-opacity-10.text-danger .bi {
    color: #dc3545 !important;
}

.bg-secondary.bg-opacity-10.text-secondary,
div.bg-secondary.bg-opacity-10.text-secondary,
.bg-secondary.bg-opacity-10.text-secondary i,
div.bg-secondary.bg-opacity-10.text-secondary i,
.bg-secondary.bg-opacity-10.text-secondary .bi,
div.bg-secondary.bg-opacity-10.text-secondary .bi {
    color: #6c757d !important;
}

