/* Universal Elementor Theme Manager v3.0.0 — frontend mapping layer */

/* ---------- GLOBAL ---------- */
body.uetm-enabled.uetm-scope-global,
body.uetm-enabled.uetm-scope-elementor .elementor,
body.uetm-enabled.uetm-scope-woocommerce.woocommerce,
body.uetm-enabled.uetm-scope-woocommerce.woocommerce-page{
  color:var(--uetm-text);
  font-family:var(--uetm-font);
  font-size:var(--uetm-body);
  font-weight:var(--uetm-w-body);
  line-height:var(--uetm-lh-body);
}
body.uetm-enabled.uetm-scope-global{background:var(--uetm-bg)}
body.uetm-enabled a{color:var(--uetm-link)}
body.uetm-enabled a:hover{color:var(--uetm-primary-hover)}
body.uetm-enabled h1,body.uetm-enabled h2,body.uetm-enabled h3,body.uetm-enabled h4,
body.uetm-enabled .elementor-heading-title,body.uetm-enabled .e-heading{color:var(--uetm-text);font-weight:var(--uetm-w-heading);line-height:var(--uetm-lh-heading)}
body.uetm-enabled h1,body.uetm-enabled h1.elementor-heading-title{font-size:var(--uetm-h1)}
body.uetm-enabled h2,body.uetm-enabled h2.elementor-heading-title{font-size:var(--uetm-h2)}
body.uetm-enabled h3,body.uetm-enabled h3.elementor-heading-title{font-size:var(--uetm-h3)}
body.uetm-enabled h4,body.uetm-enabled h4.elementor-heading-title{font-size:var(--uetm-h4)}

/* Elementor legacy + V4/Atomic container widths */
body.uetm-enabled.uetm-elementor .elementor-section.elementor-section-boxed>.elementor-container{max-width:var(--uetm-container)!important}
body.uetm-enabled.uetm-elementor .e-con.e-con-boxed>.e-con-inner{max-width:var(--uetm-container)!important}
body.uetm-enabled.uetm-elementor .elementor{--container-max-width:var(--uetm-container)}

/* Optional reusable surfaces still supported, but no longer required */
body.uetm-enabled .ueds-surface,body.uetm-enabled .uetm-surface{background:var(--uetm-surface)!important;border-color:var(--uetm-border)!important}
body.uetm-enabled .ueds-surface-2,body.uetm-enabled .uetm-surface-2{background:var(--uetm-surface-2)!important;border-color:var(--uetm-border)!important}

/* ---------- BUTTONS ---------- */
body.uetm-enabled .elementor-button,
body.uetm-enabled .e-button,
body.uetm-enabled button.button,
body.uetm-enabled a.button,
body.uetm-enabled input[type=submit],
body.uetm-enabled .wp-element-button{
  min-height:var(--uetm-btn-h);
  padding-inline:var(--uetm-btn-px);
  border-radius:var(--uetm-btn-r);
  font-weight:var(--uetm-w-button);
  transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
body.uetm-enabled .elementor-button:not(.uetm-secondary):not(.ueds-btn-secondary),
body.uetm-enabled .e-button:not(.uetm-secondary):not(.ueds-btn-secondary),
body.uetm-enabled .woocommerce a.button:not(.alt),
body.uetm-enabled .woocommerce button.button:not(.alt),
body.uetm-enabled .woocommerce input.button:not(.alt){background:var(--uetm-btn-primary-bg);color:var(--uetm-btn-primary-text);border-color:transparent}
body.uetm-enabled .elementor-button:not(.uetm-secondary):not(.ueds-btn-secondary):hover,
body.uetm-enabled .e-button:not(.uetm-secondary):not(.ueds-btn-secondary):hover,
body.uetm-enabled .woocommerce a.button:not(.alt):hover,
body.uetm-enabled .woocommerce button.button:not(.alt):hover{background:var(--uetm-btn-primary-bg-hover);color:var(--uetm-btn-primary-text)}
body.uetm-enabled .uetm-secondary,body.uetm-enabled .ueds-btn-secondary,
body.uetm-enabled .uetm-secondary .elementor-button,body.uetm-enabled .ueds-btn-secondary .elementor-button{
  background:var(--uetm-btn-secondary-bg)!important;color:var(--uetm-btn-secondary-text)!important;border:1px solid var(--uetm-btn-border)!important
}
body.uetm-enabled .uetm-secondary:hover,body.uetm-enabled .ueds-btn-secondary:hover,
body.uetm-enabled .uetm-secondary .elementor-button:hover,body.uetm-enabled .ueds-btn-secondary .elementor-button:hover{background:var(--uetm-btn-secondary-bg-hover)!important;border-color:var(--uetm-primary)!important}

/* ---------- FORMS ---------- */
body.uetm-enabled input[type=text],body.uetm-enabled input[type=email],body.uetm-enabled input[type=tel],body.uetm-enabled input[type=number],body.uetm-enabled input[type=password],body.uetm-enabled input[type=search],body.uetm-enabled input[type=url],body.uetm-enabled select,body.uetm-enabled textarea{
  min-height:var(--uetm-input-h);background:var(--uetm-input-bg)!important;border:1px solid var(--uetm-input-border)!important;color:var(--uetm-input-text)!important;border-radius:var(--uetm-input-r)!important;outline:none;box-shadow:none
}
body.uetm-enabled input:focus,body.uetm-enabled select:focus,body.uetm-enabled textarea:focus{border-color:var(--uetm-input-border-focus)!important;box-shadow:0 0 0 1px var(--uetm-input-border-focus)!important}
body.uetm-enabled input::placeholder,body.uetm-enabled textarea::placeholder{color:var(--uetm-input-placeholder)!important}

/* ---------- HEADER ---------- */
body.uetm-enabled.uetm-header .elementor-location-header,body.uetm-enabled.uetm-header header.elementor-location-header,body.uetm-enabled.uetm-header .site-header{color:var(--uetm-header-text);border-bottom:1px solid var(--uetm-header-border)}
body.uetm-enabled.uetm-header.uetm-sticky-header .elementor-location-header,body.uetm-enabled.uetm-header.uetm-sticky-header header.elementor-location-header,body.uetm-enabled.uetm-header.uetm-sticky-header .site-header{position:sticky;top:0;z-index:9999;background:var(--uetm-header-sticky-bg)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
body.uetm-enabled.uetm-header .elementor-location-header a,body.uetm-enabled.uetm-header .site-header a{color:var(--uetm-header-text)}
body.uetm-enabled.uetm-header .elementor-location-header a:hover,body.uetm-enabled.uetm-header .elementor-location-header .elementor-item-active,body.uetm-enabled.uetm-header .site-header a:hover{color:var(--uetm-header-hover)!important}
body.uetm-enabled.uetm-header .elementor-location-header .elementor-nav-menu--main .elementor-item,body.uetm-enabled.uetm-header .site-header .menu a{font-size:var(--uetm-menu-size)}
body.uetm-enabled.uetm-header .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu{gap:var(--uetm-menu-gap)}
body.uetm-enabled.uetm-header .elementor-location-header .elementor-menu-cart__toggle_button{color:var(--uetm-header-text)!important}

/* ---------- FOOTER ---------- */
body.uetm-enabled.uetm-footer .elementor-location-footer,body.uetm-enabled.uetm-footer footer.elementor-location-footer,body.uetm-enabled.uetm-footer .site-footer{background:var(--uetm-footer-bg)!important;color:var(--uetm-footer-text)!important;border-top:1px solid var(--uetm-footer-border)}
body.uetm-enabled.uetm-footer .elementor-location-footer h1,body.uetm-enabled.uetm-footer .elementor-location-footer h2,body.uetm-enabled.uetm-footer .elementor-location-footer h3,body.uetm-enabled.uetm-footer .elementor-location-footer h4,body.uetm-enabled.uetm-footer .site-footer h1,body.uetm-enabled.uetm-footer .site-footer h2,body.uetm-enabled.uetm-footer .site-footer h3,body.uetm-enabled.uetm-footer .site-footer h4{color:var(--uetm-footer-heading)!important}
body.uetm-enabled.uetm-footer .elementor-location-footer a,body.uetm-enabled.uetm-footer .site-footer a{color:var(--uetm-footer-text)}
body.uetm-enabled.uetm-footer .elementor-location-footer a:hover,body.uetm-enabled.uetm-footer .site-footer a:hover{color:var(--uetm-footer-link-hover)!important}

/* ---------- SHOP / ARCHIVE ---------- */
body.uetm-enabled.uetm-woocommerce.uetm-shop.woocommerce-shop .site-main,
body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_cat .site-main,
body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_tag .site-main,
body.uetm-enabled.uetm-woocommerce.uetm-shop.post-type-archive-product .site-main{max-width:var(--uetm-archive-width);margin-inline:auto}
body.uetm-enabled.uetm-woocommerce.uetm-shop.woocommerce-shop ul.products,
body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_cat ul.products,
body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_tag ul.products,
body.uetm-enabled.uetm-woocommerce.uetm-shop.post-type-archive-product ul.products,
body.uetm-enabled.uetm-woocommerce.uetm-shop .elementor-widget-woocommerce-products ul.products,
body.uetm-enabled.uetm-woocommerce.uetm-shop .elementor-widget-wc-archive-products ul.products{
  display:grid!important;grid-template-columns:repeat(var(--uetm-cols),minmax(0,1fr));gap:var(--uetm-grid-gap)!important
}
body.uetm-enabled.uetm-woocommerce ul.products:before,body.uetm-enabled.uetm-woocommerce ul.products:after{display:none!important}
body.uetm-enabled.uetm-woocommerce.uetm-shop ul.products li.product{
  width:auto!important;float:none!important;margin:0!important;background:var(--uetm-card-bg)!important;border:1px solid var(--uetm-card-border)!important;border-radius:var(--uetm-card-r)!important;padding:var(--uetm-card-pad)!important;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease
}
body.uetm-enabled.uetm-woocommerce.uetm-shop ul.products li.product:hover{border-color:var(--uetm-card-hover-border)!important;transform:translateY(calc(var(--uetm-card-lift) * -1))}
body.uetm-enabled.uetm-woocommerce.uetm-shop ul.products li.product img{border-radius:var(--uetm-product-image-r)!important}
body.uetm-enabled.uetm-woocommerce.uetm-shop ul.products li.product .woocommerce-loop-product__title{color:var(--uetm-text)!important;font-size:var(--uetm-product-title-size)!important}
body.uetm-enabled.uetm-woocommerce.uetm-shop ul.products li.product .price{color:var(--uetm-wc-price)!important;font-size:var(--uetm-product-price-size)!important;font-weight:700}
body.uetm-enabled.uetm-woocommerce.uetm-shop .stock.in-stock{color:var(--uetm-wc-stock)!important}
body.uetm-enabled.uetm-woocommerce.uetm-shop .stock.out-of-stock{color:var(--uetm-wc-out)!important}
body.uetm-enabled.uetm-woocommerce.uetm-shop span.onsale{background:var(--uetm-wc-sale-bg)!important;color:var(--uetm-wc-sale-text)!important;border-radius:var(--uetm-r-sm)!important}
body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-shop-button-full ul.products li.product .button{width:100%;text-align:center}
body.uetm-enabled.uetm-woocommerce.uetm-shop .quick-view,body.uetm-enabled.uetm-woocommerce.uetm-shop .yith-wcqv-button,body.uetm-enabled.uetm-woocommerce.uetm-shop .woosq-btn{border-radius:var(--uetm-btn-r)!important}

/* ---------- SINGLE PRODUCT ---------- */
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .site-main{max-width:var(--uetm-single-width);margin-inline:auto}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product div.product{color:var(--uetm-text)}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .woocommerce-product-gallery__wrapper{background:var(--uetm-single-gallery-bg);border:1px solid var(--uetm-border);border-radius:var(--uetm-single-gallery-r);overflow:hidden}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .flex-control-thumbs li{background:var(--uetm-surface-2);border:1px solid var(--uetm-border);border-radius:var(--uetm-r-md);overflow:hidden}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .flex-control-thumbs li img{width:var(--uetm-single-thumb);height:var(--uetm-single-thumb);object-fit:contain}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .product_title{color:var(--uetm-text)!important;font-size:var(--uetm-single-title)!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product div.product p.price,body.uetm-enabled.uetm-woocommerce.uetm-single.single-product div.product span.price{color:var(--uetm-wc-price)!important;font-size:var(--uetm-single-price)!important;font-weight:700}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .woocommerce-product-details__short-description{color:var(--uetm-muted)}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product table.variations select{background:var(--uetm-input-bg)!important;border-color:var(--uetm-input-border)!important;color:var(--uetm-input-text)!important;border-radius:var(--uetm-input-r)!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .single_add_to_cart_button{background:var(--uetm-btn-primary-bg)!important;color:var(--uetm-btn-primary-text)!important;border-radius:var(--uetm-btn-r)!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .single_add_to_cart_button:hover{background:var(--uetm-btn-primary-bg-hover)!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .woocommerce-tabs{background:var(--uetm-single-tab-bg);border:1px solid var(--uetm-border);border-radius:var(--uetm-r-lg);overflow:hidden}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .woocommerce-tabs ul.tabs li a{color:var(--uetm-muted)!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--uetm-single-tab-active)!important}
body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .related ul.products{display:grid!important;grid-template-columns:repeat(var(--uetm-related-cols),minmax(0,1fr));gap:var(--uetm-grid-gap)!important}
/* Elementor Theme Builder automatic product columns, including V4 containers. */
@supports selector(:has(*)){
  body.uetm-enabled.uetm-elementor.uetm-single.single-product .e-con:has(> .elementor-widget-woocommerce-product-images){width:calc(var(--uetm-single-gallery-width) * 1%)!important;flex-basis:calc(var(--uetm-single-gallery-width) * 1%)!important}
  body.uetm-enabled.uetm-elementor.uetm-single.single-product .e-con:has(> .elementor-widget-woocommerce-product-title){width:calc(var(--uetm-single-info-width) * 1%)!important;flex-basis:calc(var(--uetm-single-info-width) * 1%)!important}
}

/* ---------- CART / CHECKOUT ---------- */
body.uetm-enabled.uetm-woocommerce.uetm-commerce .woocommerce-cart-form,
body.uetm-enabled.uetm-woocommerce.uetm-commerce .cart_totals,
body.uetm-enabled.uetm-woocommerce.uetm-commerce .woocommerce-checkout-review-order,
body.uetm-enabled.uetm-woocommerce.uetm-commerce .woocommerce-checkout-payment,
body.uetm-enabled.uetm-woocommerce.uetm-commerce .woocommerce-form-login,
body.uetm-enabled.uetm-woocommerce.uetm-commerce .woocommerce-form-coupon{
  background:var(--uetm-commerce-panel-bg);border:1px solid var(--uetm-commerce-panel-border);border-radius:var(--uetm-commerce-panel-r);padding:20px
}
body.uetm-enabled.uetm-woocommerce.uetm-commerce table.shop_table{border-color:var(--uetm-commerce-table-border)!important;border-radius:var(--uetm-r-md)!important;color:var(--uetm-text)}
body.uetm-enabled.uetm-woocommerce.uetm-commerce table.shop_table th,body.uetm-enabled.uetm-woocommerce.uetm-commerce table.shop_table td{border-color:var(--uetm-commerce-table-border)!important}
body.uetm-enabled.uetm-woocommerce.uetm-commerce #place_order,body.uetm-enabled.uetm-woocommerce.uetm-commerce .checkout-button{background:var(--uetm-btn-primary-bg)!important;color:var(--uetm-btn-primary-text)!important;border-radius:var(--uetm-btn-r)!important}

/* ---------- MY ACCOUNT ---------- */
body.uetm-enabled.uetm-woocommerce.uetm-account .woocommerce-MyAccount-navigation{background:var(--uetm-account-nav-bg);border:1px solid var(--uetm-border);border-radius:var(--uetm-r-lg);overflow:hidden}
body.uetm-enabled.uetm-woocommerce.uetm-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
body.uetm-enabled.uetm-woocommerce.uetm-account .woocommerce-MyAccount-navigation li a{display:block;padding:13px 16px;color:var(--uetm-text);border-bottom:1px solid var(--uetm-border)}
body.uetm-enabled.uetm-woocommerce.uetm-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--uetm-account-nav-active-bg);color:var(--uetm-account-nav-active-text)!important}
body.uetm-enabled.uetm-woocommerce.uetm-account .woocommerce-MyAccount-content{color:var(--uetm-text)}

/* ---------- TABLET ---------- */
@media(max-width:1024px){
  body.uetm-enabled.uetm-woocommerce.uetm-shop.woocommerce-shop ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_cat ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_tag ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop.post-type-archive-product ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop .elementor-widget-woocommerce-products ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop .elementor-widget-wc-archive-products ul.products{grid-template-columns:repeat(var(--uetm-cols-tablet),minmax(0,1fr))}
  body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .related ul.products{grid-template-columns:repeat(var(--uetm-related-cols-tablet),minmax(0,1fr))}
  body.uetm-enabled.uetm-scope-global .site-main,body.uetm-enabled.uetm-elementor .elementor{padding-left:var(--uetm-tablet-pad);padding-right:var(--uetm-tablet-pad)}
}

/* ---------- MOBILE ---------- */
@media(max-width:767px){
  body.uetm-enabled h1,body.uetm-enabled h1.elementor-heading-title{font-size:var(--uetm-h1-mobile)}
  body.uetm-enabled h2,body.uetm-enabled h2.elementor-heading-title{font-size:var(--uetm-h2-mobile)}
  body.uetm-enabled h3,body.uetm-enabled h3.elementor-heading-title{font-size:var(--uetm-h3-mobile)}
  body.uetm-enabled h4,body.uetm-enabled h4.elementor-heading-title{font-size:var(--uetm-h4-mobile)}
  body.uetm-enabled.uetm-scope-global .site-main,body.uetm-enabled.uetm-elementor .elementor{padding-left:var(--uetm-mobile-pad);padding-right:var(--uetm-mobile-pad)}
  body.uetm-enabled.uetm-header .elementor-location-header,body.uetm-enabled.uetm-header .site-header{min-height:var(--uetm-header-h-mobile)!important}
  body.uetm-enabled.uetm-header .elementor-location-header .custom-logo,body.uetm-enabled.uetm-header .elementor-location-header .elementor-widget-theme-site-logo img,body.uetm-enabled.uetm-header .site-header .custom-logo{max-width:var(--uetm-logo-w-mobile)!important}
  body.uetm-enabled.uetm-woocommerce.uetm-shop.woocommerce-shop ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_cat ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop.tax-product_tag ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop.post-type-archive-product ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop .elementor-widget-woocommerce-products ul.products,
  body.uetm-enabled.uetm-woocommerce.uetm-shop .elementor-widget-wc-archive-products ul.products{grid-template-columns:repeat(var(--uetm-cols-mobile),minmax(0,1fr));gap:10px!important}
  body.uetm-enabled.uetm-woocommerce.uetm-shop ul.products li.product{padding:10px!important}
  body.uetm-enabled.uetm-woocommerce.uetm-single.single-product .related ul.products{grid-template-columns:repeat(var(--uetm-related-cols-mobile),minmax(0,1fr));gap:10px!important}
  @supports selector(:has(*)){
    body.uetm-enabled.uetm-elementor.uetm-single.single-product .e-con:has(> .elementor-widget-woocommerce-product-images),
    body.uetm-enabled.uetm-elementor.uetm-single.single-product .e-con:has(> .elementor-widget-woocommerce-product-title){width:100%!important;flex-basis:100%!important}
  }
  body.uetm-enabled.uetm-woocommerce.uetm-single.uetm-single-cart-full-mobile.single-product .single_add_to_cart_button{width:100%}
}


/* ---------- PRODUCT ACTIONS / QUICK VIEW / QUANTITY ---------- */
body.uetm-enabled.uetm-product-actions .uetm-quick-view,
body.uetm-enabled.uetm-product-actions .woosw-btn,
body.uetm-enabled.uetm-product-actions .woosc-btn,
body.uetm-enabled.uetm-product-actions .yith-wcwl-add-to-wishlist a,
body.uetm-enabled.uetm-product-actions a.compare.button{
  min-height:var(--uetm-action-size)!important;
  border:1px solid var(--uetm-border)!important;
  border-radius:var(--uetm-action-r)!important;
  background:var(--uetm-action-bg)!important;
  color:var(--uetm-action-text)!important;
  font-size:13px!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:7px;
  box-shadow:none!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
body.uetm-enabled.uetm-product-actions .uetm-quick-view{
  width:100%;
  margin-top:8px;
  padding:0 12px;
  cursor:pointer;
}
body.uetm-enabled.uetm-product-actions .uetm-quick-view svg{
  width:var(--uetm-action-icon);
  height:var(--uetm-action-icon);
}
body.uetm-enabled.uetm-product-actions .uetm-quick-view:hover,
body.uetm-enabled.uetm-product-actions .woosw-btn:hover,
body.uetm-enabled.uetm-product-actions .woosc-btn:hover,
body.uetm-enabled.uetm-product-actions .yith-wcwl-add-to-wishlist a:hover,
body.uetm-enabled.uetm-product-actions a.compare.button:hover{
  border-color:var(--uetm-action-hover-bg)!important;
  background:var(--uetm-action-hover-bg)!important;
  color:var(--uetm-action-hover-text)!important;
  transform:translateY(-1px);
}
body.uetm-enabled.uetm-wishlist-off .woosw-btn,
body.uetm-enabled.uetm-wishlist-off .woosw-btn-has-icon,
body.uetm-enabled.uetm-wishlist-off .yith-wcwl-add-to-wishlist{
  display:none!important;
}
body.uetm-enabled.uetm-compare-off .woosc-btn,
body.uetm-enabled.uetm-compare-off a.compare.button{
  display:none!important;
}

/* Quantity stepper */
body.uetm-enabled.uetm-qty-stepper-enabled .quantity.uetm-stepper-ready{
  display:inline-flex!important;
  flex-direction:row!important;
  direction:ltr!important;
  align-items:stretch;
  padding:0!important;
  overflow:hidden;
  min-height:var(--uetm-input-h);
  border:1px solid var(--uetm-input-border)!important;
  border-radius:var(--uetm-input-r)!important;
  background:var(--uetm-input-bg)!important;
}
body.uetm-enabled.uetm-qty-stepper-enabled .quantity.uetm-stepper-ready input.qty{
  order:2;
  width:52px!important;
  min-width:52px!important;
  border:0!important;
  border-left:1px solid var(--uetm-input-border)!important;
  border-right:1px solid var(--uetm-input-border)!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--uetm-input-text)!important;
  text-align:center!important;
  direction:ltr!important;
  appearance:textfield;
  -moz-appearance:textfield;
}
body.uetm-enabled.uetm-qty-stepper-enabled .quantity.uetm-stepper-ready input.qty::-webkit-inner-spin-button,
body.uetm-enabled.uetm-qty-stepper-enabled .quantity.uetm-stepper-ready input.qty::-webkit-outer-spin-button{
  -webkit-appearance:none;
  margin:0;
}
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-minus,
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-plus{
  width:42px;
  min-width:42px;
  min-height:var(--uetm-input-h);
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:var(--uetm-surface-2)!important;
  color:var(--uetm-text)!important;
  font-size:20px!important;
  line-height:1!important;
  font-weight:500!important;
  cursor:pointer;
  box-shadow:none!important;
}
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-minus{order:1}
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-plus{order:3}
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-minus:hover,
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-plus:hover{
  background:var(--uetm-primary)!important;
  color:var(--uetm-btn-primary-text)!important;
}

/* Quick View modal */
body.uetm-modal-open{overflow:hidden!important}
.uetm-qv-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease,visibility .18s ease;
}
.uetm-qv-modal.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.uetm-qv-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.76);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.uetm-qv-dialog{
  position:relative;
  z-index:1;
  width:min(var(--uetm-qv-width),calc(100vw - 48px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  direction:rtl;
  color:var(--uetm-text);
  background:var(--uetm-surface);
  border:1px solid var(--uetm-border);
  border-radius:var(--uetm-qv-r);
  box-shadow:0 24px 80px rgba(0,0,0,.45);
}
.uetm-qv-close{
  position:sticky;
  top:12px;
  float:left;
  z-index:20;
  width:38px;
  height:38px;
  margin:12px 12px 0;
  padding:0!important;
  border:1px solid var(--uetm-border)!important;
  border-radius:50%!important;
  background:var(--uetm-surface-2)!important;
  color:var(--uetm-text)!important;
  font-size:24px!important;
  line-height:34px!important;
  cursor:pointer;
}
.uetm-qv-loader{
  min-height:360px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:var(--uetm-muted);
}
.uetm-qv-loader span{
  width:34px;
  height:34px;
  border:3px solid var(--uetm-border);
  border-top-color:var(--uetm-primary);
  border-radius:50%;
  animation:uetm-spin .75s linear infinite;
}
@keyframes uetm-spin{to{transform:rotate(360deg)}}
.uetm-qv-content{padding:10px 26px 28px}
.uetm-qv-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:30px;
  align-items:center;
}
.uetm-qv-gallery .woocommerce-product-gallery__wrapper{
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--uetm-single-gallery-bg);
  border:1px solid var(--uetm-border);
  border-radius:var(--uetm-single-gallery-r);
  overflow:hidden;
}
.uetm-qv-gallery .woocommerce-product-gallery__image img{
  max-height:400px!important;
  width:auto!important;
  max-width:90%!important;
  object-fit:contain;
  margin:auto;
}
.uetm-qv-gallery .flex-control-thumbs{
  display:flex!important;
  gap:8px;
  margin-top:10px!important;
}
.uetm-qv-summary .product_title{
  color:var(--uetm-text)!important;
  font-size:calc(var(--uetm-single-title) * .82)!important;
  margin:0 0 8px!important;
}
.uetm-qv-summary .price{
  color:var(--uetm-wc-price)!important;
  font-size:calc(var(--uetm-single-price) * .86)!important;
  font-weight:700!important;
}
.uetm-qv-summary .woocommerce-product-details__short-description{
  color:var(--uetm-muted);
  line-height:var(--uetm-lh-body);
}
.uetm-qv-summary table.variations select{
  width:100%;
  min-height:var(--uetm-input-h);
  background:var(--uetm-input-bg)!important;
  color:var(--uetm-input-text)!important;
  border:1px solid var(--uetm-input-border)!important;
  border-radius:var(--uetm-input-r)!important;
}
.uetm-qv-summary .single_add_to_cart_button{
  background:var(--uetm-btn-primary-bg)!important;
  color:var(--uetm-btn-primary-text)!important;
  border-radius:var(--uetm-btn-r)!important;
}
.uetm-qv-open-product{
  display:inline-flex;
  margin-top:14px;
  color:var(--uetm-primary)!important;
  font-size:13px;
}
.uetm-qv-error{
  padding:60px 20px;
  text-align:center;
  color:var(--uetm-danger);
}

@media(max-width:767px){
  .uetm-qv-modal{padding:10px}
  .uetm-qv-dialog{
    width:100%;
    max-height:calc(100vh - 20px);
  }
  .uetm-qv-content{padding:4px 14px 20px}
  .uetm-qv-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .uetm-qv-gallery .woocommerce-product-gallery__wrapper{min-height:310px}
  .uetm-qv-gallery .woocommerce-product-gallery__image img{max-height:285px!important}
  body.uetm-enabled.uetm-product-actions .uetm-quick-view span{display:none}
  body.uetm-enabled.uetm-product-actions .uetm-quick-view{
    width:var(--uetm-action-size);
    min-width:var(--uetm-action-size);
    padding:0;
  }
}


/* ---------- NATIVE VARIATION SWATCHES ---------- */
body.uetm-enabled.uetm-variation-swatches-enabled .uetm-native-select-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.uetm-enabled .uetm-native-swatches{
  display:flex;
  flex-wrap:wrap;
  gap:var(--uetm-swatch-gap);
  margin:6px 0 10px;
  direction:rtl;
}
body.uetm-enabled .uetm-native-swatch{
  position:relative;
  width:var(--uetm-swatch-size);
  min-width:var(--uetm-swatch-size);
  height:var(--uetm-swatch-size);
  min-height:var(--uetm-swatch-size);
  padding:5px!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  overflow:visible;
  cursor:pointer;
  background:var(--uetm-swatch-bg)!important;
  color:var(--uetm-swatch-text)!important;
  border:1px solid var(--uetm-swatch-border)!important;
  border-radius:var(--uetm-swatch-r)!important;
  box-shadow:none!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,opacity .16s ease;
}
body.uetm-enabled .uetm-native-swatch:hover:not(.is-disabled){
  transform:translateY(-1px);
  border-color:var(--uetm-primary)!important;
}
body.uetm-enabled .uetm-native-swatch.is-selected{
  border-color:var(--uetm-swatch-active-border)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--uetm-swatch-active-border) 30%,transparent)!important;
}
body.uetm-enabled .uetm-native-swatch.is-disabled{
  opacity:calc(var(--uetm-swatch-disabled-opacity) / 100);
  cursor:not-allowed;
  filter:grayscale(.75);
}
body.uetm-enabled .uetm-native-swatch.has-image{
  padding:3px!important;
  background:var(--uetm-surface-2)!important;
}
body.uetm-enabled .uetm-native-swatch.has-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  border-radius:calc(var(--uetm-swatch-r) - 4px);
}
body.uetm-enabled .uetm-native-swatch.has-text{
  width:auto;
  min-width:var(--uetm-swatch-size);
  padding-inline:12px!important;
}
body.uetm-enabled .uetm-native-swatch .uetm-swatch-label{
  font-size:12px;
  font-weight:600;
  line-height:1.25;
  white-space:nowrap;
}
body.uetm-enabled .uetm-native-swatch .sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Tooltip */
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch::after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:calc(100% + 8px);
  z-index:50;
  transform:translate(-50%,4px);
  min-width:max-content;
  max-width:220px;
  padding:7px 9px;
  border:1px solid var(--uetm-border);
  border-radius:7px;
  background:#090B0D;
  color:#F4F4F4;
  font-size:11px;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
  box-shadow:0 8px 24px rgba(0,0,0,.3);
}
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:100%;
  z-index:51;
  transform:translateX(-50%);
  border:5px solid transparent;
  border-top-color:#090B0D;
  opacity:0;
  visibility:hidden;
  transition:opacity .14s ease,visibility .14s ease;
}
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch:hover::after,
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch:focus-visible::after,
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch:hover::before,
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch:focus-visible::before{
  opacity:1;
  visibility:visible;
}
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch:hover::after,
body.uetm-enabled.uetm-swatch-tooltip-on .uetm-native-swatch:focus-visible::after{
  transform:translate(-50%,0);
}

@media(max-width:767px){
  body.uetm-enabled .uetm-native-swatches{
    gap:max(6px,calc(var(--uetm-swatch-gap) - 2px));
  }
  body.uetm-enabled .uetm-native-swatch{
    --mobile-swatch-size:min(var(--uetm-swatch-size),50px);
    width:var(--mobile-swatch-size);
    min-width:var(--mobile-swatch-size);
    height:var(--mobile-swatch-size);
    min-height:var(--mobile-swatch-size);
  }
  body.uetm-enabled .uetm-native-swatch.has-text{
    width:auto;
    padding-inline:10px!important;
  }
}


/* ---------- QUANTITY FIELD LABEL ---------- */
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-field{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  direction:rtl;
  margin:10px 0;
}
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-field .uetm-qty-label{
  flex:0 0 auto;
  color:var(--uetm-text);
  font-size:var(--uetm-body);
  font-weight:var(--uetm-w-button);
  line-height:1.4;
  white-space:nowrap;
}
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-field .quantity.uetm-stepper-ready{
  margin:0!important;
  flex:0 0 auto;
}

/* Physical control order is always:
   LEFT = minus, CENTER = number, RIGHT = plus */
body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-field .quantity.uetm-stepper-ready{
  direction:ltr!important;
  flex-direction:row!important;
}

@media(max-width:767px){
  body.uetm-enabled.uetm-qty-stepper-enabled .uetm-qty-field{
    gap:10px;
    flex-wrap:wrap;
  }
}


/* ---------- QUICK VIEW GALLERY LAYOUT FIX v3.6.1 ---------- */
/*
 * WooCommerce's default single-product stylesheet gives div.images/div.summary
 * their own widths/floats and FlexSlider creates thumbnail navigation.
 * Inside UETM Quick View we use our own CSS grid, so those defaults must be reset.
 */
#uetm-qv-modal .uetm-qv-product{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
#uetm-qv-modal .uetm-qv-product::before,
#uetm-qv-modal .uetm-qv-product::after{
  display:none!important;
}
#uetm-qv-modal .uetm-qv-gallery,
#uetm-qv-modal .uetm-qv-summary{
  width:auto!important;
  max-width:none!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
}
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery{
  width:100%!important;
  max-width:100%!important;
  float:none!important;
  margin:0!important;
  position:relative;
}
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__wrapper{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  overflow:hidden!important;
}

/* Quick View intentionally shows ONE active image only.
   Variation selection replaces this image, so gallery thumbnails are unnecessary. */
#uetm-qv-modal .uetm-qv-gallery .flex-control-nav,
#uetm-qv-modal .uetm-qv-gallery .flex-control-thumbs,
#uetm-qv-modal .uetm-qv-gallery ol.flex-control-nav,
#uetm-qv-modal .uetm-qv-gallery ol.flex-control-thumbs{
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  visibility:hidden!important;
}

/* Prevent hidden/secondary FlexSlider slides from leaking beside the active image. */
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__wrapper{
  display:block!important;
}
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__image{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  float:none!important;
  text-align:center;
}
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__image:not(:first-child){
  display:none!important;
}
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__image:first-child{
  display:flex!important;
  align-items:center;
  justify-content:center;
}

/* The first slide is always the visual target; UETM swaps its image when a variation changes. */
#uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__image:first-child a{
  width:100%!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
}

/* Remove horizontal overflow produced by Woo/FlexSlider inline dimensions. */
#uetm-qv-modal,
#uetm-qv-modal .uetm-qv-dialog,
#uetm-qv-modal .uetm-qv-content,
#uetm-qv-modal .uetm-qv-grid,
#uetm-qv-modal .uetm-qv-gallery,
#uetm-qv-modal .uetm-qv-summary{
  min-width:0!important;
}
#uetm-qv-modal .uetm-qv-dialog{
  overflow-x:hidden!important;
}
#uetm-qv-modal .uetm-qv-content{
  overflow-x:hidden!important;
}

@media(max-width:767px){
  #uetm-qv-modal .uetm-qv-gallery .woocommerce-product-gallery__wrapper{
    min-height:300px!important;
  }
}


/* ---------- NATIVE ARCHIVE FILTERS v3.7 ---------- */
body.uetm-enabled .uetm-archive-filters{
  position:relative;
  z-index:40;
  width:100%;
  max-width:var(--uetm-archive-width);
  margin:0 auto 18px;
  direction:rtl;
}
body.uetm-enabled .uetm-filter-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
body.uetm-enabled .uetm-filter-trigger{
  position:relative;
  min-height:var(--uetm-btn-h);
  padding:0 var(--uetm-btn-px)!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:9px;
  cursor:pointer;
  font-family:var(--uetm-font);
  font-size:var(--uetm-body);
  font-weight:var(--uetm-w-button);
  color:var(--uetm-btn-secondary-text)!important;
  background:var(--uetm-btn-secondary-bg)!important;
  border:1px solid var(--uetm-btn-border)!important;
  border-radius:var(--uetm-filter-btn-r)!important;
  box-shadow:none!important;
}
body.uetm-enabled .uetm-filter-trigger:hover,
body.uetm-enabled .uetm-filter-trigger.is-active,
body.uetm-enabled .uetm-archive-filters.is-open .uetm-filter-trigger[aria-expanded="true"]{
  color:var(--uetm-btn-primary-text)!important;
  background:var(--uetm-primary)!important;
  border-color:var(--uetm-primary)!important;
}
body.uetm-enabled .uetm-filter-icon{font-size:18px;line-height:1}
body.uetm-enabled .uetm-filter-count{
  min-width:20px;
  height:20px;
  padding:0 5px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--uetm-btn-primary-text);
  color:var(--uetm-primary);
  font-size:11px;
}

body.uetm-enabled .uetm-filter-popover{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:100;
  width:min(var(--uetm-filter-panel-width),calc(100vw - 24px));
  padding:18px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-4px);
  background:var(--uetm-surface);
  border:1px solid var(--uetm-border);
  border-radius:var(--uetm-filter-panel-r);
  box-shadow:0 20px 55px rgba(0,0,0,.38);
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
body.uetm-enabled .uetm-archive-filters.is-open .uetm-filter-popover{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}
body.uetm-enabled .uetm-filter-form{
  display:flex;
  flex-direction:column;
  gap:18px;
}
body.uetm-enabled .uetm-filter-section{
  display:block;
}
body.uetm-enabled .uetm-archive-filters[data-mode="brand"] .uetm-filter-section[data-uetm-filter-section="price"],
body.uetm-enabled .uetm-archive-filters[data-mode="price"] .uetm-filter-section[data-uetm-filter-section="brand"]{
  display:none;
}
body.uetm-enabled .uetm-filter-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
body.uetm-enabled .uetm-filter-section-head strong{
  color:var(--uetm-text);
  font-size:15px;
}
body.uetm-enabled .uetm-filter-section-head small{
  color:var(--uetm-muted);
  font-size:11px;
}

body.uetm-enabled .uetm-brand-options{
  max-height:270px;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding-left:3px;
}
body.uetm-enabled .uetm-brand-option{
  min-height:42px;
  padding:8px 9px;
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  cursor:pointer;
  border-radius:8px;
  color:var(--uetm-text);
}
body.uetm-enabled .uetm-brand-option:hover{background:var(--uetm-surface-2)}
body.uetm-enabled .uetm-brand-option input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.uetm-enabled .uetm-brand-option .uetm-check{
  width:18px;
  height:18px;
  display:block;
  position:relative;
  border:1px solid var(--uetm-input-border);
  border-radius:5px;
  background:var(--uetm-input-bg);
}
body.uetm-enabled .uetm-brand-option input:checked + .uetm-check{
  background:var(--uetm-primary);
  border-color:var(--uetm-primary);
}
body.uetm-enabled .uetm-brand-option input:checked + .uetm-check::after{
  content:"";
  position:absolute;
  width:8px;
  height:4px;
  top:4px;
  left:4px;
  border-left:2px solid var(--uetm-btn-primary-text);
  border-bottom:2px solid var(--uetm-btn-primary-text);
  transform:rotate(-45deg);
}
body.uetm-enabled .uetm-brand-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.uetm-enabled .uetm-brand-option small{color:var(--uetm-muted)}

body.uetm-enabled .uetm-price-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:end;
  gap:10px;
}
body.uetm-enabled .uetm-price-fields label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--uetm-muted);
  font-size:12px;
}
body.uetm-enabled .uetm-price-fields input{
  width:100%;
  min-height:var(--uetm-input-h);
  padding:0 10px!important;
  background:var(--uetm-input-bg)!important;
  color:var(--uetm-input-text)!important;
  border:1px solid var(--uetm-input-border)!important;
  border-radius:var(--uetm-input-r)!important;
  direction:ltr;
}
body.uetm-enabled .uetm-price-separator{
  min-height:var(--uetm-input-h);
  display:flex;
  align-items:center;
  color:var(--uetm-muted);
}
body.uetm-enabled .uetm-price-hint{
  display:flex;
  justify-content:space-between;
  gap:15px;
  margin-top:8px;
  color:var(--uetm-muted);
  font-size:11px;
}

body.uetm-enabled .uetm-filter-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:14px;
  border-top:1px solid var(--uetm-border);
}
body.uetm-enabled .uetm-filter-reset{
  min-height:42px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  color:var(--uetm-muted)!important;
}
body.uetm-enabled .uetm-filter-reset:hover{color:var(--uetm-text)!important}
body.uetm-enabled .uetm-filter-apply{
  min-height:42px!important;
  padding:0 18px!important;
  background:var(--uetm-primary)!important;
  color:var(--uetm-btn-primary-text)!important;
  border:0!important;
  border-radius:var(--uetm-filter-btn-r)!important;
  cursor:pointer;
}

/* Shortcode widget should not inherit Elementor button text HTML or force widths. */
body.uetm-enabled .elementor-widget-shortcode .uetm-archive-filters button::before,
body.uetm-enabled .elementor-widget-shortcode .uetm-archive-filters button::after{
  content:none!important;
}

@media(max-width:767px){
  body.uetm-enabled .uetm-archive-filters{margin-bottom:14px}
  body.uetm-enabled .uetm-filter-buttons{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:2px;
    scrollbar-width:none;
  }
  body.uetm-enabled .uetm-filter-buttons::-webkit-scrollbar{display:none}
  body.uetm-enabled .uetm-filter-trigger{
    flex:0 0 auto;
    min-height:42px;
    padding:0 14px!important;
  }
  body.uetm-enabled .uetm-filter-popover{
    position:fixed;
    top:auto;
    right:10px;
    bottom:10px;
    left:10px;
    width:auto;
    max-height:min(76vh,650px);
    overflow:auto;
    border-radius:16px;
  }
}


/* ---------- UETM v4 Dynamic Filter Builder Controls ---------- */
body.uetm-enabled .uetm-filter-option-grid{
  display:flex;
  flex-direction:column;
  gap:5px;
  max-height:300px;
  overflow:auto;
}
body.uetm-enabled .uetm-filter-option{
  min-height:42px;
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:8px 9px;
  border-radius:8px;
  color:var(--uetm-text);
  cursor:pointer;
}
body.uetm-enabled .uetm-filter-option:hover{background:var(--uetm-surface-2)}
body.uetm-enabled .uetm-filter-option input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.uetm-enabled .uetm-filter-option-mark{
  width:18px;
  height:18px;
  position:relative;
  display:block;
  border:1px solid var(--uetm-input-border);
  border-radius:5px;
  background:var(--uetm-input-bg);
}
body.uetm-enabled .uetm-filter-option input[type=radio] + .uetm-filter-option-mark{border-radius:50%}
body.uetm-enabled .uetm-filter-option input:checked + .uetm-filter-option-mark{
  background:var(--uetm-primary);
  border-color:var(--uetm-primary);
}
body.uetm-enabled .uetm-filter-option input[type=checkbox]:checked + .uetm-filter-option-mark::after{
  content:"";
  position:absolute;
  width:8px;
  height:4px;
  top:4px;
  left:4px;
  border-left:2px solid var(--uetm-btn-primary-text);
  border-bottom:2px solid var(--uetm-btn-primary-text);
  transform:rotate(-45deg);
}
body.uetm-enabled .uetm-filter-option input[type=radio]:checked + .uetm-filter-option-mark::after{
  content:"";
  position:absolute;
  width:8px;
  height:8px;
  top:4px;
  left:4px;
  border-radius:50%;
  background:var(--uetm-btn-primary-text);
}
body.uetm-enabled .uetm-filter-option small{color:var(--uetm-muted)}
body.uetm-enabled .uetm-filter-option-grid.is-buttons{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  max-height:none;
  overflow:visible;
  gap:8px;
}
body.uetm-enabled .uetm-filter-option-grid.is-buttons .uetm-filter-option{
  min-height:40px;
  display:inline-flex;
  width:auto;
  grid-template-columns:none;
  padding:0 13px;
  border:1px solid var(--uetm-input-border);
  border-radius:var(--uetm-input-r);
  background:var(--uetm-surface-2);
}
body.uetm-enabled .uetm-filter-option-grid.is-buttons .uetm-filter-option-mark{display:none}
body.uetm-enabled .uetm-filter-option-grid.is-buttons .uetm-filter-option:has(input:checked){
  border-color:var(--uetm-primary);
  color:var(--uetm-primary-hover);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--uetm-primary) 35%,transparent);
}
body.uetm-enabled .uetm-filter-option-grid.is-rating .uetm-filter-option-label{
  color:var(--uetm-primary-hover);
  letter-spacing:1px;
}
body.uetm-enabled .uetm-filter-select{
  width:100%;
  min-height:var(--uetm-input-h);
  padding:0 11px;
  color:var(--uetm-input-text)!important;
  background:var(--uetm-input-bg)!important;
  border:1px solid var(--uetm-input-border)!important;
  border-radius:var(--uetm-input-r)!important;
}
body.uetm-enabled .uetm-filter-select[multiple]{
  min-height:160px;
  padding:8px;
}
body.uetm-enabled .uetm-filter-toggle-option{
  min-height:46px;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  color:var(--uetm-text);
}
body.uetm-enabled .uetm-filter-toggle-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
body.uetm-enabled .uetm-toggle-ui{
  width:42px;
  height:24px;
  position:relative;
  border:1px solid var(--uetm-input-border);
  border-radius:999px;
  background:var(--uetm-input-bg);
  transition:.18s ease;
}
body.uetm-enabled .uetm-toggle-ui::after{
  content:"";
  width:18px;
  height:18px;
  position:absolute;
  top:2px;
  right:2px;
  border-radius:50%;
  background:var(--uetm-muted);
  transition:.18s ease;
}
body.uetm-enabled .uetm-filter-toggle-option input:checked + .uetm-toggle-ui{
  background:var(--uetm-primary);
  border-color:var(--uetm-primary);
}
body.uetm-enabled .uetm-filter-toggle-option input:checked + .uetm-toggle-ui::after{
  right:20px;
  background:var(--uetm-btn-primary-text);
}
body.uetm-enabled .uetm-filter-empty{
  padding:14px;
  border:1px dashed var(--uetm-border);
  border-radius:8px;
  color:var(--uetm-muted);
  text-align:center;
}


/* ---------- CATALOG ELEMENT VISIBILITY ---------- */
body.uetm-enabled.uetm-hide-breadcrumb .woocommerce-breadcrumb,
body.uetm-enabled.uetm-hide-breadcrumb .elementor-widget-woocommerce-breadcrumb{display:none!important}

body.uetm-enabled.uetm-hide-archive-title .woocommerce-products-header__title,
body.uetm-enabled.uetm-hide-archive-title .elementor-widget-woocommerce-archive-title{display:none!important}

body.uetm-enabled.uetm-hide-archive-description .term-description,
body.uetm-enabled.uetm-hide-archive-description .woocommerce-products-header__description,
body.uetm-enabled.uetm-hide-archive-description .elementor-widget-woocommerce-archive-description{display:none!important}

body.uetm-enabled.uetm-hide-result-count .woocommerce-result-count{display:none!important}
body.uetm-enabled.uetm-hide-sorting .woocommerce-ordering{display:none!important}
body.uetm-enabled.uetm-hide-pagination .woocommerce-pagination{display:none!important}

body.uetm-enabled.uetm-hide-product-rating ul.products li.product .star-rating,
body.uetm-enabled.uetm-hide-product-rating .elementor-widget-woocommerce-products .star-rating{display:none!important}

body.uetm-enabled.uetm-hide-sale-badge ul.products li.product .onsale,
body.uetm-enabled.uetm-hide-sale-badge .elementor-widget-woocommerce-products .onsale{display:none!important}

body.uetm-enabled.uetm-hide-loop-cart ul.products li.product .button,
body.uetm-enabled.uetm-hide-loop-cart ul.products li.product .added_to_cart{display:none!important}

body.uetm-enabled.uetm-hide-subcategories ul.products li.product-category,
body.uetm-enabled.uetm-hide-subcategories .product-category{display:none!important}


/* ==========================================================
   UETM v4.2 — Off-canvas Filters + Dual Price Slider
   ========================================================== */

/* Quick filters remain small popovers */
body.uetm-enabled .uetm-archive-filters.is-open:not(.is-offcanvas) .uetm-filter-popover{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  bottom:auto!important;
  width:min(var(--uetm-filter-panel-width),calc(100vw - 24px))!important;
  max-height:none!important;
  overflow:visible!important;
  padding:18px!important;
  transform:translateY(0)!important;
}
body.uetm-enabled .uetm-archive-filters:not(.is-offcanvas) .uetm-filter-drawer-head{
  display:none!important;
}
body.uetm-enabled .uetm-archive-filters:not(.is-offcanvas) .uetm-filter-backdrop{
  display:none!important;
}

/* Main "Filters" button = right-side off-canvas drawer */
body.uetm-enabled.uetm-filter-drawer-open{
  overflow-x:hidden!important;
}
/* In off-canvas mode the root must not become the containing block;
   the drawer is positioned against the document so the PAGE owns scrolling. */
body.uetm-enabled .uetm-archive-filters.is-offcanvas{
  position:static!important;
}
body.uetm-enabled .uetm-filter-backdrop{
  position:fixed;
  inset:0;
  z-index:999990;
  background:rgba(0,0,0,.64);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  transition:opacity .2s ease,visibility .2s ease;
}
body.uetm-enabled .uetm-archive-filters.is-offcanvas.is-open .uetm-filter-backdrop{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

body.uetm-enabled .uetm-archive-filters.is-offcanvas .uetm-filter-popover{
  position:absolute!important;
  top:var(--uetm-filter-doc-top,0px)!important;
  right:0!important;
  bottom:auto!important;
  left:auto!important;
  z-index:999999!important;
  width:min(var(--uetm-filter-panel-width),92vw)!important;
  min-height:100dvh!important;
  height:auto!important;
  max-height:none!important;
  padding:0!important;
  border-radius:0!important;
  border-top:0!important;
  border-bottom:0!important;
  border-right:0!important;
  background:var(--uetm-surface)!important;
  box-shadow:-26px 0 70px rgba(0,0,0,.42)!important;
  transform:translateX(102%)!important;
  opacity:1!important;
  visibility:hidden!important;
  pointer-events:none!important;

  /* No independent drawer scroll: the normal document scrollbar owns scrolling. */
  overflow:visible!important;
  transition:transform .24s ease,visibility .24s ease!important;
}
body.uetm-enabled .uetm-archive-filters.is-offcanvas.is-open .uetm-filter-popover{
  transform:translateX(0)!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

body.uetm-enabled .uetm-filter-drawer-head{
  position:sticky;
  top:0;
  z-index:15;
  min-height:68px;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  color:var(--uetm-text);
  background:color-mix(in srgb,var(--uetm-surface) 94%,transparent);
  border-bottom:1px solid var(--uetm-border);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
body.uetm-enabled .uetm-filter-drawer-head strong{
  font-size:18px;
}
body.uetm-enabled .uetm-filter-close{
  width:38px;
  height:38px;
  min-height:38px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  border:1px solid var(--uetm-border)!important;
  border-radius:50%!important;
  background:var(--uetm-surface-2)!important;
  color:var(--uetm-text)!important;
  font-size:25px!important;
  line-height:1!important;
  cursor:pointer;
}
body.uetm-enabled .uetm-archive-filters.is-offcanvas .uetm-filter-form{
  padding:20px;
}
body.uetm-enabled .uetm-archive-filters.is-offcanvas .uetm-filter-section{
  padding:0 0 20px;
  margin:0 0 20px;
  border-bottom:1px solid var(--uetm-border);
}
body.uetm-enabled .uetm-archive-filters.is-offcanvas .uetm-filter-section:last-of-type{
  border-bottom:0;
}
body.uetm-enabled .uetm-archive-filters.is-offcanvas .uetm-filter-actions{
  position:sticky;
  bottom:0;
  z-index:10;
  margin:0 -20px -20px;
  padding:14px 20px;
  background:var(--uetm-surface);
  border-top:1px solid var(--uetm-border);
}

/* ---------------- Dual range price ---------------- */
body.uetm-enabled .uetm-price-slider{
  width:100%;
}
body.uetm-enabled .uetm-price-values{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  margin-bottom:20px;
}
body.uetm-enabled .uetm-price-values>div{
  min-width:0;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:3px;
  border:1px solid var(--uetm-input-border);
  border-radius:var(--uetm-input-r);
  background:var(--uetm-input-bg);
}
body.uetm-enabled .uetm-price-values small{
  color:var(--uetm-muted);
  font-size:11px;
}
body.uetm-enabled .uetm-price-values strong{
  overflow:hidden;
  color:var(--uetm-text);
  font-size:13px;
  font-weight:600;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.uetm-enabled .uetm-price-values>span{
  color:var(--uetm-muted);
}

body.uetm-enabled .uetm-price-range{
  --uetm-price-min-pct:0%;
  --uetm-price-max-pct:100%;
  position:relative;
  height:32px;
  margin:0 4px;
  direction:ltr;
}
body.uetm-enabled .uetm-price-range-track{
  position:absolute;
  top:50%;
  right:0;
  left:0;
  height:5px;
  transform:translateY(-50%);
  border-radius:999px;
  background:linear-gradient(
    to right,
    var(--uetm-input-border) 0%,
    var(--uetm-input-border) var(--uetm-price-min-pct),
    var(--uetm-primary) var(--uetm-price-min-pct),
    var(--uetm-primary) var(--uetm-price-max-pct),
    var(--uetm-input-border) var(--uetm-price-max-pct),
    var(--uetm-input-border) 100%
  );
}
body.uetm-enabled .uetm-price-range input[type=range]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:32px!important;
  margin:0!important;
  padding:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  pointer-events:none!important;
}
body.uetm-enabled .uetm-price-range input[type=range]::-webkit-slider-runnable-track{
  height:5px;
  background:transparent;
  border:0;
}
body.uetm-enabled .uetm-price-range input[type=range]::-webkit-slider-thumb{
  width:20px;
  height:20px;
  margin-top:-7.5px;
  appearance:none;
  -webkit-appearance:none;
  border:3px solid var(--uetm-surface);
  border-radius:50%;
  background:var(--uetm-primary);
  box-shadow:0 0 0 1px var(--uetm-primary),0 4px 12px rgba(0,0,0,.28);
  cursor:grab;
  pointer-events:auto;
}
body.uetm-enabled .uetm-price-range input[type=range]::-moz-range-track{
  height:5px;
  background:transparent;
  border:0;
}
body.uetm-enabled .uetm-price-range input[type=range]::-moz-range-thumb{
  width:16px;
  height:16px;
  border:3px solid var(--uetm-surface);
  border-radius:50%;
  background:var(--uetm-primary);
  box-shadow:0 0 0 1px var(--uetm-primary),0 4px 12px rgba(0,0,0,.28);
  cursor:grab;
  pointer-events:auto;
}
body.uetm-enabled .uetm-price-range input[type=range]:focus-visible::-webkit-slider-thumb{
  box-shadow:0 0 0 3px color-mix(in srgb,var(--uetm-primary) 35%,transparent);
}
body.uetm-enabled .uetm-price-bounds{
  margin-top:8px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:var(--uetm-muted);
  font-size:11px;
  direction:ltr;
}

/* Old number-price layout is no longer used by v4.2. */
body.uetm-enabled .uetm-price-fields,
body.uetm-enabled .uetm-price-hint{
  display:none!important;
}

@media(max-width:767px){
  body.uetm-enabled .uetm-archive-filters.is-offcanvas .uetm-filter-popover{
    width:min(90vw,390px)!important;
    right:0!important;
    left:auto!important;
    bottom:auto!important;
    border-radius:0!important;
  }
  body.uetm-enabled .uetm-price-values{
    gap:8px;
  }
}


/* ---------- GLOBAL FOOTER DISABLE ---------- */
/* Used when Theme Manager > General > Disable Footer Globally is enabled.
   Covers Hello Elementor native footer, generic WordPress theme footers,
   and Elementor Theme Builder footer locations. */
body.uetm-enabled.uetm-no-footer #site-footer,
body.uetm-enabled.uetm-no-footer .site-footer,
body.uetm-enabled.uetm-no-footer footer.site-footer,
body.uetm-enabled.uetm-no-footer footer#site-footer,
body.uetm-enabled.uetm-no-footer .elementor-location-footer,
body.uetm-enabled.uetm-no-footer [data-elementor-type="footer"],
body.uetm-enabled.uetm-no-footer .page-footer,
body.uetm-enabled.uetm-no-footer .footer-area,
body.uetm-enabled.uetm-no-footer .footer-widgets,
body.uetm-enabled.uetm-no-footer .footer-inner{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}


/* ==========================================================
   UETM v4.5 — VG Header Layout
   Global CSS so Elementor imported custom_css is NOT required.
   ========================================================== */

.uetm-vg-header{
  direction:rtl!important;
  width:calc(100% - 36px)!important;
  max-width:var(--uetm-header-max-width,1480px)!important;
  margin:18px auto 0!important;
  padding:0!important;
  position:relative!important;
  z-index:500!important;
  overflow:visible!important;
  background:var(--uetm-header-bg,#0B0D0F)!important;
  color:var(--uetm-header-text,#F4F4F4)!important;
  border:1px solid var(--uetm-header-border,#20252A)!important;
  border-radius:var(--uetm-header-radius,18px)!important;
}
.uetm-vg-header,
.uetm-vg-header *{box-sizing:border-box!important}

/* -------- Desktop row: explicit CSS Grid, unaffected by RTL flex quirks -------- */
.uetm-vg-header .uetm-desktop-head{
  width:100%!important;
  max-width:none!important;
  min-height:var(--uetm-header-h,76px)!important;
  padding:12px 22px!important;
  display:grid!important;
  grid-template-columns:160px 56px minmax(300px,1fr) 220px!important;
  grid-template-areas:"account cart search logo"!important;
  align-items:center!important;
  gap:16px!important;
  direction:ltr!important;
}
.uetm-vg-header .uetm-desktop-head>.e-con-inner{
  display:contents!important;
}

/* Elementor child container width variables can otherwise override grid */
.uetm-vg-header .uetm-desktop-head>.e-con,
.uetm-vg-header .uetm-desktop-head>.e-con-inner>.e-con{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  --width:auto!important;
  --flex-grow:0!important;
  direction:rtl!important;
}
.uetm-vg-header .uetm-slot-account{grid-area:account!important}
.uetm-vg-header .uetm-slot-cart{grid-area:cart!important}
.uetm-vg-header .uetm-slot-search{grid-area:search!important}
.uetm-vg-header .uetm-slot-logo{grid-area:logo!important}

/* Logo */
.uetm-vg-header .uetm-slot-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
}
.uetm-vg-header .uetm-desktop-logo{
  display:block!important;
  visibility:visible!important;
}
.uetm-vg-header .uetm-desktop-logo img,
.uetm-vg-header .elementor-widget-theme-site-logo.uetm-desktop-logo img{
  display:block!important;
  width:auto!important;
  max-width:var(--uetm-logo-w,170px)!important;
  max-height:54px!important;
  object-fit:contain!important;
  margin:0!important;
}

/* Search */
.uetm-vg-header .uetm-slot-search{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.uetm-vg-header .uetm-header-search,
.uetm-vg-header .uetm-header-search .elementor-widget-container,
.uetm-vg-header .uetm-header-search .elementor-search-form{
  width:100%!important;
}
.uetm-vg-header .uetm-header-search .elementor-search-form{
  display:flex!important;
  max-width:var(--uetm-header-search-width,430px)!important;
  margin:0 auto!important;
}
.uetm-vg-header .uetm-header-search .elementor-search-form__container{
  display:flex!important;
  width:100%!important;
  min-height:42px!important;
  padding:0 12px!important;
  overflow:hidden!important;
  background:var(--uetm-input-bg,#111417)!important;
  border:1px solid var(--uetm-input-border,#343A40)!important;
  border-radius:999px!important;
}
.uetm-vg-header .uetm-header-search .elementor-search-form__input{
  display:block!important;
  min-width:0!important;
  color:var(--uetm-input-text,#F4F4F4)!important;
  background:transparent!important;
  font-size:12px!important;
  text-align:right!important;
  direction:rtl!important;
}
.uetm-vg-header .uetm-header-search .elementor-search-form__input::placeholder{
  color:var(--uetm-input-placeholder,#7D858C)!important;
}
.uetm-vg-header .uetm-header-search .elementor-search-form__submit{
  display:flex!important;
  width:32px!important;
  min-width:32px!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  color:var(--uetm-muted,#9BA2A8)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Cart */
.uetm-vg-header .uetm-slot-cart{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.uetm-vg-header .uetm-header-cart .elementor-button-text,
.uetm-vg-header .uetm-mobile-cart .elementor-button-text,
.uetm-vg-header .uetm-header-cart .elementor-menu-cart__toggle_button > span:not(.elementor-button-icon){
  display:none!important;
}
.uetm-vg-header .uetm-header-cart .elementor-menu-cart__toggle_button,
.uetm-vg-header .uetm-mobile-cart .elementor-menu-cart__toggle_button{
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  color:var(--uetm-header-text,#F4F4F4)!important;
  border:0!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.uetm-vg-header .elementor-menu-cart__toggle .elementor-button-icon-qty{
  min-width:17px!important;
  height:17px!important;
  padding:0 4px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#111!important;
  background:var(--uetm-primary,#D4AF37)!important;
  border-radius:999px!important;
  font-size:9px!important;
}

/* Account */
.uetm-vg-header .uetm-slot-account{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
}
.uetm-vg-header .uetm-header-account-icon,
.uetm-vg-header .uetm-header-account-text{
  display:block!important;
  visibility:visible!important;
}
.uetm-vg-header .uetm-header-account-text .elementor-heading-title{
  margin:0!important;
  color:var(--uetm-header-text,#F4F4F4)!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.5!important;
  white-space:nowrap!important;
}

/* -------- Desktop navigation -------- */
.uetm-vg-header .uetm-desktop-nav{
  width:100%!important;
  max-width:none!important;
  min-height:54px!important;
  padding:0 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-top:1px solid var(--uetm-header-border,#20252A)!important;
}
.uetm-vg-header .uetm-desktop-nav>.e-con-inner{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.uetm-vg-header .uetm-main-nav{
  width:100%!important;
  max-width:980px!important;
  display:block!important;
}

/* Critical: desktop nav never falls into Elementor's tablet dropdown */
@media(min-width:768px){
  .uetm-vg-header .uetm-main-nav .elementor-menu-toggle,
  .uetm-vg-header .uetm-main-nav .elementor-nav-menu--dropdown{
    display:none!important;
  }
  .uetm-vg-header .uetm-main-nav .elementor-nav-menu--main{
    display:block!important;
    width:100%!important;
  }
  .uetm-vg-header .uetm-main-nav .elementor-nav-menu--main .elementor-nav-menu{
    width:100%!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:var(--uetm-menu-gap,24px)!important;
  }
}
.uetm-vg-header .uetm-main-nav .elementor-item{
  min-height:53px!important;
  padding:0 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:var(--uetm-muted,#9BA2A8)!important;
  font-size:var(--uetm-menu-size,14px)!important;
  white-space:nowrap!important;
}
.uetm-vg-header .uetm-main-nav .elementor-item:hover,
.uetm-vg-header .uetm-main-nav .elementor-item-active{
  color:var(--uetm-header-hover,#F0C45C)!important;
}
.uetm-vg-header .uetm-main-nav .elementor-item:after{
  height:2px!important;
  background:var(--uetm-primary,#D4AF37)!important;
}

/* Desktop/mobile split lives in plugin, not imported CSS */
.uetm-vg-header .uetm-header-desktop{display:flex!important}
.uetm-vg-header .uetm-header-mobile{display:none!important}

/* -------- Mobile -------- */
@media(max-width:767px){
  .uetm-vg-header{
    width:calc(100% - 12px)!important;
    margin-top:6px!important;
    border-radius:14px!important;
  }
  .uetm-vg-header .uetm-header-desktop{display:none!important}
  .uetm-vg-header .uetm-header-mobile{display:flex!important}

  .uetm-vg-header .uetm-mobile-head{
    width:100%!important;
    min-height:var(--uetm-header-h-mobile,64px)!important;
    padding:10px 14px!important;
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    grid-template-areas:"actions logo menu"!important;
    align-items:center!important;
    direction:ltr!important;
  }
  .uetm-vg-header .uetm-mobile-head>.e-con-inner{
    display:contents!important;
  }
  .uetm-vg-header .uetm-mobile-head>.e-con,
  .uetm-vg-header .uetm-mobile-head>.e-con-inner>.e-con{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    --width:auto!important;
    direction:rtl!important;
  }
  .uetm-vg-header .uetm-mobile-slot-actions{grid-area:actions!important}
  .uetm-vg-header .uetm-mobile-slot-logo{grid-area:logo!important}
  .uetm-vg-header .uetm-mobile-slot-menu{grid-area:menu!important}

  .uetm-vg-header .uetm-mobile-slot-menu{
    display:flex!important;
    justify-content:flex-end!important;
  }
  .uetm-vg-header .uetm-mobile-slot-logo{
    display:flex!important;
    justify-content:center!important;
  }
  .uetm-vg-header .uetm-mobile-slot-actions{
    display:flex!important;
    justify-content:flex-start!important;
    gap:9px!important;
  }
  .uetm-vg-header .uetm-mobile-logo img{
    max-width:var(--uetm-logo-w-mobile,135px)!important;
    max-height:44px!important;
    object-fit:contain!important;
  }
  .uetm-vg-header .uetm-mobile-nav .elementor-menu-toggle{
    width:38px!important;
    height:38px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:transparent!important;
    color:var(--uetm-header-text,#F4F4F4)!important;
    border:0!important;
    box-shadow:none!important;
  }
  .uetm-vg-header .uetm-mobile-nav .elementor-nav-menu--dropdown{
    position:absolute!important;
    top:100%!important;
    right:12px!important;
    left:12px!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    z-index:99999!important;
    background:var(--uetm-surface,#101316)!important;
    border:1px solid var(--uetm-border,#30363B)!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }
  .uetm-vg-header .uetm-mobile-nav .elementor-nav-menu--dropdown .elementor-item{
    width:100%!important;
    min-height:46px!important;
    padding:0 16px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    color:var(--uetm-text,#F4F4F4)!important;
    text-align:right!important;
  }
  .uetm-vg-header .uetm-mobile-search-wrap{
    width:100%!important;
    padding:0 14px 12px!important;
  }
  .uetm-vg-header .uetm-mobile-search .elementor-search-form{
    max-width:none!important;
  }
}


/* ==========================================================
   UETM v4.6 — Desktop Filters Beside Product Grid
   ----------------------------------------------------------
   Desktop >= 1025px:
   All Filters becomes a real sidebar next to products.
   Tablet / Mobile:
   Existing off-canvas behavior remains unchanged.
   ========================================================== */

@media(min-width:1025px){

  /* Product widget shrinks to create REAL layout space for the sidebar. */
  body.uetm-enabled.uetm-filter-sidebar-open .uetm-filter-products-target{
    box-sizing:border-box!important;
    width:calc(100% - var(--uetm-filter-panel-width) - var(--uetm-filter-sidebar-gap))!important;
    max-width:calc(100% - var(--uetm-filter-panel-width) - var(--uetm-filter-sidebar-gap))!important;
    margin-right:calc(var(--uetm-filter-panel-width) + var(--uetm-filter-sidebar-gap))!important;
    margin-left:0!important;
    transition:width .22s ease,max-width .22s ease,margin .22s ease!important;
  }

  /* The All Filters panel sits in the space made beside products. */
  body.uetm-enabled .uetm-archive-filters.is-sidebar{
    position:relative!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-popover{
    position:absolute!important;
    top:var(--uetm-filter-sidebar-top)!important;
    right:var(--uetm-filter-sidebar-right,0px)!important;
    bottom:auto!important;
    left:auto!important;

    width:var(--uetm-filter-panel-width)!important;
    min-width:280px!important;
    max-width:520px!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;

    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;

    overflow:visible!important;
    background:var(--uetm-surface)!important;
    border:1px solid var(--uetm-border)!important;
    border-radius:var(--uetm-filter-panel-r)!important;
    box-shadow:0 18px 50px rgba(0,0,0,.30)!important;
    z-index:90!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-backdrop{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-drawer-head{
    position:relative!important;
    top:auto!important;
    min-height:62px!important;
    padding:0 18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    border-bottom:1px solid var(--uetm-border)!important;
    background:var(--uetm-surface)!important;
    border-radius:var(--uetm-filter-panel-r) var(--uetm-filter-panel-r) 0 0!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-form{
    padding:18px!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-section{
    padding:0 0 18px!important;
    margin:0 0 18px!important;
    border-bottom:1px solid var(--uetm-border)!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-section:last-of-type{
    border-bottom:0!important;
  }

  /* No independent/sidebar scrollbar: normal page scroll owns scrolling. */
  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-option-grid{
    max-height:none!important;
    overflow:visible!important;
  }

  body.uetm-enabled .uetm-archive-filters.is-sidebar .uetm-filter-actions{
    position:relative!important;
    bottom:auto!important;
    margin:0 -18px -18px!important;
    padding:14px 18px!important;
    background:var(--uetm-surface)!important;
    border-top:1px solid var(--uetm-border)!important;
    border-radius:0 0 var(--uetm-filter-panel-r) var(--uetm-filter-panel-r)!important;
  }

  /* Quick Brand / Price buttons continue to use their compact popover. */
  body.uetm-enabled .uetm-archive-filters.is-open:not(.is-sidebar):not(.is-offcanvas) .uetm-filter-popover{
    position:absolute!important;
    top:calc(100% + 10px)!important;
  }
}

/* Tablet/mobile explicitly keep Off-canvas and never shrink the products. */
@media(max-width:1024px){
  body.uetm-enabled .uetm-filter-products-target{
    width:auto!important;
    max-width:none!important;
    margin-right:0!important;
    margin-left:0!important;
  }
}


/* ==========================================================
   UETM v4.6.1 — TRUE INJECTED DESKTOP FILTER SIDEBAR
   ==========================================================
   The filter popover is physically MOVED next to the products
   on desktop. No absolute-position guessing and no overlay.
   Closing restores the original DOM and full product width.
   ========================================================== */

@media(min-width:1025px){

  /* New parent injected around the actual product widget/loop. */
  body.uetm-enabled .uetm-filter-injected-layout{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:1 1 100%!important;
    align-self:stretch!important;

    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--uetm-filter-panel-width)!important;
    grid-template-areas:"products sidebar"!important;
    gap:var(--uetm-filter-sidebar-gap)!important;
    align-items:start!important;

    /* Explicit LTR grid areas = products on LEFT, sidebar on RIGHT.
       Content itself remains RTL. */
    direction:ltr!important;
  }

  body.uetm-enabled .uetm-filter-injected-layout > .uetm-filter-products-target{
    grid-area:products!important;
    direction:rtl!important;

    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;

    /* Elementor containers/widgets often carry their own --width variable. */
    --width:100%!important;
    --flex-grow:1!important;
    align-self:start!important;
  }

  body.uetm-enabled .uetm-filter-injected-layout > .uetm-filter-sidebar-host{
    grid-area:sidebar!important;
    direction:rtl!important;

    width:var(--uetm-filter-panel-width)!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;

    position:relative!important;
    align-self:start!important;
  }

  /* The SAME popover node now lives inside the injected host. */
  body.uetm-enabled .uetm-filter-sidebar-host > .uetm-filter-popover{
    position:static!important;
    inset:auto!important;

    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;

    margin:0!important;
    padding:0!important;

    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;

    overflow:visible!important;
    background:var(--uetm-surface)!important;
    border:1px solid var(--uetm-border)!important;
    border-radius:var(--uetm-filter-panel-r)!important;
    box-shadow:0 14px 42px rgba(0,0,0,.24)!important;
  }

  /* Never show drawer backdrop for an injected desktop sidebar. */
  body.uetm-enabled.uetm-filter-sidebar-injected .uetm-filter-backdrop{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  body.uetm-enabled .uetm-filter-sidebar-host .uetm-filter-drawer-head{
    position:relative!important;
    top:auto!important;
    z-index:2!important;
    min-height:62px!important;
    padding:0 18px!important;

    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;

    background:var(--uetm-surface)!important;
    border-bottom:1px solid var(--uetm-border)!important;
    border-radius:var(--uetm-filter-panel-r) var(--uetm-filter-panel-r) 0 0!important;

    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  body.uetm-enabled .uetm-filter-sidebar-host .uetm-filter-form{
    padding:18px!important;
  }

  body.uetm-enabled .uetm-filter-sidebar-host .uetm-filter-section{
    padding:0 0 18px!important;
    margin:0 0 18px!important;
    border-bottom:1px solid var(--uetm-border)!important;
  }

  body.uetm-enabled .uetm-filter-sidebar-host .uetm-filter-section:last-of-type{
    border-bottom:0!important;
  }

  /* Page scroll only — no nested filter scrollbar. */
  body.uetm-enabled .uetm-filter-sidebar-host .uetm-filter-option-grid{
    max-height:none!important;
    overflow:visible!important;
  }

  body.uetm-enabled .uetm-filter-sidebar-host .uetm-filter-actions{
    position:relative!important;
    bottom:auto!important;
    z-index:1!important;

    margin:0 -18px -18px!important;
    padding:14px 18px!important;

    background:var(--uetm-surface)!important;
    border-top:1px solid var(--uetm-border)!important;
    border-radius:0 0 var(--uetm-filter-panel-r) var(--uetm-filter-panel-r)!important;
  }

  /* Disable the old v4.6 width/margin shrinking mechanism if its class remains
     in browser cache. The injected grid is now the only layout authority. */
  body.uetm-enabled.uetm-filter-sidebar-injected .uetm-filter-products-target{
    width:100%!important;
    max-width:none!important;
    margin-right:0!important;
    margin-left:0!important;
  }
}

/* Tablet/mobile: injection is never used; original off-canvas remains intact. */
@media(max-width:1024px){
  body.uetm-enabled .uetm-filter-injected-layout{
    display:block!important;
  }
  body.uetm-enabled .uetm-filter-sidebar-host{
    display:none!important;
  }
}

/* Hidden zero-size marker used only to restore the popover to its original DOM. */
.uetm-filter-popover-placeholder{
  display:none!important;
}


/* UETM v4.6.2 — Quick View AJAX Add to Cart */
#uetm-qv-modal .single_add_to_cart_button.uetm-qv-adding{
  opacity:.72!important;
  cursor:wait!important;
  pointer-events:none!important;
}

#uetm-qv-modal .uetm-qv-cart-message{
  width:100%;
  margin:10px 0 0;
  padding:9px 11px;
  border:1px solid var(--uetm-border);
  border-radius:var(--uetm-r-sm);
  background:var(--uetm-surface-2);
  color:var(--uetm-text);
  font-size:13px;
  line-height:1.6;
  text-align:center;
}

#uetm-qv-modal .uetm-qv-cart-message.is-success{
  border-color:color-mix(in srgb,var(--uetm-primary) 65%,var(--uetm-border));
  color:var(--uetm-primary);
}

#uetm-qv-modal .uetm-qv-cart-message.is-error{
  border-color:#b94b4b;
  color:#ef8a8a;
}


/* ==========================================================
   UETM v4.6.6 — Tiered Pricing Table Theme Integration
   Uses Theme Manager tokens instead of the external plugin's
   hard-coded white / blue / black palette.
   ========================================================== */

body.uetm-enabled.uetm-tier-pricing-theme .tpt__tiered-pricing,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-wrapper{
  width:100%;
  color:var(--uetm-text)!important;
  font-family:var(--uetm-font)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-wrapper h3{
  color:var(--uetm-text)!important;
}

/* ---------- TABLE / HORIZONTAL TABLE ---------- */

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table{
  width:100%!important;
  margin:12px 0!important;
  border:1px solid var(--uetm-border)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:var(--uetm-r-md)!important;
  overflow:hidden!important;
  background:var(--uetm-surface)!important;
  color:var(--uetm-text)!important;
  box-shadow:none!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table thead,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table-header{
  background:var(--uetm-surface-2)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table th{
  background:var(--uetm-surface-2)!important;
  color:var(--uetm-muted)!important;
  border-color:var(--uetm-border)!important;
  font-weight:var(--uetm-w-heading)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table td{
  background:transparent!important;
  color:var(--uetm-text)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table tbody tr{
  background:var(--uetm-surface)!important;
  color:var(--uetm-text)!important;
  transition:.16s ease!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table tbody tr:hover{
  background:var(--uetm-surface-2)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table tbody tr.tiered-pricing--active{
  background:color-mix(in srgb,var(--uetm-primary) 14%,var(--uetm-surface))!important;
  box-shadow:inset 3px 0 0 var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table .amount,
body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table ins,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table-row-price{
  color:var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table{
  border-color:var(--uetm-border)!important;
  background:var(--uetm-surface)!important;
  color:var(--uetm-text)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table-cell,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table-column{
  border-color:var(--uetm-border)!important;
  color:var(--uetm-text)!important;
  background:transparent!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table__labels{
  background:var(--uetm-surface-2)!important;
  color:var(--uetm-muted)!important;
}

/* ---------- BLOCKS ---------- */

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks{
  gap:8px!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block{
  background:var(--uetm-surface-2)!important;
  color:var(--uetm-text)!important;
  border:1px solid var(--uetm-border)!important;
  border-radius:var(--uetm-r-md)!important;
  box-shadow:none!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block:hover{
  border-color:color-mix(in srgb,var(--uetm-primary) 55%,var(--uetm-border))!important;
  background:color-mix(in srgb,var(--uetm-primary) 7%,var(--uetm-surface-2))!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block.tiered-pricing--active{
  border-color:var(--uetm-primary)!important;
  background:color-mix(in srgb,var(--uetm-primary) 13%,var(--uetm-surface-2))!important;
  box-shadow:0 0 0 1px var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block__quantity{
  color:var(--uetm-muted)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block__price,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block__price-discount{
  color:var(--uetm-primary)!important;
}

/* Style 6 has hard-coded white/black in the source plugin. */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks--style-6{
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks--style-6 .tiered-pricing-block{
  background:var(--uetm-surface-2)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks--style-6 .tiered-pricing-block__quantity{
  color:var(--uetm-muted)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks--style-6 .tiered-pricing-block__price{
  color:var(--uetm-primary)!important;
}

/* ---------- OPTIONS ---------- */

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option{
  color:var(--uetm-text)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options--style-1,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options--style-2{
  background:var(--uetm-surface)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option{
  background:var(--uetm-surface-2)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option.tiered-pricing--active{
  border-color:var(--uetm-primary)!important;
  background:color-mix(in srgb,var(--uetm-primary) 12%,var(--uetm-surface-2))!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option-checkbox{
  border-color:var(--uetm-border)!important;
  background:var(--uetm-surface)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing--active .tiered-pricing-option-checkbox{
  border-color:var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing--active .tiered-pricing-option-checkbox::after{
  background:var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option__quantity,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options--style-4 .tiered-pricing-option__quantity{
  color:var(--uetm-text)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option-price__discounted,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options--style-4 .tiered-pricing-option-price__discounted{
  color:var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option-price__original,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options--style-4 .tiered-pricing-option-price__original{
  color:var(--uetm-muted)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option__discount-label,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options--style-4 .tiered-pricing-option__discount-label{
  background:var(--uetm-primary)!important;
  color:var(--uetm-btn-primary-text)!important;
}

/* ---------- DROPDOWN ---------- */

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__select-box,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__list{
  background:var(--uetm-surface)!important;
  color:var(--uetm-text)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__select-box{
  border-radius:var(--uetm-input-r)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__list{
  box-shadow:0 16px 36px rgba(0,0,0,.28)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option{
  color:var(--uetm-text)!important;
  background:transparent!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__list .tiered-pricing-dropdown-option:hover,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option--active{
  background:var(--uetm-surface-2)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option-price__discounted{
  color:var(--uetm-primary)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option-price__original{
  color:var(--uetm-muted)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__select-box-arrow svg,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__select-box-arrow path{
  fill:var(--uetm-muted)!important;
  color:var(--uetm-muted)!important;
}

/* ---------- Plain text / labels / ribbon / tooltip ---------- */

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-plain-texts,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-plain-text{
  color:var(--uetm-text)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-ribbon,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-tier-label{
  background:var(--uetm-primary)!important;
  color:var(--uetm-btn-primary-text)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-tooltip{
  background:var(--uetm-surface)!important;
  color:var(--uetm-text)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-tooltip__svg{
  color:var(--uetm-primary)!important;
  fill:var(--uetm-primary)!important;
}

/* ---------- Tiered Pricing Summary ---------- */

body.uetm-enabled.uetm-tier-pricing-theme .tier-pricing-summary-table{
  color:var(--uetm-text)!important;
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tier-pricing-summary-table__top{
  border-color:var(--uetm-border)!important;
}

body.uetm-enabled.uetm-tier-pricing-theme .tier-pricing-summary-table__total{
  color:var(--uetm-primary)!important;
}

/* ---------- Quick View placement ---------- */

body.uetm-enabled .uetm-qv-tier-pricing{
  width:100%;
  margin:14px 0 18px;
}

body.uetm-enabled .uetm-qv-tier-pricing:empty{
  display:none!important;
}

body.uetm-enabled .uetm-qv-tier-pricing .tpt__tiered-pricing{
  margin:0!important;
}

#uetm-qv-modal .tiered-pricing-wrapper h3{
  margin:10px 0!important;
  font-size:15px!important;
}

#uetm-qv-modal table.tiered-pricing-table th,
#uetm-qv-modal table.tiered-pricing-table td{
  padding:8px 10px!important;
  font-size:13px!important;
}

@media(max-width:767px){
  #uetm-qv-modal .uetm-qv-tier-pricing{
    margin:10px 0 14px;
  }

  #uetm-qv-modal table.tiered-pricing-table{
    font-size:12px!important;
  }

  #uetm-qv-modal table.tiered-pricing-table th,
  #uetm-qv-modal table.tiered-pricing-table td{
    padding:7px 6px!important;
  }

  body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   UETM v4.6.7 — Tier Pricing FORCE DARK
   ----------------------------------------------------------
   Some Tiered Pricing Table layouts ship with hard-coded white
   backgrounds. When "Inherit Theme Manager Colors" is enabled,
   this layer force-overrides those whites with UETM dark surfaces.
   ========================================================== */

body.uetm-enabled.uetm-tier-pricing-theme .tpt__tiered-pricing,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-wrapper,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table tbody,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table tr,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table td,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__select-box,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__list,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table-cell,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table-column,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-plain-texts,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-plain-text,
body.uetm-enabled.uetm-tier-pricing-theme .tier-pricing-summary-table{
  background:var(--uetm-surface,#101314)!important;
  background-color:var(--uetm-surface,#101314)!important;
  color:var(--uetm-text,#F4F4F4)!important;
  box-shadow:none!important;
}

/* Secondary / heading surfaces */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table thead,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table th,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table-header,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table__labels,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-blocks--style-6 .tiered-pricing-block,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option:hover,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option--active{
  background:var(--uetm-surface-2,#171B1E)!important;
  background-color:var(--uetm-surface-2,#171B1E)!important;
  color:var(--uetm-text,#F4F4F4)!important;
}

/* Borders */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table td,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table th,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-options,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__select-box,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown__list,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table-cell,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table-column,
body.uetm-enabled.uetm-tier-pricing-theme .tier-pricing-summary-table{
  border-color:var(--uetm-border,#2E3438)!important;
}

/* Active tier */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing--active,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block.tiered-pricing--active,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option.tiered-pricing--active,
body.uetm-enabled.uetm-tier-pricing-theme table.tiered-pricing-table tbody tr.tiered-pricing--active{
  background:
    color-mix(
      in srgb,
      var(--uetm-primary,#D4AF37) 12%,
      var(--uetm-surface-2,#171B1E)
    )!important;
  background-color:
    color-mix(
      in srgb,
      var(--uetm-primary,#D4AF37) 12%,
      var(--uetm-surface-2,#171B1E)
    )!important;
  border-color:var(--uetm-primary,#D4AF37)!important;
  color:var(--uetm-text,#F4F4F4)!important;
}

/* Pricing accents */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-table .amount,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block__price,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block__price-discount,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option-price__discounted,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option-price__discounted,
body.uetm-enabled.uetm-tier-pricing-theme .tier-pricing-summary-table__total{
  color:var(--uetm-primary,#D4AF37)!important;
}

/* Secondary text / old prices */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-block__quantity,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option-price__original,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-dropdown-option-price__original,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-horizontal-table__labels{
  color:var(--uetm-muted,#9A9FA5)!important;
}

/* Badges / ribbons */
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-ribbon,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-tier-label,
body.uetm-enabled.uetm-tier-pricing-theme .tiered-pricing-option__discount-label{
  background:var(--uetm-primary,#D4AF37)!important;
  color:var(--uetm-btn-primary-text,#0B0D0F)!important;
}

/* Inputs / select boxes potentially rendered by the plugin */
body.uetm-enabled.uetm-tier-pricing-theme .tpt__tiered-pricing input,
body.uetm-enabled.uetm-tier-pricing-theme .tpt__tiered-pricing select,
body.uetm-enabled.uetm-tier-pricing-theme .tpt__tiered-pricing button{
  background:var(--uetm-input-bg,#0D1011)!important;
  color:var(--uetm-input-text,#F4F4F4)!important;
  border-color:var(--uetm-input-border,#2E3438)!important;
}

/* Quick View: keep all Tier Pricing surfaces dark too */
#uetm-qv-modal .uetm-qv-tier-pricing,
#uetm-qv-modal .uetm-qv-tier-pricing .tpt__tiered-pricing,
#uetm-qv-modal .uetm-qv-tier-pricing .tiered-pricing-wrapper,
#uetm-qv-modal .uetm-qv-tier-pricing table,
#uetm-qv-modal .uetm-qv-tier-pricing tbody,
#uetm-qv-modal .uetm-qv-tier-pricing tr,
#uetm-qv-modal .uetm-qv-tier-pricing td,
#uetm-qv-modal .uetm-qv-tier-pricing th{
  background-color:var(--uetm-surface,#101314)!important;
  color:var(--uetm-text,#F4F4F4)!important;
}


/* ==========================================================
   UETM v4.6.8 — WooCommerce Notices Dark / Gold
   Strong override for WooCommerce + Elementor notices.
   Applies to notices rendered initially or injected by AJAX.
   ========================================================== */

body.uetm-enabled .woocommerce-notices-wrapper,
body.uetm-enabled .woocommerce-NoticeGroup,
body.uetm-enabled .woocommerce-NoticeGroup-checkout,
body.uetm-enabled .woocommerce-NoticeGroup-updateOrderReview{
  background:transparent!important;
  color:var(--uetm-text,#F4F4F4)!important;
}

/* Success / Info / Error */
body.uetm-enabled .woocommerce-notices-wrapper > .woocommerce-message,
body.uetm-enabled .woocommerce-notices-wrapper > .woocommerce-info,
body.uetm-enabled .woocommerce-notices-wrapper > .woocommerce-error,
body.uetm-enabled .woocommerce-message[role="alert"],
body.uetm-enabled .woocommerce-info[role="alert"],
body.uetm-enabled .woocommerce-error[role="alert"],
body.uetm-enabled .woocommerce-message,
body.uetm-enabled .woocommerce-info,
body.uetm-enabled .woocommerce-error{
  box-sizing:border-box!important;

  background:var(--uetm-surface,#101314)!important;
  background-color:var(--uetm-surface,#101314)!important;
  color:var(--uetm-text,#F4F4F4)!important;

  border:1px solid var(--uetm-border,#2E3438)!important;
  border-right:3px solid var(--uetm-primary,#D4AF37)!important;
  border-top:1px solid var(--uetm-border,#2E3438)!important;
  border-left:1px solid var(--uetm-border,#2E3438)!important;
  border-bottom:1px solid var(--uetm-border,#2E3438)!important;

  border-radius:10px!important;

  margin:0 0 16px!important;
  padding:14px 16px 14px 16px!important;

  min-height:52px!important;

  direction:rtl!important;
  text-align:right!important;

  font-size:14px!important;
  line-height:1.8!important;

  box-shadow:none!important;
  text-shadow:none!important;
}

/* WooCommerce icon */
body.uetm-enabled .woocommerce-message::before,
body.uetm-enabled .woocommerce-info::before,
body.uetm-enabled .woocommerce-error::before{
  color:var(--uetm-primary,#D4AF37)!important;
  background:transparent!important;
}

/* Remove legacy colored top border created by some Woo versions */
body.uetm-enabled .woocommerce-message::after,
body.uetm-enabled .woocommerce-info::after,
body.uetm-enabled .woocommerce-error::after{
  background:transparent!important;
}

/* Text / normal links */
body.uetm-enabled .woocommerce-message,
body.uetm-enabled .woocommerce-message *,
body.uetm-enabled .woocommerce-info,
body.uetm-enabled .woocommerce-info *,
body.uetm-enabled .woocommerce-error,
body.uetm-enabled .woocommerce-error *{
  text-shadow:none!important;
}

body.uetm-enabled .woocommerce-message a:not(.button),
body.uetm-enabled .woocommerce-info a:not(.button),
body.uetm-enabled .woocommerce-error a:not(.button){
  color:var(--uetm-primary,#D4AF37)!important;
}

/* View cart / action button — outline gold */
body.uetm-enabled .woocommerce-message a.button,
body.uetm-enabled .woocommerce-message a.button.wc-forward,
body.uetm-enabled .woocommerce-info a.button,
body.uetm-enabled .woocommerce-error a.button{
  float:left!important;

  min-height:38px!important;
  height:auto!important;

  margin:0!important;
  padding:0 14px!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  background:transparent!important;
  background-color:transparent!important;
  color:var(--uetm-primary,#D4AF37)!important;

  border:1px solid var(--uetm-primary,#D4AF37)!important;
  border-radius:8px!important;

  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;

  text-decoration:none!important;
  box-shadow:none!important;

  transition:.18s ease!important;
}

body.uetm-enabled .woocommerce-message a.button:hover,
body.uetm-enabled .woocommerce-message a.button.wc-forward:hover,
body.uetm-enabled .woocommerce-info a.button:hover,
body.uetm-enabled .woocommerce-error a.button:hover{
  background:var(--uetm-primary,#D4AF37)!important;
  background-color:var(--uetm-primary,#D4AF37)!important;
  color:var(--uetm-btn-primary-text,#0B0D0F)!important;
  border-color:var(--uetm-primary,#D4AF37)!important;
  transform:translateY(-1px)!important;
}

/* Error remains dark, only its accent becomes red */
body.uetm-enabled .woocommerce-error{
  border-right-color:#D9534F!important;
}

body.uetm-enabled .woocommerce-error::before{
  color:#D9534F!important;
}

/* Elementor WooCommerce widgets sometimes wrap notices in white blocks */
body.uetm-enabled .elementor-widget-woocommerce-cart .woocommerce-notices-wrapper,
body.uetm-enabled .elementor-widget-woocommerce-checkout-page .woocommerce-notices-wrapper,
body.uetm-enabled .elementor-widget-woocommerce-my-account .woocommerce-notices-wrapper,
body.uetm-enabled .elementor-widget-wc-archive-products .woocommerce-notices-wrapper{
  background:transparent!important;
}

/* Mobile */
@media(max-width:767px){
  body.uetm-enabled .woocommerce-message,
  body.uetm-enabled .woocommerce-info,
  body.uetm-enabled .woocommerce-error{
    padding:13px 14px!important;
    font-size:13px!important;
  }

  body.uetm-enabled .woocommerce-message a.button,
  body.uetm-enabled .woocommerce-message a.button.wc-forward,
  body.uetm-enabled .woocommerce-info a.button,
  body.uetm-enabled .woocommerce-error a.button{
    float:none!important;
    width:100%!important;
    min-height:40px!important;
    margin-top:10px!important;
  }
}


/* ==========================================================
   UETM v4.7.0 — WooCommerce Blocks Cart Manager
   ========================================================== */

body.uetm-enabled.uetm-wc-blocks-cart .wc-block-cart-item__quantity,
body.uetm-enabled.uetm-wc-blocks-cart .uetm-wc-block-cart-actions{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:var(--uetm-wc-block-actions-gap)!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:10px!important;
  direction:rtl!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector{
  position:relative!important;
  display:block!important;
  direction:ltr!important;
  width:calc((var(--uetm-wc-block-qty-btn-w) * 2) + var(--uetm-wc-block-qty-input-w))!important;
  min-width:calc((var(--uetm-wc-block-qty-btn-w) * 2) + var(--uetm-wc-block-qty-input-w))!important;
  max-width:none!important;
  height:var(--uetm-wc-block-qty-h)!important;
  min-height:var(--uetm-wc-block-qty-h)!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--uetm-bg,#0B0D0F)!important;
  border:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:10px!important;
}

/* Physical LEFT = minus */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector__button--minus{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  left:0!important;
  right:auto!important;
  inset-inline-start:auto!important;
  inset-inline-end:auto!important;
  width:var(--uetm-wc-block-qty-btn-w)!important;
  height:var(--uetm-wc-block-qty-h)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--uetm-muted,#9A9FA5)!important;
  transform:none!important;
  z-index:3!important;
}

/* Center = number */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector__input{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  left:var(--uetm-wc-block-qty-btn-w)!important;
  right:auto!important;
  inset-inline-start:auto!important;
  inset-inline-end:auto!important;
  width:var(--uetm-wc-block-qty-input-w)!important;
  min-width:var(--uetm-wc-block-qty-input-w)!important;
  max-width:var(--uetm-wc-block-qty-input-w)!important;
  height:var(--uetm-wc-block-qty-h)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-left:1px solid var(--uetm-border,#2E3438)!important;
  border-right:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--uetm-text,#F4F4F4)!important;
  text-align:center!important;
  box-shadow:none!important;
  transform:none!important;
  appearance:textfield!important;
  -moz-appearance:textfield!important;
  z-index:2!important;
}

/* Physical RIGHT = plus */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector__button--plus{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  right:0!important;
  left:auto!important;
  inset-inline-start:auto!important;
  inset-inline-end:auto!important;
  width:var(--uetm-wc-block-qty-btn-w)!important;
  height:var(--uetm-wc-block-qty-h)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--uetm-muted,#9A9FA5)!important;
  transform:none!important;
  z-index:3!important;
}

body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-components-quantity-selector__button:hover{
  background:var(--uetm-surface-2,#171B1E)!important;
  color:var(--uetm-primary,#D4AF37)!important;
}

/* Quantity selector first, Trash immediately next to it on same baseline. */
body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__quantity > .wc-block-components-quantity-selector{
  order:1!important;
}

body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__remove-link{
  position:static!important;
  order:2!important;
  flex:0 0 var(--uetm-wc-block-remove)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:var(--uetm-wc-block-remove)!important;
  min-width:var(--uetm-wc-block-remove)!important;
  max-width:var(--uetm-wc-block-remove)!important;
  height:var(--uetm-wc-block-remove)!important;
  min-height:var(--uetm-wc-block-remove)!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:10px!important;
  background:transparent!important;
  color:var(--uetm-muted,#9A9FA5)!important;
  line-height:1!important;
  transform:none!important;
}

body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__remove-link svg{
  width:20px!important;
  height:20px!important;
  margin:0!important;
}

body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__remove-link svg path{fill:currentColor!important;}

body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__remove-link:hover{
  color:#E16868!important;
  border-color:#7A3438!important;
  background:#2A1517!important;
}

/* Product image */
body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__image img{
  width:var(--uetm-wc-block-img)!important;
  height:var(--uetm-wc-block-img)!important;
  max-width:var(--uetm-wc-block-img)!important;
  object-fit:contain!important;
  background:#fff!important;
  border-radius:10px!important;
  padding:5px!important;
}

/* Optional dark panels */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-dark
.wc-block-cart__main,
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-dark
.wc-block-cart__sidebar{
  background:var(--uetm-commerce-panel-bg,var(--uetm-surface,#101314))!important;
  border:1px solid var(--uetm-commerce-panel-border,var(--uetm-border,#2E3438))!important;
  border-radius:var(--uetm-wc-block-cart-r)!important;
  color:var(--uetm-text,#F4F4F4)!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-dark .wc-block-cart__main{padding:18px!important;}
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-dark .wc-block-cart__sidebar{padding:20px!important;}

@media(min-width:1025px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-sticky
  .wc-block-cart__sidebar{
    position:sticky!important;
    top:24px!important;
    align-self:start!important;
  }
}

@media(max-width:1024px){
  body.uetm-enabled.uetm-wc-blocks-cart .wc-block-cart__sidebar{position:static!important;}
}


/* ==========================================================
   UETM v4.7.1 — Woo Blocks Quantity GRID FIX
   Final authority layer. No absolute positioning.
   ========================================================== */

body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__quantity.uetm-wc-block-cart-actions{
  display:grid!important;
  grid-template-columns:var(--uetm-wc-block-remove) max-content!important;
  grid-template-areas:"remove qty"!important;
  align-items:center!important;
  justify-content:start!important;
  gap:var(--uetm-wc-block-actions-gap)!important;
  direction:ltr!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:10px!important;
}

/* Quantity is a real 3-column grid: − | number | + */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector.uetm-wc-block-qty-fixed{
  grid-area:qty!important;

  display:grid!important;
  grid-template-columns:
    var(--uetm-wc-block-qty-btn-w)
    var(--uetm-wc-block-qty-input-w)
    var(--uetm-wc-block-qty-btn-w)!important;
  grid-template-areas:"minus input plus"!important;

  align-items:stretch!important;

  position:relative!important;
  inset:auto!important;

  width:max-content!important;
  min-width:0!important;
  max-width:none!important;

  height:var(--uetm-wc-block-qty-h)!important;
  min-height:var(--uetm-wc-block-qty-h)!important;

  margin:0!important;
  padding:0!important;

  direction:ltr!important;

  overflow:hidden!important;

  background:var(--uetm-bg,#0B0D0F)!important;
  border:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:10px!important;
}

/* Kill Woo Blocks' RTL absolute positioning completely. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector.uetm-wc-block-qty-fixed
.wc-block-components-quantity-selector__button--minus{
  grid-area:minus!important;

  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;

  width:var(--uetm-wc-block-qty-btn-w)!important;
  min-width:var(--uetm-wc-block-qty-btn-w)!important;
  max-width:var(--uetm-wc-block-qty-btn-w)!important;

  height:var(--uetm-wc-block-qty-h)!important;

  margin:0!important;
  padding:0!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  transform:none!important;

  border:0!important;
  border-radius:0!important;

  background:transparent!important;
  color:var(--uetm-muted,#9A9FA5)!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector.uetm-wc-block-qty-fixed
.wc-block-components-quantity-selector__input{
  grid-area:input!important;

  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;

  width:var(--uetm-wc-block-qty-input-w)!important;
  min-width:var(--uetm-wc-block-qty-input-w)!important;
  max-width:var(--uetm-wc-block-qty-input-w)!important;

  height:var(--uetm-wc-block-qty-h)!important;
  min-height:var(--uetm-wc-block-qty-h)!important;

  margin:0!important;
  padding:0!important;

  transform:none!important;

  border:0!important;
  border-left:1px solid var(--uetm-border,#2E3438)!important;
  border-right:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:0!important;

  background:transparent!important;
  color:var(--uetm-text,#F4F4F4)!important;

  text-align:center!important;
  line-height:var(--uetm-wc-block-qty-h)!important;

  box-shadow:none!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-qty-fix
.wc-block-components-quantity-selector.uetm-wc-block-qty-fixed
.wc-block-components-quantity-selector__button--plus{
  grid-area:plus!important;

  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;

  width:var(--uetm-wc-block-qty-btn-w)!important;
  min-width:var(--uetm-wc-block-qty-btn-w)!important;
  max-width:var(--uetm-wc-block-qty-btn-w)!important;

  height:var(--uetm-wc-block-qty-h)!important;

  margin:0!important;
  padding:0!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  transform:none!important;

  border:0!important;
  border-radius:0!important;

  background:transparent!important;
  color:var(--uetm-muted,#9A9FA5)!important;
}

/* Remove is a real sibling grid cell, same baseline as quantity. */
body.uetm-enabled.uetm-wc-blocks-cart
.wc-block-cart-item__quantity.uetm-wc-block-cart-actions
> .wc-block-cart-item__remove-link{
  grid-area:remove!important;

  position:static!important;
  inset:auto!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:var(--uetm-wc-block-remove)!important;
  min-width:var(--uetm-wc-block-remove)!important;
  max-width:var(--uetm-wc-block-remove)!important;

  height:var(--uetm-wc-block-remove)!important;
  min-height:var(--uetm-wc-block-remove)!important;

  margin:0!important;
  padding:0!important;

  transform:none!important;
}


/* ==========================================================
   UETM v4.7.2 — Woo Blocks Cart Full-Width Product Rows
   Products full width on top, Summary below.
   Row layout: Image | Product | Quantity | Total | Remove
   ========================================================== */

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-components-sidebar-layout.wc-block-cart{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:
    "products"
    "summary"!important;
  gap:var(--uetm-wc-block-panel-gap)!important;
  align-items:start!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__main{
  grid-area:products!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__sidebar{
  grid-area:summary!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  position:static!important;
}

/* Summary below means sticky should not apply. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__sidebar{
  top:auto!important;
}

/* Make the products table use all available width. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items{
  width:100%!important;
  table-layout:fixed!important;
}

/* Hide Woo's default header because the product rows are now card-like. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__header{
  display:none!important;
}

/* Each Woo Blocks row becomes a real 5-column grid. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__row{
  display:grid!important;
  grid-template-columns:
    var(--uetm-wc-block-img)
    minmax(220px,1fr)
    max-content
    minmax(100px,140px)
    var(--uetm-wc-block-remove)!important;
  grid-template-areas:"image product quantity total remove"!important;
  gap:18px!important;
  align-items:center!important;

  width:100%!important;
  min-width:0!important;

  padding:20px 0!important;

  border-bottom:1px solid var(--uetm-border,#2E3438)!important;
}

/* Table cells must become grid items rather than table cells. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__row > td{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
}

/* Image */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__image{
  grid-area:image!important;
}

/* Product details */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__product{
  grid-area:product!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__wrap{
  display:contents!important;
}

/* Product name/details remain together visually in product column. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__product .wc-block-components-product-name,
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__product .wc-block-cart-item__prices,
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__product .wc-block-components-product-metadata{
  display:block!important;
}

/* Unit price inside product details can stay visible but compact. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__product .wc-block-cart-item__prices{
  margin-top:4px!important;
}

/* Quantity becomes its own column, even though Woo places it inside product cell. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__quantity{
  grid-area:quantity!important;

  display:block!important;
  width:max-content!important;
  margin:0!important;
}

/* Remove button is extracted visually into final column. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__quantity > .wc-block-cart-item__remove-link{
  position:absolute!important;
  right:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}

/* Need row as positioning context for the remove button. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__row{
  position:relative!important;
  padding-right:calc(var(--uetm-wc-block-remove) + 18px)!important;
}

/* Total */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__total{
  grid-area:total!important;
  text-align:center!important;
  font-weight:700!important;
  color:var(--uetm-primary,#D4AF37)!important;
}

/* Hide the duplicate unit price column feeling by emphasizing subtotal only. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__total .wc-block-formatted-money-amount{
  color:var(--uetm-primary,#D4AF37)!important;
  font-weight:700!important;
}

/* Summary below becomes compact horizontal card on desktop. */
@media(min-width:1025px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart__sidebar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(280px,420px)!important;
    gap:24px!important;
    align-items:start!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wp-block-woocommerce-cart-order-summary-block{
    min-width:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart__submit{
    align-self:end!important;
  }
}

/* Tablet: product row remains one line but tighter. */
@media(min-width:768px) and (max-width:1024px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-items__row{
    grid-template-columns:
      70px
      minmax(160px,1fr)
      max-content
      100px!important;
    grid-template-areas:"image product quantity total"!important;
    gap:12px!important;
  }
}

/* Mobile: return to stacked product card. */
@media(max-width:767px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-items__row{
    grid-template-columns:64px minmax(0,1fr)!important;
    grid-template-areas:
      "image product"
      "image quantity"
      "total total"!important;
    gap:10px 12px!important;
    padding-right:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-item__quantity > .wc-block-cart-item__remove-link{
    position:static!important;
    transform:none!important;
    margin-inline-start:8px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-item__quantity{
    display:flex!important;
    align-items:center!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-item__total{
    text-align:right!important;
    padding-top:8px!important;
  }
}


/* ==========================================================
   UETM v4.7.3 — Cart Layout Refinement
   Fixes the oversized full-width summary and awkward product row.
   ========================================================== */

/* Main cart remains one column: products first, compact summary second. */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-components-sidebar-layout.wc-block-cart{
  display:flex!important;
  flex-direction:column!important;
  gap:var(--uetm-wc-block-panel-gap)!important;
  align-items:stretch!important;
}

/* Product panel full width */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__main{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:20px 28px!important;
}

/* Compact summary below, aligned RIGHT in RTL layout */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__sidebar{
  width:min(100%,520px)!important;
  max-width:520px!important;
  margin:0 0 0 auto!important;
  padding:22px!important;

  display:block!important;
  position:static!important;
  top:auto!important;

  align-self:flex-end!important;
}

/* Do not force weird internal 2-column summary layout */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__sidebar{
  grid-template-columns:none!important;
}

/* Product table */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items{
  width:100%!important;
  table-layout:auto!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__header{
  display:none!important;
}

/* Product row:
   [ image ] [ product info + actions ] [ total ]
*/
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__row{
  display:grid!important;
  grid-template-columns:
    var(--uetm-wc-block-img)
    minmax(0,1fr)
    minmax(110px,150px)!important;

  grid-template-areas:"image product total"!important;

  gap:20px!important;
  align-items:center!important;

  width:100%!important;
  min-width:0!important;

  padding:22px 0!important;
  padding-right:0!important;

  border-bottom:1px solid var(--uetm-border,#2E3438)!important;
}

/* Reset all cells from the previous layout */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-items__row > td{
  display:block!important;
  position:static!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

/* Image */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__image{
  grid-area:image!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__image img{
  display:block!important;
  margin:0!important;
}

/* Product cell */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__product{
  grid-area:product!important;
  min-width:0!important;
}

/* Product internal layout:
   text on top, actions below it but still vertically centered in same row
*/
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__wrap{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
  min-width:0!important;
}

/* Product title */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-components-product-name{
  display:block!important;
  max-width:100%!important;
  margin:0!important;

  color:var(--uetm-text,#F4F4F4)!important;
  font-weight:700!important;
  line-height:1.6!important;
  text-decoration:none!important;
}

/* Unit price + variation text */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__prices{
  margin:2px 0 0!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-components-product-metadata{
  margin:0!important;
  color:var(--uetm-muted,#9A9FA5)!important;
}

/* Quantity + delete row */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__quantity{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:var(--uetm-wc-block-actions-gap)!important;

  width:max-content!important;
  margin:10px 0 0!important;

  direction:ltr!important;
}

/* Remove is no longer absolute */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__quantity > .wc-block-cart-item__remove-link{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
  order:1!important;
}

/* Quantity after delete button */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__quantity > .wc-block-components-quantity-selector{
  order:2!important;
}

/* Total column */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__total{
  grid-area:total!important;

  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;

  min-width:0!important;

  text-align:left!important;
  color:var(--uetm-primary,#D4AF37)!important;
  font-size:17px!important;
  font-weight:800!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart-item__total .wc-block-formatted-money-amount{
  color:var(--uetm-primary,#D4AF37)!important;
  font-weight:800!important;
}

/* Summary typography and spacing */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__totals-title{
  margin:0 0 14px!important;
  font-size:18px!important;
  font-weight:700!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-components-totals-wrapper{
  border-color:var(--uetm-border,#2E3438)!important;
}

body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__submit{
  margin-top:18px!important;
}

/* Checkout button cleaner */
body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
.wc-block-cart__submit-button{
  min-height:52px!important;

  background:var(--uetm-primary,#D4AF37)!important;
  color:var(--uetm-btn-primary-text,#0B0D0F)!important;

  border-radius:10px!important;
  border:0!important;

  font-weight:800!important;
  text-decoration:none!important;
}

/* Tablet */
@media(min-width:768px) and (max-width:1024px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-items__row{
    grid-template-columns:72px minmax(0,1fr) 110px!important;
    gap:14px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart__sidebar{
    width:min(100%,480px)!important;
    max-width:480px!important;
  }
}

/* Mobile */
@media(max-width:767px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart__main{
    padding:14px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-items__row{
    grid-template-columns:64px minmax(0,1fr)!important;
    grid-template-areas:
      "image product"
      "total total"!important;
    gap:10px 12px!important;
    padding:16px 0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-item__quantity{
    margin-top:8px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart-item__total{
    justify-content:flex-end!important;
    padding-top:8px!important;
    border-top:1px dashed var(--uetm-border,#2E3438)!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below
  .wc-block-cart__sidebar{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    align-self:stretch!important;
  }
}


/* ==========================================================
   UETM v4.7.4 — Cart Product + Quantity Same Row
   Desktop/tablet:
   Image | Product Info | Quantity/Remove | Total
   Quantity remains nested in Woo Blocks DOM but is visually
   promoted into a second column inside the product cell.
   ========================================================== */

@media(min-width:768px){

  /* Product cell itself stays in the middle row column. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__product{
    min-width:0!important;
    align-self:stretch!important;
  }

  /* The real WooCommerce product wrapper becomes a 2-column grid:
     RIGHT in RTL = product information
     LEFT          = quantity + remove actions
  */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap{
    display:grid!important;

    grid-template-columns:minmax(0,1fr) max-content!important;
    grid-template-rows:auto auto auto!important;

    grid-template-areas:
      "title actions"
      "price actions"
      "meta actions"!important;

    column-gap:24px!important;
    row-gap:3px!important;

    align-items:center!important;
    align-content:center!important;

    width:100%!important;
    height:100%!important;
    min-width:0!important;

    direction:rtl!important;
  }

  /* Product name */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap > .wc-block-components-product-name{
    grid-area:title!important;

    min-width:0!important;
    max-width:100%!important;

    margin:0!important;

    text-align:right!important;
    align-self:end!important;
  }

  /* Unit price */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap > .wc-block-cart-item__prices{
    grid-area:price!important;

    margin:2px 0 0!important;

    text-align:right!important;
    align-self:center!important;
  }

  /* Variation / product metadata */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap > .wc-block-components-product-metadata{
    grid-area:meta!important;

    margin:0!important;

    text-align:right!important;
    align-self:start!important;
  }

  /* Quantity + Trash are now vertically centered beside product info. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap > .wc-block-cart-item__quantity{
    grid-area:actions!important;

    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;

    width:max-content!important;

    margin:0!important;
    padding:0!important;

    align-self:center!important;

    direction:ltr!important;
  }

  /* Keep Trash + Quantity on the exact same baseline. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__quantity > .wc-block-cart-item__remove-link,

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__quantity > .wc-block-components-quantity-selector{
    align-self:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
}

/* Tablet gets a slightly tighter gap. */
@media(min-width:768px) and (max-width:1024px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-summary-below.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap{
    column-gap:14px!important;
  }
}

/* Mobile intentionally keeps the stacked layout from v4.7.3. */
@media(max-width:767px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-inline-actions
  .wc-block-cart-item__wrap{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
  }
}


/* ==========================================================
   UETM v4.7.5 — WooCommerce Blocks Mobile Cart Cards
   Dedicated mobile layout; desktop/tablet remain unchanged.
   ========================================================== */
@media(max-width:767px){

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-sidebar-layout.wc-block-cart{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
    width:100%!important;
    padding-inline:12px!important;
  }

  /* Remove the large desktop panel shell on mobile. Each row becomes a card. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__main{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items,
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items tbody{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__header{
    display:none!important;
  }

  /* Product card. display:contents on product wrappers lets the real nested
     Woo Blocks fields participate in one clean mobile grid without moving DOM. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row{
    display:grid!important;
    grid-template-columns:var(--uetm-wc-block-mobile-img) minmax(0,1fr)!important;
    grid-template-areas:
      "image title"
      "image unitprice"
      "image metadata"
      "actions actions"
      "total total"!important;
    column-gap:12px!important;
    row-gap:4px!important;
    align-items:start!important;

    width:100%!important;
    min-width:0!important;
    margin:0 0 var(--uetm-wc-block-mobile-gap)!important;
    padding:14px!important;

    background:var(--uetm-surface,#101314)!important;
    border:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:var(--uetm-wc-block-mobile-r)!important;
    overflow:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row:last-child{
    margin-bottom:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row > td{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__image{
    display:block!important;
    grid-area:image!important;
    align-self:start!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__image a{
    display:block!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__image img{
    display:block!important;
    width:var(--uetm-wc-block-mobile-img)!important;
    height:var(--uetm-wc-block-mobile-img)!important;
    max-width:none!important;
    margin:0!important;
    padding:5px!important;
    object-fit:contain!important;
    background:#fff!important;
    border:0!important;
    border-radius:10px!important;
  }

  /* Flatten only the product wrappers — no React DOM mutation. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__product,
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__wrap{
    display:contents!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-product-name{
    grid-area:title!important;
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    color:var(--uetm-text,#F4F4F4)!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1.7!important;
    text-align:right!important;
    text-decoration:none!important;
    overflow-wrap:anywhere!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__prices{
    grid-area:unitprice!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    color:var(--uetm-muted,#9A9FA5)!important;
    font-size:12px!important;
    text-align:right!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-product-metadata{
    grid-area:metadata!important;
    display:block!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    color:var(--uetm-muted,#9A9FA5)!important;
    font-size:11px!important;
    line-height:1.7!important;
    text-align:right!important;
  }

  /* Quantity + trash on their own clean row. JS can keep its inner quantity
     grid; we only position the action group itself. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__quantity,
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__quantity.uetm-wc-block-cart-actions{
    grid-area:actions!important;
    justify-self:right!important;
    align-self:center!important;
    width:max-content!important;
    max-width:100%!important;
    margin:10px 0 0!important;
    padding-top:12px!important;
    border-top:1px solid var(--uetm-border,#2E3438)!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__quantity > .wc-block-cart-item__remove-link{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
  }

  /* Product subtotal across full card width. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__total{
    grid-area:total!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-width:0!important;
    margin-top:9px!important;
    padding-top:12px!important;
    border-top:1px solid var(--uetm-border,#2E3438)!important;
    color:var(--uetm-primary,#D4AF37)!important;
    font-size:14px!important;
    font-weight:900!important;
    text-align:left!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__total::before{
    content:"جمع";
    color:var(--uetm-muted,#9A9FA5)!important;
    font-size:11px!important;
    font-weight:700!important;
  }

  /* Summary becomes a separate, calm mobile card. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__sidebar{
    display:block!important;
    position:static!important;
    width:100%!important;
    max-width:none!important;
    margin:4px 0 20px!important;
    padding:16px!important;
    background:var(--uetm-surface,#101314)!important;
    border:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:var(--uetm-wc-block-mobile-r)!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__totals-title{
    margin:0 0 12px!important;
    padding:0!important;
    font-size:16px!important;
    line-height:1.5!important;
    font-weight:900!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-totals-wrapper{
    padding-block:12px!important;
    border-color:var(--uetm-border,#2E3438)!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__submit{
    width:100%!important;
    margin:14px 0 0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__submit-button{
    width:100%!important;
    min-height:50px!important;
    padding:0 16px!important;
    border:0!important;
    border-radius:10px!important;
    background:var(--uetm-primary,#D4AF37)!important;
    color:var(--uetm-btn-primary-text,#0B0D0F)!important;
    font-size:14px!important;
    font-weight:900!important;
  }

  /* Coupon should not blow out the card width. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-totals-coupon,
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-panel{
    max-width:100%!important;
  }
}


/* ==========================================================
   UETM v4.7.6 — MOBILE CART REBUILD / HARD CONTAINMENT
   This layer intentionally overrides the previous mobile card
   implementation. No display:contents. No desktop table widths.
   ========================================================== */
@media(max-width:767px){

  /* ----------------------------------------------------------
     1) HARD WIDTH RESET
     Woo Blocks / theme wrappers must never be wider than viewport.
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart{
    overflow-x:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart
  .wp-block-woocommerce-cart,

  body.uetm-enabled.uetm-wc-blocks-cart
  .wp-block-woocommerce-filled-cart-block,

  body.uetm-enabled.uetm-wc-blocks-cart
  .wc-block-components-sidebar-layout.wc-block-cart,

  body.uetm-enabled.uetm-wc-blocks-cart
  .wc-block-cart__main,

  body.uetm-enabled.uetm-wc-blocks-cart
  .wc-block-cart__sidebar,

  body.uetm-enabled.uetm-wc-blocks-cart
  .wc-block-cart-items,

  body.uetm-enabled.uetm-wc-blocks-cart
  .wc-block-cart-items tbody{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    inset:auto!important;
    transform:none!important;
    float:none!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart
  .wp-block-woocommerce-cart,
  body.uetm-enabled.uetm-wc-blocks-cart
  .wp-block-woocommerce-filled-cart-block{
    padding-left:0!important;
    padding-right:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-sidebar-layout.wc-block-cart{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;

    padding-left:12px!important;
    padding-right:12px!important;

    overflow:visible!important;
  }

  /* ----------------------------------------------------------
     2) PRODUCT PANEL
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__main{
    flex:0 0 auto!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items,
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items tbody{
    display:block!important;
    table-layout:auto!important;
    border:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__header{
    display:none!important;
  }

  /* ----------------------------------------------------------
     3) EACH PRODUCT = ONE REAL MOBILE CARD

     Physical layout:
     [ product information ][ image ]
     [ total / subtotal full width ]

     We deliberately KEEP product wrappers intact.
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row{
    box-sizing:border-box!important;

    display:grid!important;
    grid-template-columns:minmax(0,1fr) var(--uetm-wc-block-mobile-img)!important;
    grid-template-areas:
      "product image"
      "total total"!important;

    direction:ltr!important;

    column-gap:12px!important;
    row-gap:12px!important;
    align-items:start!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0 0 var(--uetm-wc-block-mobile-gap)!important;
    padding:14px!important;

    background:var(--uetm-surface,#101314)!important;
    border:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:var(--uetm-wc-block-mobile-r)!important;

    overflow:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row:last-child{
    margin-bottom:0!important;
  }

  /* Kill ALL old table-cell sizing and old grid participation. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row > td{
    box-sizing:border-box!important;
    display:block!important;
    position:static!important;
    float:none!important;

    width:auto!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:0!important;

    border:0!important;

    inset:auto!important;
    transform:none!important;
  }

  /* ----------------------------------------------------------
     4) IMAGE — right side, never clipped
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__image{
    grid-area:image!important;
    justify-self:end!important;
    align-self:start!important;

    width:var(--uetm-wc-block-mobile-img)!important;
    min-width:var(--uetm-wc-block-mobile-img)!important;
    max-width:var(--uetm-wc-block-mobile-img)!important;

    overflow:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__image a{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__image img{
    box-sizing:border-box!important;
    display:block!important;

    width:100%!important;
    height:var(--uetm-wc-block-mobile-img)!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:5px!important;

    object-fit:contain!important;

    background:#fff!important;
    border:0!important;
    border-radius:10px!important;
  }

  /* ----------------------------------------------------------
     5) PRODUCT INFO — keep Woo's actual nested DOM intact
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__product{
    grid-area:product!important;

    display:block!important;
    direction:rtl!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    overflow:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__wrap{
    box-sizing:border-box!important;

    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    gap:3px!important;

    direction:rtl!important;
    overflow:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-product-name{
    display:block!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:0!important;

    color:var(--uetm-text,#F4F4F4)!important;

    font-size:12px!important;
    font-weight:800!important;
    line-height:1.65!important;

    text-align:right!important;
    text-decoration:none!important;

    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__prices{
    display:block!important;

    width:100%!important;
    min-width:0!important;

    margin:2px 0 0!important;
    padding:0!important;

    color:var(--uetm-muted,#9A9FA5)!important;

    font-size:11px!important;
    line-height:1.5!important;

    text-align:right!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-product-metadata{
    display:block!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:0!important;

    color:var(--uetm-muted,#9A9FA5)!important;

    font-size:10px!important;
    line-height:1.6!important;

    text-align:right!important;
    overflow-wrap:anywhere!important;
  }

  /* ----------------------------------------------------------
     6) ACTIONS — quantity + trash, same line, inside product area
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__quantity,
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__quantity.uetm-wc-block-cart-actions{
    box-sizing:border-box!important;

    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;

    align-items:center!important;
    justify-content:flex-start!important;

    align-self:flex-end!important;

    width:max-content!important;
    min-width:0!important;
    max-width:100%!important;

    margin:10px 0 0!important;
    padding:0!important;

    border:0!important;

    direction:ltr!important;
    overflow:visible!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__quantity > .wc-block-cart-item__remove-link{
    position:static!important;
    inset:auto!important;
    transform:none!important;

    flex:0 0 var(--uetm-wc-block-remove)!important;

    margin:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-quantity-selector.uetm-wc-block-qty-fixed{
    flex:0 0 auto!important;

    max-width:100%!important;

    margin:0!important;
  }

  /* ----------------------------------------------------------
     7) PRODUCT TOTAL — full-width clean footer
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__total{
    box-sizing:border-box!important;

    grid-area:total!important;

    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;

    direction:rtl!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:11px 0 0!important;

    border-top:1px solid var(--uetm-border,#2E3438)!important;

    color:var(--uetm-primary,#D4AF37)!important;

    font-size:14px!important;
    font-weight:900!important;

    text-align:left!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__total::before{
    content:"جمع محصول"!important;

    color:var(--uetm-muted,#9A9FA5)!important;

    font-size:10px!important;
    font-weight:700!important;
  }

  /* Woo may leave internal wrappers with desktop alignment. */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-item__total > *{
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
  }

  /* ----------------------------------------------------------
     8) SUMMARY CARD — 100% width, no horizontal overflow
     ---------------------------------------------------------- */
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__sidebar{
    box-sizing:border-box!important;

    display:block!important;
    position:static!important;

    flex:0 0 auto!important;
    align-self:stretch!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0 0 18px!important;
    padding:14px!important;

    background:var(--uetm-surface,#101314)!important;

    border:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:var(--uetm-wc-block-mobile-r)!important;

    overflow:hidden!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wp-block-woocommerce-cart-order-summary-block,

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-totals-wrapper,

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-totals-coupon,

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-panel,

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__submit{
    box-sizing:border-box!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin-left:0!important;
    margin-right:0!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__totals-title{
    margin:0 0 10px!important;
    padding:0!important;

    font-size:15px!important;
    line-height:1.5!important;
    font-weight:900!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-totals-wrapper{
    padding:11px 0!important;
    border-color:var(--uetm-border,#2E3438)!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__submit{
    margin-top:12px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart__submit-button{
    box-sizing:border-box!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:48px!important;

    margin:0!important;
    padding:0 12px!important;

    border:0!important;
    border-radius:10px!important;

    background:var(--uetm-primary,#D4AF37)!important;
    color:var(--uetm-btn-primary-text,#0B0D0F)!important;

    font-size:13px!important;
    font-weight:900!important;
    text-align:center!important;
  }
}

/* Extra-small screens: make controls a little tighter without changing DOM. */
@media(max-width:390px){
  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-sidebar-layout.wc-block-cart{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-cart-items__row{
    padding:12px!important;
    column-gap:10px!important;
  }

  body.uetm-enabled.uetm-wc-blocks-cart.uetm-wc-blocks-mobile-cards
  .wc-block-components-product-name{
    font-size:11px!important;
  }
}


/* ==========================================================
   UETM v4.7.7 — MOBILE MENU OFF-CANVAS
   Elementor dropdown becomes a drawer like Mini Cart.
   Desktop remains untouched.
   ========================================================== */

.uetm-mobile-menu-overlay{
  display:none;
}

@media(max-width:767px){

  body.uetm-mobile-menu-is-open{
    overflow:hidden!important;
    touch-action:none!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header{
    overflow:visible!important;
  }

  /* Keep the mobile header itself fixed/stable; drawer is viewport-fixed. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-head,
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-slot-menu,
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-nav{
    position:static!important;
    overflow:visible!important;
  }

  /* Logo stays exactly in the center column. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-head{
    grid-template-columns:1fr auto 1fr!important;
    grid-template-areas:"actions logo menu"!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-slot-logo{
    grid-area:logo!important;
    justify-self:center!important;
    align-self:center!important;
    z-index:2!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-slot-menu{
    grid-area:menu!important;
    justify-self:end!important;
    z-index:3!important;
  }

  /* Hamburger stays a simple 38x38 trigger. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-nav .elementor-menu-toggle{
    position:relative!important;
    z-index:3!important;

    width:38px!important;
    height:38px!important;

    margin:0!important;
    padding:0!important;

    border:0!important;
    border-radius:9px!important;

    background:transparent!important;
    color:var(--uetm-header-text,var(--uetm-text,#F4F4F4))!important;

    box-shadow:none!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-nav .elementor-menu-toggle.elementor-active{
    background:var(--uetm-surface-2,#171B1E)!important;
    color:var(--uetm-primary,#D4AF37)!important;
  }

  /* Global backdrop. */
  .uetm-mobile-menu-overlay{
    display:block!important;
    position:fixed!important;
    inset:0!important;

    z-index:999998!important;

    background:rgba(0,0,0,.68)!important;
    -webkit-backdrop-filter:blur(3px)!important;
    backdrop-filter:blur(3px)!important;

    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;

    transition:
      opacity .24s ease,
      visibility .24s ease!important;
  }

  .uetm-mobile-menu-overlay.is-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  /* Drawer: override Elementor dropdown completely. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav.uetm-mobile-nav-offcanvas
  .elementor-nav-menu--dropdown{
    box-sizing:border-box!important;

    display:block!important;

    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;

    inset-inline-start:auto!important;
    inset-inline-end:0!important;

    width:min(var(--uetm-header-offcanvas-w,320px),88vw)!important;
    min-width:0!important;
    max-width:88vw!important;

    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    max-height:none!important;

    margin:0!important;
    padding:0!important;

    z-index:999999!important;

    direction:rtl!important;

    background:var(--uetm-surface,#101314)!important;
    color:var(--uetm-text,#F4F4F4)!important;

    border:0!important;
    border-left:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:0!important;

    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;

    transform:translate3d(105%,0,0)!important;
    opacity:1!important;
    visibility:visible!important;

    transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;

    box-shadow:-18px 0 60px rgba(0,0,0,.32)!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav.uetm-mobile-offcanvas-open
  .elementor-nav-menu--dropdown{
    transform:translate3d(0,0,0)!important;
  }

  /* Drawer top bar. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-head{
    position:sticky!important;
    top:0!important;

    z-index:4!important;

    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;

    min-height:68px!important;

    padding:12px 16px!important;

    background:var(--uetm-surface,#101314)!important;
    border-bottom:1px solid var(--uetm-border,#2E3438)!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-head strong{
    color:var(--uetm-text,#F4F4F4)!important;
    font-size:15px!important;
    font-weight:800!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-close{
    appearance:none!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:38px!important;
    height:38px!important;

    padding:0!important;

    border:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:10px!important;

    background:var(--uetm-bg,#0B0D0F)!important;
    color:var(--uetm-text,#F4F4F4)!important;

    cursor:pointer!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-close span{
    display:block!important;
    font-size:26px!important;
    font-weight:300!important;
    line-height:1!important;
    transform:translateY(-1px)!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-close:hover{
    border-color:var(--uetm-primary,#D4AF37)!important;
    color:var(--uetm-primary,#D4AF37)!important;
  }

  /* Elementor dropdown list itself. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown > ul,
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-nav-menu{
    display:block!important;

    width:100%!important;
    max-width:100%!important;

    margin:0!important;
    padding:10px 12px 24px!important;

    background:transparent!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown li{
    width:100%!important;
    margin:0!important;
    padding:0!important;

    border:0!important;
    background:transparent!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-item{
    box-sizing:border-box!important;

    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;

    width:100%!important;
    min-height:48px!important;

    margin:2px 0!important;
    padding:0 13px!important;

    border:0!important;
    border-radius:9px!important;

    background:transparent!important;

    color:var(--uetm-text,#F4F4F4)!important;

    font-size:13px!important;
    font-weight:600!important;
    line-height:1.4!important;

    text-align:right!important;

    transition:
      background .18s ease,
      color .18s ease!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-item:hover,
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-item-active{
    background:var(--uetm-surface-2,#171B1E)!important;
    color:var(--uetm-primary,#D4AF37)!important;
  }

  /* Submenus stay inside the drawer instead of creating another floating box. */
  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .sub-menu{
    position:static!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:0 12px 6px 0!important;

    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.uetm-enabled.uetm-vg-header-layout.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .sub-menu .elementor-item{
    min-height:42px!important;
    color:var(--uetm-muted,#9A9FA5)!important;
    font-size:12px!important;
  }
}


/* ==========================================================
   UETM v4.7.8 — OFF-CANVAS DECOUPLED FROM HEADER LAYOUT
   IMPORTANT:
   This layer intentionally does NOT modify:
   - header width
   - Elementor container width
   - mobile header grid
   - logo position
   - search position
   It only transforms the existing mobile nav dropdown.
   ========================================================== */

@media(max-width:767px){

  /* Offcanvas works even when Enable VG Header Layout is OFF. */
  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header{
    overflow:visible!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-nav{
    overflow:visible!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header .uetm-mobile-nav .elementor-menu-toggle{
    position:relative!important;
    z-index:3!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav.uetm-mobile-nav-offcanvas
  .elementor-nav-menu--dropdown{
    box-sizing:border-box!important;

    display:block!important;

    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;

    inset-inline-start:auto!important;
    inset-inline-end:0!important;

    width:min(var(--uetm-header-offcanvas-w,320px),88vw)!important;
    min-width:0!important;
    max-width:88vw!important;

    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    max-height:none!important;

    margin:0!important;
    padding:0!important;

    z-index:999999!important;

    direction:rtl!important;

    background:var(--uetm-surface,#101314)!important;
    color:var(--uetm-text,#F4F4F4)!important;

    border:0!important;
    border-left:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:0!important;

    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;

    transform:translate3d(105%,0,0)!important;
    opacity:1!important;
    visibility:visible!important;

    transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;

    box-shadow:-18px 0 60px rgba(0,0,0,.32)!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav.uetm-mobile-offcanvas-open
  .elementor-nav-menu--dropdown{
    transform:translate3d(0,0,0)!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-head{
    position:sticky!important;
    top:0!important;
    z-index:4!important;

    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;

    min-height:68px!important;
    padding:12px 16px!important;

    background:var(--uetm-surface,#101314)!important;
    border-bottom:1px solid var(--uetm-border,#2E3438)!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-head strong{
    color:var(--uetm-text,#F4F4F4)!important;
    font-size:15px!important;
    font-weight:800!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-offcanvas-menu-close{
    appearance:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    width:38px!important;
    height:38px!important;

    padding:0!important;

    border:1px solid var(--uetm-border,#2E3438)!important;
    border-radius:10px!important;

    background:var(--uetm-bg,#0B0D0F)!important;
    color:var(--uetm-text,#F4F4F4)!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown > ul,
  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-nav-menu{
    display:block!important;
    width:100%!important;
    max-width:100%!important;

    margin:0!important;
    padding:10px 12px 24px!important;

    background:transparent!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown li{
    width:100%!important;
    margin:0!important;
    padding:0!important;

    background:transparent!important;
    border:0!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-item{
    box-sizing:border-box!important;

    display:flex!important;
    align-items:center!important;

    width:100%!important;
    min-height:48px!important;

    margin:2px 0!important;
    padding:0 13px!important;

    border:0!important;
    border-radius:9px!important;

    background:transparent!important;
    color:var(--uetm-text,#F4F4F4)!important;

    font-size:13px!important;
    font-weight:600!important;

    text-align:right!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-item:hover,
  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .elementor-item-active{
    background:var(--uetm-surface-2,#171B1E)!important;
    color:var(--uetm-primary,#D4AF37)!important;
  }

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown .sub-menu{
    position:static!important;

    width:100%!important;
    min-width:0!important;
    max-width:100%!important;

    margin:0!important;
    padding:0 12px 6px 0!important;

    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
}

/* When Header Layout is disabled, explicitly neutralize UETM structural header rules.
   Elementor remains the sole owner of header/container widths. */
body.uetm-enabled:not(.uetm-vg-header-layout)
.uetm-vg-header{
  width:auto!important;
  max-width:none!important;
}

body.uetm-enabled:not(.uetm-vg-header-layout)
.uetm-vg-header > .e-con-inner,
body.uetm-enabled:not(.uetm-vg-header-layout)
.uetm-vg-header .e-con-inner{
  max-width:var(--container-max-width,initial);
}


/* ==========================================================
   UETM v4.7.9 — DESKTOP HEADER HARD ISOLATION
   Goal:
   - Desktop Elementor header/menu = 100% owned by Elementor.
   - UETM mobile off-canvas = ONLY <= 767px.
   ========================================================== */

/* DESKTOP / TABLET LANDSCAPE:
   When structural VG Header Layout is OFF, neutralize UETM header/menu sizing.
*/
@media(min-width:768px){

  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .e-con,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .e-con-inner,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .elementor-element,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .elementor-widget-container{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
  }

  /* Let Elementor nav widget own its desktop width/position completely. */
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .elementor-widget-nav-menu,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .elementor-nav-menu--main,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .elementor-nav-menu--main > .elementor-nav-menu,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header .elementor-nav-menu{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;

    position:static!important;

    margin-left:0!important;
    margin-right:0!important;

    transform:none!important;
  }

  /* Never turn desktop menu/dropdown into an off-canvas surface. */
  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav
  .elementor-nav-menu--dropdown{
    position:absolute!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;

    inset:auto!important;

    width:auto!important;
    min-width:0!important;
    max-width:none!important;

    height:auto!important;
    min-height:0!important;
    max-height:none!important;

    margin:0!important;

    transform:none!important;
    opacity:1!important;
    visibility:visible!important;

    box-shadow:none!important;
  }

  /* Overlay is strictly mobile-only. */
  .uetm-mobile-menu-overlay{
    display:none!important;
  }

  body.uetm-mobile-menu-is-open{
    overflow:auto!important;
    touch-action:auto!important;
  }
}

/* MOBILE ONLY:
   Off-canvas code is allowed to affect only the dedicated mobile menu widget.
*/
@media(max-width:767px){

  body.uetm-enabled.uetm-mobile-menu-offcanvas
  .uetm-vg-header
  .uetm-mobile-nav.uetm-mobile-nav-offcanvas{
    width:auto!important;
    max-width:none!important;
  }

  /* Do not touch the overall Elementor header/container width on mobile either. */
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header,
  body.uetm-enabled:not(.uetm-vg-header-layout)
  .uetm-vg-header > .e-con-inner{
    width:auto!important;
    max-width:none!important;
  }
}


/* ==========================================================
   UETM v4.8.5 — PRODUCT SEARCH LAYOUT ONLY
   IMPORTANT:
   Search has NO independent product-card visual styling.
   It uses the exact same .uetm-shop card rules as Shop/Category.
   ========================================================== */

/* Same archive content width as the normal Woo shop. */
body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-product-search-loop.search
.site-main{
  max-width:var(--uetm-archive-width)!important;
  margin-inline:auto!important;
}

/* Search controls only the grid columns.
   Everything inside li.product inherits the normal Shop CSS. */
body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-product-search-loop.search
ul.products{
  display:grid!important;
  grid-template-columns:repeat(var(--uetm-search-cols-d,4),minmax(0,1fr))!important;
  gap:var(--uetm-grid-gap)!important;

  width:100%!important;
  margin:0!important;
  padding:0!important;

  list-style:none!important;
}

body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-product-search-loop.search
ul.products::before,
body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-product-search-loop.search
ul.products::after{
  display:none!important;
}

/* Keep the discount badge inside the same card boundary on both
   native Woo Search and Elementor Shop loops. */
body.uetm-enabled.uetm-woocommerce.uetm-shop
ul.products > li.product{
  position:relative!important;
}

body.uetm-enabled.uetm-woocommerce.uetm-shop
ul.products > li.product > span.onsale{
  top:0!important;
  left:0!important;
  right:auto!important;

  margin:0!important;
  transform:none!important;

  z-index:3!important;

  min-width:auto!important;
  min-height:auto!important;

  padding:7px 10px!important;

  line-height:1.2!important;

  border-radius:0 0 var(--uetm-r-sm) 0!important;
}

/* Tablet/mobile only alter Search grid columns.
   Card visuals remain the same Shop rules. */
@media(max-width:1024px){
  body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-product-search-loop.search
  ul.products{
    grid-template-columns:repeat(var(--uetm-search-cols-t,3),minmax(0,1fr))!important;
  }
}

@media(max-width:767px){
  body.uetm-enabled.uetm-woocommerce.uetm-shop.uetm-product-search-loop.search
  ul.products{
    grid-template-columns:repeat(var(--uetm-search-cols-m,2),minmax(0,1fr))!important;
    gap:10px!important;
  }
}


/* ==========================================================
   UETM v4.8.4 — EQUAL PRODUCT CARD ACTIONS
   + GLOBAL VG PAGINATION
   ========================================================== */

/* ----------------------------------------------------------
   A) PRODUCT CARD BUTTON ALIGNMENT
   Applies to Shop / Category / Search WooCommerce loops.
   ---------------------------------------------------------- */

/* Grid items stretch to equal row height. */
body.uetm-enabled ul.products{
  align-items:stretch!important;
}

body.uetm-enabled ul.products > li.product{
  height:100%!important;
  min-height:0!important;

  display:flex!important;
  flex-direction:column!important;
}

/* The product link becomes the flexible content area.
   Price is pushed to the bottom of this area so CTA buttons
   begin at the exact same vertical position across the row. */
body.uetm-enabled ul.products > li.product
.woocommerce-LoopProduct-link{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;

  width:100%!important;
  min-width:0!important;
}

/* Titles get a predictable 2-line area without forcing giant gaps. */
body.uetm-enabled ul.products > li.product
.woocommerce-loop-product__title{
  min-height:calc(var(--uetm-product-title-size) * var(--uetm-lh-heading) * 2)!important;
}

/* Price goes to bottom of product-link content area. */
body.uetm-enabled ul.products > li.product
.woocommerce-LoopProduct-link .price{
  margin-top:auto!important;
  min-height:28px!important;

  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:4px!important;
}

/* Main catalog CTA always has identical height and alignment. */
body.uetm-enabled ul.products > li.product
> a.button,
body.uetm-enabled ul.products > li.product
> .button{
  box-sizing:border-box!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  flex:0 0 auto!important;

  min-height:var(--uetm-btn-h)!important;
  line-height:1.35!important;
}

/* Quick View is also a fixed action row. */
body.uetm-enabled ul.products > li.product
> .uetm-quick-view{
  box-sizing:border-box!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  flex:0 0 auto!important;

  min-height:var(--uetm-action-size)!important;
}

/* Search used extra margins in older layers; normalize to the same action stack. */
body.uetm-enabled.uetm-product-search-enabled.search
ul.products > li.product
> a.button{
  margin-top:0!important;
}

body.uetm-enabled.uetm-product-search-enabled.search
ul.products > li.product
> .uetm-quick-view{
  margin-top:8px!important;
}

/* On mobile use a smaller title reserve, but keep alignment. */
@media(max-width:767px){
  body.uetm-enabled ul.products > li.product
  .woocommerce-loop-product__title{
    min-height:calc(var(--uetm-product-title-size) * var(--uetm-lh-heading) * 2)!important;
  }

  body.uetm-enabled ul.products > li.product
  .woocommerce-LoopProduct-link .price{
    min-height:26px!important;
  }
}


/* ----------------------------------------------------------
   B) GLOBAL VG WOOCOMMERCE PAGINATION
   Search design is now the standard for:
   - Shop
   - Product Category
   - Product Tag
   - Product Taxonomy archives
   - Product Search
   ---------------------------------------------------------- */

body.uetm-enabled.woocommerce
nav.woocommerce-pagination,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination{
  display:flex!important;
  justify-content:center!important;

  width:100%!important;

  margin:28px 0 8px!important;
  padding:0!important;

  overflow:visible!important;
}

body.uetm-enabled.woocommerce
nav.woocommerce-pagination ul.page-numbers,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination ul.page-numbers{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;

  gap:10px!important;

  width:auto!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;

  list-style:none!important;
}

body.uetm-enabled.woocommerce
nav.woocommerce-pagination ul.page-numbers::before,
body.uetm-enabled.woocommerce
nav.woocommerce-pagination ul.page-numbers::after,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination ul.page-numbers::before,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination ul.page-numbers::after{
  display:none!important;
}

body.uetm-enabled.woocommerce
nav.woocommerce-pagination ul.page-numbers > li,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination ul.page-numbers > li{
  float:none!important;

  display:block!important;

  width:auto!important;
  height:auto!important;

  margin:0!important;
  padding:0!important;

  border:0!important;
  background:transparent!important;
}

body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > a,
body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > span,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > a,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > span{
  box-sizing:border-box!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:44px!important;
  min-width:44px!important;
  height:44px!important;

  margin:0!important;
  padding:0 9px!important;

  background:var(--uetm-surface,#101314)!important;
  color:var(--uetm-text,#F4F4F4)!important;

  border:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:9px!important;

  font-size:15px!important;
  font-weight:600!important;
  line-height:1!important;
  text-decoration:none!important;

  box-shadow:none!important;

  transition:
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    transform .18s ease!important;
}

body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > a:hover,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > a:hover{
  background:var(--uetm-surface-2,#171B1E)!important;
  color:var(--uetm-primary,#D4AF37)!important;
  border-color:var(--uetm-primary,#D4AF37)!important;
  transform:translateY(-1px)!important;
}

/* Current page = gold */
body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > span.current,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > span.current{
  background:var(--uetm-primary,#D4AF37)!important;
  color:var(--uetm-btn-primary-text,#0B0D0F)!important;
  border-color:var(--uetm-primary,#D4AF37)!important;

  font-weight:800!important;
}

/* Prev / Next */
body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > a.prev,
body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > a.next,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > a.prev,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > a.next{
  color:var(--uetm-text,#F4F4F4)!important;
  font-size:18px!important;
}

/* Dots */
body.uetm-enabled.woocommerce
nav.woocommerce-pagination .page-numbers > li > span.dots,
body.uetm-enabled.woocommerce-page
nav.woocommerce-pagination .page-numbers > li > span.dots{
  color:var(--uetm-text,#F4F4F4)!important;
  letter-spacing:2px!important;
}

/* Elementor archive pagination:
   match the same visual system when Elementor renders its own pagination. */
body.uetm-enabled
.elementor-widget-woocommerce-products
.elementor-pagination,
body.uetm-enabled
.elementor-widget-wc-archive-products
.elementor-pagination{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;

  gap:10px!important;

  margin:28px 0 8px!important;
}

body.uetm-enabled
.elementor-widget-woocommerce-products
.elementor-pagination .page-numbers,
body.uetm-enabled
.elementor-widget-wc-archive-products
.elementor-pagination .page-numbers{
  box-sizing:border-box!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:44px!important;
  min-width:44px!important;
  height:44px!important;

  margin:0!important;
  padding:0 9px!important;

  background:var(--uetm-surface,#101314)!important;
  color:var(--uetm-text,#F4F4F4)!important;

  border:1px solid var(--uetm-border,#2E3438)!important;
  border-radius:9px!important;

  font-size:15px!important;
  font-weight:600!important;
  line-height:1!important;
  text-decoration:none!important;
}

body.uetm-enabled
.elementor-widget-woocommerce-products
.elementor-pagination .page-numbers.current,
body.uetm-enabled
.elementor-widget-wc-archive-products
.elementor-pagination .page-numbers.current{
  background:var(--uetm-primary,#D4AF37)!important;
  color:var(--uetm-btn-primary-text,#0B0D0F)!important;
  border-color:var(--uetm-primary,#D4AF37)!important;
}

body.uetm-enabled
.elementor-widget-woocommerce-products
.elementor-pagination a.page-numbers:hover,
body.uetm-enabled
.elementor-widget-wc-archive-products
.elementor-pagination a.page-numbers:hover{
  background:var(--uetm-surface-2,#171B1E)!important;
  color:var(--uetm-primary,#D4AF37)!important;
  border-color:var(--uetm-primary,#D4AF37)!important;
}

@media(max-width:767px){
  body.uetm-enabled.woocommerce
  nav.woocommerce-pagination ul.page-numbers,
  body.uetm-enabled.woocommerce-page
  nav.woocommerce-pagination ul.page-numbers,
  body.uetm-enabled
  .elementor-widget-woocommerce-products
  .elementor-pagination,
  body.uetm-enabled
  .elementor-widget-wc-archive-products
  .elementor-pagination{
    gap:6px!important;
  }

  body.uetm-enabled.woocommerce
  nav.woocommerce-pagination .page-numbers > li > a,
  body.uetm-enabled.woocommerce
  nav.woocommerce-pagination .page-numbers > li > span,
  body.uetm-enabled.woocommerce-page
  nav.woocommerce-pagination .page-numbers > li > a,
  body.uetm-enabled.woocommerce-page
  nav.woocommerce-pagination .page-numbers > li > span,
  body.uetm-enabled
  .elementor-widget-woocommerce-products
  .elementor-pagination .page-numbers,
  body.uetm-enabled
  .elementor-widget-wc-archive-products
  .elementor-pagination .page-numbers{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;

    padding:0 6px!important;

    border-radius:8px!important;

    font-size:13px!important;
  }
}


/* ==========================================================
   UETM v4.8.6 — SHOP / SEARCH CTA + SALE BADGE HARD FIX
   Fixes:
   1) Product-loop CTA button colors falling back to Woo defaults
      on Search in some themes/body contexts.
   2) Sale badge geometry / clipping inconsistencies.
   ========================================================== */

/* FORCE main catalog CTA style directly on product cards,
   independent from .woocommerce body-context differences. */
body.uetm-enabled ul.products > li.product > a.button,
body.uetm-enabled ul.products > li.product > .button,
body.uetm-enabled ul.products > li.product > a.add_to_cart_button,
body.uetm-enabled ul.products > li.product > a.product_type_simple,
body.uetm-enabled ul.products > li.product > a.product_type_variable,
body.uetm-enabled ul.products > li.product > a.product_type_grouped,
body.uetm-enabled ul.products > li.product > a.product_type_external{
  background:var(--uetm-btn-primary-bg)!important;
  color:var(--uetm-btn-primary-text)!important;
  border:1px solid transparent!important;
  border-radius:var(--uetm-btn-r)!important;
  box-shadow:none!important;
  text-decoration:none!important;
}

body.uetm-enabled ul.products > li.product > a.button:hover,
body.uetm-enabled ul.products > li.product > .button:hover,
body.uetm-enabled ul.products > li.product > a.add_to_cart_button:hover,
body.uetm-enabled ul.products > li.product > a.product_type_simple:hover,
body.uetm-enabled ul.products > li.product > a.product_type_variable:hover,
body.uetm-enabled ul.products > li.product > a.product_type_grouped:hover,
body.uetm-enabled ul.products > li.product > a.product_type_external:hover{
  background:var(--uetm-btn-primary-bg-hover)!important;
  color:var(--uetm-btn-primary-text)!important;
  border-color:transparent!important;
}

/* If a secondary action class is intentionally attached, preserve it. */
body.uetm-enabled ul.products > li.product > a.button.uetm-secondary,
body.uetm-enabled ul.products > li.product > .button.uetm-secondary,
body.uetm-enabled ul.products > li.product > a.button.ueds-btn-secondary,
body.uetm-enabled ul.products > li.product > .button.ueds-btn-secondary{
  background:var(--uetm-btn-secondary-bg)!important;
  color:var(--uetm-btn-secondary-text)!important;
  border:1px solid var(--uetm-btn-border)!important;
}

body.uetm-enabled ul.products > li.product > a.button.uetm-secondary:hover,
body.uetm-enabled ul.products > li.product > .button.uetm-secondary:hover,
body.uetm-enabled ul.products > li.product > a.button.ueds-btn-secondary:hover,
body.uetm-enabled ul.products > li.product > .button.ueds-btn-secondary:hover{
  background:var(--uetm-btn-secondary-bg-hover)!important;
  color:var(--uetm-btn-secondary-text)!important;
  border-color:var(--uetm-primary)!important;
}

/* HARDEN sale badge so it stays fully inside the card. */
body.uetm-enabled ul.products > li.product{
  position:relative!important;
}

body.uetm-enabled ul.products > li.product > span.onsale{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:auto!important;
  bottom:auto!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  min-width:auto!important;
  min-height:auto!important;
  width:auto!important;
  height:auto!important;

  margin:0!important;
  padding:8px 12px!important;

  background:var(--uetm-wc-sale-bg)!important;
  color:var(--uetm-wc-sale-text)!important;
  border:none!important;
  border-radius:0 0 var(--uetm-r-sm) 0!important;
  box-shadow:none!important;

  line-height:1.2!important;
  text-align:center!important;
  transform:none!important;
  z-index:4!important;
}


/* ==========================================================
   UETM v4.8.7 — SEARCH SALE BADGE DOM FIX
   Search DOM is:
   li.product > a.woocommerce-LoopProduct-link > span.onsale
   so the badge must be positioned relative to the product link,
   NOT as a direct child of li.product.
   This block is SEARCH-ONLY and does not alter Shop/Category badge layout.
   ========================================================== */

body.uetm-enabled.uetm-product-search-loop.search
ul.products > li.product > a.woocommerce-LoopProduct-link{
  position:relative!important;
  overflow:visible!important;
}

body.uetm-enabled.uetm-product-search-loop.search
ul.products > li.product > a.woocommerce-LoopProduct-link > span.onsale{
  position:absolute!important;

  top:0!important;
  left:0!important;
  right:auto!important;
  bottom:auto!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:auto!important;
  min-width:auto!important;
  max-width:max-content!important;

  height:auto!important;
  min-height:0!important;

  margin:0!important;
  padding:8px 12px!important;

  background:var(--uetm-wc-sale-bg,#D4AF37)!important;
  color:var(--uetm-wc-sale-text,#111111)!important;

  border:0!important;
  border-radius:0 0 var(--uetm-r-sm,8px) 0!important;

  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
  white-space:nowrap!important;

  text-align:center!important;
  text-indent:0!important;

  transform:none!important;
  z-index:5!important;

  box-shadow:none!important;
}

/* Prevent theme/Woo default sale positioning from re-introducing offsets. */
body.uetm-enabled.uetm-product-search-loop.search
ul.products > li.product > a.woocommerce-LoopProduct-link > span.onsale::before,
body.uetm-enabled.uetm-product-search-loop.search
ul.products > li.product > a.woocommerce-LoopProduct-link > span.onsale::after{
  display:none!important;
}

@media(max-width:767px){
  body.uetm-enabled.uetm-product-search-loop.search
  ul.products > li.product > a.woocommerce-LoopProduct-link > span.onsale{
    padding:6px 9px!important;
    font-size:10px!important;
  }
}


/* ==========================================================
   UETM v4.8.8 — MOBILE / TABLET FILTER MINI-CART ASIDE
   Desktop >=1025px keeps the injected product/sidebar layout.
   Tablet + Mobile <=1024px gets a viewport-fixed drawer.
   Side is selected in Theme Manager: right / left.
   ========================================================== */

@media(max-width:1024px){

  /* Lock the page behind the filter drawer, like Mini Cart. */
  body.uetm-enabled.uetm-filter-mobile-aside.uetm-filter-drawer-open{
    overflow:hidden!important;
    touch-action:none!important;
  }

  /* Root must never become the fixed-position containing block. */
  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas{
    position:static!important;
  }

  /* Full viewport backdrop. */
  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:999990!important;

    background:rgba(0,0,0,.68)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;

    backdrop-filter:blur(3px)!important;
    -webkit-backdrop-filter:blur(3px)!important;

    transition:opacity .22s ease,visibility .22s ease!important;
  }

  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas.is-open
  .uetm-filter-backdrop{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  /* Drawer owns its own vertical scrolling. */
  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-popover{
    box-sizing:border-box!important;

    position:fixed!important;
    top:0!important;
    bottom:0!important;

    width:min(var(--uetm-filter-panel-width),92vw)!important;
    min-width:0!important;
    max-width:92vw!important;

    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    max-height:100dvh!important;

    margin:0!important;
    padding:0!important;

    z-index:999999!important;

    background:var(--uetm-surface)!important;
    color:var(--uetm-text)!important;

    border-radius:0!important;
    border-top:0!important;
    border-bottom:0!important;

    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;

    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;

    transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;
  }

  /* RIGHT selected */
  body.uetm-enabled.uetm-filter-mobile-aside.uetm-filter-aside-right
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-popover{
    right:0!important;
    left:auto!important;
    border-right:0!important;
    border-left:1px solid var(--uetm-border)!important;
    box-shadow:-22px 0 64px rgba(0,0,0,.38)!important;
    transform:translate3d(105%,0,0)!important;
  }

  /* LEFT selected */
  body.uetm-enabled.uetm-filter-mobile-aside.uetm-filter-aside-left
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-popover{
    left:0!important;
    right:auto!important;
    border-left:0!important;
    border-right:1px solid var(--uetm-border)!important;
    box-shadow:22px 0 64px rgba(0,0,0,.38)!important;
    transform:translate3d(-105%,0,0)!important;
  }

  /* Both directions open at transform 0. */
  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas.is-open
  .uetm-filter-popover{
    transform:translate3d(0,0,0)!important;
  }

  /* Header behaves like a mini-cart drawer header. */
  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-drawer-head{
    position:sticky!important;
    top:0!important;
    z-index:20!important;

    min-height:68px!important;
    padding:0 18px!important;

    background:color-mix(in srgb,var(--uetm-surface) 96%,transparent)!important;
    border-bottom:1px solid var(--uetm-border)!important;
  }

  /* The body scrolls inside drawer; keep form/actions well-contained. */
  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-form{
    padding:20px!important;
  }

  body.uetm-enabled.uetm-filter-mobile-aside
  .uetm-archive-filters.is-offcanvas
  .uetm-filter-actions{
    position:sticky!important;
    bottom:0!important;
    z-index:15!important;

    margin:0 -20px -20px!important;
    padding:14px 20px!important;

    background:var(--uetm-surface)!important;
    border-top:1px solid var(--uetm-border)!important;
  }
}

/* ---------- SINGLE PRODUCT GALLERY CONTROLLER v4.9.1 ---------- */
/*
 * Force a predictable WooCommerce single-product gallery: exactly one large
 * active image plus thumbnails. This intentionally normalizes galleries even
 * when FlexSlider created .flex-viewport, because a partially initialized
 * FlexSlider is the case that can leave all slides visible side-by-side.
 */
body.uetm-enabled.single-product .woocommerce-product-gallery{
  width:100%!important;
  max-width:100%!important;
}

/* Prevent the multi-image flash before the controller finishes loading. */
body.uetm-enabled.single-product .woocommerce-product-gallery:not(.uetm-gallery-ready)
.woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child){
  display:none!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled .flex-viewport{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  overflow:hidden!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.woocommerce-product-gallery__wrapper{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  translate:none!important;
  overflow:hidden!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.woocommerce-product-gallery__image{
  display:none!important;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:auto!important;
  float:none!important;
  clear:both!important;
  margin:0!important;
  padding:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.woocommerce-product-gallery__image.uetm-gallery-active,
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.woocommerce-product-gallery__image.flex-active-slide{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  z-index:1!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.woocommerce-product-gallery__image > a{
  display:block!important;
  width:100%!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.woocommerce-product-gallery__image img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  margin:0 auto!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.flex-control-thumbs{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  margin:14px 0 0!important;
  padding:0!important;
  list-style:none!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.flex-control-thumbs li{
  display:block!important;
  width:auto!important;
  float:none!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.flex-control-thumbs img{
  display:block!important;
  width:var(--uetm-single-thumb,80px)!important;
  height:var(--uetm-single-thumb,80px)!important;
  object-fit:contain!important;
  cursor:pointer!important;
  opacity:.60!important;
  transition:opacity .18s ease,border-color .18s ease,transform .18s ease!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.flex-control-thumbs img.flex-active,
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.flex-control-thumbs img.uetm-thumb-active{
  opacity:1!important;
}

/* ---------- SINGLE PRODUCT GALLERY THUMBNAIL DEDUPE v4.9.2 ---------- */
/* UETM owns exactly one thumbnail strip and positions it below the main image. */
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.flex-control-thumbs:not(.uetm-canonical-thumbs){
  display:none!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs{
  position:relative!important;
  inset:auto!important;
  order:99!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:100%!important;
  margin:14px 0 0!important;
  padding:0!important;
  list-style:none!important;
}

body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs .uetm-gallery-thumb-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

/* ---------- SINGLE PRODUCT GALLERY CLICK HARDENING v4.9.3 ---------- */
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs{
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs li,
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs .uetm-gallery-thumb-button,
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs img{
  pointer-events:auto!important;
  touch-action:manipulation!important;
  position:relative!important;
  z-index:3!important;
}
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs .uetm-gallery-thumb-button{
  cursor:pointer!important;
}
body.uetm-enabled.single-product .woocommerce-product-gallery.uetm-single-gallery-controlled
.uetm-canonical-thumbs .uetm-gallery-thumb-button.uetm-thumb-button-active{
  outline:2px solid var(--uetm-primary,#d7b13f)!important;
  outline-offset:2px!important;
  border-radius:var(--uetm-r-md,10px)!important;
}


/* ---------- SINGLE PRODUCT IMAGE COLUMN CENTERING v4.9.7 ---------- */
/*
 * Elementor stretches sibling product columns to the same row height. On a
 * taller product-info column that can leave the Product Images widget pinned
 * to the top of its column, creating empty space only underneath the image.
 * The empty space is therefore outside WooCommerce's gallery itself; changing
 * the <img> or slide alignment cannot fix it. Center the image widget inside
 * its own stretched Elementor column without touching UETM gallery/variation
 * behavior.
 */
@supports selector(:has(*)){
  body.uetm-enabled.uetm-elementor.uetm-single.single-product
  .e-con:has(> .elementor-widget-woocommerce-product-images)
  > .elementor-widget-woocommerce-product-images{
    width:100%!important;
    max-width:100%!important;
    margin-top:auto!important;
    margin-bottom:auto!important;
    align-self:stretch!important;
  }

  body.uetm-enabled.uetm-elementor.uetm-single.single-product
  .e-con:has(> .elementor-widget-woocommerce-product-images)
  > .elementor-widget-woocommerce-product-images
  > .elementor-widget-container{
    width:100%!important;
  }
}

/* Elementor legacy section/column fallback. */
body.uetm-enabled.uetm-elementor.uetm-single.single-product
.elementor-column .elementor-widget-woocommerce-product-images{
  margin-top:auto!important;
  margin-bottom:auto!important;
}

/* v4.9.10: Fixed desktop sidebar; mobile drawer rules are unchanged. */
@media(min-width:1025px){
 body.uetm-enabled .uetm-archive-filters.is-desktop-fixed .uetm-filter-buttons,
 body.uetm-enabled .uetm-archive-filters.is-desktop-fixed .uetm-filter-backdrop,
 body.uetm-enabled .uetm-archive-filters.is-desktop-fixed [data-uetm-filter-close],
 body.uetm-enabled .uetm-filter-sidebar-host [data-uetm-filter-close]{display:none!important;}
 body.uetm-enabled .uetm-archive-filters.is-fixed-inline{width:100%!important;max-width:none!important;}
 body.uetm-enabled .uetm-archive-filters.is-fixed-inline .uetm-filter-popover{
  position:static!important;inset:auto!important;display:block!important;width:100%!important;
  min-width:0!important;max-width:none!important;height:auto!important;max-height:none!important;
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;
  margin:0!important;overflow:visible!important;box-shadow:none!important;
 }
}

/* Fallback for previously cached Elementor purchase-widget HTML only. */
body.single-product .vx-summary form.cart .tpt__tiered-pricing,
body.single-product .vx-summary form.cart .tpt__tiered-pricing-preloaded-variations{display:none!important;}

/* Keep hierarchical button options on separate rows too. */
body.uetm-enabled .uetm-filter-option-grid.is-buttons:has(> [data-depth="1"]){grid-template-columns:minmax(0,1fr);}
