/* ============================================================
   Musaffa Investment — Theme override (replaces preset-1 blue)
   Primary: #2D8A4E  |  Dark: #1E6338  |  Light: #E8F5EC
   ============================================================ */

:root {
    --mf-green:       #2D8A4E;
    --mf-green-dark:  #1E6338;
    --mf-green-mid:   #3CAD63;
    --mf-green-light: #E8F5EC;
    --mf-green-pale:  #f0faf3;
}

/* ── Primary colour tokens ── */
[data-pc-preset] {
    --pc-sidebar-active-color: var(--mf-green) !important;
    --bs-primary:              var(--mf-green) !important;
    --bs-primary-rgb:          45, 138, 78     !important;
    --bs-link-color:           var(--mf-green) !important;
    --bs-link-hover-color:     var(--mf-green-dark) !important;
}

/* ── Buttons ── */
.btn-primary,
[data-pc-preset] .btn-primary {
    background-color: var(--mf-green)      !important;
    border-color:     var(--mf-green)      !important;
    color: #fff !important;
}
.btn-primary:hover,  [data-pc-preset] .btn-primary:hover,
.btn-primary:focus,  [data-pc-preset] .btn-primary:focus,
.btn-primary:active, [data-pc-preset] .btn-primary:active {
    background-color: var(--mf-green-dark) !important;
    border-color:     var(--mf-green-dark) !important;
}
.btn-primary:disabled, [data-pc-preset] .btn-primary:disabled {
    background-color: var(--mf-green)      !important;
    border-color:     var(--mf-green)      !important;
}
.btn-link,
[data-pc-preset] .btn-link {
    color: var(--mf-green) !important;
}
.btn-link:hover,
[data-pc-preset] .btn-link:hover {
    color: var(--mf-green-dark) !important;
}
.btn-outline-primary,
[data-pc-preset] .btn-outline-primary {
    color:        var(--mf-green) !important;
    border-color: var(--mf-green) !important;
}
.btn-outline-primary:hover,
[data-pc-preset] .btn-outline-primary:hover {
    background-color: var(--mf-green) !important;
    color: #fff !important;
}
.btn-sm.btn-link-primary,
[data-pc-preset] .btn-sm.btn-link-primary {
    color: var(--mf-green) !important;
}

/* ── Text colours ── */
.text-primary,
[data-pc-preset] .text-primary { color: var(--mf-green) !important; }

a, [data-pc-preset] a { color: var(--mf-green); }
a:hover, [data-pc-preset] a:hover { color: var(--mf-green-dark); }

/* ── Backgrounds ── */
.bg-primary,
[data-pc-preset] .bg-primary {
    background-color: var(--mf-green) !important;
}
.bg-light-primary,
[data-pc-preset] .bg-light-primary {
    background-color: var(--mf-green-light) !important;
    color: var(--mf-green) !important;
}

/* ── Sidebar ── */
[data-pc-preset] .pc-navbar .pc-item.active > .pc-link,
[data-pc-preset] .pc-navbar .pc-item:hover > .pc-link {
    color: var(--mf-green) !important;
}
[data-pc-preset] .pc-navbar .pc-item.active > .pc-link .pc-micon,
[data-pc-preset] .pc-navbar .pc-item:hover > .pc-link .pc-micon {
    color: var(--mf-green) !important;
}
[data-pc-preset] .pc-navbar .pc-item.active > .pc-link::after {
    background: var(--mf-green) !important;
}

/* ── Badges ── */
.badge.bg-primary,
[data-pc-preset] .badge.bg-primary {
    background-color: var(--mf-green) !important;
}
.text-bg-primary,
[data-pc-preset] .text-bg-primary {
    background-color: var(--mf-green) !important;
    color: #fff !important;
}
.badge.bg-light-primary,
[data-pc-preset] .badge.bg-light-primary {
    background-color: var(--mf-green-light) !important;
    color: var(--mf-green) !important;
}

/* ── Progress bars ── */
.progress-bar.bg-primary,
[data-pc-preset] .progress-bar.bg-primary,
.progress-bar,
[data-pc-preset] .progress-bar {
    background-color: var(--mf-green) !important;
}
/* brand-color-3 used on Total Members card gradient */
.bg-brand-color-3 {
    background: linear-gradient(207.92deg, var(--mf-green) 11.42%, var(--mf-green-mid) 106.55%) !important;
}

/* ── Form controls ── */
.form-control:focus,
[data-pc-preset] .form-control:focus,
.form-select:focus,
[data-pc-preset] .form-select:focus {
    border-color: var(--mf-green) !important;
    box-shadow: 0 0 0 .2rem rgba(45, 138, 78, .2) !important;
}
.form-check-input:checked,
[data-pc-preset] .form-check-input.input-primary:checked {
    background-color: var(--mf-green) !important;
    border-color:     var(--mf-green) !important;
}
.input-group-text,
[data-pc-preset] .input-group-text {
    /* no override needed by default */
}

/* ── Alerts ── */
.alert-primary,
[data-pc-preset] .alert-primary {
    color: var(--mf-green-dark) !important;
    background-color: var(--mf-green-pale) !important;
    border-color: #a5d6a7 !important;
}

/* ── Nav pills / tabs ── */
.nav-pills .nav-link.active,
[data-pc-preset] .nav-pills .nav-link.active {
    background-color: var(--mf-green) !important;
    color: #fff !important;
}
.nav-link:hover,
[data-pc-preset] .nav-link:hover {
    color: var(--mf-green) !important;
}

/* ── Pagination ── */
.page-item.active .page-link,
[data-pc-preset] .page-item.active .page-link {
    background-color: var(--mf-green) !important;
    border-color:     var(--mf-green) !important;
}
.page-link,
[data-pc-preset] .page-link {
    color: var(--mf-green) !important;
}
.page-link:hover,
[data-pc-preset] .page-link:hover {
    color: var(--mf-green-dark) !important;
}

/* ── List groups ── */
.list-group-item.active,
[data-pc-preset] .list-group-item.active {
    background-color: var(--mf-green) !important;
    border-color:     var(--mf-green) !important;
    color: #fff !important;
}
.list-group-item-primary,
[data-pc-preset] .list-group-item-primary {
    background-color: var(--mf-green-light) !important;
    color: var(--mf-green-dark) !important;
}

/* ── Accordion ── */
.accordion-button:not(.collapsed),
[data-pc-preset] .accordion-button:not(.collapsed) {
    color: var(--mf-green) !important;
    background-color: var(--mf-green-pale) !important;
    box-shadow: inset 0 -1px 0 rgba(45, 138, 78, .13) !important;
}
.accordion-button:focus,
[data-pc-preset] .accordion-button:focus {
    box-shadow: 0 0 0 .2rem rgba(45, 138, 78, .2) !important;
}

/* ── Dropdown ── */
.dropdown-item.active,
[data-pc-preset] .dropdown-item.active,
.dropdown-item:active,
[data-pc-preset] .dropdown-item:active {
    background-color: var(--mf-green) !important;
}

/* ── Tables ── */
.table > :not(caption) > * > .table-primary,
[data-pc-preset] .table-primary {
    background-color: var(--mf-green-light) !important;
}

/* ── Spinner / loader ── */
.spinner-border.text-primary,
.spinner-grow.text-primary,
[data-pc-preset] .spinner-border.text-primary,
[data-pc-preset] .spinner-grow.text-primary {
    color: var(--mf-green) !important;
}

/* ── PC loader ── */
.loader-bg .loader-track .loader-fill {
    background: linear-gradient(135deg, var(--mf-green), var(--mf-green-mid)) !important;
}

/* ── DataTables selected row ── */
table.dataTable tbody tr.selected > * {
    box-shadow: inset 0 0 0 9999px rgba(45, 138, 78, .1) !important;
}

/* ── Footer ── */
.pc-footer {
    background-color: var(--mf-green) !important;
    color: #fff !important;
}
.pc-container {
    padding-bottom: 3rem !important;
}
.pc-footer a,
.pc-footer p {
    color: #fff !important;
}

/* ── Card header link ── */
.card-header .btn-link-primary {
    color: var(--mf-green) !important;
}

/* ── Contact / action buttons on dark backgrounds ── */
.contact-btn,
.btn-whatsapp,
.btn-call {
    color: #fff !important;
}
.btn-whatsapp:hover { color: #fff !important; }
.btn-call:hover     { color: #fff !important; }

/* ── Active account-pills tab text ── */
.account-pills .nav-link.active,
.account-pills .list-group-item.active {
    color: #fff !important;
}

/* ── Dropdown active item text ── */
.dropdown-item.active,
[data-pc-preset] .dropdown-item.active,
.dropdown-item:active,
[data-pc-preset] .dropdown-item:active {
    color: #fff !important;
}
