[data-theme="dark"] {
    --bs-body-bg: #161c29;
    --bs-body-color: #e4e6eb;
    --bs-border-color: #2d3444;
    --bs-secondary-bg: #21222f;
    --bs-tertiary-bg: #21222f;
    --bs-emphasis-color: #ffffff;
    --bs-secondary-color: #9aa0a8;
    --bs-card-bg: #21222f;
    --bs-card-border-color: #2d3444;
    --bs-dropdown-bg: #21222f;
    --bs-dropdown-link-color: #e4e6eb;
    --bs-dropdown-link-hover-bg: #2d2f40;
    --bs-dropdown-border-color: #2d3444;
    --bs-modal-bg: #21222f;
    --bs-modal-color: #e4e6eb;
    --bs-table-color: #e4e6eb;
    --bs-table-bg: transparent;
    --bs-table-border-color: #2d3444;
    --bs-table-striped-bg: #21222f;
    --bs-input-bg: #21222f;
    --bs-form-control-bg: #21222f;
    --bs-heading-color: #f2f3f5;

    color-scheme: dark;
    background-color: var(--bs-body-bg);
    color: var(--bs-body-color);
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] .input-group-text {
    background-color: #21222f;
    border-color: #2d3444;
    color: #e4e6eb;
}
[data-theme="dark"] .form-control::placeholder {
    color: #6b7078;
}
[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
    background-color: #262838;
    color: #fff;
    border-color: var(--cp-accent, #00a651);
    box-shadow: 0 0 0 .2rem rgba(0, 166, 81, .25);
}

[data-theme="dark"] .cp-searchable-select-invalid {
    border-color: var(--cp-accent, #00a651) !important;
    box-shadow: 0 0 0 .2rem rgba(0, 166, 81, .25) !important;
}

[data-theme="dark"] .modal-content {
    color: #e4e6eb !important;
}
[data-theme="dark"] .modal-content .text-muted {
    color: #9aa0a8 !important;
}

[data-theme="dark"] .btn-light {
    background-color: #2d2f40;
    border-color: #2d3444;
    color: #e4e6eb;
}
[data-theme="dark"] .btn-light:hover {
    background-color: #363850;
    color: #fff;
}
[data-theme="dark"] .btn-outline-secondary,
[data-theme="dark"] .btn-outline-dark {
    border-color: #3a3f52;
    color: #e4e6eb;
}
[data-theme="dark"] .btn-outline-secondary:hover,
[data-theme="dark"] .btn-outline-dark:hover {
    background-color: #2d2f40;
    color: #fff;
}
[data-theme="dark"] .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

[data-theme="dark"] .text-dark,
[data-theme="dark"] .cp-comment-author {
    color: #e8eaf0 !important;
}
[data-theme="dark"] .text-muted {
    color: #9aa0a8 !important;
}
[data-theme="dark"] .bg-white,
[data-theme="dark"] .bg-light {
    background-color: #21222f !important;
    color: #e4e6eb;
}
[data-theme="dark"] .border {
    border-color: #2d3444 !important;
}
[data-theme="dark"] hr {
    border-color: #2d3444;
    opacity: 1;
}

[data-theme="dark"] .cp-tag-badge {
    background-color: #2d2f40 !important;
    color: #d5d8e0 !important;
    border-color: #3a3f52 !important;
}

[data-theme="dark"] #header-nav.solid {
    background-color: #21222f !important;
    border-bottom: 1px solid #2d3444;
}
[data-theme="dark"] #header-nav .navbar-collapse.show,
[data-theme="dark"] #header-nav .navbar-collapse.collapsing {
    background-color: #21222f !important;
}
html[data-theme="dark"] #header-nav.transparent .navbar-nav .btn,
html[data-theme="dark"] #header-nav.transparent .navbar-nav .nav-link,
html[data-theme="dark"] #header-nav.solid .navbar-nav .btn,
html[data-theme="dark"] #header-nav.solid .navbar-nav .nav-link,
[data-theme="dark"] .btn-blocks {
    color: #d5d8e0 !important;
    text-shadow: none !important;
}
html[data-theme="dark"] #header-nav.transparent .navbar-nav .btn:hover,
html[data-theme="dark"] #header-nav.solid .navbar-nav .btn:hover,
[data-theme="dark"] .btn-blocks:hover {
    color: #fff !important;
}

@media screen and (max-width: 768px) {
    html[data-theme="dark"] #header-nav .navbar-nav .nav-link,
    html[data-theme="dark"] #header-nav .navbar-nav .btn:not(.btn-primary),
    html[data-theme="dark"] #header-nav .navbar-toggler i {
        color: #d5d8e0 !important;
    }
}

[data-theme="dark"] .cp-listings .card {
    background: #21222f;
    border-color: transparent !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .35);
}
[data-theme="dark"] .cp-listings .card:hover {
    box-shadow: 0 .5rem 1.25rem rgba(0, 0, 0, .45);
}
[data-theme="dark"] .cp-listings .card.featured {
    border-color: transparent !important;
    box-shadow: 0 0 0 1px rgba(255, 193, 7, .5), 0 4px 14px rgba(255, 193, 7, .25);
}
[data-theme="dark"] .cp-listings .card.featured:hover {
    box-shadow: 0 0 0 1px rgba(255, 193, 7, .7), 0 6px 20px rgba(255, 193, 7, .35);
}
[data-theme="dark"] .cp-listings h5,
[data-theme="dark"] .listing-title {
    color: #e8eaf0;
}

[data-theme="dark"] .cp-search-suggest-panel {
    background: #21222f !important;
    border-color: #2d3444 !important;
    color: #e4e6eb;
}
[data-theme="dark"] .cp-search-recent-item,
[data-theme="dark"] .cp-live-suggest-item {
    color: #e4e6eb !important;
}
[data-theme="dark"] .cp-search-recent-item:hover,
[data-theme="dark"] .cp-live-suggest-item:hover {
    background: #2d2f40;
}

[data-theme="dark"] .cp-categories-page .cp-cat-section {
    background: #21222f;
    border-color: transparent !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .3);
}
[data-theme="dark"] .cp-categories-page .cp-cat-section-header {
    background: #262838;
    color: #e8eaf0;
    border-color: #2d3444;
}
[data-theme="dark"] .cp-categories-page .cp-cat-section-header:hover {
    background: #2d2f40;
    color: #fff;
}
[data-theme="dark"] .cp-categories-page .cp-subcat-list {
    background: #21222f;
    border-color: #2d3444 !important;
}
[data-theme="dark"] .cp-categories-page .cp-subcat-pill,
[data-theme="dark"] .cp-subsubcat-pill,
[data-theme="dark"] .cp-subsubcat-group {
    background: #262838 !important;
    color: #d5d8e0 !important;
}
[data-theme="dark"] .cp-subsubcat-parent-label {
    color: #9aa0a8 !important;
}
[data-theme="dark"] .cp-categories-page .cp-subcat-pill:hover,
[data-theme="dark"] .cp-subsubcat-pill:hover {
    background: var(--cp-accent, #00a651) !important;
    color: #fff !important;
}

[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6 {
    color: #f0f1f4;
}

[data-theme="dark"] .cp-messages-app {
    background: #21222f;
    border-color: #2d3444;
}
[data-theme="dark"] .cp-conversations-panel {
    border-inline-end-color: #2d3444;
}
[data-theme="dark"] .cp-thread-header,
[data-theme="dark"] .cp-thread-input-wrapper {
    border-color: #2d3444 !important;
}
[data-theme="dark"] .cp-conv-name,
[data-theme="dark"] .cp-thread-user-name {
    color: #e8eaf0;
}
[data-theme="dark"] .cp-conv-item:hover,
[data-theme="dark"] .dropdown-item:hover {
    background-color: #2d2f40;
    color: #fff;
}
[data-theme="dark"] .cp-conv-item.cp-conv-unread {
    background-color: #1e2a3d;
}
[data-theme="dark"] .dropdown-menu,
[data-theme="dark"] .cp-notifications-panel,
[data-theme="dark"] .card,
[data-theme="dark"] .cp-listing-card,
[data-theme="dark"] .cp-conv-item {
    background-color: #21222f;
    border-color: #2d3444;
    color: #e4e6eb;
}

.cp-comment-regular {
    background-color: #f8f9fa;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}
[data-theme="dark"] .cp-comment-regular {
    background-color: #2e2f3b;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
}
[data-theme="dark"] .comment-row.bg-light {
    background-color: #363845 !important;
}
[data-theme="dark"] .comment-row p {
    color: #e4e6eb;
}

[data-theme="dark"] footer {
    background-color: #161c29;
    border-top: 1px solid #2d3444;
}

[data-theme="dark"] .admin-content {
    background-color: #161c29;
}
[data-theme="dark"] table thead th {
    color: #9aa0a8;
    border-color: #2d3444;
}

#cp-theme-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: none;
    background: transparent;
    font-size: 1.1rem;
    cursor: pointer;
}
[data-theme="dark"] #cp-theme-toggle .la-moon { display: none; }
#cp-theme-toggle .la-sun { display: none; }
[data-theme="dark"] #cp-theme-toggle .la-sun { display: inline-block; }

[data-theme="dark"] .cp-cat-subpanel {
    background: #21222f;
}
[data-theme="dark"] .cp-sort-checkbox-label {
    color: #e4e6eb;
}
[data-theme="dark"] .cp-sort-checkbox-label:hover {
    background: #2a2c3d;
}
[data-theme="dark"] .cp-sort-actions-row {
    background: #21222f;
}
[data-theme="dark"] .cp-sort-clear-btn {
    background: #2a2c3d;
    border-color: #3a3d52;
    color: #e4e6eb;
}
[data-theme="dark"] .cp-sort-clear-btn:hover {
    background: #33364a;
}
[data-theme="dark"] .cp-cat-nav-subitem {
    background: #2a2c3f;
    border: 1px solid #273f57;
    color: #bdbdbd;
}
[data-theme="dark"] .cp-cat-nav-subitem.active {
    background: #3b3d53;
    color: #fff;
    border-color: #273f57;
    font-weight: 700;
}

[data-theme="dark"] .list-group-item {
    border: 1px solid #2f2f39;
    background: transparent;
}
[data-theme="dark"] .list-item {
    background: #161c29;
    border-radius: .25rem;
}

[data-theme="dark"] .alert-info {
    --bs-alert-color: #e5e5e5;
    --bs-alert-bg: #2f3541;
    --bs-alert-border-color: #2f3541;
}

[data-theme="dark"] .alert-light {
    --bs-alert-color: #ffffff;
    --bs-alert-bg: #394459;
    --bs-alert-border-color: #3a4459;
}

[data-theme="dark"] .card-header {
    background-color: #21222f;
    border-color: #2d3444;
    color: #e4e6eb;
}

[data-theme="dark"] .card-footer {
    background-color: #21222f;
    border-color: #2d3444;
    color: #e4e6eb;
}
[data-theme="dark"] .card-footer a {
    color: #7c9eff;
}

[data-theme="dark"] .comment-row p,
[data-theme="dark"] .comment-row .cp-comment-body {
    color: #e4e6eb !important;
}

[data-theme="dark"] #review-form .btn-dark {
    background-color: #293949;
    border-color: #293949;
    color: #fff;
}
[data-theme="dark"] #review-form .btn-dark:hover {
    background-color: #324458;
    border-color: #324458;
}

[data-theme="dark"] .cp-listings .card.featured {
    box-shadow: 0 0 0 1px rgba(255, 193, 7, .25), 0 2px 8px rgba(255, 193, 7, .12);
}
[data-theme="dark"] .cp-listings .card.featured:hover {
    box-shadow: 0 0 0 1px rgba(255, 193, 7, .4), 0 4px 12px rgba(255, 193, 7, .18);
}

[data-theme="dark"] .cp-featured-scroll::-webkit-scrollbar-thumb,
[data-theme="dark"] .cp-cat-scroll::-webkit-scrollbar-thumb,
[data-theme="dark"] .cp-cat-subpanel::-webkit-scrollbar-thumb {
    background: #3a3d52;
}

[data-theme="dark"] .cp-listing-price-display {
    color: #4ade80;
}
[data-theme="dark"] .fw-bold {
    color: #e8eaf0;
}

[data-theme="dark"] .cp-listings .listing-short-desc {
    color: #9aa0a8;
}
[data-theme="dark"] .form-label {
    color: #d5d8e0;
}
[data-theme="dark"] .listing-description-text {
    color: #d5d8e0;
}

[data-theme="dark"] #cp-mobile-bottom-nav {
    background: #21222f;
    border-top-color: #2d3444;
}
[data-theme="dark"] .cp-bottom-nav-item {
    color: #9aa0a8;
}
[data-theme="dark"] .cp-bottom-nav-item.active {
    color: var(--cp-accent, #00a651);
}

[data-theme="dark"] .cp-listing-short-desc-show {
    color: #9aa0a8;
}

[data-theme="dark"] #cp-notifications-load-more {
    color: #7c9eff;
}

[data-theme="dark"] #cp-load-older-messages a {
    color: #7c9eff;
}

[data-theme="dark"] .cp-cat-tile.active {
    background-color: #2f303f;
    outline: none;
}

[data-theme="dark"] .page-content {
    color: #e4e6eb !important;
}

[data-theme="dark"] .cp-login-comment-link {
    color: #f0f1f4;
}

[data-theme="dark"] .cp-searchable-select-panel {
    background: #21222f;
    border-color: #2d3444;
}
[data-theme="dark"] .cp-searchable-select-item {
    color: #e4e6eb;
}
[data-theme="dark"] .cp-searchable-select-item:hover {
    background: #2a2c3d;
}
[data-theme="dark"] .cp-searchable-select-empty {
    color: #9aa0a8;
}

[data-theme="dark"] .cp-drob-text {
    color: #e4e6eb;
}
[data-theme="dark"] .cp-drob-list-title {
    color: #f0f1f4;
}
[data-theme="dark"] .cp-drob-list-desc {
    color: #9aa0a8;
}
[data-theme="dark"] #drob-form label,
[data-theme="dark"] #drob-form .form-label {
    color: #d5d8e0;
}
[data-theme="dark"] .cp-drob-vote-arrow {
    color: #9aa0a8;
}
[data-theme="dark"] .cp-drob-vote-active-up {
    color: #2a68bd;
}
[data-theme="dark"] .cp-drob-vote-active-down {
    color: #dc3545;
}
[data-theme="dark"] .cp-drob-author-link {
    color: #e4e6eb;
}
[data-theme="dark"] .cp-explore-dim-item {
    color: #9aa0a8 !important;
}
[data-theme="dark"] .cp-comment-regular.cp-drob-comment-accepted {
    background: rgba(25, 135, 84, .18) !important;
}

[data-theme="dark"] .form-check-label {
    color: var(--bs-body-color);
}
[data-theme="dark"] .form-check-input {
    background-color: #2d3444;
    border-color: #4a5268;
}
[data-theme="dark"] .form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

[data-theme="dark"] .cp-saved-search-label {
    color: #e4e6eb !important;
}

[data-theme="dark"] .mp-box {
    background: #1e2126;
    color: #e8eaf0;
}
[data-theme="dark"] .mp-message {
    color: #c3c8d0;
}

[data-theme="dark"] .cp-follow-reminder {
    background: rgba(124, 158, 255, .1);
    border-color: rgba(124, 158, 255, .25);
    color: #e8eaf0;
}
[data-theme="dark"] .cp-drob-strip {
    background: #1e2126;
    border-color: #2f333b;
}
[data-theme="dark"] .cp-drob-h-card {
    border-color: #2f333b;
    color: #e8eaf0;
}
[data-theme="dark"] .cp-drob-h-card:hover {
    color: #e8eaf0;
}
[data-theme="dark"] .cp-drob-strip-more {
    color: #9aa0a8;
}

[data-theme="dark"] .cp-link-fix-dark {
    color: #fff !important;
}
[data-theme="dark"] .cp-text-fix-dark {
    color: #d5d8e0 !important;
}

[data-theme="dark"] .page-link {
    color: #d5d8e0;
    background-color: #21222f;
    border-color: #2d3444;
}
[data-theme="dark"] .page-item.active .page-link {
    color: #fff;
    background-color: #0078c7;
    border-color: #0078c7;
}
[data-theme="dark"] .page-item.disabled .page-link {
    color: #6c757d;
    background-color: #1e2126;
    border-color: #2d3444;
}

[data-theme="dark"] .co-media-pick-box {
    border-color: #4a5268;
    color: #9aa0a8;
}
[data-theme="dark"] .co-media-pick-box:hover,
[data-theme="dark"] .co-media-pick-box:focus {
    border-color: #0078c7;
    background: #21222f;
}
[data-theme="dark"] .co-media-pick-box i {
    color: #6b7078;
}
[data-theme="dark"] .cp-cat-icon-circle {
    background: #2f303f;
}
