/* ============================================
   Complete WooCommerce Modern Styling
   Bilsideinfo - LH Solutions
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

/* ============================================
   Variables & Base
   ============================================ */
:root {
    --woo-primary: #9c7250;
    --woo-primary-dark: #7a5a3f;
    --woo-primary-light: #c9a882;
    --woo-secondary: #03331e;
    --woo-secondary-light: #065f38;
    --woo-success: #10b981;
    --woo-error: #ef4444;
    --woo-warning: #f59e0b;
    --woo-white: #ffffff;
    --woo-gray-50: #f8fafc;
    --woo-gray-100: #f1f5f9;
    --woo-gray-200: #e2e8f0;
    --woo-gray-300: #cbd5e1;
    --woo-gray-400: #94a3b8;
    --woo-gray-500: #64748b;
    --woo-gray-600: #475569;
    --woo-gray-700: #334155;
    --woo-gray-800: #1e293b;
    --woo-gray-900: #0f172a;
    --woo-radius: 12px;
    --woo-radius-lg: 20px;
    --woo-radius-xl: 24px;
    --woo-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --woo-shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
    --woo-shadow-xl: 0 20px 40px -10px rgba(0, 0, 0, 0.15);
    --woo-gradient: linear-gradient(135deg, #9c7250 0%, #7a5a3f 100%);
    --woo-gradient-green: linear-gradient(135deg, #03331e 0%, #065f38 100%);
}

/* Base WooCommerce Typography - Montserrat Everywhere */
.woocommerce,
.woocommerce-page,
body.woocommerce,
body.woocommerce-page,
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account,
body.single-product,
.woocommerce *,
.woocommerce-page *,
.woocommerce input,
.woocommerce select,
.woocommerce textarea,
.woocommerce button,
.woocommerce a,
.woocommerce p,
.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.woocommerce h5,
.woocommerce h6,
.woocommerce label,
.woocommerce span,
.woocommerce th,
.woocommerce td,
.woocommerce-page input,
.woocommerce-page select,
.woocommerce-page textarea,
.woocommerce-page button,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice,
.woocommerce-Price-amount,
.select2-container,
.select2-container *,
.woocommerce table.shop_table *,
.woocommerce .products *,
.woocommerce form * {
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* ============================================
   Page Titles
   ============================================ */
.woocommerce-page .entry-title,
.woocommerce-page h1.page-title,
.woocommerce-cart h1,
.woocommerce-checkout h1,
.woocommerce-account h1,
body.woocommerce-cart .entry-title,
body.woocommerce-checkout .entry-title {
    font-size: 42px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    text-align: center !important;
    margin-bottom: 40px !important;
    position: relative !important;
    padding-bottom: 20px !important;
}

.woocommerce-page .entry-title::after,
body.woocommerce-cart .entry-title::after,
body.woocommerce-checkout .entry-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 80px !important;
    height: 4px !important;
    background: var(--woo-gradient) !important;
    border-radius: 2px !important;
}

/* ============================================
   WooCommerce Messages & Notices
   ============================================ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice,
.woocommerce-error li,
.wc-block-components-notice-banner {
    padding: 16px 20px !important;
    margin-bottom: 24px !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    box-shadow: none !important;
    outline: none !important;
}

.woocommerce-message {
    background: rgba(16, 185, 129, 0.08) !important;
    color: #065f46 !important;
    border: 1px solid rgba(16, 185, 129, 0.25) !important;
}

.woocommerce-info {
    background: rgba(156, 114, 80, 0.08) !important;
    color: var(--woo-primary-dark) !important;
    border: 1px solid rgba(156, 114, 80, 0.25) !important;
}

.woocommerce-error,
.woocommerce-error li {
    background: rgba(239, 68, 68, 0.08) !important;
    color: #b91c1c !important;
    border: 1px solid rgba(239, 68, 68, 0.25) !important;
}

/* Add icons to notices */
.woocommerce-message::before {
    content: '✓' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    background: var(--woo-success) !important;
    color: white !important;
    border-radius: 50% !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    flex-shrink: 0 !important;
    position: static !important;
}

.woocommerce-info::before {
    content: 'i' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    background: var(--woo-primary) !important;
    color: white !important;
    border-radius: 50% !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-style: italic !important;
    flex-shrink: 0 !important;
    position: static !important;
}

.woocommerce-error::before {
    content: '!' !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    background: var(--woo-error) !important;
    color: white !important;
    border-radius: 50% !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    flex-shrink: 0 !important;
    position: static !important;
}

.woocommerce-message a.button,
.woocommerce-info a.button {
    margin-left: auto !important;
    padding: 10px 20px !important;
    background: var(--woo-gradient) !important;
    color: white !important;
    border-radius: var(--woo-radius) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 13px !important;
}

/* ============================================
   Empty Cart State - Custom Danish
   ============================================ */
/* Hide "New in store" and all product sections on cart page */
.woocommerce-cart .cross-sells,
.woocommerce-cart .storefront-product-section,
.woocommerce-cart .related.products,
.woocommerce-cart section.related,
body.woocommerce-cart .wp-block-woocommerce-product-new,
body.woocommerce-cart [class*="wp-block-woocommerce-product"]:not(.wp-block-woocommerce-cart),
body.woocommerce-cart .wc-block-grid,
body.woocommerce-cart .wp-block-heading:not(.wc-block-cart__empty-cart__title),
body.woocommerce-cart section.wp-block-woocommerce-product-new,
body.woocommerce-cart .products,
body.woocommerce-cart .wc-block-product-new,
/* Hide "New in store" heading specifically */
body.woocommerce-cart h2:not(.wc-block-cart__empty-cart__title):not(.entry-title),
body.woocommerce-cart .wp-block-heading {
    display: none !important;
}

/* WooCommerce Blocks Empty Cart - Restyle */
.wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block h2 {
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
}

/* Hide the sad face SVG icon */
.wc-block-cart__empty-cart__image,
.wp-block-woocommerce-empty-cart-block svg,
.wp-block-woocommerce-empty-cart-block img {
    display: none !important;
}

/* Custom empty cart message - shown via PHP */
.bshop-empty-cart-message {
    text-align: center !important;
    padding: 80px 40px !important;
    max-width: 500px !important;
    margin: 40px auto !important;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.bshop-empty-cart-message .cart-icon {
    font-size: 72px !important;
    margin-bottom: 24px !important;
    opacity: 0.8 !important;
}

.bshop-empty-cart-message h2 {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    margin: 0 0 16px 0 !important;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.bshop-empty-cart-message p {
    font-size: 16px !important;
    color: #333333 !important;
    line-height: 1.6 !important;
    margin: 0 0 32px 0 !important;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.bshop-empty-cart-message .bshop-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 16px 32px !important;
    background: linear-gradient(135deg, #9c7250 0%, #7a5a3f 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    transition: all 0.3s ease !important;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.bshop-empty-cart-message .bshop-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(156, 114, 80, 0.4) !important;
}

.woocommerce .return-to-shop a.button,
.woocommerce a.button.wc-backward {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 16px 32px !important;
    background: var(--woo-gradient) !important;
    color: var(--woo-white) !important;
    border-radius: var(--woo-radius) !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(156, 114, 80, 0.3) !important;
}

.woocommerce .return-to-shop a.button::before,
.woocommerce a.button.wc-backward::before {
    content: '←' !important;
    font-size: 18px !important;
}

.woocommerce .return-to-shop a.button:hover,
.woocommerce a.button.wc-backward:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 25px rgba(156, 114, 80, 0.4) !important;
}

/* ============================================
   Shop / Product Archive Page
   ============================================ */
/* ============================================
   SHOP PAGE - FORCE 3 COLUMN GRID
   ============================================ */
/* Reset ALL possible grid/flex issues */
.woocommerce .products,
.woocommerce-page .products,
.woocommerce ul.products,
ul.products,
.products,
.woocommerce-page ul.products,
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 40px !important;
    align-items: start !important;
    justify-content: start !important;
    width: 100% !important;
    max-width: 100% !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

/* Force each product to fill grid cell */
.woocommerce ul.products li.product,
ul.products li.product,
.products li.product,
.woocommerce-page ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Center shop content */
.woocommerce-shop .site-main,
.post-type-archive-product .site-main,
.tax-product_cat .site-main {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
}

/* Hide page title "Uncategorized" and "Shop" */
.woocommerce-products-header__title,
.page-title,
h1.woocommerce-products-header__title,
.archive-title,
.woocommerce-loop-product__title--placeholder,
.woocommerce-products-header {
    display: none !important;
}

/* Hide breadcrumb */
.woocommerce-breadcrumb,
nav.woocommerce-breadcrumb {
    display: none !important;
}

/* Responsive - 2 columns on smaller screens */
@media (max-width: 900px) {
    .woocommerce .products,
    .woocommerce-page .products,
    .woocommerce ul.products,
    ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
        padding: 20px !important;
    }

    .woocommerce ul.products li.product a img,
    .woocommerce ul.products li.product img {
        height: 140px !important;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2 {
        font-size: 12px !important;
        padding: 12px 12px 6px !important;
        min-height: 40px !important;
    }

    .woocommerce ul.products li.product .price {
        font-size: 16px !important;
        padding: 0 12px 12px !important;
    }

    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product a.button {
        margin: 0 10px 10px !important;
        padding: 10px 14px !important;
        font-size: 12px !important;
        width: calc(100% - 20px) !important;
    }

    .woocommerce ul.products li.product .button::before,
    .woocommerce ul.products li.product a.button::before {
        display: none !important;
    }
}

@media (max-width: 600px) {
    .woocommerce .products,
    .woocommerce-page .products,
    .woocommerce ul.products,
    ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
}

/* Hide multiple error/success messages - show only first */
.woocommerce-error:not(:first-of-type),
.woocommerce-message:not(:first-of-type) {
    display: none !important;
}

/* Better notices wrapper */
.woocommerce-notices-wrapper {
    margin-bottom: 24px !important;
}

/* ============================================
   SKJUL: Uncategorized, Results count, Sorting
   ============================================ */
/* Skjul "Uncategorized" */
.woocommerce .term-description,
.woocommerce .archive-description,
.woocommerce-products-header__title.page-title:not(:empty),
.tax-product_cat .woocommerce-products-header,
.term-uncategorized,
a[href*="uncategorized"],
.cat-item-uncategorized,
.product-category.uncategorized {
    display: none !important;
}

/* Skjul "Showing all X results" */
.woocommerce-result-count,
.woocommerce .woocommerce-result-count,
p.woocommerce-result-count {
    display: none !important;
}

/* Skjul sortering dropdown */
.woocommerce-ordering,
.woocommerce .woocommerce-ordering,
form.woocommerce-ordering {
    display: none !important;
}

/* Skjul breadcrumb "Uncategorized" */
.woocommerce-breadcrumb a[href*="uncategorized"],
.breadcrumb a[href*="uncategorized"] {
    display: none !important;
}

/* Section Titles */
.woocommerce .products > h2,
.woocommerce .related > h2,
.woocommerce .upsells > h2,
.woocommerce .cross-sells > h2,
section.products > h2 {
    grid-column: 1 / -1 !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    text-align: center !important;
    margin: 20px 0 30px !important;
    position: relative !important;
    padding-bottom: 16px !important;
}

.woocommerce .products > h2::after,
.woocommerce .related > h2::after,
section.products > h2::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 3px !important;
    background: var(--woo-gradient) !important;
    border-radius: 2px !important;
}

/* Product Card - Equal Heights */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    float: none !important;
    background: var(--woo-white) !important;
    border-radius: var(--woo-radius-xl) !important;
    overflow: hidden !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border: 1px solid var(--woo-gray-100) !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: var(--woo-primary-light) !important;
}

/* Product Image Container */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    display: block !important;
    text-decoration: none !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link {
    position: relative !important;
    overflow: hidden !important;
}

/* Product Image */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    margin: 0 !important;
    border-radius: 0 !important;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
    background: linear-gradient(145deg, #f8f4f0 0%, #ebe4dc 100%) !important;
}

/* Better placeholder styling */
.woocommerce ul.products li.product img[src*="placeholder"],
.woocommerce ul.products li.product img.woocommerce-placeholder {
    object-fit: contain !important;
    padding: 40px !important;
    background: linear-gradient(145deg, #f8f4f0 0%, #ebe4dc 100%) !important;
    opacity: 0.7 !important;
}

.woocommerce ul.products li.product:hover img {
    transform: scale(1.08) !important;
}

/* Placeholder Image Styling - Modern Look */
.woocommerce ul.products li.product img.wp-post-image[src*="placeholder"],
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail[src*="placeholder"],
.woocommerce ul.products li.product img.woocommerce-placeholder,
.woocommerce ul.products li.product .woocommerce-placeholder {
    padding: 50px !important;
    background: linear-gradient(145deg, #f8f4f0 0%, #e8e0d8 100%) !important;
    opacity: 0.6 !important;
}

/* Custom placeholder overlay with icon */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    position: relative !important;
}

/* Hide ugly default placeholder, show custom */
.woocommerce ul.products li.product .woocommerce-loop-product__link::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 200px !important;
    background: linear-gradient(145deg, #f5f0eb 0%, #e5ddd4 100%) !important;
    z-index: 0 !important;
    display: none !important;
}

/* Show custom background only when placeholder is used */
.woocommerce ul.products li.product .woocommerce-loop-product__link:has(img[src*="placeholder"])::before,
.woocommerce ul.products li.product .woocommerce-loop-product__link:has(.woocommerce-placeholder)::before {
    display: block !important;
}

/* Product content wrapper for flex */
.woocommerce ul.products li.product .woocommerce-loop-product__link {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Product Content */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
    padding: 20px 20px 8px !important;
    margin: 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--woo-gray-800) !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: flex-start !important;
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
.woocommerce ul.products li.product:hover h2 {
    color: var(--woo-primary) !important;
}

/* Product Price */
.woocommerce ul.products li.product .price {
    padding: 0 20px 16px !important;
    margin: 0 !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--woo-secondary) !important;
    margin-top: auto !important;
}

.woocommerce ul.products li.product .price del {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--woo-gray-400) !important;
    margin-right: 8px !important;
}

.woocommerce ul.products li.product .price ins {
    text-decoration: none !important;
    font-weight: 800 !important;
}

/* ============================================
   Add to Cart Button - Modern Style
   ============================================ */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product a.add_to_cart_button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    margin: 0 16px 16px !important;
    padding: 14px 24px !important;
    width: calc(100% - 32px) !important;
    background: var(--woo-gradient) !important;
    color: var(--woo-white) !important;
    border: none !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    text-decoration: none !important;
    box-shadow: 0 4px 15px rgba(156, 114, 80, 0.25) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Add cart icon */
.woocommerce ul.products li.product .button::before,
.woocommerce ul.products li.product a.button::before,
.woocommerce ul.products li.product .add_to_cart_button::before {
    content: '🛒' !important;
    font-size: 16px !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover {
    background: var(--woo-gradient-green) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 25px rgba(3, 51, 30, 0.35) !important;
}

/* Added to cart state */
.woocommerce ul.products li.product .added_to_cart {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 8px 16px 16px !important;
    padding: 12px 20px !important;
    width: calc(100% - 32px) !important;
    background: var(--woo-secondary) !important;
    color: var(--woo-white) !important;
    border-radius: var(--woo-radius) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

.woocommerce ul.products li.product .added_to_cart::before {
    content: '✓' !important;
}

/* Loading state */
.woocommerce ul.products li.product .button.loading::after {
    display: none !important;
}

.woocommerce ul.products li.product .button.loading {
    opacity: 0.7 !important;
    pointer-events: none !important;
}

/* Sale Badge */
.woocommerce span.onsale {
    position: absolute !important;
    top: 16px !important;
    left: 16px !important;
    right: auto !important;
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: var(--woo-white) !important;
    padding: 8px 16px !important;
    border-radius: 30px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    min-height: auto !important;
    min-width: auto !important;
    line-height: 1.2 !important;
    z-index: 10 !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4) !important;
}

/* Product Count & Ordering */
.woocommerce .woocommerce-result-count {
    font-size: 14px !important;
    color: var(--woo-gray-500) !important;
    margin-bottom: 24px !important;
}

.woocommerce .woocommerce-ordering select {
    padding: 14px 44px 14px 18px !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--woo-gray-700) !important;
    background-color: var(--woo-white) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
}

.woocommerce .woocommerce-ordering select:hover {
    border-color: var(--woo-primary-light) !important;
}

.woocommerce .woocommerce-ordering select:focus {
    border-color: var(--woo-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(156, 114, 80, 0.15) !important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination {
    margin-top: 48px !important;
    text-align: center !important;
}

.woocommerce nav.woocommerce-pagination ul {
    display: inline-flex !important;
    gap: 8px !important;
    border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li {
    border: none !important;
    margin: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    padding: 14px 20px !important;
    background: var(--woo-white) !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    color: var(--woo-gray-700) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
    min-width: auto !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
    border-color: var(--woo-primary) !important;
    color: var(--woo-primary) !important;
    background: rgba(156, 114, 80, 0.05) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--woo-gradient) !important;
    border-color: var(--woo-primary) !important;
    color: var(--woo-white) !important;
}

/* ============================================
   Single Product Page
   ============================================ */
.woocommerce div.product,
.woocommerce #content div.product {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
}

/* Product Gallery */
.woocommerce div.product div.images {
    width: 50% !important;
    float: left !important;
    margin-bottom: 40px !important;
}

.woocommerce div.product div.images img {
    border-radius: var(--woo-radius-xl) !important;
    box-shadow: var(--woo-shadow-lg) !important;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    background: var(--woo-white) !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: var(--woo-shadow) !important;
    z-index: 10 !important;
    transition: all 0.2s ease !important;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger:hover {
    background: var(--woo-primary) !important;
    color: white !important;
}

.woocommerce div.product div.images .flex-control-thumbs {
    margin-top: 16px !important;
    display: flex !important;
    gap: 12px !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
    width: auto !important;
    flex: 0 0 80px !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
    border-radius: var(--woo-radius) !important;
    border: 3px solid transparent !important;
    transition: all 0.2s ease !important;
    opacity: 0.6 !important;
    cursor: pointer !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
    border-color: var(--woo-primary) !important;
    opacity: 1 !important;
}

/* Product Summary */
.woocommerce div.product div.summary {
    width: 45% !important;
    float: right !important;
    padding-left: 40px !important;
}

.woocommerce div.product .product_title {
    font-size: 36px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    margin: 0 0 16px 0 !important;
    line-height: 1.2 !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: var(--woo-secondary) !important;
    margin-bottom: 24px !important;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
    font-size: 18px !important;
    font-weight: 500 !important;
    color: var(--woo-gray-400) !important;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
    text-decoration: none !important;
}

/* Short Description */
.woocommerce div.product .woocommerce-product-details__short-description {
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: var(--woo-gray-600) !important;
    margin-bottom: 24px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid var(--woo-gray-200) !important;
}

/* Add to Cart Form */
.woocommerce div.product form.cart {
    margin-bottom: 24px !important;
    padding: 28px !important;
    background: linear-gradient(135deg, var(--woo-gray-50) 0%, rgba(156, 114, 80, 0.05) 100%) !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
}

.woocommerce div.product form.cart .quantity {
    margin-right: 16px !important;
}

.woocommerce .quantity .qty {
    width: 80px !important;
    padding: 16px !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-align: center !important;
    transition: border-color 0.2s ease !important;
}

.woocommerce .quantity .qty:focus {
    border-color: var(--woo-primary) !important;
    outline: none !important;
}

/* Single Add to Cart Button */
.woocommerce div.product form.cart .button,
.woocommerce div.product form.cart button.single_add_to_cart_button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 18px 40px !important;
    background: var(--woo-gradient) !important;
    color: var(--woo-white) !important;
    border: none !important;
    border-radius: var(--woo-radius) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 6px 20px rgba(156, 114, 80, 0.3) !important;
}

.woocommerce div.product form.cart .button::before,
.woocommerce div.product form.cart button.single_add_to_cart_button::before {
    content: '🛒' !important;
    font-size: 18px !important;
}

.woocommerce div.product form.cart .button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 30px rgba(156, 114, 80, 0.4) !important;
}

/* Product Meta */
.woocommerce div.product .product_meta {
    font-size: 14px !important;
    color: var(--woo-gray-500) !important;
    margin-top: 24px !important;
    padding-top: 24px !important;
    border-top: 1px solid var(--woo-gray-200) !important;
}

.woocommerce div.product .product_meta > span {
    display: block !important;
    margin-bottom: 8px !important;
}

.woocommerce div.product .product_meta a {
    color: var(--woo-primary) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}

.woocommerce div.product .product_meta a:hover {
    text-decoration: underline !important;
}

/* Product Tabs */
.woocommerce div.product .woocommerce-tabs {
    clear: both !important;
    padding-top: 48px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex !important;
    gap: 4px !important;
    padding: 0 !important;
    margin: 0 0 0 0 !important;
    border-bottom: none !important;
    list-style: none !important;
    background: var(--woo-gray-100) !important;
    border-radius: var(--woo-radius) !important;
    padding: 6px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after {
    display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: var(--woo-radius) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 14px 24px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--woo-gray-500) !important;
    text-decoration: none !important;
    display: block !important;
    border-radius: var(--woo-radius) !important;
    transition: all 0.2s ease !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
    color: var(--woo-gray-800) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background: var(--woo-white) !important;
    box-shadow: var(--woo-shadow) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--woo-primary) !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-lg) !important;
    border: 1px solid var(--woo-gray-200) !important;
    margin-top: 24px !important;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--woo-gray-900) !important;
    margin: 0 0 16px 0 !important;
}

/* Related Products */
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products {
    clear: both !important;
    padding-top: 60px !important;
}

.woocommerce div.product .related.products > h2,
.woocommerce div.product .upsells.products > h2 {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    margin-bottom: 32px !important;
    text-align: center !important;
}

/* ============================================
   Cart Page
   ============================================ */
body.woocommerce-cart .woocommerce {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
}

.woocommerce-cart table.cart,
.woocommerce table.shop_table {
    border: none !important;
    border-radius: var(--woo-radius-xl) !important;
    overflow: hidden !important;
    box-shadow: var(--woo-shadow-lg) !important;
    border-collapse: separate !important;
}

.woocommerce table.shop_table th {
    background: linear-gradient(135deg, var(--woo-gray-50) 0%, var(--woo-gray-100) 100%) !important;
    padding: 20px 24px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: var(--woo-gray-600) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border: none !important;
}

.woocommerce table.shop_table td {
    padding: 24px !important;
    vertical-align: middle !important;
    border: none !important;
    border-bottom: 1px solid var(--woo-gray-100) !important;
    background: var(--woo-white) !important;
}

.woocommerce table.shop_table tr:last-child td {
    border-bottom: none !important;
}

/* Cart Product Image */
.woocommerce table.shop_table td.product-thumbnail img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover !important;
    border-radius: var(--woo-radius) !important;
    box-shadow: var(--woo-shadow) !important;
}

/* Cart Product Name */
.woocommerce table.shop_table td.product-name a {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--woo-gray-900) !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.woocommerce table.shop_table td.product-name a:hover {
    color: var(--woo-primary) !important;
}

/* Cart Price */
.woocommerce table.shop_table td.product-price,
.woocommerce table.shop_table td.product-subtotal {
    font-weight: 700 !important;
    color: var(--woo-secondary) !important;
}

/* Cart Quantity */
.woocommerce table.shop_table td.product-quantity .quantity .qty {
    width: 70px !important;
    padding: 12px !important;
}

/* Remove Item */
.woocommerce table.shop_table td.product-remove a.remove {
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
    font-size: 20px !important;
    color: var(--woo-gray-400) !important;
    background: var(--woo-gray-100) !important;
    border-radius: 50% !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.woocommerce table.shop_table td.product-remove a.remove:hover {
    background: var(--woo-error) !important;
    color: var(--woo-white) !important;
}

/* Cart Actions */
.woocommerce table.shop_table td.actions {
    padding: 24px !important;
    background: linear-gradient(135deg, var(--woo-gray-50) 0%, var(--woo-gray-100) 100%) !important;
}

.woocommerce table.shop_table td.actions .coupon input {
    padding: 14px 18px !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    margin-right: 8px !important;
    font-size: 14px !important;
    transition: border-color 0.2s ease !important;
}

.woocommerce table.shop_table td.actions .coupon input:focus {
    border-color: var(--woo-primary) !important;
    outline: none !important;
}

.woocommerce table.shop_table td.actions .coupon .button {
    padding: 14px 24px !important;
    background: var(--woo-gray-800) !important;
    color: var(--woo-white) !important;
    border: none !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.woocommerce table.shop_table td.actions .coupon .button:hover {
    background: var(--woo-gray-900) !important;
}

.woocommerce table.shop_table td.actions button[name="update_cart"] {
    padding: 14px 28px !important;
    background: transparent !important;
    color: var(--woo-gray-600) !important;
    border: 2px solid var(--woo-gray-300) !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.woocommerce table.shop_table td.actions button[name="update_cart"]:hover {
    border-color: var(--woo-primary) !important;
    color: var(--woo-primary) !important;
}

/* Cart Totals */
.woocommerce .cart-collaterals {
    margin-top: 40px !important;
}

.woocommerce .cart-collaterals .cart_totals {
    float: right !important;
    width: 420px !important;
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    box-shadow: var(--woo-shadow-lg) !important;
}

.woocommerce .cart_totals h2 {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    margin: 0 0 24px 0 !important;
    padding-bottom: 16px !important;
    border-bottom: 2px solid var(--woo-gray-100) !important;
}

.woocommerce .cart_totals table {
    border: none !important;
    margin-bottom: 24px !important;
}

.woocommerce .cart_totals table th,
.woocommerce .cart_totals table td {
    padding: 16px 0 !important;
    border: none !important;
    border-bottom: 1px solid var(--woo-gray-100) !important;
    background: transparent !important;
}

.woocommerce .cart_totals table th {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--woo-gray-600) !important;
}

.woocommerce .cart_totals table td {
    text-align: right !important;
    font-size: 14px !important;
    color: var(--woo-gray-900) !important;
}

.woocommerce .cart_totals .order-total th,
.woocommerce .cart_totals .order-total td {
    font-size: 18px !important;
    font-weight: 700 !important;
    border-bottom: none !important;
    padding-top: 20px !important;
}

.woocommerce .cart_totals .order-total td .woocommerce-Price-amount {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: var(--woo-secondary) !important;
}

/* Proceed to Checkout Button */
.woocommerce .wc-proceed-to-checkout a.checkout-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: 100% !important;
    padding: 20px 32px !important;
    background: var(--woo-gradient) !important;
    color: var(--woo-white) !important;
    border: none !important;
    border-radius: var(--woo-radius) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    box-shadow: 0 6px 20px rgba(156, 114, 80, 0.3) !important;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button::before {
    content: '💳' !important;
    font-size: 20px !important;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 30px rgba(156, 114, 80, 0.4) !important;
}

/* ============================================
   Checkout Page
   ============================================ */
body.woocommerce-checkout .woocommerce {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
}

body.woocommerce-checkout .col2-set,
body.woocommerce-checkout form.checkout .col2-set {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    width: 100% !important;
}

body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2 {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
}

/* Checkout Form Fields */
body.woocommerce-checkout h3 {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    margin: 0 0 24px 0 !important;
    padding-bottom: 16px !important;
    border-bottom: 2px solid var(--woo-gray-100) !important;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    margin-bottom: 24px !important;
    box-shadow: var(--woo-shadow) !important;
}

body.woocommerce-checkout .form-row label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--woo-gray-700) !important;
    margin-bottom: 8px !important;
    display: block !important;
}

body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select {
    padding: 16px 18px !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    width: 100% !important;
    transition: all 0.2s ease !important;
    background: var(--woo-white) !important;
}

body.woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .form-row textarea:focus,
body.woocommerce-checkout .form-row select:focus {
    border-color: var(--woo-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(156, 114, 80, 0.1) !important;
}

/* Select2 Dropdown Styling */
body.woocommerce-checkout .select2-container--default .select2-selection--single {
    padding: 16px 18px !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    height: auto !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0 !important;
    line-height: 1.5 !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    right: 12px !important;
}

/* Order Review */
body.woocommerce-checkout #order_review_heading {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    margin: 40px 0 24px !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order {
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    box-shadow: var(--woo-shadow-lg) !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
    margin-bottom: 24px !important;
}

/* Payment Methods */
body.woocommerce-checkout #payment {
    background: transparent !important;
    border-radius: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
    padding: 0 !important;
    margin: 0 0 24px 0 !important;
    border: none !important;
    list-style: none !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
    background: var(--woo-gray-50) !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    margin-bottom: 12px !important;
    padding: 20px !important;
    transition: all 0.2s ease !important;
}

body.woocommerce-checkout #payment ul.payment_methods li:hover {
    border-color: var(--woo-primary-light) !important;
}

body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label {
    font-weight: 600 !important;
    color: var(--woo-gray-800) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

body.woocommerce-checkout #payment .payment_box {
    background: var(--woo-white) !important;
    padding: 16px !important;
    margin-top: 16px !important;
    border-radius: var(--woo-radius) !important;
    color: var(--woo-gray-600) !important;
    font-size: 14px !important;
}

body.woocommerce-checkout #payment .payment_box::before {
    display: none !important;
}

/* Place Order Button */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    width: 100% !important;
    padding: 22px 40px !important;
    background: var(--woo-gradient-green) !important;
    color: var(--woo-white) !important;
    border: none !important;
    border-radius: var(--woo-radius) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 6px 25px rgba(3, 51, 30, 0.35) !important;
    margin-top: 24px !important;
}

body.woocommerce-checkout #place_order::before {
    content: '🔒' !important;
    font-size: 20px !important;
}

body.woocommerce-checkout #place_order:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 35px rgba(3, 51, 30, 0.45) !important;
}

/* ============================================
   My Account Page
   ============================================ */
body.woocommerce-account .woocommerce {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 280px !important;
    float: left !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: var(--woo-white) !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    overflow: hidden !important;
    box-shadow: var(--woo-shadow) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    margin: 0 !important;
    border-bottom: 1px solid var(--woo-gray-100) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 18px 24px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--woo-gray-700) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

/* Navigation Icons */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard a::before { content: '📊'; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders a::before { content: '📦'; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads a::before { content: '⬇️'; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-address a::before { content: '📍'; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account a::before { content: '👤'; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a::before { content: '🚪'; }

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background: var(--woo-gray-50) !important;
    color: var(--woo-primary) !important;
    padding-left: 28px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
    background: var(--woo-gradient) !important;
    color: var(--woo-white) !important;
    font-weight: 700 !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
    width: calc(100% - 320px) !important;
    float: right !important;
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    box-shadow: var(--woo-shadow) !important;
}

/* Account Forms */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
    background: var(--woo-white) !important;
    padding: 48px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    max-width: 480px !important;
    margin: 0 auto !important;
    box-shadow: var(--woo-shadow-lg) !important;
}

.woocommerce form .form-row label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--woo-gray-700) !important;
    margin-bottom: 8px !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
    padding: 16px 18px !important;
    border: 2px solid var(--woo-gray-200) !important;
    border-radius: var(--woo-radius) !important;
    font-size: 14px !important;
    transition: all 0.2s ease !important;
}

.woocommerce form .form-row input.input-text:focus {
    border-color: var(--woo-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(156, 114, 80, 0.1) !important;
}

.woocommerce form .form-row .button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 16px 32px !important;
    background: var(--woo-gradient) !important;
    color: var(--woo-white) !important;
    border: none !important;
    border-radius: var(--woo-radius) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(156, 114, 80, 0.3) !important;
}

.woocommerce form .form-row .button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(156, 114, 80, 0.4) !important;
}

/* ============================================
   Order Received / Thank You Page
   ============================================ */
.woocommerce-order-received .woocommerce {
    max-width: 800px !important;
    margin: 0 auto !important;
    padding: 40px 20px !important;
}

.woocommerce-order-received .woocommerce-thankyou-order-received {
    background: linear-gradient(135deg, rgba(3, 51, 30, 0.1) 0%, rgba(16, 185, 129, 0.1) 100%) !important;
    color: var(--woo-secondary) !important;
    padding: 32px 40px !important;
    border-radius: var(--woo-radius-xl) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin-bottom: 40px !important;
    border: 2px solid rgba(3, 51, 30, 0.15) !important;
}

.woocommerce-order-received .woocommerce-thankyou-order-received::before {
    content: '✅' !important;
    display: block !important;
    font-size: 48px !important;
    margin-bottom: 16px !important;
}

.woocommerce-order-received .woocommerce-order-overview {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    margin-bottom: 32px !important;
    list-style: none !important;
    box-shadow: var(--woo-shadow) !important;
}

.woocommerce-order-received .woocommerce-order-overview li {
    padding: 20px !important;
    background: var(--woo-gray-50) !important;
    border-radius: var(--woo-radius) !important;
    text-align: center !important;
}

.woocommerce-order-received .woocommerce-order-overview li strong {
    display: block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--woo-gray-500) !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin-bottom: 8px !important;
}

.woocommerce-order-received .woocommerce-order-details,
.woocommerce-order-received .woocommerce-customer-details {
    background: var(--woo-white) !important;
    padding: 32px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    margin-bottom: 24px !important;
    box-shadow: var(--woo-shadow) !important;
}

.woocommerce-order-received h2 {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--woo-gray-900) !important;
    margin: 0 0 24px 0 !important;
    padding-bottom: 16px !important;
    border-bottom: 2px solid var(--woo-gray-100) !important;
}

/* ============================================
   Cross-sells & Upsells on Checkout
   ============================================ */
.bshop-checkout-upsells {
    background: var(--woo-white) !important;
    padding: 28px !important;
    border-radius: var(--woo-radius-xl) !important;
    border: 1px solid var(--woo-gray-200) !important;
    margin-bottom: 32px !important;
    box-shadow: var(--woo-shadow) !important;
}

.bshop-checkout-upsells h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--woo-gray-900) !important;
    margin: 0 0 20px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.bshop-checkout-upsells h3::before {
    content: '✨' !important;
}

.bshop-upsell-item {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 16px !important;
    background: var(--woo-gray-50) !important;
    border-radius: var(--woo-radius) !important;
    margin-bottom: 12px !important;
    border: 2px solid transparent !important;
    transition: all 0.2s ease !important;
}

.bshop-upsell-item:hover {
    border-color: var(--woo-primary-light) !important;
}

.bshop-upsell-item.in-cart {
    background: rgba(156, 114, 80, 0.08) !important;
    border-color: var(--woo-primary) !important;
}

.bshop-upsell-checkbox input[type="checkbox"] {
    width: 22px !important;
    height: 22px !important;
    accent-color: var(--woo-primary) !important;
    cursor: pointer !important;
}

.bshop-upsell-info {
    flex: 1 !important;
}

.bshop-upsell-info strong {
    display: block !important;
    font-weight: 600 !important;
    color: var(--woo-gray-800) !important;
    margin-bottom: 4px !important;
}

.bshop-upsell-desc {
    font-size: 13px !important;
    color: var(--woo-gray-500) !important;
}

.bshop-upsell-price {
    font-weight: 700 !important;
    color: var(--woo-secondary) !important;
    font-size: 15px !important;
}

/* Order Bump */
.bshop-order-bump {
    display: flex !important;
    align-items: flex-start !important;
    gap: 16px !important;
    padding: 24px !important;
    background: linear-gradient(135deg, rgba(156, 114, 80, 0.08) 0%, rgba(156, 114, 80, 0.03) 100%) !important;
    border: 2px dashed var(--woo-primary) !important;
    border-radius: var(--woo-radius-lg) !important;
    margin-bottom: 24px !important;
}

.bshop-order-bump.added {
    background: rgba(16, 185, 129, 0.08) !important;
    border-color: var(--woo-success) !important;
    border-style: solid !important;
}

.bshop-bump-checkbox input[type="checkbox"] {
    width: 24px !important;
    height: 24px !important;
    accent-color: var(--woo-primary) !important;
    cursor: pointer !important;
    margin-top: 4px !important;
}

.bshop-bump-content label {
    font-weight: 600 !important;
    color: var(--woo-gray-800) !important;
    cursor: pointer !important;
}

.bshop-bump-content label strong {
    color: var(--woo-primary) !important;
    font-weight: 800 !important;
}

.bshop-bump-price {
    font-weight: 800 !important;
    color: var(--woo-secondary) !important;
}

.bshop-bump-desc {
    font-size: 13px !important;
    color: var(--woo-gray-500) !important;
    margin: 8px 0 0 0 !important;
}

/* ============================================
   Hide Related Products, Description & Reviews
   ============================================ */
.woocommerce .related.products,
.woocommerce .upsells.products,
section.related.products,
section.upsells.products,
.wp-block-woocommerce-related-products,
.wc-block-related-products {
    display: none !important;
}

.woocommerce-tabs .description_tab,
.woocommerce-tabs .reviews_tab,
.woocommerce-tabs .additional_information_tab,
.woocommerce-tabs #tab-description,
.woocommerce-tabs #tab-reviews,
.woocommerce-tabs #tab-additional_information,
.woocommerce-Tabs-panel--description,
.woocommerce-Tabs-panel--reviews,
.woocommerce-Tabs-panel--additional_information {
    display: none !important;
}

/* Hide entire tabs section if empty */
.woocommerce div.product .woocommerce-tabs ul.tabs:empty,
.woocommerce div.product .woocommerce-tabs:empty {
    display: none !important;
}

/* ============================================
   Logo Sizing - Consistent across all pages
   ============================================ */
/* Header logo - consistent size */
header img,
.site-header img,
.header-logo img,
.custom-logo,
.site-logo img,
.logo img,
.elementor-widget-image img[src*="logo"],
.e-logo img,
img.custom-logo-link,
header .elementor-image img,
.elementor-location-header img {
    max-width: 180px !important;
    width: auto !important;
    height: auto !important;
    max-height: 60px !important;
    object-fit: contain !important;
}

/* WooCommerce pages - prevent giant logos */
body.woocommerce-cart header img,
body.woocommerce-checkout header img,
body.woocommerce-account header img,
body.single-product header img,
body.woocommerce-cart .site-logo img,
body.woocommerce-checkout .site-logo img,
body.woocommerce-cart .custom-logo,
body.woocommerce-checkout .custom-logo,
body.woocommerce-cart .elementor-location-header img,
body.woocommerce-checkout .elementor-location-header img,
body.woocommerce-cart header .elementor-image img,
body.woocommerce-checkout header .elementor-image img {
    max-width: 180px !important;
    width: auto !important;
    height: auto !important;
    max-height: 60px !important;
    object-fit: contain !important;
}

/* Specific fix for oversized checkout/cart logos */
body.woocommerce-checkout .elementor-widget-image img,
body.woocommerce-cart .elementor-widget-image img {
    max-width: 180px !important;
    height: auto !important;
    max-height: 60px !important;
}

/* ============================================
   Responsive
   ============================================ */
@media (max-width: 1024px) {
    .woocommerce .products,
    .woocommerce-page .products {
        grid-template-columns: repeat(2, 1fr) !important;
        padding: 30px !important;
    }
}

@media (max-width: 900px) {
    .woocommerce .products,
    .woocommerce-page .products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
        padding: 20px !important;
    }

    .woocommerce div.product div.images,
    .woocommerce div.product div.summary {
        width: 100% !important;
        float: none !important;
        padding: 0 !important;
    }

    .woocommerce div.product div.summary {
        margin-top: 32px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation,
    .woocommerce-account .woocommerce-MyAccount-content {
        width: 100% !important;
        float: none !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        margin-bottom: 24px !important;
    }

    .woocommerce .cart-collaterals .cart_totals {
        width: 100% !important;
        float: none !important;
    }

    body.woocommerce-checkout .col2-set,
    body.woocommerce-checkout form.checkout .col2-set {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 600px) {
    .woocommerce .products,
    .woocommerce-page .products {
        grid-template-columns: 1fr !important;
        padding: 16px !important;
    }

    .woocommerce ul.products li.product a img,
    .woocommerce ul.products li.product img {
        height: 220px !important;
    }

    .woocommerce-page .entry-title,
    body.woocommerce-cart .entry-title,
    body.woocommerce-checkout .entry-title {
        font-size: 32px !important;
    }

    .woocommerce table.shop_table {
        display: block !important;
    }

    .woocommerce table.shop_table thead {
        display: none !important;
    }

    .woocommerce table.shop_table tbody,
    .woocommerce table.shop_table tr,
    .woocommerce table.shop_table td {
        display: block !important;
        width: 100% !important;
    }

    .woocommerce table.shop_table td {
        text-align: left !important;
        padding: 12px 20px !important;
        border-bottom: none !important;
    }

    .woocommerce table.shop_table td::before {
        content: attr(data-title) !important;
        font-weight: 700 !important;
        display: block !important;
        margin-bottom: 4px !important;
        color: var(--woo-gray-500) !important;
        font-size: 11px !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
    }

    .woocommerce table.shop_table tr {
        border-bottom: 1px solid var(--woo-gray-200) !important;
        padding: 16px 0 !important;
    }

    .woocommerce-order-received .woocommerce-order-overview {
        grid-template-columns: 1fr !important;
    }

    .bshop-upsell-item {
        flex-wrap: wrap !important;
    }

    .bshop-upsell-price {
        width: 100% !important;
        text-align: right !important;
        margin-top: 8px !important;
    }
}

/* ============================================
   Hide bottom bar & duplicate copyright
   ============================================ */
/* Hide the blue/teal divider line */
.single-product hr,
.single-product .wp-block-separator,
.woocommerce-page hr,
body.single-product main hr,
body.single-product article hr,
.product hr,
hr.wp-block-separator {
    display: none !important;
}

/* Hide "Alle rettigheder forbeholdes" - theme footer duplicate */
.site-info,
.footer-info,
.storefront-footer-credit,
.site-footer .copyright,
.footer-copyright,
footer .site-info,
body.single-product .site-info,
body.woocommerce .site-info,
body.home .site-info,
.powered-by-wordpress,
.theme-credit,
p:last-child:contains("rettigheder"),
/* Storefront theme specific */
.storefront-credit,
footer .col-full > .site-info {
    display: none !important;
}

/* Target text that contains "Alle rettigheder" */
body.single-product footer p,
body.woocommerce footer p:not(.bshop-footer p),
body.home footer:not(.bshop-footer) > p {
    display: none !important;
}
