/* Scoped to catalogue controls; Elementor buttons elsewhere are unaffected. */
.rc-card{--rc-accent:#FF5A00;--rc-dark:#101C28;--rc-border:#E4E8EB;width:100%;min-width:0;text-align:left;margin-top:12px;color:var(--rc-dark)}
.rc-card *{box-sizing:border-box}
.rc-card:is(.rc-ready,.rc-preloaded)>.rc-native{display:none}
.rc-field{margin-bottom:10px}.rc-label{font-size:12px;font-weight:600;margin-bottom:6px;line-height:1.4}
.rc-options{display:flex;flex-wrap:wrap;gap:7px;padding:3px}
.rc-card button.rc-option{appearance:none!important;display:inline-flex!important;align-items:center;justify-content:center;margin:0!important;padding:5px 8px!important;border:1px solid var(--rc-border)!important;border-radius:5px!important;background:#fff!important;color:var(--rc-dark)!important;min-width:30px!important;min-height:30px!important;width:auto!important;height:auto!important;font-family:inherit!important;font-size:12px!important;font-weight:500;line-height:1.2!important;cursor:pointer;box-shadow:none!important;transform:none!important;position:relative}
.rc-card button.rc-color{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important;border-radius:50%!important;background:var(--rc-color)!important}
.rc-card button.rc-option[aria-checked=true]{outline:2px solid var(--rc-accent);outline-offset:2px}
.rc-card button.rc-size[aria-checked=true]{background:#FFF0E7!important;font-weight:700}
.rc-card button.rc-option[aria-checked=true]::after{content:'✓';position:absolute;right:-5px;top:-6px;border-radius:50%;width:13px;height:13px;font:10px/13px Arial;background:var(--rc-dark);color:#fff;text-align:center}
.rc-card button.rc-option:disabled{opacity:.3;cursor:not-allowed;text-decoration:line-through}
.rc-card button.rc-option:disabled::before{content:'';position:absolute;width:90%;height:1px;background:var(--rc-dark);transform:rotate(-35deg)}
.rc-card :is(button,a,input):focus-visible{outline:2px solid var(--rc-dark)!important;outline-offset:3px}
.rc-card button.rc-reset,.rc-card button.rc-retry{background:transparent!important;color:var(--rc-dark)!important;border:0!important;padding:3px!important;font-size:11px!important;text-decoration:underline;border-radius:0!important;min-height:24px;cursor:pointer}
.rc-price{font-size:14px;font-weight:600;color:var(--rc-accent)}.rc-stock,.rc-status{font-size:11px;line-height:1.5;margin:5px 0;overflow-wrap:anywhere}.rc-status:empty{display:none}
.rc-buy{display:flex;gap:6px;align-items:stretch;margin-top:8px}
.rc-card input.rc-quantity{width:48px!important;min-width:0!important;padding:5px!important;border:1px solid var(--rc-border)!important;border-radius:6px!important;background:#fff!important;color:var(--rc-dark)!important;font-size:13px;text-align:center;margin:0!important}
.rc-card button.rc-add{flex:1;min-width:0!important;background:var(--rc-accent)!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:10px 7px!important;margin:0!important;font-size:12px!important;line-height:1.3!important;cursor:pointer;white-space:normal!important;box-shadow:none!important}
.rc-card button.rc-add:disabled{opacity:.45;cursor:not-allowed}
.rc-detail{display:block;text-align:center;font-size:11px;margin-top:8px;color:var(--rc-dark);text-decoration:underline}

/* 1.1.0 Compact layout: remove the spacing distributed by product-card themes.
 * These overrides apply only AFTER a variable card is successfully enhanced.
 */
li.product:is(.rc-enhanced,:has(.rc-preloaded)),.cf-card:is(.rc-enhanced,:has(.rc-preloaded)) {
 display:flex!important;flex-direction:column!important;justify-content:flex-start!important;
 gap:0!important;min-height:0!important;height:auto!important;
}
li.product:is(.rc-enhanced,:has(.rc-preloaded)) > .woocommerce-loop-product__link,
li.product:is(.rc-enhanced,:has(.rc-preloaded)) > .woocommerce-LoopProduct-link,
.cf-card:is(.rc-enhanced,:has(.rc-preloaded)) > .cf-product-link {
 flex:0 0 auto!important;min-height:0!important;height:auto!important;margin:0!important;
 display:block!important;
}
:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) .woocommerce-loop-product__title,:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) .cf-card-title {
 margin:10px 0 6px!important;padding:0!important;line-height:1.3!important;
 min-height:0!important;height:auto!important;
}
:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) .price,:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) .cf-price {
 margin-top:0!important;margin-bottom:6px!important;min-height:0!important;
}
:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) .star-rating {margin-top:0!important;margin-bottom:6px!important;}
:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) [hidden]{display:none!important;}
:is(.rc-enhanced,li.product:has(.rc-preloaded),.cf-card:has(.rc-preloaded)) .rc-price {font-size:14px;color:#FF5A00;font-weight:600;margin:0 0 6px;}
.rc-price:empty{display:none;}
.rc-card:is(.rc-ready,.rc-preloaded) {
 margin:6px 0 0!important;padding:0!important;min-height:0!important;
 flex:1 0 auto!important;display:flex!important;flex-direction:column!important;
}
.rc-card .rc-ui{display:flex;flex-direction:column;flex:1;min-width:0;gap:0;}
.rc-card .rc-field{margin:0 0 7px!important;padding:0!important;}
.rc-card .rc-field-heading{display:flex;align-items:center;gap:6px;min-height:24px;margin:0 0 2px;}
.rc-card .rc-label{font-size:11px;line-height:1.3;margin:0;font-weight:600;}
.rc-card .rc-options{gap:5px;padding:3px;}
.rc-card button.rc-option{min-width:27px!important;min-height:27px!important;padding:4px 6px!important;font-size:11px!important;}
.rc-card button.rc-color{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important;}
.rc-card button.rc-reset{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 24px;width:24px!important;height:24px!important;min-height:24px!important;padding:0!important;margin:0!important;font:20px/1 Arial!important;text-decoration:none!important;}
.rc-card .rc-stock:empty,.rc-card .rc-status:empty{display:none;}
.rc-card .rc-stock{font-size:10px;margin:0 0 5px;}
.rc-card .rc-buy{margin-top:auto;padding-top:5px;gap:6px;min-height:41px;flex-wrap:nowrap;}
.rc-card input.rc-quantity{width:40px!important;flex:0 0 40px;height:36px!important;font-size:12px!important;}
.rc-card button.rc-add{display:flex!important;align-items:center;justify-content:center;gap:6px;min-height:36px!important;padding:8px 6px!important;font-size:12px!important;border-radius:7px!important;}
.rc-card button.rc-add svg{flex:0 0 16px;}
.rc-card .rc-status{margin:5px 0 0;font-size:11px;}
@media(pointer:coarse){.rc-card .rc-options{gap:7px;}.rc-card button.rc-option{min-height:30px!important;}.rc-card button.rc-color{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;}}

/* 1.2: compact images and natural-height cards, including first paint. */
li.product:has(.rc-card),.cf-card:has(.rc-card){align-self:start!important;justify-content:flex-start!important;}
li.product:has(.rc-card) img.attachment-woocommerce_thumbnail,li.product:has(.rc-card) img.wp-post-image,.cf-card:has(.rc-card) .cf-image img {width:100%!important;height:160px!important;object-fit:contain!important;margin-bottom:0!important;}
.rc-card:is(.rc-ready,.rc-preloaded){flex:0 0 auto!important;}
.rc-card .rc-ui{flex:0 0 auto!important;}
.rc-card .rc-buy{margin-top:0!important;}
.rc-preloaded>.rc-native{display:none;}
.rc-preview button.rc-option:disabled{opacity:1!important;}
:is(li.product,.cf-card):has(.rc-card) .woocommerce-loop-product__title,:is(li.product,.cf-card):has(.rc-card) .cf-product-link h3{font-size:13px!important;line-height:1.25!important;margin:7px 0 4px!important;}
@media(max-width:480px){li.product:has(.rc-card) img.wp-post-image,li.product:has(.rc-card) img.attachment-woocommerce_thumbnail,.cf-card:has(.rc-card) .cf-image img{height:140px!important;}}
.rc-card .rc-options{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;max-width:100%;min-width:0;scrollbar-width:thin;scrollbar-color:#FF5A00 #f3f5f6;padding:6px 5px!important;}
.rc-card .rc-options>.rc-option{flex:0 0 auto!important;white-space:nowrap!important;}
.rc-preview button.rc-option:disabled::before{display:none;}
/* 1.2.1: equal tracks and card heights; compact single-line choices. */
ul.products:has(.rc-card){display:grid!important;grid-template-columns:repeat(var(--rc-columns,4),minmax(0,1fr))!important;grid-auto-rows:1fr!important;gap:24px!important;}
ul.products:has(.rc-card)::before,ul.products:has(.rc-card)::after{display:none!important;}
ul.products.columns-2:has(.rc-card){--rc-columns:2;}
ul.products.columns-3:has(.rc-card){--rc-columns:3;}
ul.products.columns-5:has(.rc-card){--rc-columns:5;}
ul.products.columns-6:has(.rc-card){--rc-columns:6;}
ul.products:has(.rc-card)>li.product{width:100%!important;max-width:none!important;margin:0!important;float:none!important;box-sizing:border-box!important;align-self:stretch!important;}
li.product:has(.rc-card),.cf-card:has(.rc-card){height:100%!important;min-height:430px!important;align-self:stretch!important;box-sizing:border-box!important;}
.rc-card:is(.rc-ready,.rc-preloaded){flex:1 0 auto!important;display:flex!important;flex-direction:column!important;}
.rc-card .rc-ui{flex:1 0 auto!important;}
.rc-card .rc-buy{margin-top:auto!important;}
.rc-card .rc-field{margin-bottom:4px!important;}
.rc-card .rc-options{gap:4px!important;padding:5px 4px!important;}
.rc-card .rc-options>button.rc-color{flex:0 1 20px!important;width:20px!important;max-width:20px!important;min-width:12px!important;height:auto!important;min-height:0!important;aspect-ratio:1!important;align-self:center;}
.rc-card .rc-options>button.rc-size{flex:0 1 30px!important;min-width:0!important;min-height:24px!important;height:24px!important;padding:2px!important;font-size:10px!important;}
@media(max-width:1024px){ul.products:has(.rc-card){--rc-columns:3;}}
@media(max-width:767px){ul.products:has(.rc-card){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}}
@media(max-width:380px){ul.products:has(.rc-card){grid-template-columns:minmax(0,1fr)!important;}}
