/* ---------- Discount badge: green label like the carousel ---------- */
body.zbsp-badge-on .zbsp-badge {
	display: inline-block !important;
	width: auto !important; height: auto !important; min-width: 0 !important; min-height: 0 !important; max-width: none !important;
	aspect-ratio: auto !important;
	margin: 0 !important; padding: 6px 10px !important;
	background: var(--zbsp-badge-bg, #1e9e3a) !important;
	color: var(--zbsp-badge-color, #fff) !important;
	border: 0 !important; border-radius: 3px !important; box-shadow: none !important;
	font-size: 12px !important; line-height: 1 !important; font-weight: 700 !important;
	letter-spacing: 0 !important; text-transform: none !important; text-align: center !important; white-space: nowrap !important;
}

/* ---------- Add to cart row: quantity box + outlined button ---------- */
body.zbsp-btn-on form.cart:not(.variations_form):not(.grouped_form),
body.zbsp-btn-on .woocommerce-variation-add-to-cart {
	display: flex !important; flex-wrap: nowrap; align-items: stretch; gap: 12px;
}
body.zbsp-btn-on form.cart .single_add_to_cart_button {
	display: block !important; flex: 1 1 auto; width: auto; min-width: 160px; height: 46px;
	margin: 0 !important; padding: 0 20px !important;
	background: #fff !important; color: var(--zbsp-btn-text, #111) !important;
	border: 1px solid var(--zbsp-btn, #1e9e3a) !important; border-radius: 0 !important; box-shadow: none !important;
	font-size: 14px !important; line-height: 1 !important; font-weight: 700 !important;
	text-transform: uppercase !important; text-align: center !important; cursor: pointer;
	transition: background .25s, color .25s, opacity .2s;
}
body.zbsp-btn-on form.cart .single_add_to_cart_button:hover,
body.zbsp-btn-on form.cart .single_add_to_cart_button:focus-visible {
	background: var(--zbsp-btn, #1e9e3a) !important; color: var(--zbsp-btn-hover-text, #fff) !important;
}
body.zbsp-btn-on form.cart .single_add_to_cart_button.loading { opacity: .6; pointer-events: none; }
body.zbsp-btn-on form.cart .single_add_to_cart_button.loading::after,
body.zbsp-btn-on form.cart .single_add_to_cart_button.added::after { display: none !important; }
/* The side cart opens after adding, so hide WooCommerce's extra "View cart" link */
body.zbsp-btn-on .added_to_cart { display: none !important; }

/* ---------- Quantity: one clean box ---------- */
body.zbsp-qty-on form.cart .quantity {
	display: inline-flex !important; align-items: center; flex: 0 0 auto;
	width: auto !important; height: 46px; margin: 0 !important; padding: 0 !important;
	background: #fff; border: 1px solid #d9d9d9; border-radius: 0;
}
body.zbsp-qty-on form.cart .quantity .qty {
	width: 48px !important; height: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important;
	background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
	text-align: center; font-size: 16px; font-weight: 600; color: #111;
	-moz-appearance: textfield; appearance: textfield;
}
body.zbsp-qty-on form.cart .quantity .qty::-webkit-outer-spin-button,
body.zbsp-qty-on form.cart .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
body.zbsp-qty-on form.cart .quantity .zbsp-qty-btn {
	display: flex; align-items: center; justify-content: center;
	width: 38px; height: 100%; min-height: 0; margin: 0; padding: 0;
	background: transparent; border: 0; border-radius: 0; box-shadow: none;
	font-size: 20px; line-height: 1; font-weight: 400; color: #111; cursor: pointer;
	transition: color .2s;
}
body.zbsp-qty-on form.cart .quantity .zbsp-qty-btn:hover { background: transparent; color: var(--zbsp-btn, #1e9e3a); }

@media (max-width: 480px) {
	body.zbsp-btn-on form.cart .single_add_to_cart_button { min-width: 0; padding: 0 12px !important; font-size: 13px !important; }
}
