/* Product cards on sale — shop, search, category pages (classic + block themes) and XO rows */

/* the tag */
ul.products li.product .onsale,
.wc-block-components-product-sale-badge,
.wc-block-grid__product-onsale,
.xo-card-badge:not(.is-pick) {
	position: absolute !important; top: 10px !important; left: 10px !important; right: auto !important; z-index: 3;
	display: inline-flex !important; align-items: center; width: auto !important; height: auto !important; min-width: 0 !important; min-height: 0 !important;
	margin: 0 !important; padding: 5px 11px !important; border: 0 !important; border-radius: 999px !important;
	background: #c92a2a !important; color: #fff !important; font-size: .78rem !important; font-weight: 800 !important; line-height: 1.2 !important;
	letter-spacing: .06em; text-transform: uppercase; box-shadow: 0 2px 6px rgba(0,0,0,.15);
}
.wc-block-components-product-sale-badge span, .wc-block-grid__product-onsale span { color: inherit !important; }
/* block themes print "Sale" — say "On Sale" like everywhere else (the hidden screen-reader text stays) */
.wc-block-components-product-sale-badge .wc-block-components-product-sale-badge__text { display: none !important; }
.wc-block-components-product-sale-badge::before { content: "On Sale"; }
/* block themes put the badge above the image wrapper — make the card the anchor */
.wc-block-product, .wc-block-grid__product, ul.products li.product { position: relative; }
/* keep the badge on the image, not floating over the title */
.wc-block-components-product-image { position: relative; }

/* a thin red outline around the whole card (doesn't move the layout) */
ul.products li.product.sale,
.wc-block-product:has(.wc-block-components-product-sale-badge),
.wc-block-grid__product:has(.wc-block-grid__product-onsale),
.xo-card:has(.xo-card-badge:not(.is-pick)) {
	outline: 2px solid #c92a2a; outline-offset: 6px; border-radius: 10px;
}

/* the price: sale price red, old price small and crossed out */
ul.products li.product .price ins,
.wc-block-product .wc-block-components-product-price ins,
.wc-block-product .wc-block-components-product-price__value.is-discounted,
.wc-block-grid__product-price ins,
.xo-card-price ins { color: #c92a2a !important; text-decoration: none !important; background: none !important; font-weight: 800 !important; }
ul.products li.product .price del,
.wc-block-product .wc-block-components-product-price del,
.wc-block-product .wc-block-components-product-price__regular,
.wc-block-grid__product-price del,
.xo-card-price del { color: #6b7280 !important; opacity: 1 !important; font-weight: 500 !important; font-size: .8em !important; margin-right: 6px; text-decoration-thickness: 2px; }
.xo-save-sm {
	display: inline-block; margin: 0 0 0 8px; padding: 1px 8px; border-radius: 999px; background: #fdecec; color: #b42318 !important;
	font-size: .72rem !important; font-weight: 800 !important; line-height: 1.5 !important; letter-spacing: .01em; vertical-align: middle; white-space: nowrap;
}
/* product page: the big price has its own "Save" pill */
.xo-main-price .xo-save-sm { display: none; }
