/* yl-theme commerce: Woodmart/Elementor surfaces that keep a light background, shop, single product, cart, checkout */
html body :is(.website-wrapper,.wd-page-wrapper,.main-page-wrapper,.wd-page-content,.wd-prefooter,.elementor-section.wd-negative-gap:not(.elementor-inner-section)){background-color:var(--yl-bg)}
html body :is(.cart-widget-side,.mobile-nav,.wd-side-hidden,.wd-product-wrapper,.product-wrapper,.wd-buttons.wd-pos-r-t,.elementor-section.wd-negative-gap.elementor-inner-section){background-color:var(--yl-card)}
html body .elementor-section.wd-negative-gap{border-color:var(--yl-border)}
html body :is(.elementor-widget-container,.elementor-widget-text-editor,.elementor-heading-title,.wd-infobox *,.wd-info-box *){color:var(--yl-fg-2)}
html body :is(.elementor-heading-title,.title,.wd-info-box-title,.info-box-title){color:var(--yl-fg)}
html body :is(.wd-skip-links,.scrollToTop,.woodmart-show-product-gallery,.menu-opener){background-color:var(--yl-elev);color:var(--yl-fg);border-color:var(--yl-border)}
/* single product */
.single-product .summary,.single-product .product-image-summary-wrap{color:var(--yl-fg-2)}
.single-product .entry-title,.single-product .product_title{color:var(--yl-fg)}
.single-product .price{font-size:26px}
.quantity input.qty,.quantity .minus,.quantity .plus{background:var(--yl-bg-2);color:var(--yl-fg);border-color:var(--yl-border)}
.variations select,.variations .wd-swatch{background:var(--yl-bg-2);color:var(--yl-fg);border-color:var(--yl-border)}
.wd-swatch.wd-active,.wd-swatch:hover{border-color:var(--yl-violet)}
.woocommerce-tabs .wd-nav-tabs>li.active>a,.wd-tabs-header .active{color:var(--yl-violet-2)}
#reviews .comment-text,#review_form_wrapper,.comment-respond{background:var(--yl-card);border:1px solid var(--yl-border);border-radius:var(--yl-r-lg);padding:var(--yl-sp-4);color:var(--yl-fg-2)}
.woocommerce-product-attributes th,.woocommerce-product-attributes td{background:transparent;color:var(--yl-fg-2)}
.woocommerce-product-attributes th{color:var(--yl-fg)}
/* shop archive */
.woocommerce-result-count,.wd-products-per-page *,.woocommerce-ordering select{color:var(--yl-fg-2)}
.wd-products-shop-view a,.wd-products-per-page a{color:var(--yl-fg-2)}
.wd-active a,.wd-active>a{color:var(--yl-violet-2)}
.woocommerce-pagination .page-numbers li a,.woocommerce-pagination .page-numbers li span{background:var(--yl-card);border:1px solid var(--yl-border);color:var(--yl-fg);border-radius:var(--yl-r-sm)}
.woocommerce-pagination .page-numbers li .current{background:var(--yl-violet);border-color:var(--yl-violet)}
.wd-product-cats .cat-item,.wd-cat,.category-grid-item .wd-cat-inner{background:var(--yl-card);border:1px solid var(--yl-border);border-radius:var(--yl-r-lg);color:var(--yl-fg)}
.wd-cat .wd-entities-title,.wd-cat .wd-entities-title a{color:var(--yl-fg)}
.wd-filter-list a,.widget_layered_nav a,.widget_product_categories a{color:var(--yl-fg-2)}
.wd-filter-list a:hover,.wd-filter-list .chosen a{color:var(--yl-violet-2)}
/* cart + checkout */
.woocommerce-cart-form,.cart-collaterals,.cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout-review-order,#order_review{background:var(--yl-card);border:1px solid var(--yl-border);border-radius:var(--yl-r-lg);padding:var(--yl-sp-4)}
.cart_totals h2,#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-additional-fields h3{color:var(--yl-fg)}
.shop_table th,.shop_table td,.cart_totals th,.cart_totals td{color:var(--yl-fg-2);border-color:var(--yl-border)}
.shop_table .product-name a,.order-total .amount{color:var(--yl-fg)}
#payment,#payment .payment_box,.wc_payment_methods li{background:var(--yl-bg-2);border-color:var(--yl-border);color:var(--yl-fg-2);border-radius:var(--yl-r-md)}
#payment .payment_box::before{border-bottom-color:var(--yl-bg-2)}
.woocommerce-error,.woocommerce-message,.woocommerce-info,.wd-notice{background:var(--yl-card);border:1px solid var(--yl-border);color:var(--yl-fg);border-radius:var(--yl-r-md)}
.woocommerce-error{border-color:var(--yl-discount)}
.woocommerce-message{border-color:var(--yl-success)}
.coupon input{min-height:44px}
.form-row label{color:var(--yl-fg)}
.select2-dropdown{background:var(--yl-card);border-color:var(--yl-border);color:var(--yl-fg)}
/* Elementor writes per-element backgrounds with higher specificity: the white cards are top-level negative-gap sections */
html body:not(.home) .elementor-section.wd-negative-gap{background-color:var(--yl-card)!important;border:1px solid var(--yl-border);border-radius:var(--yl-r-lg)}
html body:not(.home) .elementor-section.wd-negative-gap .elementor-section.wd-negative-gap{background-color:transparent!important;border:0}
/* leftover dark text from Woodmart/Elementor inline colors */
html body :is(.woocommerce-Reviews-title,label,.meta-label,.wd-action-text,.wd-info-number,.wd-label,.wd-last,.posted_in,.sku_wrapper,.wd-el-title,.title){color:var(--yl-fg)}
html body .wd .product-label.onsale,html body span.onsale.product-label{color:#fff;background-color:var(--yl-discount)}
html body :is(h1,h2,h3,h4,h5,h6,.wd-table-title){color:var(--yl-fg)}
/* inline colors from Elementor kit / legacy token block need !important */
html body :is(.elementor-heading-title,.wd-toolbar-label,.wd-last,.woocommerce-breadcrumb a,.wd-breadcrumbs a){color:var(--yl-fg)!important}
html body .elementor-widget-container p,html body .elementor-widget-container a:not(.btn):not(.button):not(.elementor-button):not(.yl-sec__more){color:var(--yl-fg-2)}
html body span.onsale.product-label,html body .product-label.onsale{color:#fff!important;background-color:var(--yl-discount)!important}
/* shop category tiles: dark strip, tiles as cards */
html body .wd-page-title .wd-cat-wrap,html body .category-grid-item,html body .wd-nav-product-cat{background-color:var(--yl-card)!important}
html body .wd-page-title [class*="categories"]{background-color:transparent}
html body .wd-cat-content .wd-entities-title,html body .wd-cat-count{color:var(--yl-fg)!important}
html body .elementor-widget-container:not(.elementor-widget-container *){background-color:transparent}
html body .elementor-top-section .elementor-widget-container{background-color:transparent!important}
/* touch targets >= 40px */
@media (max-width:1023px){
.quantity .minus,.quantity .plus,.quantity input.qty{min-width:40px;min-height:40px}
.yl-sec__more{display:inline-flex;align-items:center;min-height:40px;padding:0 var(--yl-sp-2)}
.woocommerce-ordering select,select.orderby{min-height:44px}
.shop_table a.remove{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center}
.wd-breadcrumbs a,.woocommerce-breadcrumb a{display:inline-flex;align-items:center;min-height:32px}
}
/* ---- UX review fixes (2026-10-10) ---- */
/* F8 F9 buttons keep white text; demote "update cart" */
html body :is(.elementor-button,.elementor-button-text,a.checkout-button){color:#fff!important}
html body button[name=update_cart]{background:transparent!important;background-image:none!important;border:1px solid var(--yl-border)!important;color:var(--yl-fg)!important;box-shadow:none}
html body :is(.cart_totals .amount,.shop_table .product-price .amount){color:var(--yl-fg)}
/* F16 product page text */
html body :is(.meta-label,.title-text,.wd-accordion-title-text){color:var(--yl-fg)!important}
html body :is(.wd-term-name,.wd-term-sep){color:var(--yl-fg-2)!important}
/* F18 notices / empty search */
html body .woocommerce-info{background:var(--yl-card)!important;color:var(--yl-fg)!important;border:1px solid var(--yl-border)}
/* F19 shop sidebar */
html body .elementor-icon-box-title :is(span,a){color:var(--yl-fg)!important}
html body .widget_product_categories .current-cat>a{color:var(--yl-violet-2)!important;font-weight:700}
html body :is(.wd-filter-list,.widget_layered_nav,.wd-widget-stock-status) a::before{border-color:var(--yl-border)!important}
html body :is(.wd-sidebar .widget,.sidebar-widget){background:var(--yl-card);border:1px solid var(--yl-border);border-radius:var(--yl-r-lg);padding:var(--yl-sp-4)}
/* F20 tap targets */
html body .quantity :is(input.minus,input.plus){width:40px!important;min-width:40px;min-height:40px}
html body .wd-product .wd-wishlist-btn a{min-width:40px;min-height:40px}
/* F2 dark variants box (variants.css hard-codes white) */
html body form.yl-card{--yl-p:var(--yl-violet);--yl-p-dark:#5f38ee;--yl-p-soft:rgb(112 71 255/.14);--yl-ink:var(--yl-fg);--yl-mut:var(--yl-fg-2);--yl-line:var(--yl-border);background:var(--yl-card)!important;box-shadow:none}
html body form.yl-card :is(.yl-pill,.quantity,.yl-ack input){background:var(--yl-bg-2)!important;color:var(--yl-fg)}
html body form.yl-card .yl-pill:disabled{background:var(--yl-bg)!important;border-color:var(--yl-border);color:#5B6B8A}
html body .yl-price{background:var(--yl-elev)!important;border-color:var(--yl-border)}
html body .yl-badge{background:rgb(112 71 255/.2);color:var(--yl-violet-2)}
html body .yl-error{background:rgb(255 77 97/.12)!important;border-color:rgb(255 77 97/.5)!important;color:#FF9AA5!important}
html body .yl-warning{background:rgb(245 158 11/.12)!important;border-color:rgb(245 158 11/.5)!important;color:#FCD34D!important}
html body .yl-info{background:rgb(40 168 255/.12)!important;border-color:rgb(40 168 255/.5)!important;color:#7CC8FF!important}
html body form.yl-card .single_add_to_cart_button.yl-locked{background:var(--yl-elev)!important;background-image:none!important;color:var(--yl-fg-2)!important}
html body .yl-hint{background:rgb(112 71 255/.12);color:var(--yl-fg-2)}
html body form.yl-card :is(label,.yl-ack,.yl-label){color:var(--yl-fg)}
