.shop-builder-wrapper{display:block;width:100%;max-width:100%;min-width:0;align-items:initial}.shop-builder-form{padding:20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.shop-builder-group{min-width:0;margin:0 0 22px;padding:0 0 18px;border:0;border-bottom:1px solid #eee}.shop-builder-group legend{display:block;width:100%;margin-bottom:12px;font-size:16px;font-weight:700}.shop-builder-group label{display:flex;align-items:center;gap:9px;margin:10px 0;font-size:14px;line-height:1.5;cursor:pointer}.shop-builder-group input{flex:0 0 auto;margin:0}.shop-builder-price{display:grid;grid-template-columns:1fr 1fr;gap:10px}.shop-builder-price label{display:block;font-size:12px}.shop-builder-price input{display:block;width:100%;min-width:0;box-sizing:border-box;margin-top:6px;padding:9px;border:1px solid #ddd;border-radius:4px}.shop-builder-apply,.shop-builder-reset{width:100%;padding:11px 14px;margin:0 0 9px;border:1px solid #222;border-radius:4px;cursor:pointer}.shop-builder-apply{background:#222;color:#fff}.shop-builder-reset{background:#fff;color:#222}.shop-builder-count{margin:0 0 18px;font-size:14px}.shop-builder-products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0!important}.shop-builder-products:before,.shop-builder-products:after{display:none!important;content:none!important}.shop-builder-products>li.product{float:none!important;width:auto!important;margin:0!important;min-width:0}.shop-builder-products.columns-1{grid-template-columns:repeat(1,minmax(0,1fr))}.shop-builder-products.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-builder-products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-builder-products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.shop-builder-products.columns-5{grid-template-columns:repeat(5,minmax(0,1fr))}.shop-builder-products.columns-6{grid-template-columns:repeat(6,minmax(0,1fr))}.shop-builder-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.shop-builder-pagination button{min-width:38px;padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer}.shop-builder-pagination button.is-active{background:#222;color:#fff;border-color:#222}.shop-builder-loading .shop-builder-grid,.shop-builder-loading .shop-builder-pages{opacity:.5;pointer-events:none}@media(max-width:1024px){.shop-builder-products.columns-4,.shop-builder-products.columns-5,.shop-builder-products.columns-6{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.shop-builder-products,.shop-builder-products.columns-3,.shop-builder-products.columns-4,.shop-builder-products.columns-5,.shop-builder-products.columns-6{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}

/* Reference-inspired filter panel, search and responsive layout */
.shop-builder-search{margin:0 0 22px}.shop-builder-search label{display:block;font-size:16px;font-weight:700;margin:0 0 10px}.shop-builder-search input{display:block;box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #d5d9e2;border-radius:4px;font:inherit;min-width:0}
.shop-builder-group legend{color:#172033}.shop-builder-group label input[type=checkbox],.shop-builder-group label input[type=radio]{width:18px;height:18px;accent-color:#465cff}
.shop-builder-group label:hover span{color:#465cff}.shop-builder-apply{background:#465cff;border-color:#465cff}.shop-builder-apply:hover{filter:brightness(.94)}.shop-builder-reset:hover{border-color:#465cff;color:#465cff}
.shop-builder-wrapper .shop-builder-empty{padding:24px;border:1px dashed #d5d9e2;border-radius:6px;text-align:center}
.shop-builder-wrapper .shop-builder-pagination button.is-active{background:#465cff;border-color:#465cff}
.shop-builder-wrapper .shop-builder-results[aria-busy=true]::after{content:'Updating products…';display:block;margin:10px 0;color:#465cff;font-size:13px}
@media(max-width:767px){.shop-builder-form{padding:16px}.shop-builder-group{margin-bottom:18px;padding-bottom:14px}.shop-builder-group legend{font-size:16px}.shop-builder-wrapper .shop-builder-products{gap:12px!important}}
/* Shop Builder 1.2 separate filter and product grid */
.shop-builder-filter-widget .shop-builder-form{box-sizing:border-box;padding:18px;border:1px solid #e1e5eb;border-radius:6px;background:#fff;color:#252b36}
.shop-builder-search{margin:0 0 20px}.shop-builder-search label{display:block;font-weight:600;margin:0 0 8px}.shop-builder-search input,.shop-builder-price input{box-sizing:border-box;width:100%;min-width:0;padding:10px 12px;border:1px solid #d5d9e2;border-radius:3px;font:inherit;background:#fff;color:inherit}
.shop-builder-group{border:0;border-bottom:1px solid #e4e6eb;padding:0 0 16px;margin:0 0 18px;min-width:0}.shop-builder-group legend{font-size:16px;font-weight:600;padding:0 0 12px}.shop-builder-group>label{display:flex;align-items:center;gap:9px;margin:8px 0;cursor:pointer;line-height:1.5}.shop-builder-group input[type=checkbox],.shop-builder-group input[type=radio]{width:18px;height:18px;flex:0 0 18px;accent-color:#465cff;margin:0}.shop-builder-price{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shop-builder-price label{display:block;font-size:13px}.shop-builder-price input{display:block;margin-top:6px}
.shop-builder-rating-option{gap:10px!important}.shop-builder-stars{display:inline-flex;gap:1px;font-size:21px;line-height:1}.shop-builder-star.is-filled{color:#f5b800}.shop-builder-star.is-empty{color:#d0d2d6}.shop-builder-rating-option input{appearance:none;border:1px solid #999;border-radius:50%;background:#fff;position:relative}.shop-builder-rating-option input:checked{border-color:#465cff}.shop-builder-rating-option input:checked:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#465cff}
.shop-builder-apply,.shop-builder-reset{display:inline-block;margin:0 8px 0 0;padding:10px 16px;border:1px solid #465cff;border-radius:4px;background:#465cff;color:#fff;font:inherit;cursor:pointer}.shop-builder-reset{background:transparent;color:#303744;border-color:#d5d9e2}.shop-builder-product-grid .shop-builder-results{width:100%}.shop-builder-products{display:grid!important;grid-template-columns:repeat(var(--shop-builder-columns,3),minmax(0,1fr));gap:30px 20px;list-style:none!important;margin:0!important;padding:0!important}.shop-builder-products:before,.shop-builder-products:after{display:none!important}.shop-builder-products .product{float:none!important;width:auto!important;margin:0!important;padding:0!important;box-sizing:border-box}.shop-builder-product-box{height:100%;box-sizing:border-box;border:1px solid #e2e5eb;border-radius:5px;padding:12px;background:#fff;overflow:hidden}.shop-builder-product-image{display:block;position:relative;margin-bottom:12px}.shop-builder-product-image img{display:block;width:100%;height:auto;margin:0!important}.shop-builder-product-title{font-size:16px;line-height:1.4;margin:0 0 8px}.shop-builder-product-title a{text-decoration:none}.shop-builder-rating{margin:0 0 8px}.shop-builder-price{font-weight:600;margin:0 0 12px}.shop-builder-price del{opacity:.65;font-weight:400}.shop-builder-price ins{text-decoration:none}.shop-builder-cart .button{display:inline-block;margin:0!important}.shop-builder-sale-flash{position:absolute;z-index:2;top:10px;left:10px;background:#e83e63;color:#fff;border-radius:3px;padding:4px 8px;font-size:12px}.shop-builder-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:28px}.shop-builder-pagination button{padding:8px 12px;border:1px solid #d5d9e2;border-radius:3px;background:#fff;color:#333;cursor:pointer}.shop-builder-pagination button:hover,.shop-builder-pagination button.is-active{background:#465cff;color:#fff;border-color:#465cff}.shop-builder-empty{padding:20px;border:1px dashed #d5d9e2;text-align:center}.shop-builder-loading .shop-builder-results{opacity:.6;pointer-events:none}.shop-builder-count{margin:0 0 14px}
@media(max-width:767px){.shop-builder-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.shop-builder-filter-widget .shop-builder-form{padding:14px}.shop-builder-stars{font-size:19px}}
@media(max-width:480px){.shop-builder-products{grid-template-columns:1fr}}

/* v1.2.2: honor Elementor spacing controls and improve product price layout */
.shop-builder-product-grid .shop-builder-products{display:grid!important;grid-template-columns:repeat(var(--shop-builder-columns,3),minmax(0,1fr));column-gap:var(--shop-builder-column-gap,22px)!important;row-gap:var(--shop-builder-row-gap,22px)!important;gap:var(--shop-builder-row-gap,22px) var(--shop-builder-column-gap,22px)!important}
.shop-builder-product-box>.shop-builder-price{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:inherit;gap:0 8px;line-height:1.5}
.shop-builder-product-box>.shop-builder-price del,.shop-builder-product-box>.shop-builder-price ins{display:inline-flex;margin:0!important;white-space:nowrap}
.shop-builder-product-box>.shop-builder-price ins{text-decoration:none}
.shop-builder-pagination{column-gap:var(--shop-builder-pagination-gap,8px);row-gap:var(--shop-builder-pagination-gap,8px)}
.shop-builder-form .shop-builder-apply{display:block}
@media(max-width:767px){.shop-builder-product-grid .shop-builder-products{gap:var(--shop-builder-row-gap,14px) var(--shop-builder-column-gap,14px)!important}}

/* v1.2.3: rating-only label cleanup and Elementor style-control support */
.shop-builder-rating-filter .shop-builder-rating-option{display:flex;align-items:center;gap:10px}
.shop-builder-rating-filter .shop-builder-stars{display:inline-flex;align-items:center;gap:2px;line-height:1}
.shop-builder-rating-filter .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.shop-builder-group legend{display:block;width:100%;margin-bottom:10px}
.shop-builder-pagination button.is-active{background-color:#465cff;color:#fff;border-color:#465cff}

/* v1.2.4: Elementor-controlled product box borders/hover; filter title spacing is fully manual */
.shop-builder-group legend{margin-bottom:0!important;padding-bottom:0!important}
.shop-builder-product-box{transition:background-color .25s,border-color .25s,box-shadow .25s,transform .25s}
.shop-builder-product-box:hover{transition:background-color .25s,border-color .25s,box-shadow .25s,transform .25s}
.shop-builder-cart .button{transition:color .2s,background-color .2s,border-color .2s}

/* v1.2.6: reliable card/button hover states and separate View cart action */
.shop-builder-product-grid .shop-builder-product-box{transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.shop-builder-product-grid .shop-builder-product-box:hover{background-color:var(--shop-builder-box-hover-bg,inherit);border-color:var(--shop-builder-box-hover-border,inherit)}
.shop-builder-product-grid .shop-builder-cart{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.shop-builder-product-grid .shop-builder-cart .button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;line-height:1.2;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.shop-builder-product-grid .shop-builder-cart .button:hover{filter:none;transform:translateY(-1px)}
.shop-builder-product-grid .shop-builder-cart-icon{display:inline-block;width:1em;height:1em;flex:0 0 1em;vertical-align:middle}
.shop-builder-product-grid .shop-builder-view-cart[hidden]{display:none!important}
.shop-builder-product-grid .shop-builder-view-cart{white-space:nowrap}
.shop-builder-product-grid .shop-builder-cart .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* v1.2.7: independent View Cart icon/text and remove theme-added checkmarks/duplicate links */
.shop-builder-product-grid .shop-builder-add-to-cart.added::after,
.shop-builder-product-grid .shop-builder-add-to-cart::after{content:none!important;display:none!important}
.shop-builder-product-grid .shop-builder-cart a.added_to_cart{display:none!important}
.shop-builder-product-grid .shop-builder-view-cart-icon{display:inline-block;width:1em;height:1em;flex:0 0 1em;vertical-align:middle}

/* v1.2.9: standalone Cart template widgets */
.shop-builder-cart-table-wrap,.shop-builder-cart-totals-wrap,.shop-builder-coupon-wrap,.shop-builder-gift-card-wrap{width:100%;box-sizing:border-box}
.shop-builder-cart-table-wrap table{width:100%;border-collapse:collapse}
.shop-builder-cart-table th,.shop-builder-cart-table td,.shop-builder-totals-table th,.shop-builder-totals-table td{padding:12px 10px;border-bottom:1px solid #e2e2e2;text-align:left;vertical-align:middle}
.shop-builder-cart-table .product-thumbnail img{display:block;width:90px;height:auto;max-width:100%}
.shop-builder-cart-table .product-name{min-width:150px}
.shop-builder-cart-table .product-remove a{font-size:22px;text-decoration:none}
.shop-builder-cart-table .actions{text-align:right}
.shop-builder-cart-table .quantity input.qty{max-width:90px;min-width:58px}
.shop-builder-cart-table .button,.shop-builder-cart-totals-wrap .checkout-button,.shop-builder-coupon-wrap button,.shop-builder-gift-card-wrap button{cursor:pointer;transition:all .2s ease}
.shop-builder-cart-totals-wrap .shop-builder-totals-table{width:100%;border-collapse:collapse;margin:0 0 18px}
.shop-builder-cart-totals-wrap .shop-builder-totals-table th{font-weight:500}
.shop-builder-cart-totals-wrap .shop-builder-totals-table td{text-align:right}
.shop-builder-cart-totals-wrap .checkout-button{display:block;text-align:center}
.shop-builder-coupon-wrap .sb-cart-coupon-form,.shop-builder-gift-card-wrap .sb-gift-card-form{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}
.shop-builder-coupon-wrap .form-row{margin:0;float:none;flex:1 1 150px}
.shop-builder-coupon-wrap input.input-text,.shop-builder-gift-card-wrap input{width:100%;min-width:0;box-sizing:border-box;min-height:40px}
.shop-builder-coupon-wrap button,.shop-builder-gift-card-wrap button{flex:0 0 auto;min-height:40px}
.shop-builder-cart-table-wrap .sb-cart-widget-title,.shop-builder-cart-totals-wrap .sb-cart-widget-title,.shop-builder-coupon-wrap .sb-cart-widget-title,.shop-builder-gift-card-wrap .sb-cart-widget-title{margin-top:0}
@media(max-width:767px){.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table thead{display:none}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table,.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table tbody,.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table tr,.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table td{display:block;width:100%;box-sizing:border-box}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table tr.cart_item{position:relative;padding:12px 0;border-bottom:1px solid #ddd}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table td{border:0;padding:6px 0}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table td[data-title]:before{content:attr(data-title) ': ';font-weight:600}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table td.product-thumbnail:before,.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table td.product-remove:before{content:none}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table td.product-thumbnail img{width:76px}.shop-builder-cart-table-wrap:not(.sb-mobile-table-default) .shop-builder-cart-table .actions{text-align:left}}
/* Shop Builder 1.3.1: hide manual update action when automatic cart updates are enabled. */
.shop-builder-cart-table-wrap.sb-cart-auto-update .sb-cart-table-form .actions button[name="update_cart"] { display: none !important; }
.shop-builder-cart-table-wrap.sb-cart-auto-update .sb-cart-table-form .actions { padding-top: 0; padding-bottom: 0; }
/* Independent styling targets for coupon and gift-card controls. */
.shop-builder-coupon-wrap .sb-cart-coupon-form input.input-text,
.shop-builder-gift-card-wrap form input { min-width: 0; max-width: 100%; box-sizing: border-box; }
.shop-builder-coupon-wrap .sb-cart-coupon-form button,
.shop-builder-gift-card-wrap form button { cursor: pointer; }
