:root {
    --tenant-base: #3E5639;
    --tenant-menu-bg: #3E5639;
    --tenant-menu-text: #FFFFFF;
    --tenant-menu-muted-text: #BBC4BA;
    --tenant-menu-border: #6A9362;
    --tenant-menu-active-bg: #5D8155;
    --tenant-menu-active-text: #FFFFFF;
    --tenant-menu-accent: #462F74;
    --tenant-link: #3E5639;
    --tenant-link-hover: #283725;
    --tenant-primary-bg: #3E5639;
    --tenant-primary-text: #FFFFFF;
    --tenant-primary-hover-bg: #283725;
    --tenant-success-bg: #742F30;
    --tenant-success-text: #FFFFFF;
    --tenant-success-hover-bg: #502021;
    --tenant-danger-bg: #462F74;
    --tenant-danger-text: #FFFFFF;
    --tenant-danger-hover-bg: #302050;
    --tenant-warning-bg: #2F3B74;
    --tenant-warning-text: #FFFFFF;
    --tenant-warning-hover-bg: #202950;
    --tenant-info-bg: #6F742F;
    --tenant-info-text: #FFFFFF;
    --tenant-info-hover-bg: #4C5020;
    --tenant-login-bg: #3E5639;
    --tenant-login-text: #FFFFFF;
    --tenant-focus-rgb: 62, 86, 57;
    --tenant-dark-page-bg: #1F2A29;
    --tenant-dark-surface-bg: #263634;
    --tenant-dark-surface-muted-bg: #2B3C3B;
    --tenant-dark-surface-subtle-bg: #212F2F;
    --tenant-dark-input-bg: #1E2C2D;
    --tenant-dark-hover-bg: #2C3D40;
    --tenant-dark-dropdown-hover-bg: #2E4146;
    --tenant-dark-border: #314247;
    --tenant-dark-border-strong: #3B4E55;
    --tenant-dark-link: #668D5E;
    --tenant-dark-link-hover: #7AA172;
    --tenant-dark-accent: #668D5E;
    --tenant-dark-accent-hover: #7AA172;
    --tenant-dark-accent-bg: #668D5E;
    --tenant-dark-accent-text: #111827;
    --tenant-dark-accent-muted-bg: #2F4144;
    --tenant-dark-accent-muted-border: #47614F;
    --tenant-dark-accent-muted-text: #8BA885;
    --tenant-dark-primary-bg: #668D5E;
    --tenant-dark-primary-text: #111827;
    --tenant-dark-primary-hover-bg: #7AA172;
    --tenant-dark-success-bg: #C36A6B;
    --tenant-dark-success-text: #111827;
    --tenant-dark-success-hover-bg: #CF8788;
    --tenant-dark-danger-bg: #9075C7;
    --tenant-dark-danger-text: #111827;
    --tenant-dark-danger-hover-bg: #A792D3;
    --tenant-dark-warning-bg: #7583C7;
    --tenant-dark-warning-text: #111827;
    --tenant-dark-warning-hover-bg: #929DD3;
    --tenant-dark-info-bg: #848A38;
    --tenant-dark-info-text: #111827;
    --tenant-dark-info-hover-bg: #A0A744;
    --tenant-dark-focus-rgb: 102, 141, 94;
}

.menu-container {
    background-color: var(--tenant-menu-bg);
    color: var(--tenant-menu-text);
}

.menu-org-card {
    background-color: var(--tenant-menu-active-bg);
    border-color: var(--tenant-menu-border);
}

.menu-org-name {
    color: var(--tenant-menu-text);
}

.menu-org-portal,
.menu-section-label,
.menu-user-email {
    color: var(--tenant-menu-muted-text);
}

.menu-user-card {
    border-top-color: var(--tenant-menu-border);
}

.menu-container nav .nav-item {
    border-left-color: var(--tenant-menu-bg);
}

.menu-container nav .nav-item.active {
    border-left-color: var(--tenant-menu-accent);
}

.menu-container nav .nav-link,
.menu-container nav .nav-item-icon,
.menu-container .dropdown-menu .dropdown-item {
    color: var(--tenant-menu-muted-text);
}

.menu-container nav .nav-link:hover,
.menu-container nav .nav-link:focus-visible,
.menu-container nav .nav-item.active .nav-link {
    background-color: var(--tenant-menu-active-bg);
    color: var(--tenant-menu-active-text);
}

.menu-container nav .nav-link:hover .nav-item-icon,
.menu-container nav .nav-link:focus-visible .nav-item-icon,
.menu-container nav .nav-item.active .nav-item-icon {
    color: var(--tenant-menu-active-text);
}

.menu-container .dropdown-menu {
    background-color: var(--tenant-menu-bg);
}

.menu-container .dropdown-menu .dropdown-item:hover,
.menu-container .dropdown-menu .dropdown-item:focus,
.menu-container nav .nav-item .dropdown-item.active {
    background-color: var(--tenant-menu-active-bg);
    color: var(--tenant-menu-active-text);
}

.content-container a:not(.btn),
.breadcrumb .breadcrumb-item a {
    color: var(--tenant-link);
}

.content-container a:not(.btn):hover,
.breadcrumb .breadcrumb-item a:hover {
    color: var(--tenant-link-hover);
}

.nav-tabs .nav-link:hover {
    color: var(--tenant-menu-bg) !important;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-link.active:hover {
    border-bottom-color: var(--tenant-menu-bg);
    color: var(--tenant-menu-bg) !important;
}

.progress-bar.bg-warning {
    background-color: var(--tenant-warning-bg) !important;
    color: var(--tenant-warning-text);
}

.enrolment-progress-primary {
    background-color: var(--tenant-menu-bg);
    color: var(--tenant-menu-text);
}

.enrolment-progress-success {
    background-color: var(--tenant-success-bg);
    color: var(--tenant-success-text);
}

.enrolment-progress-danger {
    background-color: var(--tenant-danger-bg);
    color: var(--tenant-danger-text);
}

.enrolment-progress-container .enrolment-progress-title,
.enrolment-progress-container .enrolment-progress-description {
    color: inherit;
}

.enrolment-progress-primary .progress {
    background-color: var(--tenant-menu-border);
}

.enrolment-progress-success .progress {
    background-color: var(--tenant-success-hover-bg);
}

.enrolment-progress-danger .progress {
    background-color: var(--tenant-danger-hover-bg);
}

.btn-primary,
.btn-primary:disabled,
.btn-primary.disabled {
    background-color: var(--tenant-primary-bg) !important;
    border-color: var(--tenant-primary-bg);
    color: var(--tenant-primary-text) !important;
}

.btn-primary:hover,
.btn-primary:not([disabled]):not(.disabled):active,
.btn-primary:not([disabled]):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
    background-color: var(--tenant-primary-hover-bg) !important;
    border-color: var(--tenant-primary-hover-bg);
    color: var(--tenant-primary-text) !important;
}

.btn-primary:focus,
.btn-primary.focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--tenant-focus-rgb), 0.5) !important;
}

.btn-success,
.btn-success:disabled,
.btn-success.disabled {
    background-color: var(--tenant-success-bg) !important;
    border-color: var(--tenant-success-bg);
    color: var(--tenant-success-text) !important;
}

.btn-success:hover,
.btn-success:not([disabled]):not(.disabled):active,
.btn-success:not([disabled]):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
    background-color: var(--tenant-success-hover-bg) !important;
    border-color: var(--tenant-success-hover-bg);
    color: var(--tenant-success-text) !important;
}

.btn-success:focus,
.btn-success.focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--tenant-focus-rgb), 0.5) !important;
}

.btn-danger,
.btn-danger:disabled,
.btn-danger.disabled {
    background-color: var(--tenant-danger-bg) !important;
    border-color: var(--tenant-danger-bg);
    color: var(--tenant-danger-text) !important;
}

.btn-danger:hover,
.btn-danger:not([disabled]):not(.disabled):active,
.btn-danger:not([disabled]):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
    background-color: var(--tenant-danger-hover-bg) !important;
    border-color: var(--tenant-danger-hover-bg);
    color: var(--tenant-danger-text) !important;
}

.btn-danger:focus,
.btn-danger.focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--tenant-focus-rgb), 0.5) !important;
}

.btn-warning,
.btn-warning:disabled,
.btn-warning.disabled {
    background-color: var(--tenant-warning-bg) !important;
    border-color: var(--tenant-warning-bg);
    color: var(--tenant-warning-text) !important;
}

.btn-warning:hover,
.btn-warning:not([disabled]):not(.disabled):active,
.btn-warning:not([disabled]):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
    background-color: var(--tenant-warning-hover-bg) !important;
    border-color: var(--tenant-warning-hover-bg);
    color: var(--tenant-warning-text) !important;
}

.btn-warning:focus,
.btn-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--tenant-focus-rgb), 0.5) !important;
}

.content-header-icon-button .header-notification-dot {
    background-color: var(--tenant-menu-accent);
}

.login-box {
    background-color: var(--tenant-login-bg);
    color: var(--tenant-login-text);
}

.login-box a {
    color: var(--tenant-login-text);
}

[data-color-mode="dark"] {
    --app-bg: var(--tenant-dark-page-bg);
    --app-page-bg: var(--tenant-dark-page-bg);
    --app-surface: var(--tenant-dark-surface-bg);
    --app-surface-muted: var(--tenant-dark-surface-muted-bg);
    --app-surface-subtle: var(--tenant-dark-surface-subtle-bg);
    --app-input-bg: var(--tenant-dark-input-bg);
    --app-hover-bg: var(--tenant-dark-hover-bg);
    --app-dropdown-hover-bg: var(--tenant-dark-dropdown-hover-bg);
    --app-border: var(--tenant-dark-border);
    --app-border-strong: var(--tenant-dark-border-strong);
}

[data-color-mode="dark"] .content-container a:not(.btn),
[data-color-mode="dark"] .breadcrumb .breadcrumb-item a {
    color: var(--tenant-dark-link);
}

[data-color-mode="dark"] .content-container a:not(.btn):hover,
[data-color-mode="dark"] .breadcrumb .breadcrumb-item a:hover {
    color: var(--tenant-dark-link-hover);
}

[data-color-mode="dark"] .nav-tabs .nav-link:hover {
    color: var(--tenant-dark-accent) !important;
}

[data-color-mode="dark"] .nav-tabs .nav-link.active,
[data-color-mode="dark"] .nav-tabs .nav-link.active:hover {
    border-bottom-color: var(--tenant-dark-accent-bg);
    color: var(--tenant-dark-accent) !important;
}

[data-color-mode="dark"] .progress-bar.bg-warning {
    background-color: var(--tenant-dark-warning-bg) !important;
    color: var(--tenant-dark-warning-text);
}

[data-color-mode="dark"] .btn-primary,
[data-color-mode="dark"] .btn-primary:disabled,
[data-color-mode="dark"] .btn-primary.disabled {
    background-color: var(--tenant-dark-primary-bg) !important;
    border-color: var(--tenant-dark-primary-bg);
    color: var(--tenant-dark-primary-text) !important;
}

[data-color-mode="dark"] .btn-primary:hover,
[data-color-mode="dark"] .btn-primary:not([disabled]):not(.disabled):active,
[data-color-mode="dark"] .btn-primary:not([disabled]):not(.disabled).active,
[data-color-mode="dark"] .show > .btn-primary.dropdown-toggle {
    background-color: var(--tenant-dark-primary-hover-bg) !important;
    border-color: var(--tenant-dark-primary-hover-bg);
    color: var(--tenant-dark-primary-text) !important;
}

[data-color-mode="dark"] .btn-success,
[data-color-mode="dark"] .btn-success:disabled,
[data-color-mode="dark"] .btn-success.disabled {
    background-color: var(--tenant-dark-success-bg) !important;
    border-color: var(--tenant-dark-success-bg);
    color: var(--tenant-dark-success-text) !important;
}

[data-color-mode="dark"] .btn-success:hover,
[data-color-mode="dark"] .btn-success:not([disabled]):not(.disabled):active,
[data-color-mode="dark"] .btn-success:not([disabled]):not(.disabled).active,
[data-color-mode="dark"] .show > .btn-success.dropdown-toggle {
    background-color: var(--tenant-dark-success-hover-bg) !important;
    border-color: var(--tenant-dark-success-hover-bg);
    color: var(--tenant-dark-success-text) !important;
}

[data-color-mode="dark"] .btn-danger,
[data-color-mode="dark"] .btn-danger:disabled,
[data-color-mode="dark"] .btn-danger.disabled {
    background-color: var(--tenant-dark-danger-bg) !important;
    border-color: var(--tenant-dark-danger-bg);
    color: var(--tenant-dark-danger-text) !important;
}

[data-color-mode="dark"] .btn-danger:hover,
[data-color-mode="dark"] .btn-danger:not([disabled]):not(.disabled):active,
[data-color-mode="dark"] .btn-danger:not([disabled]):not(.disabled).active,
[data-color-mode="dark"] .show > .btn-danger.dropdown-toggle {
    background-color: var(--tenant-dark-danger-hover-bg) !important;
    border-color: var(--tenant-dark-danger-hover-bg);
    color: var(--tenant-dark-danger-text) !important;
}

[data-color-mode="dark"] .btn-warning,
[data-color-mode="dark"] .btn-warning:disabled,
[data-color-mode="dark"] .btn-warning.disabled {
    background-color: var(--tenant-dark-warning-bg) !important;
    border-color: var(--tenant-dark-warning-bg);
    color: var(--tenant-dark-warning-text) !important;
}

[data-color-mode="dark"] .btn-warning:hover,
[data-color-mode="dark"] .btn-warning:not([disabled]):not(.disabled):active,
[data-color-mode="dark"] .btn-warning:not([disabled]):not(.disabled).active,
[data-color-mode="dark"] .show > .btn-warning.dropdown-toggle {
    background-color: var(--tenant-dark-warning-hover-bg) !important;
    border-color: var(--tenant-dark-warning-hover-bg);
    color: var(--tenant-dark-warning-text) !important;
}

[data-color-mode="dark"] .btn-primary:focus,
[data-color-mode="dark"] .btn-primary.focus,
[data-color-mode="dark"] .btn-success:focus,
[data-color-mode="dark"] .btn-success.focus,
[data-color-mode="dark"] .btn-danger:focus,
[data-color-mode="dark"] .btn-danger.focus,
[data-color-mode="dark"] .btn-warning:focus,
[data-color-mode="dark"] .btn-warning.focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--tenant-dark-focus-rgb), 0.5) !important;
}

[data-color-mode="dark"] .content-header-icon-button .header-notification-dot {
    background-color: var(--tenant-dark-accent-bg);
}
