/* Woo Product Pro — Premium Shopify-style frontend */
:root {
	--wpp-primary: #2d6a4f;
	--wpp-primary-text: #ffffff;
	--wpp-accent: #c9a227;
	--wpp-text: #2b2b2b;
	--wpp-muted: #6b7280;
	--wpp-border: #e8e8e8;
	--wpp-bg: #F1F1F1;
	--wpp-card-bg: #f7f9f8;
	--wpp-badge-bg: #faf6ee;
	--wpp-badge-text: #8a5a14;
	--wpp-sale-color: #2d6a4f;
	--wpp-title-size: 22px;
	--wpp-title-weight: 700;
	--wpp-price-size: 26px;
	--wpp-price-weight: 800;
	--wpp-cta-size: 16px;
	--wpp-cta-weight: 700;
	--wpp-body-size: 14px;
	--wpp-body-weight: 400;
	--wpp-label-size: 13px;
	--wpp-label-weight: 600;
	--wpp-badge-size: 11px;
	--wpp-badge-weight: 600;
	--wpp-radius: 8px;
	--wpp-btn-radius: 8px;
	--wpp-pincode-radius: 8px;
	--wpp-offer-radius: 8px;
	--wpp-discount-radius: 8px;
	--wpp-btn-height: 48px;
	--wpp-btn-width: 100%;
	--wpp-btn-pad-y: 0;
	--wpp-btn-pad-x: 20px;
	--wpp-btn-pad-top: 0;
	--wpp-btn-pad-bottom: 0;
	--wpp-btn-pad-left: 20px;
	--wpp-btn-pad-right: 20px;
	--wpp-qty-height: 48px;
	--wpp-qty-width: 128px;
	--wpp-icon-size: 18px;
	--wpp-summary-pad-y: 20px;
	--wpp-summary-pad-x: 20px;
	--wpp-module-gap: 16px;
	--wpp-delivery-pad-y: 16px;
	--wpp-delivery-pad-x: 16px;
	--wpp-pincode-pad-y: 11px;
	--wpp-pincode-pad-x: 14px;
	--wpp-badge-pad: 6px;
	--wpp-badge-pad-top: 11px;
	--wpp-badge-pad-bottom: 11px;
	--wpp-badge-pad-left: 12px;
	--wpp-badge-pad-right: 12px;
	--wpp-discount-pad-top: 6px;
	--wpp-discount-pad-bottom: 6px;
	--wpp-discount-pad-left: 12px;
	--wpp-discount-pad-right: 12px;
	--wpp-you-save-color: #2d6a4f;
	--wpp-you-save-bg: rgba(45,106,79,.08);
	--wpp-prefix-color: #6b7280;
	--wpp-suffix-color: #6b7280;
	--wpp-rating-color: #c9a227;
	--wpp-shine-color: #ffffff;
	--wpp-shine-width: 35%;
	--wpp-shine-duration: 4s;
	--wpp-cod-shine: #ffffff;
	--wpp-offer-shine: #ffffff;
	--wpp-discount-shine: #ffffff;
	--wpp-social-bg: #faf6ee;
	--wpp-social-text: #8a7355;
	--wpp-social-border: #e8dfd0;
	--wpp-viewing-dot: #d4a24c;
	--wpp-pincode-btn-bg: #2d6a4f;
	--wpp-pincode-btn-text: #ffffff;
}

.wpp-product .wpp-summary,
.wpp-product .wpp-summary * {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}


/* Summary wrapper */
.wpp-summary {
	color: var(--wpp-text);
	display: flex;
	flex-direction: column;
	gap: var(--wpp-module-gap);
	width: 100%;
	padding: var(--wpp-summary-pad-y) var(--wpp-summary-pad-x);
	box-sizing: border-box;
}
.wpp-summary, .wpp-summary * { box-sizing: border-box; }
.wpp-summary > * { margin: 0 !important; max-width: 100%; }

@media (max-width: 767px) {
	.wpp-product .wpp-summary,
	.wpp-product .wpp-summary > *,
	.wpp-product .wpp-summary * {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.wpp-product .wpp-summary {
		padding-top: var(--wpp-summary-pad-y) !important;
		padding-bottom: var(--wpp-summary-pad-y) !important;
	}
}

.wpp-icon img, img.wpp-icon {
	display: inline-block;
	vertical-align: middle;
	width: var(--wpp-icon-size);
	height: var(--wpp-icon-size);
	object-fit: contain;
	filter: saturate(0) brightness(0);
}
.wpp-icon-mask {
	display: inline-block;
	vertical-align: middle;
	flex: none;
}
.wpp-inline-icon,
.wpp-trust-emoji,
.wpp-icon-emoji {
	filter: none;
}
.wpp-inline-icon {
	display: inline-block;
	margin-right: 4px;
	vertical-align: -2px;
	font-size: 1em;
	line-height: 1;
}
.wpp-section-label {
	display: block;
	font-weight: var(--wpp-label-weight);
	font-size: var(--wpp-label-size);
	margin-bottom: 8px;
	color: var(--wpp-text);
	letter-spacing: .02em;
}

html { scroll-behavior: smooth; }

/* Limited time / discount badge */
.wpp-discount-wrap { display: flex; width: 100%; }
.wpp-discount-wrap--left { justify-content: flex-start; }
.wpp-discount-wrap--center { justify-content: center; }
.wpp-discount-wrap--right { justify-content: flex-end; }
.wpp-discount-badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	align-self: flex-start;
	background: var(--wpp-badge-bg);
	color: var(--wpp-badge-text);
	font-weight: var(--wpp-badge-weight);
	font-size: var(--wpp-badge-size);
	letter-spacing: .35px;
	padding: var(--wpp-discount-pad-top) var(--wpp-discount-pad-right) var(--wpp-discount-pad-bottom) var(--wpp-discount-pad-left);
	border-radius: var(--wpp-discount-radius, var(--wpp-radius));
	border: 1px solid color-mix(in srgb, var(--wpp-badge-text) 12%, transparent);
	position: relative;
	overflow: hidden;
}
.wpp-discount-badge::after {
	content: "";
	position: absolute;
	top: 0; left: -40%; width: var(--wpp-shine-width, 35%); height: 100%;
	background: linear-gradient(120deg, transparent 0%, var(--wpp-discount-shine, var(--wpp-shine-color)) 50%, transparent 100%);
	opacity: .45;
	transform: skewX(-20deg);
	animation: wpp-shine var(--wpp-shine-duration, 4s) ease-in-out infinite;
	pointer-events: none;
}
body.wpp-shine-off .wpp-discount-badge::after {
	display: none;
}
.wpp-badge-icon img,
.wpp-badge-icon .wpp-icon-mask {
	width: var(--wpp-icon-discount-badge-size, var(--wpp-icon-size));
	height: var(--wpp-icon-discount-badge-size, var(--wpp-icon-size));
	filter: none;
}

/* Best Seller — warm, elegant social proof */
.wpp-bestseller {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--wpp-social-bg);
	color: var(--wpp-social-text);
	border: 1px solid var(--wpp-social-border);
	font-weight: 600;
	font-size: var(--wpp-badge-size);
	letter-spacing: .25px;
	padding: var(--wpp-badge-pad) calc(var(--wpp-badge-pad) + 8px);
	border-radius: var(--wpp-radius);
}
.wpp-bestseller-icon img,
.wpp-bestseller-icon .wpp-icon-mask {
	width: var(--wpp-icon-bestseller-size, 14px);
	height: var(--wpp-icon-bestseller-size, 14px);
	filter: none;
}

/* Cart info — muted warm tone */
.wpp-viewing {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--wpp-social-text, var(--wpp-muted));
	font-size: 12.5px;
	font-weight: 500;
}
.wpp-viewing-icon img,
.wpp-viewing-icon .wpp-icon-mask {
	width: var(--wpp-icon-viewing-size, 14px);
	height: var(--wpp-icon-viewing-size, 14px);
	filter: none;
}
.wpp-viewing-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--wpp-viewing-dot);
	flex: none;
	animation: wpp-blink 1.8s ease-in-out infinite;
}
@keyframes wpp-blink {
	0%, 100% { opacity: 1; }
	50% { opacity: .4; }
}

/* Title */
.wpp-title {
	font-size: var(--wpp-title-size);
	font-weight: var(--wpp-title-weight);
	line-height: 1.3;
	margin: 0;
	color: var(--wpp-text);
	letter-spacing: -.01em;
}

/* Rating */
.wpp-rating { display: flex; align-items: center; gap: 8px; }
.wpp-stars { --rating: 0; display: inline-block; font-size: 15px; line-height: 1; letter-spacing: 2px; }
.wpp-stars::before {
	content: "★★★★★";
	background: linear-gradient(90deg, var(--wpp-rating-color) calc(var(--rating) / 5 * 100%), #e5e7eb calc(var(--rating) / 5 * 100%));
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.wpp-rating-count,
a.wpp-rating-count {
	color: var(--wpp-muted);
	font-size: 13px;
	text-decoration: none;
}
a.wpp-rating-count:hover { color: var(--wpp-primary); text-decoration: underline; }

/* Price */
.wpp-price-wrap { display: flex; flex-direction: column; gap: 4px; }
.wpp-price-head { display: inline-flex; align-items: center; gap: 8px; }
.wpp-price-prefix { color: var(--wpp-prefix-color); font-size: 12px; }
.wpp-special-tag {
	display: inline-flex;
	align-items: center;
	background: var(--wpp-social-bg);
	color: var(--wpp-social-text);
	font-weight: 600;
	font-size: 10.5px;
	letter-spacing: .25px;
	text-transform: uppercase;
	padding: 3px 9px;
	border-radius: var(--wpp-radius);
	border: 1px solid var(--wpp-social-border);
}
.wpp-price-row { display: flex; align-items: baseline; flex-wrap: wrap; gap: 10px; }
.wpp-sale-price {
	font-size: var(--wpp-price-size);
	font-weight: var(--wpp-price-weight);
	color: var(--wpp-sale-color);
}
.wpp-sale-price .amount { color: inherit; }
.wpp-regular-price { color: var(--wpp-muted); font-size: 16px; }
.wpp-you-save {
	font-weight: 600;
	font-size: 12px;
	padding: 3px 10px;
	border-radius: var(--wpp-radius);
}
.wpp-price-suffix { color: var(--wpp-suffix-color); font-size: 12px; }
.wpp-short-desc {
	color: var(--wpp-muted);
	font-size: var(--wpp-body-size);
	font-weight: var(--wpp-body-weight);
	line-height: 1.6;
}
.wpp-short-desc p { margin: 0 0 8px; }

/* Trust badges — soft pastel capsules */
.wpp-trust-row { display: flex; flex-wrap: wrap; gap: 10px; }
.wpp-trust-row .wpp-trust-capsule { flex: 1 1 calc(50% - 5px); min-width: 0; }

.wpp-trust-capsule {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--wpp-card-bg);
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-radius);
	padding: var(--wpp-badge-pad-top) var(--wpp-badge-pad-right) var(--wpp-badge-pad-bottom) var(--wpp-badge-pad-left);
	box-shadow: 0 1px 3px rgba(43,43,43,.04);
	text-align: var(--wpp-b-align-d, center);
	justify-content: var(--wpp-b-align-d, center);
	transition: transform .2s ease, box-shadow .2s ease;
}
.wpp-trust-capsule:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(43,43,43,.10);
}
.wpp-trust-capsule::after {
	content: "";
	position: absolute;
	top: 0; left: -40%; width: 35%; height: 100%;
	background: linear-gradient(120deg, transparent 0%, var(--wpp-badge-shine, var(--wpp-shine-color)) 50%, transparent 100%);
	opacity: .4;
	transform: skewX(-20deg);
	animation: wpp-shine 4s ease-in-out infinite;
	pointer-events: none;
}
@keyframes wpp-shine {
	0% { left: -40%; }
	60% { left: 120%; }
	100% { left: 120%; }
}
.wpp-trust-icon {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	color: var(--wpp-primary);
}
.wpp-trust-icon img,
.wpp-trust-icon .wpp-icon-mask {
	width: var(--wpp-icon-size);
	height: var(--wpp-icon-size);
	object-fit: contain;
	filter: none;
}
.wpp-trust-emoji { line-height: 1; filter: none; }
.wpp-trust-text { display: flex; flex-direction: column; line-height: 1.25; gap: 2px; }
.wpp-trust-text strong { font-size: 12.5px; color: var(--wpp-text); font-weight: 700; }
.wpp-trust-text small { color: var(--wpp-muted); font-size: 11px; }

/* Variations */
.wpp-variations table.variations { width: 100%; border: 0; margin: 0; }
.wpp-variations table.variations td, .wpp-variations table.variations th { border: 0; padding: 4px 0; }
.wpp-swatch-group { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0; }
.wpp-swatch {
	border: 1.5px solid var(--wpp-border);
	background: #F1F1F1;
	border-radius: var(--wpp-radius);
	padding: 9px 16px;
	font-weight: 600;
	font-size: 14px;
	cursor: pointer;
	transition: border-color .15s, background .15s, color .15s;
	color: var(--wpp-text);
}
.wpp-swatch:hover { border-color: #c4c4c4; }
.wpp-swatch.active {
	border-color: var(--wpp-primary);
	background: var(--wpp-primary);
	color: #fff;
}

/* Upsell — clean recommendation card */
.wpp-upsell-heading { margin-bottom: 10px; }
.wpp-upsell { display: block; cursor: pointer; }
.wpp-upsell input { position: absolute; opacity: 0; }
.wpp-upsell-box {
	display: flex;
	align-items: center;
	gap: 12px;
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-radius);
	padding: 12px 14px;
	transition: border-color .2s, box-shadow .2s, background .2s;
	background: #F1F1F1;
}
.wpp-upsell input:checked + .wpp-upsell-box {
	border-color: var(--wpp-primary);
	background: color-mix(in srgb, var(--wpp-primary) 4%, #fff);
	box-shadow: 0 2px 8px rgba(45,106,79,.08);
}
.wpp-upsell-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
}
.wpp-upsell-icon img,
.wpp-upsell-icon .wpp-icon-mask {
	width: var(--wpp-icon-upsell-size, var(--wpp-icon-size));
	height: var(--wpp-icon-upsell-size, var(--wpp-icon-size));
	object-fit: contain;
	filter: none;
}
.wpp-upsell-body { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.wpp-upsell-title { font-weight: 600; font-size: 13.5px; color: var(--wpp-text); }
.wpp-upsell-title em { color: var(--wpp-primary); font-style: normal; font-weight: 700; }
.wpp-upsell-body small { color: var(--wpp-muted); font-size: 12px; line-height: 1.4; }
.wpp-upsell-mark {
	width: 20px;
	height: 20px;
	border: 1.5px solid var(--wpp-border);
	border-radius: 6px;
	position: relative;
	flex: none;
	transition: .15s;
}
.wpp-upsell input:checked + .wpp-upsell-box .wpp-upsell-mark {
	background: var(--wpp-primary);
	border-color: var(--wpp-primary);
}
.wpp-upsell input:checked + .wpp-upsell-box .wpp-upsell-mark::after {
	content: "";
	position: absolute;
	left: 5px; top: 1px;
	width: 6px; height: 11px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* Actions */
.wpp-actions { display: flex; align-items: center; gap: 12px; margin: 0; padding: 0; width: 100%; }
.wpp-actions .wpp-qty { height: var(--wpp-btn-height); margin: 0; }
.wpp-actions .wpp-add-to-cart { height: var(--wpp-btn-height); margin: 0; }

.wpp-qty {
	display: flex;
	align-items: center;
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-btn-radius, var(--wpp-radius));
	overflow: hidden;
	width: var(--wpp-qty-width);
	height: var(--wpp-qty-height);
	background: #fff;
}
.wpp-qty-btn {
	background: var(--wpp-card-bg);
	border: 0;
	width: 40px;
	height: 100%;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	color: var(--wpp-text);
	display: grid;
	place-items: center;
}
.wpp-qty-btn:active { background: #eef0ee; }
.wpp-qty-input {
	flex: 1;
	text-align: center;
	border: 0;
	border-left: 1px solid var(--wpp-border);
	border-right: 1px solid var(--wpp-border);
	height: 100%;
	font-size: 15px;
	-moz-appearance: textfield;
	appearance: textfield;
	background: #fff;
	color: var(--wpp-text);
	width: 100%;
	min-width: 0;
	padding: 0 8px;
}
.wpp-qty-input::-webkit-outer-spin-button,
.wpp-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.wpp-add-to-cart.button, .wpp-add-to-cart {
	flex: 1;
	width: var(--wpp-btn-width);
	background: var(--wpp-text) !important;
	color: #fff !important;
	border-radius: var(--wpp-btn-radius, var(--wpp-radius)) !important;
	font-size: var(--wpp-cta-size) !important;
	font-weight: var(--wpp-cta-weight) !important;
	border: 0 !important;
	cursor: pointer;
	letter-spacing: .15px;
	padding: var(--wpp-btn-pad-top, var(--wpp-btn-pad-y)) var(--wpp-btn-pad-right, var(--wpp-btn-pad-x)) var(--wpp-btn-pad-bottom, var(--wpp-btn-pad-y)) var(--wpp-btn-pad-left, var(--wpp-btn-pad-x));
	transition: background .2s, transform .12s, box-shadow .2s;
	box-shadow: 0 2px 8px rgba(43,43,43,.12);
}
.wpp-add-to-cart:hover { background: #1f1f1f !important; }
.wpp-add-to-cart:active { transform: translateY(1px); }

/* Order Now — deep organic green, no heavy gradient */
.wpp-cod-wrap { width: 100%; }
.wpp-cod-btn {
	width: var(--wpp-btn-width);
	height: var(--wpp-btn-height);
	min-height: var(--wpp-btn-height);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: var(--wpp-primary);
	color: var(--wpp-primary-text);
	border: 0;
	border-radius: var(--wpp-btn-radius, var(--wpp-radius));
	padding: var(--wpp-btn-pad-top, var(--wpp-btn-pad-y)) var(--wpp-btn-pad-right, var(--wpp-btn-pad-x)) var(--wpp-btn-pad-bottom, var(--wpp-btn-pad-y)) var(--wpp-btn-pad-left, var(--wpp-btn-pad-x));
	cursor: pointer;
	letter-spacing: .15px;
	font-size: var(--wpp-cta-size);
	font-weight: var(--wpp-cta-weight);
	box-shadow: 0 4px 14px rgba(45,106,79,.22);
	transition: background .2s, transform .12s, box-shadow .2s;
	position: relative;
	overflow: hidden;
}
.wpp-cod-btn::after {
	content: "";
	position: absolute;
	top: 0; left: -40%; width: var(--wpp-shine-width, 35%); height: 100%;
	background: linear-gradient(120deg, transparent, var(--wpp-cod-shine, var(--wpp-shine-color)), transparent);
	opacity: .35;
	transform: skewX(-20deg);
	animation: wpp-shine var(--wpp-shine-duration, 4s) ease-in-out infinite;
	pointer-events: none;
}
body.wpp-shine-off .wpp-cod-btn::after {
	display: none;
}
.wpp-cod-btn:hover { background: color-mix(in srgb, var(--wpp-primary) 88%, #000); }
.wpp-cod-btn:active { transform: translateY(1px); }
.wpp-cod-icon {
	display: inline-flex;
	align-items: center;
	line-height: 1;
	color: var(--wpp-icon-cod-button-color, var(--wpp-primary-text));
}
.wpp-cod-icon img,
.wpp-cod-icon .wpp-icon-mask {
	width: var(--wpp-icon-cod-button-size, 22px);
	height: var(--wpp-icon-cod-button-size, 22px);
	object-fit: contain;
	filter: none;
}
.wpp-cod-text { display: flex; flex-direction: column; line-height: 1.2; text-align: left; position: relative; z-index: 1; }
.wpp-cod-text strong { font-size: var(--wpp-cta-size); font-weight: var(--wpp-cta-weight); }
.wpp-cod-text small { font-size: 11px; opacity: .92; }

/* Delivery / pincode — minimalist white box */
.wpp-delivery {
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-radius);
	padding: var(--wpp-delivery-pad-top, var(--wpp-delivery-pad-y)) var(--wpp-delivery-pad-right, var(--wpp-delivery-pad-x)) var(--wpp-delivery-pad-bottom, var(--wpp-delivery-pad-y)) var(--wpp-delivery-pad-left, var(--wpp-delivery-pad-x));
	background: var(--wpp-bg);
	box-shadow: 0 2px 10px rgba(43,43,43,.04);
}
.wpp-delivery-head { display: flex; flex-direction: column; gap: 3px; margin-bottom: 12px; }
.wpp-delivery-head strong { font-size: 14px; color: var(--wpp-text); font-weight: 600; }
.wpp-delivery-head small { color: var(--wpp-muted); font-size: 12.5px; }
.wpp-pincode { display: flex; gap: 8px; }
.wpp-pincode input {
	flex: 1;
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-pincode-radius, var(--wpp-radius));
	padding: var(--wpp-pincode-pad-top, var(--wpp-pincode-pad-y)) var(--wpp-pincode-pad-right, var(--wpp-pincode-pad-x)) var(--wpp-pincode-pad-bottom, var(--wpp-pincode-pad-y)) var(--wpp-pincode-pad-left, var(--wpp-pincode-pad-x));
	font-size: 14px;
	background: #F1F1F1;
	box-shadow: inset 0 1px 2px rgba(43,43,43,.03);
	transition: border-color .15s, box-shadow .15s;
}
.wpp-pincode input:focus {
	outline: none;
	border-color: color-mix(in srgb, var(--wpp-primary) 40%, var(--wpp-border));
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wpp-primary) 12%, transparent);
}
.wpp-pincode button {
	background: var(--wpp-pincode-btn-bg, var(--wpp-primary));
	color: var(--wpp-pincode-btn-text, #fff);
	border: 0;
	border-radius: var(--wpp-pincode-radius, var(--wpp-radius));
	padding: 0 18px;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
	transition: background .2s, opacity .2s;
	white-space: nowrap;
}
.wpp-pincode button:hover { opacity: .92; }
.wpp-pincode-result { font-size: 13px; margin-top: 10px; font-weight: 500; }
.wpp-pincode-result.ok { color: var(--wpp-primary); }
.wpp-pincode-result.err { color: #b45309; }
.wpp-delivery-footer {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid var(--wpp-border);
}
.wpp-delivery-trust {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 12px;
	color: var(--wpp-muted);
	font-weight: 500;
}
.wpp-df-text {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}
.wpp-df-text strong {
	font-size: 12.5px;
	font-weight: 700;
	color: var(--wpp-text);
}
.wpp-df-text small {
	font-size: 11px;
	opacity: .8;
}
.wpp-df-icon {
	display: inline-flex;
	align-items: center;
	line-height: 1;
	color: var(--wpp-primary);
}
.wpp-df-icon img,
.wpp-df-icon .wpp-icon-mask {
	width: var(--wpp-icon-delivery-footer-size, 17px);
	height: var(--wpp-icon-delivery-footer-size, 17px);
	object-fit: contain;
	filter: none;
}

/* Offers — premium vertical cards */
.wpp-offers-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--wpp-offer-gap, 12px); }
@media (max-width: 767px) { .wpp-offers-grid { grid-template-columns: 1fr; } }
.wpp-offer {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	border: var(--wpp-offer-border-width, 1px) solid var(--wpp-border);
	border-radius: var(--wpp-offer-radius, var(--wpp-radius));
	padding: 16px;
	background: var(--wpp-card-bg);
	position: relative;
	overflow: hidden;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.wpp-offer:hover {
	border-color: color-mix(in srgb, var(--wpp-primary) 35%, var(--wpp-border));
	box-shadow: 0 2px 8px rgba(43,43,43,.06);
}
.wpp-offer-icon { font-size: 22px; line-height: 1; margin-bottom: 2px; }
.wpp-offer-icon img { width: 24px; height: 24px; object-fit: contain; filter: none; }
.wpp-offer-title { font-weight: 700; font-size: 13.5px; color: var(--wpp-text); line-height: 1.3; }
.wpp-offer-desc { font-size: 12px; color: var(--wpp-muted); line-height: 1.5; flex: 1; margin: 0; }
.wpp-offer-footer {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	margin-top: 4px;
	padding-top: 10px;
	border-top: 1px solid var(--wpp-border);
}
.wpp-offer-code { font-weight: 700; font-size: 12px; letter-spacing: .5px; color: var(--wpp-primary); }
.wpp-offer-copy {
	background: transparent;
	border: 1px solid var(--wpp-primary);
	color: var(--wpp-primary);
	border-radius: 6px;
	padding: 5px 14px;
	font-weight: 600;
	font-size: 12px;
	cursor: pointer;
	white-space: nowrap;
	transition: background .2s, color .2s;
	margin-left: auto;
}
.wpp-offer-copy:hover {
	background: var(--wpp-primary);
	color: #fff;
}
.wpp-offer-copy.copied {
	background: var(--wpp-primary);
	color: #fff;
}
.wpp-offer-auto {
	font-weight: 700;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .5px;
	color: var(--wpp-primary);
}

/* Cross-sell */
.wpp-crosssell { width: 100%; }
.wpp-crosssell-list {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 10px;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x mandatory;
	padding: 0 0 6px;
	margin: 0;
	scrollbar-width: thin;
}
.wpp-crosssell-list::-webkit-scrollbar { height: 5px; }
.wpp-crosssell-list::-webkit-scrollbar-thumb { background: var(--wpp-border); border-radius: 999px; }
.wpp-cs-item {
	flex: 0 0 calc(80% - 5px);
	scroll-snap-align: start;
	display: flex;
	align-items: center;
	gap: 12px;
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-radius);
	padding: 10px;
	margin: 0;
	background: #F1F1F1;
	transition: transform .2s ease, box-shadow .2s ease;
}
.wpp-cs-item:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(43,43,43,.08);
}
.wpp-cs-thumb { flex: none; }
.wpp-cs-thumb img {
	width: 52px;
	height: 52px;
	object-fit: cover;
	border-radius: var(--wpp-radius);
	display: block;
}
.wpp-cs-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.wpp-cs-info a {
	font-size: 13px;
	font-weight: 600;
	color: var(--wpp-text);
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.wpp-cs-price { font-size: 13px; color: var(--wpp-primary); font-weight: 700; }
.wpp-cs-add {
	background: var(--wpp-card-bg);
	border: 1px solid var(--wpp-border);
	border-radius: var(--wpp-radius);
	padding: 7px 14px;
	font-weight: 600;
	font-size: 12px;
	cursor: pointer;
	flex: none;
	color: var(--wpp-text);
	transition: border-color .15s, background .15s;
}
.wpp-cs-add:hover { border-color: var(--wpp-primary); color: var(--wpp-primary); }
@media (min-width: 600px) { .wpp-cs-item { flex: 0 0 calc(40% - 6px); } }
@media (min-width: 992px) { .wpp-cs-item { flex: 0 0 calc(33.333% - 7px); } }

/* Sticky Buy Bar — premium multi-row bottom bar */
.wpp-sticky-bar {
	position: fixed;
	left: 0; right: 0; bottom: var(--sb-mb, 0px);
	z-index: 9999;
	display: none;
	flex-direction: column;
	margin: 0;
	background: var(--sb-bg, #fff);
	border-radius: var(--sb-radius, 16px) var(--sb-radius, 16px) 0 0;
	box-shadow: 0 -6px 24px rgba(0,0,0,.12);
	transform: translateY(110%);
	transition: transform .28s ease;
	overflow: hidden;
}
.wpp-sticky-bar.is-visible { transform: translateY(0); }

/* Top offer banner */
.wpp-sb-banner {
	width: 100%;
	text-align: center;
	font-size: 12.5px;
	font-weight: 700;
	padding: 7px 14px;
	line-height: 1.3;
	letter-spacing: .2px;
}

/* Price row */
.wpp-sb-price-row {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 8px;
}
.wpp-sb-sale { font-weight: 800; font-size: 18px; color: var(--wpp-text); }
.wpp-sb-sale .woocommerce-Price-amount { font-size: inherit; font-weight: inherit; }
.wpp-sb-regular { font-size: 13px; color: var(--wpp-muted); }
.wpp-sb-discount { font-size: 12.5px; font-weight: 700; }

/* Content area: thumb left + right col */
.wpp-sb-content {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: var(--sb-pad, 12px);
	padding-bottom: calc(var(--sb-pad, 12px) + env(safe-area-inset-bottom));
}
.wpp-sb-right {
	flex: 1 1 0%;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

/* Action row: qty + CTA */
.wpp-sb-actions {
	display: flex;
	align-items: center;
	gap: 10px;
}
.wpp-sb-thumb {
	flex: 0 0 var(--wpp-sb-thumb-size, 70px);
	width: var(--wpp-sb-thumb-size, 70px);
	height: var(--wpp-sb-thumb-size, 70px);
	overflow: hidden;
	background: var(--wpp-card-bg);
	border: 1px solid var(--wpp-border);
}
.wpp-sb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

.wpp-sticky-bar .wpp-qty { flex: 0 0 auto; height: 42px; width: var(--wpp-sb-qty-width, 110px); margin: 0; }
.wpp-sticky-bar .wpp-qty .wpp-qty-btn { height: 42px; width: 32px; font-size: 16px; }
.wpp-sticky-bar .wpp-qty .wpp-qty-input { height: 42px; font-size: 14px; padding: 0 4px; }

/* CTA button with shine */
.wpp-sb-cta {
	flex: 1 1 auto;
	max-width: var(--wpp-sb-cta-width, none);
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--sb-cta-bg, #1a1a2e);
	color: var(--sb-cta-color, #fff);
	border: 0;
	border-radius: var(--sb-cta-radius, 12px);
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .6px;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	transition: background .2s, transform .12s;
	box-shadow: 0 4px 14px rgba(0,0,0,.15);
}
.wpp-sb-cta:active { transform: translateY(1px); }

/* Shine sweep on CTA */
.wpp-sb-shine .wpp-sb-cta::after {
	content: "";
	position: absolute;
	top: 0; left: -40%; width: 35%; height: 100%;
	background: linear-gradient(120deg, transparent, var(--sb-shine-color, #fff), transparent);
	opacity: .4;
	transform: skewX(-20deg);
	animation: wpp-shine var(--sb-shine-dur, 3s) ease-in-out infinite;
	pointer-events: none;
}

body.wpp-sticky-on { padding-bottom: calc(140px + var(--sb-mb, 0px)); }

@media (max-width: 768px) {
	.wpp-sticky-bar { display: flex; }
}

/* Per-badge responsive text alignment */
@media (max-width: 1024px) {
	.wpp-trust-capsule {
		text-align: var(--wpp-b-align-t, var(--wpp-b-align-d, center));
		justify-content: var(--wpp-b-align-t, var(--wpp-b-align-d, center));
	}
}
@media (max-width: 767px) {
	.wpp-trust-capsule {
		text-align: var(--wpp-b-align-m, var(--wpp-b-align-t, var(--wpp-b-align-d, center)));
		justify-content: var(--wpp-b-align-m, var(--wpp-b-align-t, var(--wpp-b-align-d, center)));
	}
}

/* Toast */
.wpp-toast {
	position: fixed;
	left: 50%;
	bottom: calc(var(--wpp-btn-height) + 40px);
	transform: translateX(-50%) translateY(20px);
	background: var(--wpp-text);
	color: #fff;
	padding: 10px 18px;
	border-radius: var(--wpp-radius);
	font-size: 13px;
	font-weight: 600;
	opacity: 0;
	pointer-events: none;
	transition: .25s;
	z-index: 10000;
}
.wpp-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* Mobile offers horizontal scroll mode */
@media (max-width: 767px) {
	.wpp-offers-scroll .wpp-offers-grid {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		gap: 10px;
	}
	.wpp-offers-scroll .wpp-offer {
		flex: 0 0 85%;
		scroll-snap-align: start;
	}
	.wpp-offers-scroll .wpp-offers-grid::-webkit-scrollbar { height: 4px; }
	.wpp-offers-scroll .wpp-offers-grid::-webkit-scrollbar-thumb { background: var(--wpp-border); border-radius: 999px; }
}

/* Hide duplicate WooCommerce output */
.wpp-summary ~ .product_title,
.wpp-summary ~ .woocommerce-product-rating,
.wpp-summary .woocommerce-product-rating { display: none !important; }
.wpp-summary .wpp-title { border-bottom: 0 !important; box-shadow: none !important; }
.wpp-summary + hr,
.wpp-title + hr { display: none !important; }

/* Aggressively hide WooCommerce default elements re-added by themes */
.wpp-product .entry-summary > .product_title:not(.wpp-title),
.wpp-product .entry-summary > h1:not(.wpp-title):not(.wpp-has-custom-title),
.wpp-product .summary > .product_title:not(.wpp-title),
.wpp-product .summary > h2.woocommerce-loop-product__title { display: none !important; }
.wpp-product .entry-summary > .woocommerce-product-rating:not(.wpp-rating),
.wpp-product .summary > .woocommerce-product-rating:not(.wpp-rating) { display: none !important; }
.wpp-product .entry-summary > .product_meta,
.wpp-product .summary > .product_meta { display: none !important; }

/* Remove header space on product page */
.wpp-product .site-content > .ast-container,
.wpp-product .site-content > .container,
.wpp-product #content > .container,
.wpp-product #primary { padding-top: 0 !important; }
.wpp-product .woocommerce-breadcrumb { display: none !important; }
.wpp-product .ast-breadcrumbs-wrapper,
.wpp-product .mercury-breadcrumb,
.wpp-product .breadcrumb-area,
.wpp-product nav.woocommerce-breadcrumb { display: none !important; }
.wpp-hide-header .site-header,
.wpp-hide-header #masthead,
.wpp-hide-header header.site-header,
.wpp-hide-header .mercury-header,
.wpp-hide-header .site-top-bar { display: none !important; margin: 0 !important; padding: 0 !important; height: 0 !important; overflow: hidden !important; }
.wpp-hide-header #page,
.wpp-hide-header #content,
.wpp-hide-header .site-content { padding-top: 0 !important; margin-top: 0 !important; }
