html.cerp-dark {
    color-scheme: dark;
    background: #111827;
}

body.dark,
html.cerp-dark body {
    background-color: var(--bs-body-bg, #111827);
    color: var(--bs-body-color, #e5e7eb);
}

body.dark .content-wrapper,
body.dark .right-side,
body.dark .wrapper {
    background-color: var(--bs-body-bg, #111827) !important;
}

body.dark .main-header .navbar,
body.dark .main-header .logo {
    background-color: var(--bs-nav-bg, #1f2937) !important;
    border-color: var(--bs-border-color, #44485e);
}

body.dark .main-header .navbar .sidebar-toggle,
body.dark .main-header .navbar .nav > li > a,
body.dark .navbar-nav > li > a {
    color: var(--bs-body-color, #e5e7eb);
}

body.dark .main-sidebar,
body.dark .left-side,
body.dark .sidebar {
    background-color: var(--bs-side-nav-bg, #1f2937) !important;
}

body.dark .sidebar-menu > li > a,
body.dark .sidebar-menu .treeview-menu > li > a {
    color: var(--bs-menu-color, #e5e7eb);
}

body.dark .sidebar-menu > li:hover > a,
body.dark .sidebar-menu > li.active > a,
body.dark .sidebar-menu .treeview-menu > li > a:hover {
    background-color: var(--bs-menu-hover-bg, #374151) !important;
}

body.dark .box,
body.dark .info-box,
body.dark .small-box,
body.dark .nav-tabs-custom,
body.dark .modal-content,
body.dark .panel,
body.dark .well,
body.dark .dropdown-menu,
body.dark .select2-dropdown,
body.dark .bootstrap-select .dropdown-menu {
    background-color: var(--bs-card-bg, #1f2937) !important;
    color: var(--bs-body-color, #e5e7eb);
    border-color: var(--bs-card-border-color, #374151) !important;
}

body.dark .box-header,
body.dark .box-footer,
body.dark .modal-header,
body.dark .modal-footer,
body.dark .panel-heading,
body.dark .nav-tabs-custom > .nav-tabs > li.active > a {
    background-color: var(--bs-heading-bg, #43475d) !important;
    color: var(--bs-body-color, #e5e7eb);
    border-color: var(--bs-border-color, #44485e);
}

body.dark .box-footer .btn-info,
html.cerp-dark .box-footer .btn-info {
    background-color: #2563eb !important;
    border-color: #1d4ed8 !important;
    color: #fff !important;
}

body.dark .table,
body.dark .table > thead > tr > th,
body.dark .table > tbody > tr > td,
body.dark .table > tfoot > tr > td,
body.dark .dataTables_wrapper {
    color: var(--bs-body-color, #e5e7eb);
    border-color: var(--bs-table-border, #56596f);
}

body.dark .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: var(--bs-table-striped-bg, rgb(23 33 46));
}

body.dark .table > thead > tr > th {
    background-color: var(--bs-table-heading, #374151);
}

body.dark .form-control,
body.dark input[type="text"],
body.dark input[type="password"],
body.dark input[type="email"],
body.dark input[type="number"],
body.dark input[type="search"],
body.dark select,
body.dark textarea,
body.dark .select2-container--default .select2-selection--single,
body.dark .select2-container--default .select2-selection--multiple {
    background-color: var(--bs-input-bg, #17212e) !important;
    color: var(--bs-body-color, #e5e7eb) !important;
    border-color: var(--bs-border-color, #44485e) !important;
}

body.dark .form-control:focus {
    border-color: var(--bs-primary, #7367f0);
}

body.dark .breadcrumb,
body.dark .content-header > h1,
body.dark .content-header > .breadcrumb > li > a,
body.dark label,
body.dark .control-label,
body.dark h1, body.dark h2, body.dark h3, body.dark h4, body.dark h5 {
    color: var(--bs-body-color, #e5e7eb);
}

body.dark .nav-tabs > li > a {
    color: var(--bs-nav-link-hover-color, #acabc1);
}

body.dark .pagination > li > a,
body.dark .pagination > li > span {
    background-color: var(--bs-card-bg, #1f2937);
    color: var(--bs-body-color, #e5e7eb);
    border-color: var(--bs-border-color, #44485e);
}

body.dark hr {
    border-color: var(--bs-hr-color, #44485e);
}

body.dark .alert {
    border-color: var(--bs-border-color, #44485e);
}

.headertopmenu #cerp-theme-toggle {
    color: inherit;
    padding: 12px 15px;
    display: block;
}

.headertopmenu #cerp-theme-toggle:hover {
    background: rgba(255, 255, 255, 0.08);
}

html.cerp-dark .loginbg,
html.cerp-dark .form-bottom,
html.cerp-dark .form-top {
    color: #e5e7eb;
}

html.cerp-dark .loginbg .font-white,
html.cerp-dark .loginbg h3,
html.cerp-dark .forgot,
html.cerp-dark .loginright,
html.cerp-dark .loginright h3,
html.cerp-dark .loginright h4,
html.cerp-dark .messages {
    color: #e5e7eb !important;
}

html.cerp-dark .form-control,
html.cerp-dark input.form-control {
    background-color: #17212e !important;
    color: #e5e7eb !important;
    border-color: #374151 !important;
}

html.cerp-dark .form-control-feedback,
html.cerp-dark .toggle-password {
    color: #9ca3af;
}

html.cerp-dark .loginbg {
    background-color: #1f2937 !important;
}

.loginbg {
    position: relative;
}

.cerp-theme-toggle-login {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 5;
    border: 0;
    background: rgba(17, 24, 39, 0.12);
    color: #444;
    width: 36px;
    height: 36px;
    padding: 0;
    line-height: 36px;
    border-radius: 50%;
    cursor: pointer;
    display: inline-block;
}

html.cerp-dark .cerp-theme-toggle-login {
    background: rgba(17, 24, 39, 0.55);
    color: #e5e7eb;
}

.box-footer,
.modal-footer {
    overflow: visible;
    min-height: 52px;
}

form > .box-footer,
.box > form > .box-footer {
    position: sticky;
    bottom: 0;
    z-index: 50;
}

.box-footer .btn-info,
.box-footer .btn-primary,
.modal-footer .btn-info,
.modal-footer .btn-primary,
.box-footer button[type="submit"],
.modal-footer button[type="submit"] {
    background-color: #2563eb !important;
    border-color: #1d4ed8 !important;
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}
