:root {
    --foxbiz-primary: #2563EB;
    --foxbiz-primary-rgb: 37, 99, 235;
    --foxbiz-primary-dark: #1E40AF;
    --foxbiz-primary-soft: #DBEAFE;
    --foxbiz-secondary: #1E40AF;
    --foxbiz-secondary-rgb: 30, 64, 175;
    --foxbiz-accent: #38BDF8;
    --foxbiz-accent-rgb: 56, 189, 248;
    --foxbiz-success: #22C55E;
    --foxbiz-success-rgb: 34, 197, 94;
    --foxbiz-warning: #F59E0B;
    --foxbiz-warning-rgb: 245, 158, 11;
    --foxbiz-danger: #EF4444;
    --foxbiz-danger-rgb: 239, 68, 68;
    --foxbiz-background: #F8FAFC;
    --foxbiz-ink: #0F172A;
    --bs-primary: var(--foxbiz-primary);
    --bs-primary-rgb: var(--foxbiz-primary-rgb);
    --bs-secondary: var(--foxbiz-secondary);
    --bs-secondary-rgb: var(--foxbiz-secondary-rgb);
    --bs-success: var(--foxbiz-success);
    --bs-success-rgb: var(--foxbiz-success-rgb);
    --bs-warning: var(--foxbiz-warning);
    --bs-warning-rgb: var(--foxbiz-warning-rgb);
    --bs-danger: var(--foxbiz-danger);
    --bs-danger-rgb: var(--foxbiz-danger-rgb);
    --bs-info: var(--foxbiz-accent);
    --bs-info-rgb: var(--foxbiz-accent-rgb);
    --bs-body-bg: var(--foxbiz-background);
    --bs-body-color: var(--foxbiz-ink);
    --bs-menu-item-active-color: var(--foxbiz-primary);
    --bs-sidebar-menu-item-active-color: var(--foxbiz-primary);
    --bs-sidebar-menu-item-hover-color: var(--foxbiz-primary);
}

body {
    background-color: var(--foxbiz-background);
    color: var(--foxbiz-ink);
}

a {
    color: var(--foxbiz-primary);
}

a:hover {
    color: var(--foxbiz-primary-dark);
}

body[data-topbar=colored] #page-topbar {
    background: var(--foxbiz-primary);
}

body[data-layout=horizontal] #page-topbar {
    --bs-menu-item-active-color: var(--foxbiz-primary);
    --bs-sidebar-menu-item-active-color: var(--foxbiz-primary);
    --bs-sidebar-menu-item-hover-color: var(--foxbiz-primary);
}

.btn-primary {
    --bs-btn-bg: var(--foxbiz-primary);
    --bs-btn-border-color: var(--foxbiz-primary);
    --bs-btn-hover-bg: var(--foxbiz-primary-dark);
    --bs-btn-hover-border-color: var(--foxbiz-primary-dark);
    --bs-btn-active-bg: var(--foxbiz-primary-dark);
    --bs-btn-active-border-color: var(--foxbiz-primary-dark);
    --bs-btn-focus-shadow-rgb: var(--foxbiz-primary-rgb);
}

.btn-secondary {
    --bs-btn-bg: var(--foxbiz-secondary);
    --bs-btn-border-color: var(--foxbiz-secondary);
    --bs-btn-hover-bg: #1D4ED8;
    --bs-btn-hover-border-color: #1D4ED8;
    --bs-btn-active-bg: var(--foxbiz-primary-dark);
    --bs-btn-active-border-color: var(--foxbiz-primary-dark);
    --bs-btn-focus-shadow-rgb: var(--foxbiz-secondary-rgb);
}

.btn-success {
    --bs-btn-bg: var(--foxbiz-success);
    --bs-btn-border-color: var(--foxbiz-success);
    --bs-btn-hover-bg: #16A34A;
    --bs-btn-hover-border-color: #16A34A;
    --bs-btn-active-bg: #15803D;
    --bs-btn-active-border-color: #15803D;
    --bs-btn-focus-shadow-rgb: var(--foxbiz-success-rgb);
}

.btn-warning {
    --bs-btn-bg: var(--foxbiz-warning);
    --bs-btn-border-color: var(--foxbiz-warning);
    --bs-btn-hover-bg: #D97706;
    --bs-btn-hover-border-color: #D97706;
    --bs-btn-active-bg: #B45309;
    --bs-btn-active-border-color: #B45309;
    --bs-btn-focus-shadow-rgb: var(--foxbiz-warning-rgb);
}

.btn-danger {
    --bs-btn-bg: var(--foxbiz-danger);
    --bs-btn-border-color: var(--foxbiz-danger);
    --bs-btn-hover-bg: #DC2626;
    --bs-btn-hover-border-color: #DC2626;
    --bs-btn-active-bg: #B91C1C;
    --bs-btn-active-border-color: #B91C1C;
    --bs-btn-focus-shadow-rgb: var(--foxbiz-danger-rgb);
}

.bg-primary,
.avatar-title.bg-primary {
    background-color: var(--foxbiz-primary) !important;
}

.bg-secondary {
    background-color: var(--foxbiz-secondary) !important;
}

.bg-success {
    background-color: var(--foxbiz-success) !important;
}

.bg-warning {
    background-color: var(--foxbiz-warning) !important;
}

.bg-danger {
    background-color: var(--foxbiz-danger) !important;
}

.bg-info {
    background-color: var(--foxbiz-accent) !important;
}

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

.text-secondary {
    color: var(--foxbiz-secondary) !important;
}

.text-success {
    color: var(--foxbiz-success) !important;
}

.text-warning {
    color: var(--foxbiz-warning) !important;
}

.text-danger {
    color: var(--foxbiz-danger) !important;
}

.text-info {
    color: var(--foxbiz-accent) !important;
}

.badge-soft-primary,
.bg-subtle-primary,
.bg-primary-subtle {
    color: var(--foxbiz-primary) !important;
    background-color: rgba(var(--foxbiz-primary-rgb), .12) !important;
}

.badge.bg-success,
.avatar-title.bg-success {
    background-color: var(--foxbiz-success) !important;
}

.badge.bg-warning,
.avatar-title.bg-warning {
    background-color: var(--foxbiz-warning) !important;
}

.badge.bg-danger,
.avatar-title.bg-danger {
    background-color: var(--foxbiz-danger) !important;
}

.alert-success {
    --bs-alert-color: #14532D;
    --bs-alert-bg: rgba(var(--foxbiz-success-rgb), .12);
    --bs-alert-border-color: rgba(var(--foxbiz-success-rgb), .28);
}

.alert-warning {
    --bs-alert-color: #78350F;
    --bs-alert-bg: rgba(var(--foxbiz-warning-rgb), .14);
    --bs-alert-border-color: rgba(var(--foxbiz-warning-rgb), .32);
}

.alert-danger {
    --bs-alert-color: #7F1D1D;
    --bs-alert-bg: rgba(var(--foxbiz-danger-rgb), .12);
    --bs-alert-border-color: rgba(var(--foxbiz-danger-rgb), .28);
}

.alert-info {
    --bs-alert-color: #075985;
    --bs-alert-bg: rgba(var(--foxbiz-accent-rgb), .16);
    --bs-alert-border-color: rgba(var(--foxbiz-accent-rgb), .36);
}

.page-item.active .page-link {
    background-color: var(--foxbiz-primary);
    border-color: var(--foxbiz-primary);
}

.form-control:focus,
.form-select:focus {
    border-color: rgba(var(--foxbiz-primary-rgb), .45);
    box-shadow: 0 0 0 .15rem rgba(var(--foxbiz-primary-rgb), .16);
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    border-color: var(--bs-border-color);
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: rgba(var(--foxbiz-primary-rgb), .45);
    box-shadow: 0 0 0 .15rem rgba(var(--foxbiz-primary-rgb), .16);
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--foxbiz-primary);
}

.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: var(--foxbiz-primary-soft);
    color: var(--foxbiz-primary);
}

.topnav .navbar-nav .nav-link:focus,
.topnav .navbar-nav .nav-link:hover,
.topnav .navbar-nav .nav-item.show .nav-link,
.topnav .navbar-nav .nav-item .nav-link.active,
.topnav .navbar-nav .dropdown.active > a,
.topnav .navbar-nav .dropdown-item:hover {
    color: var(--foxbiz-primary) !important;
    background-color: transparent;
}

.topnav .navbar-nav .dropdown-item.active,
.topnav .navbar-nav .dropdown-item:active {
    color: #fff !important;
    background-color: var(--foxbiz-primary) !important;
}

.topnav .navbar-nav .nav-link.active i,
.topnav .navbar-nav .nav-link:hover i,
.topnav .navbar-nav .dropdown.active > a i {
    color: var(--foxbiz-primary) !important;
}

.dropdown-item.active,
.dropdown-item:active {
    background-color: var(--foxbiz-primary);
}

.dropdown-item.active,
.dropdown-item:active {
    color: #fff !important;
}

#sidebar-menu .mm-active,
#sidebar-menu .mm-active > a,
#sidebar-menu .mm-active > a i,
#sidebar-menu .mm-active .active,
#sidebar-menu .mm-active .active i {
    color: var(--foxbiz-primary) !important;
}

.logo img {
    max-width: 142px;
    object-fit: contain;
}

.navbar-brand-box {
    min-width: 180px;
}
