:root {
    --bankora-green: #007a53;
    --bankora-green-dark: #006241;
    --bankora-gold: #d4af37;
    --bankora-gold-dark: #a97912;
    --bankora-gold-soft: #fff7dc;
}

.text-danger,
.text-red,
.invalid-feedback,
.error {
    color: var(--bankora-gold-dark) !important;
}

.bg-danger,
.badge-danger,
.btn-danger,
.btn-outline-danger:hover,
.btn-outline-danger:focus,
.btn-outline-danger:active,
.alert-danger,
.swal2-icon.swal2-error,
.dropdown-item.active,
.dropdown-item:active,
.page-item.active .page-link {
    background-color: var(--bankora-gold) !important;
    border-color: var(--bankora-gold) !important;
    color: #1f1600 !important;
}

.btn-outline-danger {
    color: var(--bankora-gold-dark) !important;
    border-color: var(--bankora-gold) !important;
}

.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
    background-color: var(--bankora-gold-dark) !important;
    border-color: var(--bankora-gold-dark) !important;
    color: #fff !important;
}

.alert-danger {
    background-color: var(--bankora-gold-soft) !important;
    border-color: var(--bankora-gold) !important;
    color: #4a3400 !important;
}

.border-danger {
    border-color: var(--bankora-gold) !important;
}

.table-danger,
.table-danger > th,
.table-danger > td {
    background-color: var(--bankora-gold-soft) !important;
    color: #4a3400 !important;
}

a.text-danger:hover,
a.text-red:hover {
    color: var(--bankora-gold-dark) !important;
}

.horizontal-menu li.active > a,
.horizontal-menu li a:hover,
.horizontal-menu .dropdown-menu a:hover,
.metismenu li.active > a,
.metismenu a:hover {
    background-color: var(--bankora-gold) !important;
    color: #1f1600 !important;
}

.form-control:focus,
.custom-select:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default .select2-selection--single:focus {
    border-color: var(--bankora-gold) !important;
    box-shadow: 0 0 0 0.15rem rgba(212, 175, 55, 0.22) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: var(--bankora-gold) !important;
    border-color: var(--bankora-gold) !important;
    color: #1f1600 !important;
}

button[style*="red"],
span[style*="red"],
div[style*="red"],
a[style*="red"],
button[style*="#dc3545"],
span[style*="#dc3545"],
div[style*="#dc3545"],
a[style*="#dc3545"],
button[style*="#e3342f"],
span[style*="#e3342f"],
div[style*="#e3342f"],
a[style*="#e3342f"],
button[style*="#f44336"],
span[style*="#f44336"],
div[style*="#f44336"],
a[style*="#f44336"] {
    color: var(--bankora-gold-dark) !important;
}

button[style*="background: red"],
button[style*="background-color: red"],
span[style*="background: red"],
span[style*="background-color: red"],
div[style*="background: red"],
div[style*="background-color: red"],
a[style*="background: red"],
a[style*="background-color: red"],
button[style*="background: #dc3545"],
button[style*="background-color: #dc3545"],
span[style*="background: #dc3545"],
span[style*="background-color: #dc3545"],
div[style*="background: #dc3545"],
div[style*="background-color: #dc3545"],
a[style*="background: #dc3545"],
a[style*="background-color: #dc3545"] {
    background: var(--bankora-gold) !important;
    background-color: var(--bankora-gold) !important;
    color: #1f1600 !important;
}

button[style*="border-color: #dc3545"],
span[style*="border-color: #dc3545"],
div[style*="border-color: #dc3545"],
a[style*="border-color: #dc3545"] {
    border-color: var(--bankora-gold) !important;
}

/* Compact filter controls across institution dashboards and report tables. */
.page-title-area {
    margin-bottom: 12px !important;
}

.page-title-area .row.py-3 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

.page-title-area .page-title {
    font-size: 25px;
    line-height: 1.2;
    margin-bottom: 0;
}

.page-title-area .dropdown.float-right,
.page-title-area .dropdown.float {
    margin-top: 0;
}

.page-title-area .dropdown-toggle.btn,
.compact-filter .btn,
.filter-toolbar .btn {
    min-height: 34px;
    padding: 6px 12px !important;
    font-size: 12px !important;
    line-height: 1.25;
    border-radius: 5px;
}

.page-title-area .dropdown-menu {
    font-size: 13px;
    padding: 6px 0;
}

.page-title-area .dropdown-item {
    padding: 6px 14px;
}

#customDateModal .modal-dialog {
    max-width: 380px;
}

#customDateModal .modal-header,
#customDateModal .modal-footer {
    padding: 10px 14px;
}

#customDateModal .modal-body {
    padding: 14px;
}

#customDateModal .form-group {
    margin-bottom: 10px;
}

#customDateModal label {
    font-size: 13px;
    margin-bottom: 4px;
}

#customDateModal .form-control {
    min-height: 34px;
    height: 34px;
    padding: 5px 9px;
    font-size: 13px;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
    margin-bottom: 10px;
}

.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label {
    font-size: 13px;
    margin-bottom: 0;
}

.dataTables_wrapper .dataTables_length select {
    width: 86px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 4px 8px !important;
    font-size: 13px !important;
}

.dataTables_wrapper .dataTables_filter input {
    width: 210px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 5px 9px !important;
    font-size: 13px !important;
}

.filter-select,
.filter-toolbar .form-control,
.compact-filter .form-control,
.report-filter .form-control,
.report-filter .custom-select,
.approval-filter .form-control,
.approval-filter .custom-select {
    max-width: 220px;
    min-height: 34px !important;
    height: 34px !important;
    padding: 5px 9px !important;
    font-size: 13px !important;
}

.filter-toolbar,
.compact-filter,
.report-filter,
.approval-filter {
    gap: 10px;
    align-items: flex-end;
}

.filter-toolbar label,
.compact-filter label,
.report-filter label,
.approval-filter label {
    font-size: 13px;
    margin-bottom: 4px;
}

@media (max-width: 767.98px) {
    .page-title-area .page-title {
        font-size: 22px;
    }

    .page-title-area .dropdown.float-right,
    .page-title-area .dropdown.float {
        margin-top: 8px;
    }

    .dataTables_wrapper .dataTables_filter input,
    .filter-select,
    .filter-toolbar .form-control,
    .compact-filter .form-control,
    .report-filter .form-control,
    .approval-filter .form-control {
        width: 100% !important;
        max-width: 100%;
    }
}
