/* =============================================================
   WeeCommerce Dark Mode — dark-mode.css
   All rules scoped to .weecommerce-dark on <html>.
   Light mode is COMPLETELY unchanged.
   Elementor pages are NEVER targeted (JS skips applying the class).
   ============================================================= */

/* ── 1. CSS Variable Defaults (overridden by PHP inline vars) ── */
.weecommerce-dark {
    --dm-bg:             #161616;
    --dm-surface:        #1D1D1D;
    --dm-text:           #FFFFFF;
    --dm-text-secondary: #CCCCCC;
    --dm-border:         #333333;
    --dm-input-bg:       #252525;
    --dm-card-bg:        #1D1D1D;
    --dm-hover:          #2a2a2a;
    --dm-shadow:         0 4px 24px rgba(0,0,0,0.5);
}

/* ── 2. BASE — html, body ─────────────────────────────────────── */
.weecommerce-dark body,
.weecommerce-dark {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

/* ── 3. TYPOGRAPHY ────────────────────────────────────────────── */
.weecommerce-dark h1,
.weecommerce-dark h2,
.weecommerce-dark h3,
.weecommerce-dark h4,
.weecommerce-dark h5,
.weecommerce-dark h6 {
    color: var(--dm-text) !important;
}

.weecommerce-dark p,
.weecommerce-dark span:not(.wc-dm-icon):not([class*="bg-"]):not([class*="text-white"]):not([class*="text-red"]):not([class*="text-green"]):not([class*="text-yellow"]),
.weecommerce-dark li,
.weecommerce-dark label,
.weecommerce-dark legend,
.weecommerce-dark dt,
.weecommerce-dark dd,
.weecommerce-dark td,
.weecommerce-dark th,
.weecommerce-dark caption,
.weecommerce-dark blockquote,
.weecommerce-dark figcaption,
.weecommerce-dark address,
.weecommerce-dark time,
.weecommerce-dark small {
    color: var(--dm-text-secondary);
}

.weecommerce-dark a {
    color: var(--dm-text);
}

.weecommerce-dark a:hover {
    color: var(--dm-text-secondary);
}

/* Preserve brand CTA link colors */
.weecommerce-dark a.button,
.weecommerce-dark .button,
.weecommerce-dark .btn,
.weecommerce-dark a[class*="bg-brand"],
.weecommerce-dark button[class*="bg-brand"] {
    color: #fff;
}

/* ── 4. GLOBAL DIVIDERS & BORDERS ────────────────────────────── */
.weecommerce-dark hr,
.weecommerce-dark .border,
.weecommerce-dark .border-b,
.weecommerce-dark .border-t,
.weecommerce-dark .border-gray-100,
.weecommerce-dark .border-gray-200,
.weecommerce-dark .divide-y > *,
.weecommerce-dark .divide-gray-100 > * {
    border-color: var(--dm-border) !important;
}

/* ── 5. HEADER ────────────────────────────────────────────────── */

/* Header 01 */
.weecommerce-dark #site-header-01,
.weecommerce-dark #site-header-01 header,
.weecommerce-dark #site-header-01 nav {
    background-color: var(--dm-surface) !important;
    border-bottom-color: var(--dm-border) !important;
}

.weecommerce-dark #site-header-01 .menu-item a,
.weecommerce-dark #site-header-01 .menu-item > a,
.weecommerce-dark #site-header-01 .h01-icon,
.weecommerce-dark #site-header-01 .h01-account-icon {
    color: var(--dm-text) !important;
}

.weecommerce-dark #site-header-01 .h01-icon svg path,
.weecommerce-dark #site-header-01 .h01-account-icon svg path {
    stroke: var(--dm-text) !important;
}

.weecommerce-dark #h01-nav-bar {
    background-color: var(--dm-surface) !important;
    border-top-color: var(--dm-border) !important;
}

/* Desktop search bar inside header 01 */
.weecommerce-dark #site-header-01 input[type="search"],
.weecommerce-dark #site-header-01 input[name="s"] {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Header 02 pill */
.weecommerce-dark #header-02-pill {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #header-02-pill .h02-menu li a,
.weecommerce-dark #header-02-pill .header-icon,
.weecommerce-dark #header-02-pill .header-icon svg {
    color: var(--dm-text) !important;
}

.weecommerce-dark #header-02-pill .sub-menu {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #header-02-pill .sub-menu li a {
    color: var(--dm-text-secondary) !important;
    background-color: transparent !important;
}

.weecommerce-dark #header-02-pill .sub-menu li a:hover {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

/* Navigation sub-menu (header 01) */
.weecommerce-dark .sub-menu {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    box-shadow: var(--dm-shadow) !important;
}

.weecommerce-dark .sub-menu li a {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .sub-menu li a:hover {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

/* PWA top bar stays branded — no override needed */

/* Notification / announcement bar — keep brand bg */

/* ── 6. MOBILE MENU ───────────────────────────────────────────── */
.weecommerce-dark #mobile-menu-drawer {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark #mobile-menu-drawer .menu-item a,
.weecommerce-dark #mobile-menu-drawer a {
    color: var(--dm-text) !important;
    border-bottom-color: var(--dm-border) !important;
}

.weecommerce-dark #mobile-menu-overlay {
    background-color: rgba(0, 0, 0, 0.7) !important;
}

.weecommerce-dark #mobile-menu-drawer .sub-menu {
    background-color: var(--dm-hover) !important;
}

/* ── 7. MEGA MENU ─────────────────────────────────────────────── */
.weecommerce-dark .mega-menu,
.weecommerce-dark [class*="mega-menu"] > div,
.weecommerce-dark .wee-mega-menu-panel {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    box-shadow: var(--dm-shadow) !important;
}

.weecommerce-dark .mega-menu a,
.weecommerce-dark [class*="mega-menu"] a {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .mega-menu a:hover,
.weecommerce-dark [class*="mega-menu"] a:hover {
    color: var(--dm-text) !important;
    background-color: var(--dm-hover) !important;
}

/* ── 8. SEARCH ────────────────────────────────────────────────── */
.weecommerce-dark input[type="search"],
.weecommerce-dark input[name="s"],
.weecommerce-dark .search-field {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .search-results-dropdown,
.weecommerce-dark [class*="search-results"] {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    box-shadow: var(--dm-shadow) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark #mobile-search-results,
.weecommerce-dark .mobile-search-results {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

/* ── 9. CART DRAWER ───────────────────────────────────────────── */
.weecommerce-dark #cart-drawer,
#cart-drawer.weecommerce-dark {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark #cart-drawer h2,
.weecommerce-dark #cart-drawer h3,
.weecommerce-dark #cart-drawer h4 {
    color: var(--dm-text) !important;
}

.weecommerce-dark #cart-drawer .border-b,
.weecommerce-dark #cart-drawer .border-gray-100 {
    border-color: var(--dm-border) !important;
}

/* Cart item names, prices */
.weecommerce-dark #cart-drawer .text-\[\#161616\],
.weecommerce-dark #cart-drawer [class*="text-gray-8"],
.weecommerce-dark #cart-drawer [class*="text-gray-9"] {
    color: var(--dm-text) !important;
}

.weecommerce-dark #cart-drawer [class*="text-gray-4"],
.weecommerce-dark #cart-drawer [class*="text-gray-5"],
.weecommerce-dark #cart-drawer .text-gray-500,
.weecommerce-dark #cart-drawer .text-gray-400 {
    color: var(--dm-text-secondary) !important;
}

/* Cart item image border */
.weecommerce-dark #cart-drawer .border-gray-100,
.weecommerce-dark #cart-drawer li .border {
    border-color: var(--dm-border) !important;
}

/* Cart footer / totals area */
.weecommerce-dark #cart-drawer-footer,
.weecommerce-dark [id*="cart-drawer"] .border-t {
    background-color: var(--dm-surface) !important;
    border-top-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

/* Empty cart state */
.weecommerce-dark #cart-drawer .text-gray-800 {
    color: var(--dm-text) !important;
}

/* Cart item quantity selectors */
.weecommerce-dark #cart-drawer input[type="number"],
.weecommerce-dark #cart-drawer .quantity input {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ── 10. FILTER DRAWER ────────────────────────────────────────── */
.weecommerce-dark #filter-drawer {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark #filter-drawer h2,
.weecommerce-dark #filter-drawer h3,
.weecommerce-dark #filter-drawer .text-\[\#1F2937\] {
    color: var(--dm-text) !important;
}

.weecommerce-dark #filter-drawer .border-b,
.weecommerce-dark #filter-drawer .border-gray-100 {
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #filter-drawer label {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #filter-drawer input[type="checkbox"] {
    accent-color: var(--dm-text) !important;
}

.weecommerce-dark #filter-drawer .bg-gray-200 {
    background-color: var(--dm-hover) !important;
}

.weecommerce-dark #filter-drawer-overlay {
    background-color: rgba(0,0,0,0.7) !important;
}

/* ── 11. PRODUCT CARDS ────────────────────────────────────────── */

/* Base card (comp-product-card.php) */
.weecommerce-dark .group.bg-white {
    background-color: var(--dm-card-bg) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .group.bg-white:hover {
    border-color: var(--dm-border) !important;
    box-shadow: var(--dm-shadow) !important;
}

/* Image background on cards */
.weecommerce-dark .bg-\[\#F5F0EB\] {
    background-color: var(--dm-hover) !important;
}

/* Product card text */
.weecommerce-dark .font-sans.font-semibold.text-gray-900,
.weecommerce-dark .group .text-gray-900 {
    color: var(--dm-text) !important;
}

.weecommerce-dark .text-xs.text-gray-500,
.weecommerce-dark .group .text-gray-500 {
    color: var(--dm-text-secondary) !important;
}

/* Star ratings */
.weecommerce-dark .text-gray-300 {
    color: var(--dm-border) !important;
}

/* NEW LAUNCH badge */
.weecommerce-dark .bg-white.text-gray-800.border.border-gray-100 {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Wishlist button on card */
.weecommerce-dark .js-wishlist-toggle.bg-white {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text-secondary) !important;
}

/* Regular price strikethrough */
.weecommerce-dark .text-gray-400.line-through {
    color: var(--dm-text-secondary) !important;
}

/* WooCommerce default product loops */
.weecommerce-dark ul.products li.product,
.weecommerce-dark ul.products li.product-category {
    background-color: var(--dm-card-bg) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark ul.products li.product .woocommerce-loop-product__title,
.weecommerce-dark ul.products li.product .woocommerce-loop-category__title {
    color: var(--dm-text) !important;
}

.weecommerce-dark ul.products li.product .price,
.weecommerce-dark ul.products li.product .price .amount {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark ul.products li.product .price ins .amount {
    color: var(--dm-text) !important;
}

/* ── 12. SHOP / ARCHIVE PAGE ─────────────────────────────────── */
.weecommerce-dark .woocommerce-shop,
.weecommerce-dark .tax-product_cat,
.weecommerce-dark .tax-product_tag,
.weecommerce-dark body.archive {
    background-color: var(--dm-bg);
}

/* Shop banner / hero */
.weecommerce-dark .shop-banner,
.weecommerce-dark [class*="shop-hero"],
.weecommerce-dark [class*="shop-header"] {
    color: var(--dm-text) !important;
}

/* Archive page header */
.weecommerce-dark .page-header,
.weecommerce-dark .woocommerce-products-header {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-products-header__title {
    color: var(--dm-text) !important;
}

/* Ordering / sorting dropdown */
.weecommerce-dark .woocommerce-ordering select,
.weecommerce-dark select.orderby {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Results count */
.weecommerce-dark .woocommerce-result-count {
    color: var(--dm-text-secondary) !important;
}

/* ── 13. BREADCRUMBS ─────────────────────────────────────────── */
.weecommerce-dark .woocommerce-breadcrumb,
.weecommerce-dark nav.woocommerce-breadcrumb,
.weecommerce-dark .breadcrumb,
.weecommerce-dark .breadcrumbs,
.weecommerce-dark [class*="breadcrumb"] {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .woocommerce-breadcrumb a,
.weecommerce-dark .breadcrumb a {
    color: var(--dm-text-secondary) !important;
}

/* ── 14. PAGINATION ──────────────────────────────────────────── */
.weecommerce-dark .woocommerce-pagination ul,
.weecommerce-dark .page-numbers {
    background-color: transparent !important;
}

.weecommerce-dark .woocommerce-pagination ul li a,
.weecommerce-dark .woocommerce-pagination ul li span,
.weecommerce-dark a.page-numbers,
.weecommerce-dark span.page-numbers {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .woocommerce-pagination ul li a:hover,
.weecommerce-dark a.page-numbers:hover {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-pagination ul li span.current,
.weecommerce-dark span.page-numbers.current {
    color: #fff !important;
}

/* ── 15. SINGLE PRODUCT PAGE ─────────────────────────────────── */
.weecommerce-dark .single-product .product {
    background-color: var(--dm-bg) !important;
}

/* Price */
.weecommerce-dark .woocommerce-Price-amount,
.weecommerce-dark .product .price .woocommerce-Price-amount {
    color: var(--dm-text) !important;
}

.weecommerce-dark .product .price del .woocommerce-Price-amount {
    color: var(--dm-text-secondary) !important;
    opacity: 0.7;
}

/* Product title */
.weecommerce-dark .product_title {
    color: var(--dm-text) !important;
}

/* Product meta */
.weecommerce-dark .product_meta,
.weecommerce-dark .product_meta span,
.weecommerce-dark .product_meta a {
    color: var(--dm-text-secondary) !important;
}

/* Short description */
.weecommerce-dark .woocommerce-product-details__short-description,
.weecommerce-dark .woocommerce-product-details__short-description p {
    color: var(--dm-text-secondary) !important;
}

/* Quantity input */
.weecommerce-dark .quantity .qty,
.weecommerce-dark input.qty {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Gallery / thumbnails */
.weecommerce-dark .woocommerce-product-gallery {
    background-color: var(--dm-surface) !important;
}

.weecommerce-dark .woocommerce-product-gallery .flex-viewport,
.weecommerce-dark .woocommerce-product-gallery figure {
    background-color: var(--dm-hover) !important;
}

/* Product Tabs */
.weecommerce-dark .woocommerce-tabs .tabs {
    border-bottom-color: var(--dm-border) !important;
}

.weecommerce-dark .woocommerce-tabs .tabs li {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .woocommerce-tabs .tabs li a {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .woocommerce-tabs .tabs li.active,
.weecommerce-dark .woocommerce-tabs .tabs li.active a {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-tabs .panel,
.weecommerce-dark .woocommerce-Tabs-panel {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ── 15b. PRODUCT DESCRIPTION & TAB CONTENT ───────────────── */
.weecommerce-dark #tab-description,
.weecommerce-dark #tab-description *,
.weecommerce-dark .woocommerce-Tabs-panel--description,
.weecommerce-dark .woocommerce-Tabs-panel--description *,
.weecommerce-dark .woocommerce-product-details__short-description,
.weecommerce-dark .woocommerce-product-details__short-description * {
    color: var(--dm-text, #FFFFFF) !important;
}

.weecommerce-dark #tab-description a,
.weecommerce-dark .woocommerce-Tabs-panel--description a {
    color: var(--dm-accent, #A05C35) !important;
}

/* ── 16. REVIEWS & REVIEW FORM (WHITE BOX, BLACK TEXT) ──────── */
.weecommerce-dark #reviews,
.weecommerce-dark #tab-reviews,
.weecommerce-dark .woocommerce-Tabs-panel--reviews,
.weecommerce-dark .woocommerce-Reviews,
.weecommerce-dark #review_form_wrapper,
.weecommerce-dark #review_form,
.weecommerce-dark #review_form .comment-respond,
.weecommerce-dark .comment-respond {
    background-color: #ffffff !important;
    color: #161616 !important;
    border-color: #e5e5e5 !important;
    border-radius: 16px !important;
}

.weecommerce-dark #reviews *,
.weecommerce-dark #tab-reviews *,
.weecommerce-dark .woocommerce-Tabs-panel--reviews *,
.weecommerce-dark .woocommerce-Reviews *,
.weecommerce-dark #review_form_wrapper *,
.weecommerce-dark #review_form *,
.weecommerce-dark .comment-respond * {
    color: #161616 !important;
}

.weecommerce-dark #reviews .woocommerce-Reviews-title,
.weecommerce-dark #reviews .noreviews,
.weecommerce-dark #reviews .comment-reply-title,
.weecommerce-dark #reply-title,
.weecommerce-dark #review_form label,
.weecommerce-dark .comment-form-rating label,
.weecommerce-dark .comment-form-comment label,
.weecommerce-dark .comment-form-author label,
.weecommerce-dark .comment-form-email label,
.weecommerce-dark #reviews p,
.weecommerce-dark #reviews span,
.weecommerce-dark #reviews h1,
.weecommerce-dark #reviews h2,
.weecommerce-dark #reviews h3,
.weecommerce-dark #reviews h4,
.weecommerce-dark #reviews h5,
.weecommerce-dark #reviews h6 {
    color: #161616 !important;
}

.weecommerce-dark #reviews .comment-text,
.weecommerce-dark .woocommerce-Reviews .description {
    background-color: #f9f9f9 !important;
    border: 1px solid #e5e5e5 !important;
    color: #161616 !important;
}

.weecommerce-dark #reviews .comment-text *,
.weecommerce-dark .woocommerce-Reviews .description * {
    color: #161616 !important;
}

.weecommerce-dark #reviews .comment-author,
.weecommerce-dark #reviews .comment-author * {
    color: #161616 !important;
}

.weecommerce-dark #review_form textarea,
.weecommerce-dark #review_form input[type="text"],
.weecommerce-dark #review_form input[type="email"],
.weecommerce-dark .comment-form textarea,
.weecommerce-dark .comment-form input[type="text"],
.weecommerce-dark .comment-form input[type="email"] {
    background-color: #ffffff !important;
    color: #161616 !important;
    border: 1px solid #cccccc !important;
    border-radius: 8px !important;
}

.weecommerce-dark #reviews p.stars a,
.weecommerce-dark .star-rating,
.weecommerce-dark .star-rating span,
.weecommerce-dark p.stars a::before,
.weecommerce-dark .stars a:hover,
.weecommerce-dark .stars a.active {
    color: #f59e0b !important;
}

.weecommerce-dark #review_form #submit,
.weecommerce-dark .comment-form #submit,
.weecommerce-dark #reviews input[type="submit"] {
    background-color: var(--dm-accent, #A05C35) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 99px !important;
    padding: 10px 24px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: filter 0.2s ease !important;
}

.weecommerce-dark #review_form #submit:hover,
.weecommerce-dark .comment-form #submit:hover,
.weecommerce-dark #reviews input[type="submit"]:hover {
    filter: brightness(0.9) !important;
    color: #ffffff !important;
}

/* ── 17. RELATED PRODUCTS ────────────────────────────────────── */
.weecommerce-dark .related.products,
.weecommerce-dark .upsells.products {
    color: var(--dm-text) !important;
}

.weecommerce-dark .related.products > h2,
.weecommerce-dark .upsells.products > h2 {
    color: var(--dm-text) !important;
}

/* ── 18. FORMS — GLOBAL ──────────────────────────────────────── */
.weecommerce-dark input[type="text"],
.weecommerce-dark input[type="email"],
.weecommerce-dark input[type="url"],
.weecommerce-dark input[type="password"],
.weecommerce-dark input[type="tel"],
.weecommerce-dark input[type="number"],
.weecommerce-dark input[type="date"],
.weecommerce-dark textarea,
.weecommerce-dark select {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark input[type="text"]::placeholder,
.weecommerce-dark input[type="email"]::placeholder,
.weecommerce-dark input[type="password"]::placeholder,
.weecommerce-dark input[type="tel"]::placeholder,
.weecommerce-dark input[type="number"]::placeholder,
.weecommerce-dark textarea::placeholder,
.weecommerce-dark input[name="s"]::placeholder {
    color: var(--dm-text-secondary) !important;
    opacity: 0.7 !important;
}

/* Focus ring */
.weecommerce-dark input:focus,
.weecommerce-dark textarea:focus,
.weecommerce-dark select:focus {
    outline: 2px solid rgba(255,255,255,0.3) !important;
    border-color: rgba(255,255,255,0.4) !important;
}

/* Autofill override (Chrome/Edge) */
.weecommerce-dark input:-webkit-autofill,
.weecommerce-dark input:-webkit-autofill:hover,
.weecommerce-dark input:-webkit-autofill:focus,
.weecommerce-dark textarea:-webkit-autofill,
.weecommerce-dark select:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px var(--dm-input-bg) inset !important;
    -webkit-text-fill-color: var(--dm-text) !important;
    caret-color: var(--dm-text) !important;
}

/* Disabled fields */
.weecommerce-dark input:disabled,
.weecommerce-dark textarea:disabled,
.weecommerce-dark select:disabled {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text-secondary) !important;
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

/* Option elements */
.weecommerce-dark select option {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
}

/* Form labels */
.weecommerce-dark .woocommerce form label,
.weecommerce-dark .woocommerce label,
.weecommerce-dark form label {
    color: var(--dm-text-secondary) !important;
}

/* WooCommerce form wrappers */
.weecommerce-dark .woocommerce form .form-row,
.weecommerce-dark .woocommerce-page form .form-row {
    color: var(--dm-text-secondary) !important;
}

/* ── 19. SELECT2 DROPDOWNS ───────────────────────────────────── */
.weecommerce-dark .select2-container--default .select2-selection--single,
.weecommerce-dark .select2-container--default .select2-selection--multiple {
    background-color: var(--dm-input-bg) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--dm-text) !important;
}

.weecommerce-dark .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--dm-text-secondary) transparent transparent !important;
}

.weecommerce-dark .select2-dropdown {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    box-shadow: var(--dm-shadow) !important;
}

.weecommerce-dark .select2-container--default .select2-results__option {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .select2-container--default .select2-results__option--highlighted[aria-selected],
.weecommerce-dark .select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .select2-container--default .select2-results__option[aria-selected=true] {
    background-color: var(--dm-hover) !important;
}

.weecommerce-dark .select2-search__field {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ── 20. WOOCOMMERCE NOTICES ─────────────────────────────────── */
.weecommerce-dark .woocommerce-message,
.weecommerce-dark .woocommerce-info,
.weecommerce-dark .woocommerce-error,
.weecommerce-dark .wc-block-components-notice {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .woocommerce-message {
    border-top-color: #4caf50 !important;
}

.weecommerce-dark .woocommerce-info {
    border-top-color: #2196f3 !important;
}

.weecommerce-dark .woocommerce-error {
    border-top-color: #f44336 !important;
}

.weecommerce-dark .woocommerce-message a,
.weecommerce-dark .woocommerce-info a,
.weecommerce-dark .woocommerce-error a {
    color: var(--dm-text) !important;
}

/* Validation errors */
.weecommerce-dark .woocommerce-invalid input,
.weecommerce-dark .woocommerce-invalid select,
.weecommerce-dark .woocommerce-invalid textarea {
    border-color: #f44336 !important;
}

.weecommerce-dark .woocommerce-error li,
.weecommerce-dark .woocommerce form .woocommerce-invalid-feedback {
    color: #ff6b6b !important;
}

/* ── 21. TABLES ──────────────────────────────────────────────── */
.weecommerce-dark table {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark table th {
    /* background-color: var(--dm-hover) !important; */
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark table td {
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark table tr:hover td {
    background-color: var(--dm-hover) !important;
}

/* WooCommerce specific tables */
.weecommerce-dark .shop_table,
.weecommerce-dark .woocommerce-cart-form__contents,
.weecommerce-dark table.woocommerce-checkout-review-order-table,
.weecommerce-dark .woocommerce-orders-table {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .shop_table th,
.weecommerce-dark table.woocommerce-checkout-review-order-table th {
    color: var(--dm-text) !important;
}

.weecommerce-dark .shop_table td,
.weecommerce-dark table.woocommerce-checkout-review-order-table td {
    color: var(--dm-text-secondary) !important;
    border-bottom-color: var(--dm-border) !important;
}

.weecommerce-dark .shop_table .product-name a,
.weecommerce-dark table.woocommerce-checkout-review-order-table .product-name a {
    color: var(--dm-text) !important;
}

/* ── 22. CART PAGE ───────────────────────────────────────────── */
.weecommerce-dark .woocommerce-cart main,
.weecommerce-dark .woocommerce-cart #primary {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-cart .cart-collaterals {
    background-color: var(--dm-surface) !important;
}

.weecommerce-dark .cart_totals,
.weecommerce-dark .woocommerce-cart .cart_totals {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .cart_totals h2,
.weecommerce-dark .cart_totals th,
.weecommerce-dark .cart_totals td {
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Coupon form on cart page */
.weecommerce-dark .woocommerce-cart .coupon input[type="text"] {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ── 23. CHECKOUT PAGE ───────────────────────────────────────── */
.weecommerce-dark .woocommerce-checkout main,
.weecommerce-dark .woocommerce-checkout #primary {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

/* Checkout field labels & headings */
.weecommerce-dark .woocommerce-checkout h3,
.weecommerce-dark #customer_details h3,
.weecommerce-dark #order_review_heading,
.weecommerce-dark #payment h3 {
    color: var(--dm-text) !important;
}

/* Order review sticky box */
.weecommerce-dark .wc-checkout-order-review-wrap {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

/* Payment methods */
.weecommerce-dark #payment {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #payment ul.payment_methods,
.weecommerce-dark #payment ul.payment_methods li {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #payment ul.payment_methods li label {
    color: var(--dm-text) !important;
}

.weecommerce-dark #payment .payment_box {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #payment .payment_box::before {
    border-bottom-color: var(--dm-hover) !important;
}

/* Checkout — cart label override from custom-checkout.css */
.weecommerce-dark .woocommerce-cart #primary *:not(button):not([type="submit"]):not(.checkout-button):not(.return-to-cart-link),
.weecommerce-dark .woocommerce-checkout #primary *:not(button):not([type="submit"]):not(.checkout-button):not(.return-to-cart-link) {
    color: var(--dm-text-secondary) !important;
}

/* Coupon proxy inside checkout */
.weecommerce-dark .custom-coupon-toggle {
    color: var(--dm-text) !important;
}

.weecommerce-dark .proxy-coupon-flex input[type="text"] {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Return to cart link */
.weecommerce-dark .return-to-cart-link {
    color: var(--dm-text-secondary) !important;
}

/* ── 24. THANK YOU / ORDER RECEIVED ──────────────────────────── */
.weecommerce-dark .woocommerce-order-received main,
.weecommerce-dark .woocommerce-thankyou main {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-thankyou-order-details,
.weecommerce-dark ul.woocommerce-order-overview {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark ul.woocommerce-order-overview li {
    color: var(--dm-text-secondary) !important;
    border-right-color: var(--dm-border) !important;
}

.weecommerce-dark ul.woocommerce-order-overview li strong {
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-order-details table,
.weecommerce-dark .woocommerce-customer-details address {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

/* ── 25. MY ACCOUNT ──────────────────────────────────────────── */
.weecommerce-dark .woocommerce-account main,
.weecommerce-dark .woocommerce-MyAccount-content {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-MyAccount-navigation {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .woocommerce-MyAccount-navigation ul li a {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .woocommerce-MyAccount-navigation ul li.is-active a,
.weecommerce-dark .woocommerce-MyAccount-navigation ul li a:hover {
    color: var(--dm-text) !important;
    background-color: var(--dm-hover) !important;
}

.weecommerce-dark .woocommerce-MyAccount-content h2,
.weecommerce-dark .woocommerce-MyAccount-content h3 {
    color: var(--dm-text) !important;
}

/* ── 26. LOGIN / REGISTER / LOST PASSWORD ────────────────────── */
.weecommerce-dark .woocommerce-form-login,
.weecommerce-dark .woocommerce-form-register,
.weecommerce-dark .woocommerce-ResetPassword {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .woocommerce-form-login h2,
.weecommerce-dark .woocommerce-form-register h2,
.weecommerce-dark .woocommerce-ResetPassword h2 {
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-LostPassword,
.weecommerce-dark .lost_password {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .lost_password a {
    color: var(--dm-text) !important;
}

/* Column headings for login/register layout */
.weecommerce-dark .u-column1,
.weecommerce-dark .u-column2 {
    border-color: var(--dm-border) !important;
}

/* ── 27. WOOCOMMERCE BLOCKS ──────────────────────────────────── */
/* Classic blocks + Gutenberg WC blocks */
.weecommerce-dark .wc-block-cart,
.weecommerce-dark .wc-block-checkout,
.weecommerce-dark .wp-block-woocommerce-cart,
.weecommerce-dark .wp-block-woocommerce-checkout,
.weecommerce-dark .wc-block-mini-cart__drawer {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .wc-block-components-text-input input,
.weecommerce-dark .wc-block-components-select select,
.weecommerce-dark .wc-block-components-textarea textarea {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .wc-block-components-text-input label,
.weecommerce-dark .wc-block-components-select label,
.weecommerce-dark .wc-block-components-textarea label {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .wc-block-components-totals-wrapper {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .wc-block-components-totals-item {
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .wc-block-components-totals-item__label,
.weecommerce-dark .wc-block-components-totals-item__value {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .wc-block-components-panel .wc-block-components-panel__button {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .wc-block-components-sidebar-layout,
.weecommerce-dark .wc-block-components-sidebar {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

/* Mini cart block */
.weecommerce-dark .wc-block-mini-cart__drawer {
    background-color: var(--dm-surface) !important;
}

.weecommerce-dark .wc-block-mini-cart-contents__footer {
    background-color: var(--dm-surface) !important;
    border-top-color: var(--dm-border) !important;
}

/* Block notices */
.weecommerce-dark .wc-block-components-notice-banner {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

/* ── 28. BLOG / ARCHIVE / 404 / SEARCH PAGES ─────────────────── */
.weecommerce-dark .blog main,
.weecommerce-dark .archive main,
.weecommerce-dark .search-results main,
.weecommerce-dark .error404 main,
.weecommerce-dark .single-post main {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark article.post,
.weecommerce-dark .post-card,
.weecommerce-dark [class*="post-card"] {
    background-color: var(--dm-card-bg) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark article.post h1,
.weecommerce-dark article.post h2,
.weecommerce-dark article.post h3,
.weecommerce-dark .post-card h2,
.weecommerce-dark .post-card h3 {
    color: var(--dm-text) !important;
}

.weecommerce-dark .post-content-body,
.weecommerce-dark .entry-content {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .post-content-body h1,
.weecommerce-dark .post-content-body h2,
.weecommerce-dark .post-content-body h3,
.weecommerce-dark .post-content-body h4,
.weecommerce-dark .entry-content h1,
.weecommerce-dark .entry-content h2,
.weecommerce-dark .entry-content h3,
.weecommerce-dark .entry-content h4 {
    color: var(--dm-text) !important;
}

.weecommerce-dark .post-meta,
.weecommerce-dark .entry-meta {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .tags-links a,
.weecommerce-dark .cat-links a {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text-secondary) !important;
}

/* 404 page */
.weecommerce-dark .error-404 .page-header,
.weecommerce-dark .error-404 .page-content {
    color: var(--dm-text) !important;
}

/* Search results page */
.weecommerce-dark .search .page-header {
    color: var(--dm-text) !important;
}

/* ── 29. FOOTER ──────────────────────────────────────────────── */
.weecommerce-dark .site-footer {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .site-footer h2,
.weecommerce-dark .site-footer h3 {
    color: var(--dm-text) !important;
}

.weecommerce-dark .site-footer a {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .site-footer a:hover {
    color: var(--dm-text) !important;
}

.weecommerce-dark .site-footer .border-t,
.weecommerce-dark .site-footer hr {
    border-color: var(--dm-border) !important;
}

/* Social link circles */
.weecommerce-dark .footer-social-link.bg-white {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .footer-social-link.bg-white:hover {
    background-color: var(--dm-border) !important;
}

/* ── 30. MODALS / POPUPS ─────────────────────────────────────── */
.weecommerce-dark .fancybox-content,
.weecommerce-dark .pswp__bg {
    background-color: var(--dm-bg) !important;
}

/* Generic modal overlay */
.weecommerce-dark [class*="modal"] {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ── 31. SWATCHES / VARIATION SELECTORS ──────────────────────── */
.weecommerce-dark .wc-swatches-container,
.weecommerce-dark [class*="swatch"] {
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .wc-swatches-container label,
.weecommerce-dark [class*="swatch-label"] {
    color: var(--dm-text-secondary) !important;
}

/* ── 32. DARK MODE TOGGLE BUTTON ─────────────────────────────── */
.wc-dark-mode-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: none;
    background: transparent;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
    color: inherit;
    padding: 0;
    position: relative;
}

.wc-dark-mode-toggle:hover {
    background: rgba(128,128,128,0.12);
    transform: scale(1.1);
}

.wc-dark-mode-toggle:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

/* Icon visibility — show moon in light, sun in dark */
.wc-dm-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

/* Light mode: show Moon */
.wc-dm-icon--moon { display: flex; }
.wc-dm-icon--sun  { display: none; }

/* Dark mode: show Sun */
.weecommerce-dark .wc-dm-icon--moon { display: none; }
.weecommerce-dark .wc-dm-icon--sun  { display: flex; }

/* Floating positions */
.wc-dm-toggle--bottom-right,
.wc-dm-toggle--bottom-left {
    position: fixed !important;
    bottom: 24px;
    z-index: 99999;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: #f0f0f0;
    color: #333;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.wc-dm-toggle--bottom-right { right: 24px; }
.wc-dm-toggle--bottom-left  { left: 24px; }

.wc-dm-toggle--bottom-right:hover,
.wc-dm-toggle--bottom-left:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 24px rgba(0,0,0,0.3);
}

.weecommerce-dark .wc-dm-toggle--bottom-right,
.weecommerce-dark .wc-dm-toggle--bottom-left {
    background-color: var(--dm-surface);
    color: var(--dm-text);
    box-shadow: 0 4px 16px rgba(0,0,0,0.5);
}

/* Mobile dark mode toggle inside mobile menu */
.wc-dm-mobile-toggle-wrap {
    padding: 16px 20px;
    border-top: 1px solid var(--dm-border, #e5e7eb);
}

.wc-dm-mobile-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 10px 16px;
    width: 100%;
    cursor: pointer;
    color: inherit;
    font-size: 14px;
    font-weight: 500;
    transition: background 0.2s;
}

.weecommerce-dark .wc-dm-mobile-toggle {
    border-color: var(--dm-border);
    color: var(--dm-text);
    background: var(--dm-hover);
}

.wc-dm-mobile-toggle:hover {
    background: rgba(128,128,128,0.1);
}

.wc-dm-mobile-label {
    font-size: 14px;
    font-weight: 500;
}

/* ── 33. ACCESSIBILITY — KEYBOARD FOCUS IN DARK MODE ─────────── */
.weecommerce-dark *:focus-visible {
    outline: 2px solid rgba(255,255,255,0.5) !important;
    outline-offset: 2px !important;
}

/* Skip link */
.weecommerce-dark .skip-link,
.weecommerce-dark a[href="#content"]:focus {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
}

/* ── 34. MISC COMPONENTS ─────────────────────────────────────── */

/* Preloader (if dark mode active) */
.weecommerce-dark #site-preloader,
#site-preloader.weecommerce-dark {
    background-color: var(--dm-bg) !important;
}

/* Scrollbar in dark mode (Webkit) */
.weecommerce-dark ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.weecommerce-dark ::-webkit-scrollbar-track {
    background: var(--dm-surface);
}

.weecommerce-dark ::-webkit-scrollbar-thumb {
    background: var(--dm-border);
    border-radius: 4px;
}

.weecommerce-dark ::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* Wishlist page */
.weecommerce-dark .page-wishlist main,
.weecommerce-dark #wishlist-container {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

/* Category banner */
.weecommerce-dark .category-banner,
.weecommerce-dark [class*="category-hero"] {
    color: var(--dm-text) !important;
}

/* Product description tabs from product-description-css.php */
.weecommerce-dark .product-description-panel,
.weecommerce-dark [class*="product-desc"] {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text-secondary) !important;
}

/* ── 35. TRANSITION SMOOTHING ────────────────────────────────── */
/* Smooth transition when toggling dark/light — only on key properties */
body,
#site-header-01,
#site-header-01 header,
#header-02-pill,
#cart-drawer,
#filter-drawer,
.sub-menu,
.wc-checkout-order-review-wrap {
    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease;
}

/* ============================================================
   SECTION 36 — CARD-01 / CARD-02 / CARD-03 TAILWIND OVERRIDES
   The product card templates (template-parts/product/card-*.php)
   use Tailwind classes directly on elements. These must be
   overridden by specificity since Tailwind compiles to utilities.
   ============================================================ */

/* Card wrapper bg (card-01 uses `bg-white` class) */
.weecommerce-dark .wee-product-card.bg-white,
.weecommerce-dark .wee-product-card {
    background-color: var(--dm-card-bg) !important;
    border-color: var(--dm-border) !important;
}

/* Image placeholder area */
.weecommerce-dark .wee-product-card .bg-gray-100,
.weecommerce-dark .wee-product-card .bg-gray-50 {
    background-color: var(--dm-hover) !important;
}

/* Product title (text-gray-900 / font-bold) */
.weecommerce-dark .wee-product-card h2.text-\[0\.95rem\],
.weecommerce-dark .wee-product-card .text-gray-900 {
    color: var(--dm-text) !important;
}

.weecommerce-dark .wee-product-card h2 a {
    color: var(--dm-text) !important;
}

/* Secondary text */
.weecommerce-dark .wee-product-card .text-gray-500,
.weecommerce-dark .wee-product-card .text-gray-400,
.weecommerce-dark .wee-product-card .text-gray-600 {
    color: var(--dm-text-secondary) !important;
}

/* Sale price — keep legible */
.weecommerce-dark .wee-product-card .font-bold.text-gray-900 {
    color: var(--dm-text) !important;
}

/* Line-through regular price */
.weecommerce-dark .wee-product-card .line-through {
    color: var(--dm-text-secondary) !important;
    opacity: 0.7;
}

/* Empty star color */
.weecommerce-dark .wee-product-card .text-gray-300 {
    color: var(--dm-border) !important;
}

/* Stock badges */
.weecommerce-dark .wee-product-card .bg-green-100 {
    background-color: rgba(34, 197, 94, 0.15) !important;
}
.weecommerce-dark .wee-product-card .text-green-800 {
    color: #86efac !important;
}
.weecommerce-dark .wee-product-card .bg-red-100 {
    background-color: rgba(239, 68, 68, 0.15) !important;
}
.weecommerce-dark .wee-product-card .text-red-800 {
    color: #fca5a5 !important;
}

/* Wishlist button bg-white on card overlay */
.weecommerce-dark .wee-product-card button.bg-white {
    background-color: var(--dm-surface) !important;
}

/* Short description */
.weecommerce-dark .wee-product-card .text-sm.text-gray-500 {
    color: var(--dm-text-secondary) !important;
}

/* comp-product-card.php (older card template) */
.weecommerce-dark .group.bg-white.rounded-xl,
.weecommerce-dark .group.bg-white.rounded-lg {
    background-color: var(--dm-card-bg) !important;
    border-color: var(--dm-border) !important;
}

/* ============================================================
   SECTION 37 — CUSTOM-CHECKOUT.CSS OVERRIDES
   custom-checkout.css has several hardcoded colors that use
   !important. We need higher-specificity + !important to win.
   ============================================================ */

/* Override --cart-label-color variable in dark mode.
   custom-checkout.css line 20 sets: color: var(--cart-label-color, #ffffff) !important
   The default fallback is already #fff (fine for light mode on dark-bg checkout),
   BUT in dark mode the checkout bg is dark, so #fff text stays correct.
   Nothing to override here — this is already white = readable.       */

/* Override wc-checkout-order-review-wrap white background */
.weecommerce-dark .wc-checkout-order-review-wrap {
    background: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

/* Coupon toggle text: hardcoded `color: #3b2210` */
.weecommerce-dark .custom-coupon-toggle {
    color: var(--dm-text) !important;
}

/* Coupon input: hardcoded `color: #3b2210 !important` */
.weecommerce-dark .proxy-coupon-flex input[type="text"] {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Coupon proxy table row border */
.weecommerce-dark .woocommerce-checkout-review-order-table .custom-coupon-proxy-row td {
    border-top-color: var(--dm-border) !important;
}

/* Return to cart link: hardcoded `color: #111111` */
.weecommerce-dark .return-to-cart-link {
    color: var(--dm-text-secondary) !important;
}

/* ============================================================
   SECTION 38 — FOOTER BACKGROUND
   footer.php uses inline class "site-footer text-white" — the
   footer background is set by the Customizer (footer_bg_color).
   In dark mode we need to override whatever that color is.
   ============================================================ */

.weecommerce-dark .site-footer {
    background-color: #0f0f0f !important; /* Slightly darker than main bg for depth */
    color: rgba(255,255,255,0.85) !important;
}

/* Footer social icon circles (bg-white on dark footer looks odd in dark mode) */
.weecommerce-dark .site-footer .bg-white.footer-social-link,
.weecommerce-dark .site-footer a.bg-white {
    background-color: rgba(255,255,255,0.12) !important;
    color: rgba(255,255,255,0.85) !important;
}

.weecommerce-dark .site-footer a.bg-white:hover,
.weecommerce-dark .site-footer .bg-white.footer-social-link:hover {
    background-color: rgba(255,255,255,0.22) !important;
}

/* Footer bottom bar */
.weecommerce-dark .site-footer .border-t {
    border-top-color: rgba(255,255,255,0.1) !important;
}

.weecommerce-dark .site-footer .border-white\/10 {
    border-color: rgba(255,255,255,0.1) !important;
}

/* Footer text already white — stays white. Preserve logo filter for white logos. */

/* ============================================================
   SECTION 39 — CART DRAWER TAILWIND UTILITIES
   cart-drawer.js renders items with Tailwind utility classes.
   ============================================================ */

.weecommerce-dark #cart-drawer .bg-white {
    background-color: var(--dm-surface) !important;
}

.weecommerce-dark #cart-drawer .text-gray-800,
.weecommerce-dark #cart-drawer .text-gray-900,
.weecommerce-dark #cart-drawer .text-\[\#161616\] {
    color: var(--dm-text) !important;
}

.weecommerce-dark #cart-drawer .text-gray-500,
.weecommerce-dark #cart-drawer .text-gray-400,
.weecommerce-dark #cart-drawer .text-gray-600 {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #cart-drawer .border-gray-100,
.weecommerce-dark #cart-drawer .divide-y > * {
    border-color: var(--dm-border) !important;
}

/* Cart drawer empty-cart area */
.weecommerce-dark #cart-drawer .text-gray-300 {
    color: var(--dm-border) !important;
}

/* Cart item quantity buttons */
.weecommerce-dark #cart-drawer button.bg-gray-100,
.weecommerce-dark #cart-drawer button.bg-gray-200 {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

/* ============================================================
   SECTION 40 — SINGLE PRODUCT PAGE CUSTOM CLASSES
   woocommerce/single-product.php renders via WC hooks.
   These target specific classes used in this theme's single-product styles.
   ============================================================ */

/* Product gallery image wrapper */
.weecommerce-dark .woocommerce-product-gallery__image {
    background-color: var(--dm-hover) !important;
}

/* Product summary column */
.weecommerce-dark .woocommerce div.product .woocommerce-product-details__short-description {
    color: var(--dm-text-secondary) !important;
}

/* Variation selects */
.weecommerce-dark .woocommerce div.product table.variations select {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .woocommerce div.product table.variations label {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .woocommerce div.product table.variations td,
.weecommerce-dark .woocommerce div.product table.variations th {
    border-color: var(--dm-border) !important;
    background: transparent !important;
    color: var(--dm-text-secondary) !important;
}

/* Sold by / vendor info if present */
.weecommerce-dark .woocommerce div.product .product-vendor-link {
    color: var(--dm-text-secondary) !important;
}

/* ============================================================
   SECTION 41 — FILTER DRAWER RANGE SLIDER
   comp-filter-drawer.php has a custom range slider track.
   ============================================================ */

.weecommerce-dark .price-slider-container {
    background-color: var(--dm-hover) !important;
}

.weecommerce-dark #filter-drawer input[type="range"]::-webkit-slider-thumb {
    background-color: var(--dm-text) !important;
}

.weecommerce-dark #filter-drawer input[type="range"]::-moz-range-thumb {
    background-color: var(--dm-text) !important;
}

/* Price display text in filter */
.weecommerce-dark #filter-drawer .text-\[\#1F2937\],
.weecommerce-dark #min-price-disp,
.weecommerce-dark #max-price-disp {
    color: var(--dm-text) !important;
}

/* ============================================================
   SECTION 42 — MY ACCOUNT CUSTOM LAYOUT
   The theme may inject custom My Account navigation or tabs.
   ============================================================ */

.weecommerce-dark .woocommerce-account .woocommerce {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
}

.weecommerce-dark .woocommerce-account table.shop_table {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .woocommerce-account .order-actions .button {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* Address boxes on My Account */
.weecommerce-dark .woocommerce-account address {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

/* ============================================================
   SECTION 43 — MOBILE MENU TAILWIND OVERRIDES
   comp-mobile-menu.php likely uses bg-white / text-gray-* classes.
   ============================================================ */

.weecommerce-dark #mobile-menu-drawer.bg-white,
.weecommerce-dark [id="mobile-menu-drawer"] {
    background-color: var(--dm-surface) !important;
}

.weecommerce-dark #mobile-menu-drawer .text-gray-800,
.weecommerce-dark #mobile-menu-drawer .text-gray-900,
.weecommerce-dark #mobile-menu-drawer .text-\[\#1F2937\] {
    color: var(--dm-text) !important;
}

.weecommerce-dark #mobile-menu-drawer .text-gray-500,
.weecommerce-dark #mobile-menu-drawer .text-gray-600 {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #mobile-menu-drawer .border-b,
.weecommerce-dark #mobile-menu-drawer .border-gray-100,
.weecommerce-dark #mobile-menu-drawer .divide-y > * {
    border-color: var(--dm-border) !important;
}

/* Search field in mobile menu if present */
.weecommerce-dark #mobile-menu-drawer input[type="search"],
.weecommerce-dark #mobile-menu-drawer input[type="text"] {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ============================================================
   SECTION 44 — WOOCOMMERCE NOTICES (block-level + classic)
   ============================================================ */

.weecommerce-dark .wc-block-components-notice-banner.is-info,
.weecommerce-dark .wc-block-components-notice-banner.is-success,
.weecommerce-dark .wc-block-components-notice-banner.is-warning,
.weecommerce-dark .wc-block-components-notice-banner.is-error {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text-secondary) !important;
}

/* Flash messages above cart/checkout forms */
.weecommerce-dark .woocommerce-notices-wrapper .woocommerce-message,
.weecommerce-dark .woocommerce-notices-wrapper .woocommerce-error,
.weecommerce-dark .woocommerce-notices-wrapper .woocommerce-info {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-secondary) !important;
}

/* ============================================================
   SECTION 45 — COMPLETE DARK MODE POLISH
   (Filter Drawer, Mini-Cart Cross-Sells, Pagination Bar, Toolbar & Cards)
   ============================================================ */

/* ── A. FILTER DRAWER (#filter-drawer) ─────────────────────── */
.weecommerce-dark #filter-drawer,
.weecommerce-dark #filter-drawer.bg-white {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #filter-drawer .border-b,
.weecommerce-dark #filter-drawer .border-t,
.weecommerce-dark #filter-drawer .border-gray-100 {
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #filter-drawer h2,
.weecommerce-dark #filter-drawer h3,
.weecommerce-dark #filter-drawer .text-\[\#1F2937\],
.weecommerce-dark #filter-drawer span,
.weecommerce-dark #filter-drawer label,
.weecommerce-dark #filter-drawer p {
    color: var(--dm-text) !important;
}

.weecommerce-dark #filter-drawer .text-gray-500,
.weecommerce-dark #filter-drawer .text-gray-600 {
    color: var(--dm-text-secondary) !important;
}

/* Filter Drawer Footer / Actions Bar */
.weecommerce-dark #filter-drawer > div.bg-gray-50,
.weecommerce-dark #filter-drawer > div:last-child {
    background-color: var(--dm-surface) !important;
    border-top-color: var(--dm-border) !important;
}

/* Clear Filters Button */
.weecommerce-dark #clear-filters {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #clear-filters:hover {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

/* Apply Filters Button hover polish */
.weecommerce-dark #apply-filters {
    box-shadow: 0 4px 14px rgba(0,0,0,0.4) !important;
}

/* Tag filter pills in filter drawer */
.weecommerce-dark #filter-tag-section span,
.weecommerce-dark #filter-drawer .bg-gray-100 {
    background-color: var(--dm-input-bg) !important;
    color: var(--dm-text-secondary) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #filter-tag-section input:checked + span {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-text) !important;
}

/* Category accordion & close buttons */
.weecommerce-dark #close-filter-drawer,
.weecommerce-dark .category-toggle-btn {
    color: var(--dm-text) !important;
}

/* Mobile handle inside filter drawer */
.weecommerce-dark #filter-drawer .bg-gray-300 {
    background-color: var(--dm-border) !important;
}

/* ── B. MINI CART / SIDE CART CROSS-SELLS & FOOTER ─────────── */
.weecommerce-dark #cart-drawer,
.weecommerce-dark #cart-drawer.bg-white,
#cart-drawer.weecommerce-dark,
#cart-drawer.weecommerce-dark.bg-white {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #cart-drawer h2,
.weecommerce-dark #cart-drawer h3,
.weecommerce-dark #cart-drawer h4,
.weecommerce-dark #cart-drawer h5,
.weecommerce-dark #cart-drawer .text-\[\#161616\],
.weecommerce-dark #cart-drawer .text-gray-800 {
    color: var(--dm-text) !important;
}

/* Frequently Added Together product cards */
.weecommerce-dark .cart-cs-card,
.weecommerce-dark div.cart-cs-card {
    background-color: var(--dm-bg) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .cart-cs-card .bg-white {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark .cart-cs-card h5,
.weecommerce-dark .cart-cs-card h5 a,
.weecommerce-dark .cart-cs-card a {
    color: var(--dm-text) !important;
}

.weecommerce-dark .cart-cs-card span,
.weecommerce-dark .cart-cs-card .text-gray-700,
.weecommerce-dark .cart-cs-card .price,
.weecommerce-dark .cart-cs-card .amount,
.weecommerce-dark .cart-cs-card ins {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark .cart-cs-card del,
.weecommerce-dark .cart-cs-card del .amount {
    color: #888888 !important;
}

/* Mini Cart Carousel pagination dots */
.weecommerce-dark #cart-cs-dots .cs-dot-indicator.bg-gray-300 {
    background-color: var(--dm-border) !important;
}

/* Mini Cart Footer */
.weecommerce-dark #cart-drawer-footer,
.weecommerce-dark div#cart-drawer-footer,
.weecommerce-dark .bg-\[\#FFF9F2\] {
    background-color: var(--dm-surface) !important;
    border-top-color: var(--dm-border) !important;
}

.weecommerce-dark #cart-drawer-footer span,
.weecommerce-dark #cart-drawer-footer p,
.weecommerce-dark #cart-drawer-footer .text-\[\#161616\] {
    color: var(--dm-text) !important;
}

.weecommerce-dark #cart-drawer-footer .text-gray-500 {
    color: var(--dm-text-secondary) !important;
}

/* Cart quantity control box & buttons: white background with black text */
.weecommerce-dark #cart-drawer .border-gray-200.bg-white,
.weecommerce-dark #cart-drawer .rounded-full.bg-white,
.weecommerce-dark #cart-drawer div.border.rounded-full,
.weecommerce-dark #cart-drawer .flex.items-center.border.rounded-full,
.weecommerce-dark #cart-drawer-content .border-gray-200.bg-white,
.weecommerce-dark #cart-drawer-content .rounded-full.bg-white,
.weecommerce-dark #cart-drawer-content div.border.rounded-full,
.weecommerce-dark #cart-drawer-content .flex.items-center.border.rounded-full,
#cart-drawer.weecommerce-dark .border-gray-200.bg-white,
#cart-drawer.weecommerce-dark .rounded-full.bg-white,
#cart-drawer.weecommerce-dark div.border.rounded-full,
#cart-drawer.weecommerce-dark .flex.items-center.border.rounded-full,
#cart-drawer.weecommerce-dark #cart-drawer-content .border-gray-200.bg-white,
#cart-drawer.weecommerce-dark #cart-drawer-content .rounded-full.bg-white,
#cart-drawer.weecommerce-dark #cart-drawer-content div.border.rounded-full,
#cart-drawer.weecommerce-dark #cart-drawer-content .flex.items-center.border.rounded-full {
    background-color: #ffffff !important;
    border-color: #e5e7eb !important;
}

.weecommerce-dark #cart-drawer .rounded-full span,
.weecommerce-dark #cart-drawer div.border.rounded-full span,
.weecommerce-dark #cart-drawer .flex.items-center.border.rounded-full span,
.weecommerce-dark #cart-drawer-content .rounded-full span,
.weecommerce-dark #cart-drawer-content div.border.rounded-full span,
.weecommerce-dark #cart-drawer-content .flex.items-center.border.rounded-full span,
#cart-drawer.weecommerce-dark .rounded-full span,
#cart-drawer.weecommerce-dark div.border.rounded-full span,
#cart-drawer.weecommerce-dark .flex.items-center.border.rounded-full span,
#cart-drawer.weecommerce-dark #cart-drawer-content .rounded-full span,
#cart-drawer.weecommerce-dark #cart-drawer-content div.border.rounded-full span,
#cart-drawer.weecommerce-dark #cart-drawer-content .flex.items-center.border.rounded-full span {
    color: #161616 !important;
}

.weecommerce-dark #cart-drawer .update-qty-btn,
.weecommerce-dark #cart-drawer-content .update-qty-btn,
#cart-drawer.weecommerce-dark .update-qty-btn,
#cart-drawer.weecommerce-dark #cart-drawer-content .update-qty-btn {
    color: #161616 !important;
}

.weecommerce-dark #cart-drawer .update-qty-btn:hover,
.weecommerce-dark #cart-drawer-content .update-qty-btn:hover,
#cart-drawer.weecommerce-dark .update-qty-btn:hover,
#cart-drawer.weecommerce-dark #cart-drawer-content .update-qty-btn:hover {
    color: #000000 !important;
    opacity: 0.7;
}

/* ── C. SHOP PAGINATION BAR (#shop-pagination) ─────────────── */
.weecommerce-dark #shop-pagination,
.weecommerce-dark .ecolivo-pagination,
.weecommerce-dark .woocommerce-pagination {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
    box-shadow: none !important;
}

.weecommerce-dark #shop-pagination li a,
.weecommerce-dark #shop-pagination li span,
.weecommerce-dark .woocommerce-pagination ul.page-numbers li a,
.weecommerce-dark .woocommerce-pagination ul.page-numbers li span {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text-secondary) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #shop-pagination li a:hover,
.weecommerce-dark .woocommerce-pagination ul.page-numbers li a:hover {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #shop-pagination li span.current,
.weecommerce-dark #shop-pagination li a.current,
.weecommerce-dark .woocommerce-pagination ul.page-numbers li span.current {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-text) !important;
}

.weecommerce-dark #shop-pagination span.text-gray-400,
.weecommerce-dark #shop-pagination label {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #shop-pagination select,
.weecommerce-dark #shop-pagination .per-page-select {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text) !important;
    border: 1px solid var(--dm-border) !important;
}

/* ── D. SHOP TOOLBAR (FILTER & SORT BUTTONS + DROPDOWN) ───── */
.weecommerce-dark #filter-trigger,
.weecommerce-dark #sort-trigger {
    background-color: var(--dm-surface) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

.weecommerce-dark #filter-trigger:hover,
.weecommerce-dark #sort-trigger:hover {
    background-color: var(--dm-hover) !important;
}

.weecommerce-dark #sort-menu {
    background-color: var(--dm-surface) !important;
    border-color: var(--dm-border) !important;
    box-shadow: var(--dm-shadow) !important;
}

.weecommerce-dark #sort-menu button,
.weecommerce-dark .sort-option-btn {
    color: var(--dm-text-secondary) !important;
}

.weecommerce-dark #sort-menu button:hover,
.weecommerce-dark .sort-option-btn:hover {
    background-color: var(--dm-hover) !important;
    color: var(--dm-text) !important;
}

/* ============================================================
   SECTION 46 — USER OVERRIDES & SPECIFIC POLISH
   ============================================================ */

/* 1. FOOTER NEWSLETTER INPUT — Keep white background with dark text */
.weecommerce-dark .site-footer form.bg-white {
    background-color: #ffffff !important;
}
.weecommerce-dark .site-footer input[type="email"],
.weecommerce-dark .site-footer form input {
    background-color: transparent !important;
    color: #1F2937 !important;
}
.weecommerce-dark .site-footer input[type="email"]::placeholder,
.weecommerce-dark .site-footer form input::placeholder {
    color: #6B7280 !important;
    opacity: 1 !important;
}

/* 2. QUANTITY BUTTONS & INPUTS — Keep white background with dark text */
.weecommerce-dark .quantity,
.weecommerce-dark .quantity input.qty,
.weecommerce-dark input.qty,
.weecommerce-dark .quantity button,
.weecommerce-dark .quantity .minus,
.weecommerce-dark .quantity .plus,
.weecommerce-dark .update-qty-btn,
.weecommerce-dark #cart-drawer-content .border-gray-200.bg-white,
.weecommerce-dark #cart-drawer-content button.bg-gray-100,
.weecommerce-dark #cart-drawer-content button.bg-gray-200 {
    background-color: #ffffff !important;
    color: #161616 !important;
    border-color: #e5e7eb !important;
}

.weecommerce-dark .quantity input.qty {
    color: #161616 !important;
    background-color: #ffffff !important;
}

.weecommerce-dark #cart-drawer-content .update-qty-btn {
    color: #161616 !important;
}

/* File Upload Button (e.g. Choose File) */
.weecommerce-dark input[type="file"]::-webkit-file-upload-button,
.weecommerce-dark input[type="file"]::file-selector-button {
    background-color: #ffffff !important;
    color: #161616 !important;
    border: 1px solid #d1d5db !important;
    border-radius: 6px !important;
    padding: 4px 12px !important;
    cursor: pointer !important;
}
.weecommerce-dark input[type="file"] {
    color: var(--dm-text-secondary) !important;
}

/* 3. REMOVE FLOATING BOTTOM LIGHT/DARK BUTTON */
.wc-dm-toggle--bottom-right,
.wc-dm-toggle--bottom-left,
button.wc-dm-toggle--bottom-right,
button.wc-dm-toggle--bottom-left,
#wc-dark-mode-toggle.wc-dm-toggle--bottom-right,
#wc-dark-mode-toggle.wc-dm-toggle--bottom-left {
    display: none !important;
}

/* ============================================================
   SECTION 47 — VARIATION SWATCHES & PRODUCT OPTIONS POLISH
   ============================================================ */

/* 1. Clear variation container & table background completely (including on hover) */
.weecommerce-dark .variable-product-wrapper,
.weecommerce-dark .variable-product-wrapper:hover,
.weecommerce-dark .variations_form,
.weecommerce-dark .variations_form:hover,
.weecommerce-dark table.variations,
.weecommerce-dark table.variations:hover,
.weecommerce-dark table.variations tbody,
.weecommerce-dark table.variations tbody:hover,
.weecommerce-dark table.variations tr,
.weecommerce-dark table.variations tr:hover,
.weecommerce-dark table.variations td,
.weecommerce-dark table.variations td:hover,
.weecommerce-dark table.variations th,
.weecommerce-dark table.variations th:hover,
.weecommerce-dark .wc-swatches-container,
.weecommerce-dark .wc-swatches-container:hover,
.weecommerce-dark .swatch-control,
.weecommerce-dark .swatch-control:hover {
    background-color: transparent !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* 2. Variation labels (Color, Size) */
.weecommerce-dark table.variations label,
.weecommerce-dark .variations_form label,
.weecommerce-dark .variations th label {
    color: var(--dm-text, #FFFFFF) !important;
    font-weight: 600 !important;
}

/* 3. Text / Size swatches (.wc-text-swatch) — remove conflicting hover background colors */
.weecommerce-dark .wc-text-swatch {
    background-color: var(--dm-bg, #161616) !important;
    background: var(--dm-bg, #161616) !important;
    color: var(--dm-text, #FFFFFF) !important;
    border: 1.5px solid var(--dm-border, #333333) !important;
    transition: border-color 0.2s ease, color 0.2s ease !important;
}

.weecommerce-dark .wc-text-swatch:hover,
.weecommerce-dark .wc-text-swatch:hover:not(.active) {
    background-color: var(--dm-bg, #161616) !important;
    background: var(--dm-bg, #161616) !important;
    border-color: #FFFFFF !important;
    color: #FFFFFF !important;
}

.weecommerce-dark .wc-text-swatch.active {
    background-color: #2a2a2a !important;
    background: #2a2a2a !important;
    border-color: #FFFFFF !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 0 1px #FFFFFF !important;
}

/* 4. Color / Image swatches (.wc-color-swatch) */
.weecommerce-dark .wc-color-swatch {
    box-shadow: 0 0 0 1.5px rgba(255, 255, 255, 0.4) !important;
}

.weecommerce-dark .wc-color-swatch:hover {
    box-shadow: 0 0 0 2px var(--dm-bg, #161616), 0 0 0 3.5px #FFFFFF !important;
}

.weecommerce-dark .wc-color-swatch.active {
    box-shadow: 0 0 0 2px var(--dm-bg, #161616), 0 0 0 4.5px #FFFFFF !important;
}

/* 5. Clear link */
.weecommerce-dark a.reset_variations,
.weecommerce-dark .reset_variations {
    color: var(--dm-text-secondary, #CCCCCC) !important;
}

.weecommerce-dark a.reset_variations:hover,
.weecommerce-dark .reset_variations:hover {
    color: var(--dm-text, #FFFFFF) !important;
}

/* 6. Variable quantity stepper background (white) */
.weecommerce-dark .woocommerce-variation-add-to-cart .quantity {
    background-color: #ffffff !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
}

.weecommerce-dark .woocommerce-variation-add-to-cart .quantity input {
    color: #161616 !important;
    background: transparent !important;
}

.weecommerce-dark .woocommerce-variation-add-to-cart .quantity .minus,
.weecommerce-dark .woocommerce-variation-add-to-cart .quantity .plus {
    color: #161616 !important;
}

/* 7. Batch No. + Stock Card Dark Mode Override */
.weecommerce-dark .sp-batch-stock-card {
    background-color: var(--dm-surface, #1D1D1D) !important;
    background: var(--dm-surface, #1D1D1D) !important;
    border-color: var(--dm-border, #333333) !important;
}

.weecommerce-dark .sp-batch-label {
    color: var(--dm-text, #FFFFFF) !important;
}

.weecommerce-dark .sp-batch-dot,
.weecommerce-dark .sp-stock-text {
    color: var(--dm-text-secondary, #CCCCCC) !important;
}

.weecommerce-dark .sp-stock-bar-track {
    background-color: var(--dm-hover, #2a2a2a) !important;
}

/* ============================================================
   SECTION 48 — BUY ON WHATSAPP PAYMENT GATEWAY DARK MODE
   ============================================================ */

.weecommerce-dark .payment_method_buy_on_whatsapp {
    background-color: var(--dm-surface, #1D1D1D) !important;
    color: var(--dm-text, #FFFFFF) !important;
    border-color: var(--dm-border, #333333) !important;
}

.weecommerce-dark .payment_method_buy_on_whatsapp label {
    color: var(--dm-text, #FFFFFF) !important;
}

.weecommerce-dark .payment_box.payment_method_buy_on_whatsapp {
    background-color: var(--dm-bg, #161616) !important;
    color: var(--dm-text-secondary, #CCCCCC) !important;
    border-color: var(--dm-border, #333333) !important;
}

.weecommerce-dark .whatsapp-order-thankyou-box {
    box-shadow: 0 10px 30px rgba(0,0,0,0.6) !important;
}






