/* Cart gift bar (1.16.0). Built against the mockup mini-cart-bar-v4.html, panel 500px / phone 375px. */
.wcspr-cart-bar {
	--wcspr-cb-text: #1c2b39;
	--wcspr-cb-muted: #5b6b78;
	--wcspr-cb-accent: #002b3d;
	--wcspr-cb-ok: #2f8a4a;
	--wcspr-cb-track: #e6ebee;
	--wcspr-cb-line: #e1e6ea;
	color: var(--wcspr-cb-text);
	padding: 12px 0 8px;
	margin-bottom: 8px;
	border-bottom: 1px solid var(--wcspr-cb-line);
	font-size: 14px;
	line-height: 1.35;
}
.wcspr-cart-bar__msg { text-align: center; margin-bottom: 10px; }
.wcspr-cart-bar__done { display: block; font-size: 12px; color: var(--wcspr-cb-ok); margin-bottom: 2px; }
.wcspr-cart-bar__main { display: block; font-weight: 700; color: var(--wcspr-cb-accent); }
.wcspr-cart-bar__track { position: relative; height: 8px; margin: 14px 14px 38px; border-radius: 99px; background: var(--wcspr-cb-track); }
.wcspr-cart-bar__fill { position: absolute; inset: 0 auto 0 0; border-radius: 99px; background: var(--wcspr-cb-ok); transition: width .3s ease; }
.wcspr-cart-bar__point { position: absolute; top: 50%; width: 26px; height: 26px; transform: translate(-50%, -50%); display: flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; border: 2px solid #c4cdd3; font-size: 13px; }
.wcspr-cart-bar__point.is-reached { border-color: var(--wcspr-cb-ok); background: #eaf6ee; }
.wcspr-cart-bar__point-label { position: absolute; top: 30px; left: 50%; transform: translateX(-50%); width: 76px; text-align: center; font-size: 10.5px; line-height: 1.15; color: var(--wcspr-cb-muted); }
.wcspr-cart-bar__point-label::first-letter { text-transform: uppercase; }
.wcspr-cart-bar__point.is-reached .wcspr-cart-bar__point-label { color: var(--wcspr-cb-ok); font-weight: 700; }
.wcspr-cart-bar__point:last-child .wcspr-cart-bar__point-label { left: auto; right: 0; transform: none; text-align: right; }
.wcspr-cart-bar__mine { margin: 4px 0 8px; padding: 8px 10px; border: 1px dashed #7cc394; border-radius: 8px; background: #f3faf5; }
.wcspr-cart-bar__mine-head { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--wcspr-cb-ok); margin-bottom: 4px; }
.wcspr-cart-bar__note { margin: 4px 0 0; font-size: 12px; color: var(--wcspr-cb-muted); }
.wcspr-cart-bar__card { margin: 8px 0; border: 1px solid var(--wcspr-cb-line); border-radius: 8px; overflow: hidden; }
.wcspr-cart-bar__card-head { padding: 5px 8px; background: #f5f7f9; text-align: center; font-weight: 700; font-size: 13px; color: var(--wcspr-cb-accent); }
.wcspr-cart-bar__gift { display: flex; gap: 10px; align-items: center; padding: 7px 10px; }
.wcspr-cart-bar__mine .wcspr-cart-bar__gift { padding: 0; }
.wcspr-cart-bar__thumb { flex: none; width: 46px; height: 46px; border-radius: 6px; overflow: hidden; display: flex; align-items: center; justify-content: center; background: #eef3f6; }
.wcspr-cart-bar__thumb img { width: 100%; height: 100%; object-fit: cover; }
.wcspr-cart-bar__thumb--lock { background: #fbf4e8; font-size: 20px; }
.wcspr-cart-bar__gift-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.wcspr-cart-bar__gift-name { font-weight: 700; font-size: 13.5px; }
.wcspr-cart-bar__gift-text { font-size: 12px; color: var(--wcspr-cb-muted); }
.wcspr-cart-bar__price { font-size: 12.5px; }
.wcspr-cart-bar__price del { color: #8a97a1; margin-right: 4px; }
.wcspr-cart-bar__price strong { color: var(--wcspr-cb-ok); }
@media (max-width: 420px) {
	.wcspr-cart-bar__track { margin-inline: 14px; /* half the 26px point + 1: the end points stay inside */ }
	.wcspr-cart-bar__point-label { width: 64px; font-size: 10px; }
}
/* Our bar replaces Blocksy's free shipping bar where it shows; elsewhere (checkout) Blocksy's stays. */
:is(.widget_shopping_cart_content, .ct-cart-content, #woo-cart-panel):has(.wcspr-cart-bar) [class*="ct-shipping-progress"],
body.woocommerce-cart:has(.wcspr-cart-bar--cart) [class*="ct-shipping-progress"] { display: none !important; }
