:root {
    color-scheme: dark;
    --brand-black: #090909;
    --brand-surface: #171717;
    --brand-surface-raised: #202020;
    --brand-gold: #d4af37;
    --brand-gold-light: #f0d878;
    --brand-text: #f5f5f5;
    --brand-muted: #c3c3c3;
    --bs-primary: var(--brand-gold);
    --bs-primary-rgb: 212, 175, 55;
    --bs-body-bg: var(--brand-black);
    --bs-body-color: var(--brand-text);
    --bs-link-color: var(--brand-gold-light);
    --bs-link-hover-color: var(--brand-gold);
    --theme-primary: var(--brand-gold);
    --theme-secondary: #242424;
    --primary: var(--brand-gold);
    --secondary: #242424;
    --dark: var(--brand-black);
    --gray-50: #171717;
    --gray-100: #1d1d1d;
    --gray-200: #303030;
    --gray-300: #454545;
    --gray-400: #777;
    --gray-500: #999;
    --gray-600: #b5b5b5;
    --gray-700: #d0d0d0;
    --gray-800: #e5e5e5;
    --gray-900: var(--brand-text);
    --color-primary: var(--brand-gold);
    --primary-color: var(--brand-gold);
    --secondary-color: #242424;
    --legal-primary: var(--brand-gold);
    --legal-secondary: #a8841e;
    --legal-text: var(--brand-text);
    --legal-muted: var(--brand-muted);
    --legal-surface: var(--brand-surface);
    --legal-surface-soft: #202020;
    --legal-border: rgba(212, 175, 55, 0.24);
}

html,
body {
    background-color: var(--brand-black) !important;
    color: var(--brand-text) !important;
}

body {
    background-image: none !important;
}

body,
body.pro-shop,
body.wemn-shop,
body.national-shop {
    --pro-primary: var(--brand-gold);
    --pro-primary-rgb: 212, 175, 55;
    --pro-accent: var(--brand-gold-light);
    --pro-bg: var(--brand-black);
    --pro-bg-soft: #141414;
    --pro-surface: rgba(255, 255, 255, 0.05);
    --pro-surface-hover: rgba(255, 255, 255, 0.09);
    --pro-border: rgba(212, 175, 55, 0.24);
    --pro-text: var(--brand-text);
    --pro-muted: var(--brand-muted);
    --wemn-primary: var(--brand-gold);
    --wemn-primary-rgb: 212, 175, 55;
    --wemn-rose: var(--brand-gold-light);
    --wemn-blush: #202020;
    --wemn-cream: #141414;
    --wemn-gold: var(--brand-gold);
    --wemn-text: var(--brand-text);
    --wemn-muted: var(--brand-muted);
    --wemn-border: rgba(212, 175, 55, 0.24);
    --nd-bg: var(--brand-black);
    --nd-surface: #171717;
    --nd-border: rgba(212, 175, 55, 0.24);
    --nd-text: var(--brand-text);
    --nd-muted: var(--brand-muted);
    --nd-muted-soft: #a0a0a0;
    --nd-green-900: #171717;
    --nd-green-700: #202020;
    --nd-green-600: var(--brand-gold);
    --nd-green-500: #c6a12f;
    --nd-gold: var(--brand-gold);
    --nd-gold-dark: #b38f24;
    --nd-gold-light: var(--brand-gold-light);
}

a:not(.btn):not(.dropdown-item):not(.alert-link) {
    color: var(--brand-gold-light) !important;
}

a:not(.btn):not(.dropdown-item):not(.alert-link):hover {
    color: var(--brand-gold) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.text-primary {
    color: var(--brand-gold-light) !important;
}

.text-dark,
.text-body {
    color: var(--brand-text) !important;
}

.text-muted,
.text-secondary {
    color: var(--brand-muted) !important;
}

.bg-primary,
.btn-primary,
.btn-outline-primary:hover,
.badge.bg-primary {
    background-color: var(--brand-gold) !important;
    border-color: var(--brand-gold) !important;
    color: #111 !important;
}

.bg-white,
.bg-light,
.bg-body-tertiary,
.bg-body-secondary,
.bg-gray-50,
.bg-gray-100,
.bg-secondary,
.shop-legal-content,
.shop-legal-content .intro,
.store-info,
.section,
.payment-section,
.cart-item,
.product-card,
.product-item,
.member-info,
[style*="background: white"],
[style*="background-color: white"],
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background-color:#fff"],
[style*="background-color: #fff"],
[style*="background: #f8f"],
[style*="background: #f9f"],
[style*="background: #f3f"],
[style*="background-color: #f8f"],
[style*="background-color: #f9f"],
[style*="background-color: #f3f"],
[style*="background: rgba(255,255,255,0.7"],
[style*="background: rgba(255,255,255,0.8"],
[style*="background: rgba(255,255,255,0.9"],
[style*="background: rgba(255,255,255,0.95"],
[style*="background: rgba(255,255,255,0.97"],
[style*="background: rgba(255, 255, 255, 0.7"],
[style*="background: rgba(255, 255, 255, 0.8"],
[style*="background: rgba(255, 255, 255, 0.9"],
[style*="background: rgba(255, 255, 255, 0.95"],
[style*="background: rgba(255, 255, 255, 0.97"] {
    background-color: var(--brand-surface) !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.24) !important;
}

.text-black,
.text-gray-900,
.text-gray-800 {
    color: var(--brand-text) !important;
}

.text-gray-500,
.text-gray-600,
.text-gray-700 {
    color: var(--brand-muted) !important;
}

.alert-success,
.alert-success *,
.table-success,
.table-success *,
.list-group-item-success {
    color: #0f5132 !important;
}

.bg-success,
.bg-success *,
.badge.bg-success,
.btn-success,
.btn-success * {
    color: #fff !important;
}

.text-success {
    color: #198754 !important;
}

.alert-danger,
.alert-danger *,
.table-danger,
.table-danger *,
.list-group-item-danger {
    color: #842029 !important;
}

.bg-danger,
.bg-danger *,
.badge.bg-danger,
.btn-danger,
.btn-danger * {
    color: #fff !important;
}

.text-danger {
    color: #dc3545 !important;
}

.alert-warning,
.alert-warning *,
.table-warning,
.table-warning *,
.list-group-item-warning {
    color: #664d03 !important;
}

.bg-warning,
.bg-warning *,
.badge.bg-warning,
.btn-warning,
.btn-warning * {
    color: #212529 !important;
}

.text-warning {
    color: #997404 !important;
}

.alert-info,
.alert-info *,
.table-info,
.table-info *,
.list-group-item-info {
    color: #055160 !important;
}

.bg-info,
.bg-info *,
.badge.bg-info,
.btn-info,
.btn-info * {
    color: #fff !important;
}

.text-info {
    color: #087990 !important;
}

.status-active,
.st-active {
    color: #198754 !important;
}

.status-completed {
    color: #087990 !important;
}

.status-frozen,
.st-hold,
.st-frozen {
    color: #997404 !important;
}

.status-expired,
.st-other {
    color: var(--brand-muted) !important;
}

.st-pending {
    color: #0d6efd !important;
}

.btn-light,
.btn-secondary,
.btn-outline-dark,
.btn-outline-light,
.button-primary,
.btn-custom,
.primary-button,
.pro-shop .pro-btn-primary,
.wemn-shop .wemn-btn-primary,
.national-btn--gold,
[class*="button--primary"],
[class*="btn-primary"],
[style*="background: var(--primary)"],
[style*="background: linear-gradient(135deg, var(--primary)"] {
    background-color: var(--brand-gold) !important;
    border-color: var(--brand-gold) !important;
    color: #111 !important;
}

.page-link {
    background-color: var(--brand-surface) !important;
    border-color: rgba(212, 175, 55, 0.3) !important;
    color: var(--brand-gold-light) !important;
}

.page-item.active .page-link {
    background-color: var(--brand-gold) !important;
    color: #111 !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #e1bf4c !important;
    border-color: #e1bf4c !important;
    color: #111 !important;
}

.btn-outline-primary {
    color: var(--brand-gold-light) !important;
    border-color: var(--brand-gold) !important;
}

.bg-dark,
.navbar-dark,
.sidebar,
.dropdown-menu,
.modal-content,
.offcanvas,
.accordion-item,
.list-group-item:not(.list-group-item-success):not(.list-group-item-danger):not(.list-group-item-warning):not(.list-group-item-info),
.card:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
.card-header:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
.table:not(.table-success):not(.table-danger):not(.table-warning):not(.table-info) {
    background-color: var(--brand-surface) !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.2) !important;
}

.card:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
[class*="card"]:not(.alert):not([class*="status"]):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info) {
    background-color: var(--brand-surface) !important;
    background-image: none !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.24) !important;
}

.wemn-shop .wemn-btn-soft,
.wemn-shop .wemn-feature,
.wemn-shop .wemn-empty,
.wemn-shop .wemn-icon-btn,
.wemn-shop .wemn-hero-tag,
.wemn-shop .wemn-trust,
.wemn-shop .wemn-pill,
.wemn-shop .wemn-social a,
.wemn-shop .shop-quick-link-item,
.wemn-shop .shop-hero-nav,
.national-shop .shop-hero-nav {
    background: var(--brand-surface) !important;
    color: var(--brand-gold-light) !important;
    border-color: rgba(212, 175, 55, 0.24) !important;
}

.table:not(.table-success):not(.table-danger):not(.table-warning):not(.table-info) > :not(caption) > tr:not(.table-success):not(.table-danger):not(.table-warning):not(.table-info) > *:not(.table-success):not(.table-danger):not(.table-warning):not(.table-info) {
    background-color: var(--brand-surface) !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.2) !important;
}

.navbar,
.navbar-custom,
.trainer-portal-navbar,
.pro-header,
.wemn-header,
.national-header,
.footer-custom,
.pro-footer,
.wemn-footer,
.national-footer,
.mobile-bottom-nav {
    background-color: #101010 !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.28) !important;
}

.navbar a,
.navbar .nav-link,
.navbar-brand,
.sidebar .nav-link,
.dropdown-item,
.pro-shop a,
.wemn-shop a,
.national-shop a {
    color: var(--brand-gold-light) !important;
}

.sidebar {
    background: #090909 !important;
    background-image: none !important;
    color: var(--brand-text) !important;
    border-left: 1px solid rgba(212, 175, 55, 0.3);
}

.sidebar *,
.sidebar .nav-link,
.sidebar .nav-link i,
.sidebar .nav-link span,
.sidebar h1,
.sidebar h2,
.sidebar h3,
.sidebar h4,
.sidebar h5,
.sidebar h6 {
    color: var(--brand-gold-light) !important;
}

.sidebar .nav-link {
    background-color: transparent !important;
}

.dropdown-item:hover,
.dropdown-item:focus,
.sidebar .nav-link:hover,
.sidebar .nav-link.active {
    background-color: #d4af37 !important;
    color: #090909 !important;
}

.sidebar .nav-link:hover *,
.sidebar .nav-link.active *,
.sidebar .nav-link:hover i,
.sidebar .nav-link.active i {
    color: #090909 !important;
}

.sidebar .collapse.show {
    background-color: #141414 !important;
}

.sidebar .text-light,
.sidebar .text-muted,
.sidebar .text-secondary {
    color: var(--brand-gold-light) !important;
}

.card:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
.trainer-card,
.card-custom,
.pro-card,
.wemn-card,
.national-card,
.booking-container,
.att-card {
    background-color: var(--brand-surface) !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.24) !important;
}

.card-header:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
.pro-card__header,
.wemn-card__header,
.national-card__header {
    background-color: #202020 !important;
    color: var(--brand-gold-light) !important;
    border-color: rgba(212, 175, 55, 0.24) !important;
}

.form-control,
.form-select,
.input-group-text,
textarea,
select,
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
.pro-shop input,
.pro-shop select,
.pro-shop textarea,
.wemn-shop input,
.wemn-shop select,
.wemn-shop textarea,
.national-shop input,
.national-shop select,
.national-shop textarea {
    background-color: #101010 !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.35) !important;
}

.form-control::placeholder,
textarea::placeholder,
input::placeholder {
    color: #aaa !important;
    opacity: 1;
}

.form-control:focus,
.form-select:focus,
textarea:focus,
input:focus,
select:focus {
    border-color: var(--brand-gold) !important;
    box-shadow: 0 0 0 0.2rem rgba(212, 175, 55, 0.22) !important;
}

.table,
.table th,
.table td {
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.2) !important;
}

.table.table-success,
.table.table-success *,
.table .table-success,
.table .table-success *,
.table .list-group-item-success {
    color: #0f5132 !important;
}

.table.table-danger,
.table.table-danger *,
.table .table-danger,
.table .table-danger *,
.table .list-group-item-danger {
    color: #842029 !important;
}

.table.table-warning,
.table.table-warning *,
.table .table-warning,
.table .table-warning *,
.table .list-group-item-warning {
    color: #664d03 !important;
}

.table.table-info,
.table.table-info *,
.table .table-info,
.table .table-info *,
.table .list-group-item-info {
    color: #055160 !important;
}

.table .text-success {
    color: #198754 !important;
}

.table .text-danger {
    color: #dc3545 !important;
}

.table .text-warning {
    color: #997404 !important;
}

.table .text-info {
    color: #087990 !important;
}

.table .status-active,
.table .st-active {
    color: #198754 !important;
}

.table .status-completed {
    color: #087990 !important;
}

.table .status-frozen,
.table .st-hold,
.table .st-frozen {
    color: #997404 !important;
}

.table .status-expired,
.table .status-cancelled {
    color: #dc3545 !important;
}

.table .st-other {
    color: var(--brand-muted) !important;
}

.table .st-pending {
    color: #0d6efd !important;
}

.table-striped > tbody > tr:not(.table-success):not(.table-danger):not(.table-warning):not(.table-info):nth-of-type(odd) > *,
.table-hover > tbody > tr:not(.table-success):not(.table-danger):not(.table-warning):not(.table-info):hover > * {
    --bs-table-bg-type: #222;
    color: var(--brand-text) !important;
}

.pro-shop,
.wemn-shop,
.national-shop {
    background: var(--brand-black) !important;
    color: var(--brand-text) !important;
}

.pro-ambient,
.wemn-blob {
    opacity: 0.15 !important;
}

.pro-shop .btn-primary,
.wemn-shop .btn-primary,
.national-shop .btn-primary,
.pro-shop .pro-btn--primary,
.wemn-shop .wemn-btn--primary {
    background: var(--brand-gold) !important;
    border-color: var(--brand-gold) !important;
    color: #111 !important;
}

.wemn-shop .wemn-cart-badge,
.wemn-shop .wemn-card-badge,
.wemn-shop .wemn-pill.is-active,
.wemn-shop .wemn-pill:hover {
    color: #111 !important;
}

.wemn-shop .wemn-card-placeholder {
    background: var(--brand-surface) !important;
    color: var(--brand-gold-light) !important;
}

.wemn-shop .wemn-toast--success {
    background: #198754 !important;
    color: #fff !important;
}

.national-header__inner,
.national-hero,
.national-cta,
.national-button--primary,
.national-btn--primary {
    border-color: rgba(212, 175, 55, 0.35) !important;
}

.national-hero,
.national-cta {
    background-color: #171717 !important;
    color: var(--brand-text) !important;
}

.wemn-shop .wemn-announce {
    background: var(--brand-gold) !important;
    color: #111 !important;
}

.national-brand__mark,
.national-add,
.national-btn--gold,
.national-cart span {
    color: #111 !important;
}

#member-app-loading,
.splash-screen {
    background: var(--brand-black) !important;
    color: var(--brand-text) !important;
}

#member-portal [class*="card"]:not(.alert):not([class*="status"]):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info) {
    background-color: var(--brand-surface) !important;
    color: var(--brand-text) !important;
    border-color: rgba(212, 175, 55, 0.24) !important;
}

@media print {
    :root {
        color-scheme: light;
    }

    html,
    body,
    body.pro-shop,
    body.wemn-shop,
    body.national-shop {
        background: #fff !important;
        background-image: none !important;
        color: #111 !important;
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }

    body *,
    body.pro-shop *,
    body.wemn-shop *,
    body.national-shop * {
        color: #111 !important;
        box-shadow: none !important;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    .print-title,
    .invoice-title,
    .header h1 {
        color: #9a7610 !important;
    }

    .card:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info):not([class*="status"]),
    [class*="card"]:not(.alert):not([class*="status"]):not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
    .card-header:not(.bg-success):not(.bg-danger):not(.bg-warning):not(.bg-info),
    .card-body,
    .table,
    .table th,
    .table td,
    .bg-white,
    .bg-light,
    .bg-body-tertiary,
    .bg-body-secondary,
    .bg-gray-50,
    .bg-gray-100,
    .shop-legal-content,
    .shop-legal-content .intro,
    .store-info,
    .section,
    .payment-section,
    .cart-item,
    .product-card,
    .product-item,
    .member-info,
    .amount-panel,
    .print-summary,
    [style*="background: white"],
    [style*="background-color: white"],
    [style*="background:#fff"],
    [style*="background: #fff"],
    [style*="background-color:#fff"],
    [style*="background-color: #fff"],
    [style*="background: #f8f"],
    [style*="background: #f9f"],
    [style*="background: #f3f"],
    [style*="background-color: #f8f"],
    [style*="background-color: #f9f"],
    [style*="background-color: #f3f"],
    [style*="background: rgba(255,255,255,0.7"],
    [style*="background: rgba(255,255,255,0.8"],
    [style*="background: rgba(255,255,255,0.9"],
    [style*="background: rgba(255,255,255,0.95"],
    [style*="background: rgba(255,255,255,0.97"],
    [style*="background: rgba(255, 255, 255, 0.7"],
    [style*="background: rgba(255, 255, 255, 0.8"],
    [style*="background: rgba(255, 255, 255, 0.9"],
    [style*="background: rgba(255, 255, 255, 0.95"],
    [style*="background: rgba(255, 255, 255, 0.97"] {
        background: #fff !important;
        color: #111 !important;
        border-color: #c5a33a !important;
    }

    .bg-dark,
    .navbar,
    .sidebar,
    .dropdown-menu,
    .modal-content,
    .offcanvas,
    .accordion-item {
        background: #fff !important;
        color: #111 !important;
    }

    .text-success,
    .text-danger,
    .text-warning,
    .text-info {
        color: #198754 !important;
    }

    .text-danger {
        color: #dc3545 !important;
    }

    .text-warning {
        color: #997404 !important;
    }

    .text-info {
        color: #087990 !important;
    }

    .table.table-success,
    .table.table-success *,
    .table .table-success,
    .table .table-success *,
    .table .list-group-item-success {
        color: #0f5132 !important;
    }

    .table.table-danger,
    .table.table-danger *,
    .table .table-danger,
    .table .table-danger *,
    .table .list-group-item-danger {
        color: #842029 !important;
    }

    .table.table-warning,
    .table.table-warning *,
    .table .table-warning,
    .table .table-warning *,
    .table .list-group-item-warning {
        color: #664d03 !important;
    }

    .table.table-info,
    .table.table-info *,
    .table .table-info,
    .table .table-info *,
    .table .list-group-item-info {
        color: #055160 !important;
    }

    .alert-success {
        color: #0f5132 !important;
    }

    .alert-danger {
        color: #842029 !important;
    }

    .alert-warning {
        color: #664d03 !important;
    }

    .alert-info {
        color: #055160 !important;
    }

    .status-paid,
    .text-success,
    .status-active,
    .st-active {
        color: #198754 !important;
    }

    .status-pending,
    .text-warning,
    .status-frozen,
    .st-hold,
    .st-frozen {
        color: #997404 !important;
    }

    .status-cancelled,
    .text-danger,
    .status-expired,
    .st-other {
        color: #dc3545 !important;
    }

    .status-completed,
    .st-pending,
    .text-info {
        color: #087990 !important;
    }

    .no-print {
        display: none !important;
    }
}
