/*
 * Dufthaus Wien - Phase 1 Enhancements
 * Adds: Fragrance Pyramid, Enhanced Product Cards, Mobile Optimizations
 *
 * INSTALLATION:
 * Append this to the end of style.css or enqueue separately in functions.php
 */

/* ==========================================================================
   ENHANCED PRODUCT CARDS - Fragrance Notes Preview
   ========================================================================== */

.dh-fragrance-notes {
    font-family: var(--dh-font-body);
    font-size: 11px;
    color: var(--dh-text-muted);
    line-height: 1.6;
    margin: 8px 0 12px;
    font-style: italic;
}

.dh-fragrance-notes span {
    color: var(--dh-gold-muted);
}

/* Star ratings on product cards */
.woocommerce ul.products li.product .star-rating {
    font-size: 12px !important;
    margin: 8px 0 !important;
}

.woocommerce .star-rating {
    color: var(--dh-gold) !important;
}

.woocommerce .star-rating::before {
    color: rgba(201, 169, 110, 0.2) !important;
}

.woocommerce .star-rating span::before {
    color: var(--dh-gold) !important;
}

.dh-rating-count {
    font-family: var(--dh-font-body);
    font-size: 10px;
    color: var(--dh-text-muted);
    margin-left: 6px;
}

/* ==========================================================================
   FRAGRANCE PYRAMID (Product Detail Page)
   ========================================================================== */

.dh-fragrance-pyramid {
    background: var(--dh-card-bg);
    border: 1px solid var(--dh-card-border);
    border-radius: 12px;
    padding: 32px;
    margin: 32px 0;
}

.dh-pyramid-title {
    font-family: var(--dh-font-heading);
    font-size: 24px;
    color: var(--dh-gold-light);
    text-align: center;
    margin-bottom: 32px;
    letter-spacing: 3px;
}

.dh-pyramid-level {
    position: relative;
    padding: 20px 24px;
    margin-bottom: 16px;
    background: rgba(255, 255, 255, 0.02);
    border-left: 3px solid var(--dh-gold);
    border-radius: 8px;
    transition: all 0.3s ease;
}

.dh-pyramid-level:hover {
    background: rgba(255, 255, 255, 0.04);
    border-left-width: 4px;
}

.dh-pyramid-level:last-child {
    margin-bottom: 0;
}

.dh-pyramid-label {
    font-family: var(--dh-font-body);
    font-size: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--dh-gold);
    font-weight: 600;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.dh-pyramid-icon {
    font-size: 14px;
}

.dh-pyramid-notes {
    font-family: var(--dh-font-heading);
    font-size: 16px;
    color: var(--dh-text-primary);
    line-height: 1.6;
}

/* Pyramid meta info */
.dh-pyramid-meta {
    display: flex;
    gap: 24px;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid var(--dh-card-border);
}

.dh-pyramid-meta-item {
    flex: 1;
}

.dh-pyramid-meta-label {
    font-family: var(--dh-font-body);
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--dh-text-muted);
    margin-bottom: 6px;
}

.dh-pyramid-meta-value {
    font-family: var(--dh-font-heading);
    font-size: 14px;
    color: var(--dh-gold-light);
}

/* Scent intensity meter */
.dh-intensity-meter {
    display: flex;
    gap: 4px;
    margin-top: 6px;
}

.dh-intensity-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(201, 169, 110, 0.2);
}

.dh-intensity-dot.active {
    background: var(--dh-gold);
}

/* ==========================================================================
   PRODUCT PAGE - Size Variant Selector (Card Style)
   ========================================================================== */

.dh-size-selector {
    margin: 24px 0;
}

.dh-size-selector-title {
    font-family: var(--dh-font-body);
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--dh-text-muted);
    margin-bottom: 12px;
    font-weight: 600;
}

.dh-size-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 12px;
}

.dh-size-option {
    position: relative;
}

.dh-size-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.dh-size-option label {
    display: block;
    padding: 16px 12px;
    text-align: center;
    background: var(--dh-card-bg);
    border: 1px solid var(--dh-card-border);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.dh-size-option label:hover {
    border-color: var(--dh-gold);
    background: rgba(201, 169, 110, 0.05);
}

.dh-size-option input[type="radio"]:checked + label {
    border-color: var(--dh-gold);
    background: rgba(201, 169, 110, 0.15);
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.1);
}

.dh-size-label {
    font-family: var(--dh-font-body);
    font-size: 13px;
    font-weight: 600;
    color: var(--dh-text-primary);
    display: block;
    margin-bottom: 4px;
}

.dh-size-price {
    font-family: var(--dh-font-body);
    font-size: 14px;
    color: var(--dh-gold);
    font-weight: 600;
}

/* ==========================================================================
   TRUST SIGNALS (Product Page)
   ========================================================================== */

.dh-trust-signals {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid var(--dh-card-border);
    border-radius: 8px;
    padding: 20px;
    margin: 24px 0;
}

.dh-trust-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
}

.dh-trust-item:not(:last-child) {
    border-bottom: 1px solid rgba(201, 169, 110, 0.1);
}

.dh-trust-icon {
    font-size: 18px;
    color: var(--dh-gold);
    min-width: 24px;
    text-align: center;
}

.dh-trust-text {
    font-family: var(--dh-font-body);
    font-size: 13px;
    color: var(--dh-text-primary);
    line-height: 1.4;
}

.dh-trust-highlight {
    color: var(--dh-gold);
    font-weight: 600;
}

/* ==========================================================================
   AI ADVISOR CTA BOX (Product Page)
   ========================================================================== */

.dh-ai-advisor-cta {
    background: linear-gradient(135deg, rgba(201, 169, 110, 0.1), rgba(201, 169, 110, 0.05));
    border: 1px solid var(--dh-gold);
    border-left-width: 4px;
    border-radius: 12px;
    padding: 28px 32px;
    margin: 40px 0;
    position: relative;
    overflow: hidden;
}

.dh-ai-advisor-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at top right, rgba(201, 169, 110, 0.1), transparent);
    pointer-events: none;
}

.dh-ai-advisor-icon {
    font-size: 32px;
    color: var(--dh-gold);
    margin-bottom: 16px;
}

.dh-ai-advisor-title {
    font-family: var(--dh-font-heading);
    font-size: 22px;
    color: var(--dh-gold-light);
    margin-bottom: 12px;
    position: relative;
}

.dh-ai-advisor-text {
    font-family: var(--dh-font-body);
    font-size: 14px;
    color: var(--dh-text-primary);
    line-height: 1.7;
    margin-bottom: 20px;
    position: relative;
}

.dh-ai-advisor-btn {
    background: var(--dh-gold-btn-gradient) !important;
    color: var(--dh-bg) !important;
    font-family: var(--dh-font-body) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 14px 32px !important;
    border: none !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-block;
    text-decoration: none !important;
    position: relative;
}

.dh-ai-advisor-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(201, 169, 110, 0.4);
}

/* ==========================================================================
   RELATED PRODUCTS CAROUSEL
   ========================================================================== */

.dh-related-products {
    margin: 60px 0 40px;
}

.dh-related-title {
    font-family: var(--dh-font-heading);
    font-size: 28px;
    color: var(--dh-gold-light);
    text-align: center;
    margin-bottom: 32px;
    letter-spacing: 3px;
}

.dh-related-carousel {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-bottom: 24px;
}

/* Horizontal scroll on mobile */
@media (max-width: 768px) {
    .dh-related-carousel {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        gap: 16px;
        padding: 0 16px;
    }

    .dh-related-carousel::-webkit-scrollbar {
        display: none;
    }

    .dh-related-carousel .product {
        flex: 0 0 280px;
        scroll-snap-align: start;
    }
}

/* ==========================================================================
   ENHANCED BUTTONS & CTAs
   ========================================================================== */

.single_add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    background: var(--dh-gold-btn-gradient) !important;
    color: var(--dh-bg) !important;
    font-family: var(--dh-font-body) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 14px 32px !important;
    border: none !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: none !important;
}

.single_add_to_cart_button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(201, 169, 110, 0.4) !important;
}

/* Loading state */
.single_add_to_cart_button.loading::after,
.woocommerce button.button.loading::after {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-left: 8px;
    border: 2px solid var(--dh-bg);
    border-right-color: transparent;
    border-radius: 50%;
    animation: spin 0.6s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Secondary button (wishlist, etc.) */
.dh-btn-secondary {
    background: transparent !important;
    color: var(--dh-gold) !important;
    border: 1px solid var(--dh-gold) !important;
    font-family: var(--dh-font-body) !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 10px 24px !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none !important;
    display: inline-block;
}

.dh-btn-secondary:hover {
    background: rgba(201, 169, 110, 0.1) !important;
    border-color: var(--dh-gold-light) !important;
    color: var(--dh-gold-light) !important;
}

/* ==========================================================================
   QUANTITY SELECTOR STYLING
   ========================================================================== */

.quantity {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 20px 0;
}

.quantity label {
    font-family: var(--dh-font-body);
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--dh-text-muted);
    font-weight: 600;
}

.quantity input[type="number"] {
    font-family: var(--dh-font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--dh-text-primary) !important;
    background: var(--dh-card-bg) !important;
    border: 1px solid var(--dh-card-border) !important;
    border-radius: 8px !important;
    padding: 10px 16px !important;
    text-align: center;
    width: 80px !important;
    -moz-appearance: textfield;
}

.quantity input[type="number"]::-webkit-inner-spin-button,
.quantity input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.quantity input[type="number"]:focus {
    border-color: var(--dh-gold) !important;
    outline: none;
}

/* Plus/minus buttons (if using plugin) */
.quantity .qty-btn {
    background: var(--dh-card-bg);
    border: 1px solid var(--dh-card-border);
    color: var(--dh-gold);
    width: 32px;
    height: 32px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quantity .qty-btn:hover {
    border-color: var(--dh-gold);
    background: rgba(201, 169, 110, 0.1);
}

/* ==========================================================================
   MOBILE RESPONSIVE OPTIMIZATIONS
   ========================================================================== */

@media (max-width: 768px) {
    /* Product grid - 1 column on mobile */
    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
        gap: 16px;
    }

    .woocommerce ul.products li.product {
        padding: 20px !important;
    }

    /* Larger touch targets for mobile */
    .woocommerce ul.products li.product .button {
        min-height: 44px;
        font-size: 12px !important;
    }

    /* Stack size options on very small screens */
    .dh-size-options {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Fragrance pyramid - more compact on mobile */
    .dh-fragrance-pyramid {
        padding: 24px 20px;
    }

    .dh-pyramid-level {
        padding: 16px 20px;
    }

    .dh-pyramid-meta {
        flex-direction: column;
        gap: 16px;
    }

    /* AI Advisor CTA - more compact */
    .dh-ai-advisor-cta {
        padding: 24px 20px;
    }

    .dh-ai-advisor-title {
        font-size: 20px;
    }

    .dh-ai-advisor-text {
        font-size: 13px;
    }

    /* Trust signals - stacked */
    .dh-trust-signals {
        padding: 16px;
    }

    .dh-trust-item {
        padding: 12px 0;
    }
}

/* Tablet adjustments */
@media (min-width: 769px) and (max-width: 1199px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Desktop - 3 columns */
@media (min-width: 1200px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* ==========================================================================
   PRODUCT PAGE - STICKY ADD TO CART (Mobile)
   ========================================================================== */

@media (max-width: 768px) {
    .dh-sticky-atc {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background: var(--dh-nav-bg);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        border-top: 1px solid var(--dh-card-border);
        padding: 12px 16px;
        z-index: 99;
        display: flex;
        align-items: center;
        gap: 12px;
        box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.3);
    }

    .dh-sticky-atc-price {
        font-family: var(--dh-font-body);
        font-size: 16px;
        font-weight: 600;
        color: var(--dh-gold);
        flex-shrink: 0;
    }

    .dh-sticky-atc-btn {
        flex: 1;
        background: var(--dh-gold-btn-gradient) !important;
        color: var(--dh-bg) !important;
        font-family: var(--dh-font-body) !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        letter-spacing: 2px !important;
        text-transform: uppercase !important;
        padding: 14px 24px !important;
        border: none !important;
        border-radius: 8px !important;
        cursor: pointer;
        text-align: center;
    }

    /* Add padding to bottom of product page to account for sticky bar */
    .single-product .product {
        padding-bottom: 80px;
    }
}

/* ==========================================================================
   BREADCRUMBS
   ========================================================================== */

.woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb {
    font-family: var(--dh-font-body) !important;
    font-size: 11px !important;
    color: var(--dh-text-muted) !important;
    letter-spacing: 1px;
    margin-bottom: 24px !important;
    padding: 12px 0 !important;
}

.woocommerce-breadcrumb a {
    color: var(--dh-gold) !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

.woocommerce-breadcrumb a:hover {
    color: var(--dh-gold-light) !important;
}

/* ==========================================================================
   PRODUCT META (SKU, Categories, Tags)
   ========================================================================== */

.product_meta {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid var(--dh-card-border);
    border-radius: 8px;
    padding: 20px;
    margin: 24px 0;
    font-family: var(--dh-font-body);
    font-size: 12px;
}

.product_meta span {
    display: block;
    margin-bottom: 8px;
    color: var(--dh-text-muted);
}

.product_meta span:last-child {
    margin-bottom: 0;
}

.product_meta a {
    color: var(--dh-gold);
    text-decoration: none;
    transition: color 0.3s ease;
}

.product_meta a:hover {
    color: var(--dh-gold-light);
}

.sku_wrapper,
.posted_in,
.tagged_as {
    line-height: 1.6;
}

/* ==========================================================================
   NOTICES & ALERTS
   ========================================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    background: var(--dh-card-bg) !important;
    border: 1px solid var(--dh-card-border) !important;
    border-left-width: 4px !important;
    color: var(--dh-text-primary) !important;
    font-family: var(--dh-font-body) !important;
    font-size: 13px !important;
    padding: 16px 20px !important;
    border-radius: 8px !important;
    margin-bottom: 24px !important;
}

.woocommerce-message {
    border-left-color: var(--dh-gold) !important;
}

.woocommerce-message::before,
.woocommerce-info::before {
    color: var(--dh-gold) !important;
}

.woocommerce-error {
    border-left-color: #e74c3c !important;
}

.woocommerce-error::before {
    color: #e74c3c !important;
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
    color: var(--dh-gold) !important;
    text-decoration: underline;
}

.woocommerce-message a:hover,
.woocommerce-info a:hover,
.woocommerce-error a:hover {
    color: var(--dh-gold-light) !important;
}

/* ==========================================================================
   SIDEBAR WIDGETS - Dark Theme Fix
   ========================================================================== */

/* Fix white sidebar widgets */
.sidebar .widget,
.widget-area .widget {
    background: var(--dh-card-bg) !important;
    border: 1px solid var(--dh-card-border) !important;
    border-radius: 8px !important;
    padding: 24px !important;
    margin-bottom: 24px !important;
}

.sidebar .widget .widget-title,
.widget-area .widget .widget-title {
    color: var(--dh-gold) !important;
    font-family: var(--dh-font-heading) !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--dh-card-border) !important;
}

.sidebar .widget ul,
.widget-area .widget ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.sidebar .widget ul li,
.widget-area .widget ul li {
    padding: 8px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    color: var(--dh-text-primary) !important;
}

.sidebar .widget ul li:last-child,
.widget-area .widget ul li:last-child {
    border-bottom: none !important;
}

.sidebar .widget a,
.widget-area .widget a {
    color: var(--dh-text-primary) !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.sidebar .widget a:hover,
.widget-area .widget a:hover {
    color: var(--dh-gold) !important;
}

/* Search widget */
.sidebar .widget .search-form,
.widget-area .widget .search-form {
    display: flex !important;
    gap: 8px !important;
}

.sidebar .widget .search-form input[type="search"],
.widget-area .widget .search-form input[type="search"] {
    flex: 1 !important;
    background: var(--dh-bg) !important;
    border: 1px solid var(--dh-card-border) !important;
    color: var(--dh-text-primary) !important;
    padding: 10px 16px !important;
    border-radius: 4px !important;
    font-family: var(--dh-font-body) !important;
    font-size: 14px !important;
}

.sidebar .widget .search-form input[type="search"]:focus,
.widget-area .widget .search-form input[type="search"]:focus {
    outline: none !important;
    border-color: var(--dh-gold) !important;
}

.sidebar .widget .search-form button,
.widget-area .widget .search-form button {
    background: var(--dh-gold) !important;
    color: var(--dh-bg) !important;
    border: none !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    font-family: var(--dh-font-body) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease;
}

.sidebar .widget .search-form button:hover,
.widget-area .widget .search-form button:hover {
    background: var(--dh-gold-light) !important;
    transform: translateY(-1px);
}

/* WooCommerce sidebar widgets */
.woocommerce-widget-layered-nav ul li,
.widget_product_categories ul li,
.widget_layered_nav ul li {
    color: var(--dh-text-primary) !important;
}

.woocommerce-widget-layered-nav ul li a,
.widget_product_categories ul li a,
.widget_layered_nav ul li a {
    color: var(--dh-text-primary) !important;
}

.woocommerce-widget-layered-nav ul li a:hover,
.widget_product_categories ul li a:hover,
.widget_layered_nav ul li a:hover {
    color: var(--dh-gold) !important;
}

/* Product filter count badges */
.woocommerce-widget-layered-nav .count,
.widget_layered_nav .count {
    background: var(--dh-gold) !important;
    color: var(--dh-bg) !important;
    padding: 2px 8px !important;
    border-radius: 12px !important;
    font-size: 11px !important;
    margin-left: 8px !important;
}

/* ==========================================================================
   PRODUCT IMAGE BACKGROUNDS - Fix Transparency
   ========================================================================== */

/* Add white background to all product images to fix transparency issues */
.woocommerce ul.products li.product .wp-post-image,
.woocommerce ul.products li.product img,
.woocommerce-product-gallery__image img {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Product card image wrapper */
.woocommerce ul.products li.product a img {
    background: #ffffff !important;
    padding: 0 !important;
    display: block !important;
}

/* Product gallery thumbnails */
.woocommerce-product-gallery .flex-control-thumbs li img {
    background: #ffffff !important;
}

/* Ensure image containers have proper backgrounds */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    background: transparent !important;
}

/* Main product image on single product page */
.woocommerce div.product div.images img {
    background: #ffffff !important;
}

/* Product image in related products */
.woocommerce .related ul.products li.product img,
.woocommerce .upsells ul.products li.product img {
    background: #ffffff !important;
}

/* Cart and mini-cart product images */
.woocommerce-cart table.cart img,
.woocommerce-mini-cart-item img {
    background: #ffffff !important;
}

/* ==========================================================================
   CSS VARIABLE OVERRIDES - Force Dark Theme on Sidebar
   ========================================================================== */

/* Override GeneratePress CSS variables for dark theme */
.sidebar,
.widget-area,
.right-sidebar,
#right-sidebar,
#left-sidebar {
    --base-3: #1c1c1c !important;  /* Dark card background instead of white */
    --base-2: #191919 !important;  /* Darker background */
    --base: #1a1a1a !important;    /* Border color */
    --contrast: #e8e0d4 !important; /* Light text */
    --contrast-2: #8a8275 !important; /* Muted text */
}

/* Force dark backgrounds on all widgets - more specific selectors */
.sidebar .widget,
.widget-area .widget,
#right-sidebar .widget,
#left-sidebar .widget,
.sidebar aside,
.widget-area aside {
    background-color: #1c1c1c !important;
    background: #1c1c1c !important;
}

/* Widget blocks with wp-block-group */
.widget .wp-block-group,
.widget_block .wp-block-group {
    background: transparent !important;
}

.widget .wp-block-group__inner-container {
    background: transparent !important;
}

/* Widget headings */
.sidebar h2,
.sidebar h3,
.sidebar h4,
.widget-area h2,
.widget-area h3,
.widget-area h4,
.widget .wp-block-heading {
    color: var(--dh-gold) !important;
}

/* Widget text */
.sidebar,
.sidebar *,
.widget-area,
.widget-area * {
    color: var(--dh-text-primary) !important;
}

/* But keep links hoverable */
.sidebar a:hover,
.widget-area a:hover {
    color: var(--dh-gold) !important;
}

/* Latest posts widget */
.wp-block-latest-posts,
.wp-block-latest-posts li {
    color: var(--dh-text-primary) !important;
}

/* Latest comments widget */
.wp-block-latest-comments,
.wp-block-latest-comments__comment,
.no-comments {
    color: var(--dh-text-muted) !important;
}

/* Search block in sidebar */
.widget_search .wp-block-search,
.widget_block .wp-block-search {
    background: transparent !important;
}

.widget_search .wp-block-search__label,
.widget_block .wp-block-search__label {
    color: var(--dh-text-primary) !important;
    margin-bottom: 12px !important;
    display: block !important;
}

/* ==========================================================================
   HEADER & FOOTER - Dark Theme Fix
   ========================================================================== */

/* Fix white header */
.site-header,
.site-header .inside-header {
    background-color: #191919 !important;
    background: #191919 !important;
}

/* Header text and links */
.site-header,
.site-header * {
    color: var(--dh-text-primary) !important;
}

.main-title a,
.main-title a:hover,
.main-title a:visited {
    color: var(--dh-gold) !important;
}

/* Navigation links */
.main-navigation a,
.main-navigation .main-nav ul li a {
    color: var(--dh-text-primary) !important;
}

.main-navigation a:hover,
.main-navigation .main-nav ul li a:hover {
    color: var(--dh-gold) !important;
}

/* Fix white footer */
.site-footer,
.site-info,
.inside-site-info,
.footer-widgets,
.footer-widgets-container {
    background-color: #191919 !important;
    background: #191919 !important;
    border-top: 1px solid #282828 !important;
}

/* Footer text and links */
.site-footer,
.site-footer *,
.site-info,
.site-info *,
.footer-navigation,
.footer-navigation * {
    color: var(--dh-text-muted) !important;
}

.footer-navigation a,
.site-info a {
    color: var(--dh-text-muted) !important;
    text-decoration: none !important;
}

.footer-navigation a:hover,
.site-info a:hover {
    color: var(--dh-gold) !important;
}

.copyright-bar {
    color: var(--dh-text-muted) !important;
}

/* ==========================================================================
   PRODUCT IMAGES - Force White Background (More Specific)
   ========================================================================== */

/* Override any transparent backgrounds with !important */
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product .wp-post-image,
.woocommerce ul.products li.product a > img,
.woocommerce-product-gallery__image img,
.woocommerce div.product div.images img,
.woocommerce-product-gallery img,
.woocommerce .related ul.products li.product img,
.woocommerce .upsells ul.products li.product img,
.product-images img,
img.attachment-woocommerce_thumbnail,
img.wp-post-image {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Image link wrappers should not have backgrounds */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product a {
    background: none !important;
}

/* Product image containers - WHITE background to hide PNG transparency */
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery .woocommerce-product-gallery__image,
.woocommerce-product-gallery__image:nth-child(1),
div.woocommerce-product-gallery {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* ==========================================================================
   COMPREHENSIVE SIDEBAR FIX - Override All White Backgrounds
   ========================================================================== */

/* Target all possible sidebar and widget selectors */
aside.widget,
.widget,
.sidebar aside,
.sidebar .widget,
.widget-area .widget,
#right-sidebar aside,
#right-sidebar .widget,
#left-sidebar aside,
#left-sidebar .widget,
.inner-padding.widget,
.widget_block,
.widget_search,
.widget_recent_entries,
.widget_recent_comments {
    background: #0f0f0f !important;
    background-color: #0f0f0f !important;
}

/* Widget inner containers */
.widget .wp-block-group,
.widget .wp-block-group__inner-container,
.widget > div {
    background: transparent !important;
}

/* All widget text should be light */
.widget,
.widget *,
.sidebar,
.sidebar *,
.widget-area,
.widget-area *,
aside,
aside * {
    color: var(--dh-text-primary) !important;
}

/* Widget headings in gold */
.widget h1,
.widget h2,
.widget h3,
.widget h4,
.widget h5,
.widget .wp-block-heading {
    color: var(--dh-gold) !important;
}

/* Search input fields */
.widget input[type="search"],
.widget input[type="text"],
.sidebar input[type="search"],
.sidebar input[type="text"] {
    background: #191919 !important;
    border: 1px solid #2c2c2c !important;
    color: var(--dh-text-primary) !important;
}

/* Search buttons */
.widget button,
.widget input[type="submit"],
.sidebar button,
.sidebar input[type="submit"] {
    background: var(--dh-gold) !important;
    color: #0a0a0a !important;
    border: none !important;
}

.widget button:hover,
.widget input[type="submit"]:hover {
    background: var(--dh-gold-light) !important;
}

/* ==========================================================================
   NUCLEAR OPTION - Product Gallery White Backgrounds (Maximum Specificity)
   ========================================================================== */

/* Every possible gallery container and image gets white background */
.woocommerce-product-gallery,
.woocommerce-product-gallery *,
div.woocommerce-product-gallery,
.woocommerce div.product div.images,
.woocommerce div.product div.images *,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image > a,
.woocommerce-product-gallery__image img,
figure.woocommerce-product-gallery__image,
.flex-viewport,
.flex-control-nav,
.flex-control-thumbs li,
ol.flex-control-nav.flex-control-thumbs li img {
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Also ensure the main product image wrapper has white bg */
.woocommerce div.product div.images img.wp-post-image,
.woocommerce div.product div.images a img,
.woocommerce div.product figure.woocommerce-product-gallery__wrapper img {
    background: #ffffff !important;
    background-color: #ffffff !important;
    display: block !important;
}

/* The zoom container should also have white background */
.woocommerce-product-gallery .zoomImg,
.woocommerce-product-gallery a.woocommerce-main-image {
    background: #ffffff !important;
}

/* CRITICAL FIX: Position-based white background for product gallery */
.woocommerce div.product div.images {
    position: relative !important;
    background: #ffffff !important;
    padding: 20px !important;
}

/* Ensure the gallery wrapper fills the container */
.woocommerce-product-gallery__wrapper {
    position: relative !important;
    background: #ffffff !important;
    min-height: 400px !important;
}

/* Each gallery image container needs white background */
.woocommerce-product-gallery__image {
    position: relative !important;
    background: #ffffff !important;
    display: block !important;
}

/* Thumbnail gallery container */
.flex-control-thumbs {
    background: transparent !important;
}

.flex-control-thumbs li {
    background: #ffffff !important;
    padding: 5px !important;
    margin: 5px !important;
}
