/* ReviveLab CRO Master — companion styles (v2.0.0)
 * Match the existing site palette: teal #4d8b81, accent green #2f5d4d, warm-cream
 * bg #f7f3ec, slate text #1d2933, success green #2f8f5d.
 */

/* ========== v2.0.0 #4 Cart upsell prompt under each cart-item name ======== */
.revivelab-cart-upsell {
	display: block;
	margin: .35rem 0 .25rem;
	padding: .55rem .75rem;
	background: linear-gradient(135deg, #fff8e9 0%, #f7f3ec 100%);
	border-left: 3px solid #d99c2b;
	border-radius: .35rem;
	color: #6b4d12;
	font-size: .85rem;
	line-height: 1.4;
}
.revivelab-cart-upsell strong { color: #4f3608; }

/* On WC Blocks cart, the cart-item name is followed by the upsell — keep them aligned */
.wc-block-cart-items__row .revivelab-cart-upsell { margin-top: .4rem; }

@media (max-width: 600px) {
	.revivelab-cart-upsell { font-size: .8rem; padding: .45rem .65rem; }
}


/* ========== Hide marquee on /revivelab-checkout/ only ===================== */
body.woocommerce-checkout .revivelab-announcement-bar.revivelab-hide-on-checkout,
body.woocommerce-checkout .revivelab-announcement-bar { display: none !important; }
body.woocommerce-checkout.revivelab-has-bar { margin-top: 0 !important; }

/* ========== Lightweight nav added to checkout header ===================== */
.revivelab-checkout-nav {
	display: flex;
	gap: 1.25rem;
	align-items: center;
	margin-left: auto;
	padding-right: 1rem;
}
.revivelab-checkout-nav a {
	color: rgba(255,255,255,.92);
	text-decoration: none;
	font-size: 0.95rem;
	font-weight: 500;
	letter-spacing: .01em;
}
.revivelab-checkout-nav a:hover,
.revivelab-checkout-nav a:focus { color: #fff; text-decoration: underline; }
@media (max-width: 600px) {
	.revivelab-checkout-nav { gap: .75rem; padding-right: .5rem; }
	.revivelab-checkout-nav a { font-size: 0.85rem; }
}

/* ========== Continue shopping link next to "Return to Cart" =============== */
.revivelab-continue-shopping {
	display: inline-block;
	margin-left: 1.25rem;
	color: #2f5d4d;
	text-decoration: none;
	font-weight: 500;
}
.revivelab-continue-shopping:hover { text-decoration: underline; }
@media (max-width: 600px) {
	.revivelab-continue-shopping { display: block; margin-left: 0; margin-top: .5rem; }
}

/* ========== Trust row in order summary =================================== */
.revivelab-trust-row {
	list-style: none;
	margin: 1rem 0 0;
	padding: .75rem .9rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .35rem .9rem;
	background: #f7f3ec;
	border-radius: .5rem;
	font-size: .82rem;
	color: #1d2933;
}
.revivelab-trust-row li { display: flex; align-items: center; gap: .4rem; line-height: 1.25; }
.revivelab-trust-row li span[aria-hidden="true"] { color: #2f8f5d; font-size: 1.1em; }
.revivelab-trust-row a { color: inherit; text-decoration: underline; }
@media (max-width: 600px) { .revivelab-trust-row { grid-template-columns: 1fr; } }

/* ========== Free-shipping nudge =========================================== */
.revivelab-free-ship-nudge {
	margin: .75rem 0;
	padding: .65rem .85rem;
	background: #eaf4f0;
	color: #1d4f3c;
	border-left: 3px solid #2f8f5d;
	border-radius: .35rem;
	font-size: .9rem;
}
.revivelab-free-ship-nudge strong { color: #1d4f3c; }

/* ========== Interac copy block =========================================== */
.revivelab-interac-copy {
	font-size: .92rem;
	line-height: 1.55;
	color: #1d2933;
}
.revivelab-interac-copy .revivelab-interac-steps {
	margin: .25rem 0 .5rem 1.25rem;
	padding: 0;
}
.revivelab-interac-copy .revivelab-interac-steps li { margin: .35rem 0; }
.revivelab-interac-email-row {
	display: inline-flex; gap: .4rem; align-items: center; margin-left: .25rem;
	flex-wrap: wrap;
}
.revivelab-interac-email {
	background: #f3eee2;
	padding: .15rem .45rem;
	border-radius: .25rem;
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: .9rem;
}
.revivelab-copy-email-btn {
	display: inline-block;
	background: #2f5d4d;
	color: #fff;
	border: 0;
	padding: .25rem .65rem;
	border-radius: .35rem;
	cursor: pointer;
	font-size: .8rem;
	line-height: 1.3;
}
.revivelab-copy-email-btn:hover { background: #1d4f3c; }
.revivelab-copy-email-btn--ok { background: #2f8f5d !important; }
.revivelab-interac-eta {
	margin: .35rem 0 .15rem;
	font-size: .85rem;
	color: #4f6266;
}
.revivelab-interac-caption {
	margin: 0;
	font-size: .78rem;
	color: #6c7a80;
	font-style: italic;
}

/* ========== Bundle savings line in cart =================================== */
.wc-block-components-product-details__name:has(+ .wc-block-components-product-details__value > [data-key="Bundle"]),
li.wc-block-components-product-details > .wc-block-components-product-details__name {
	/* hook present in case we want to bold the label; intentionally minimal */
}

/* ========== Toast (auto-downgrade notice) ================================ */
.revivelab-toast {
	position: fixed;
	left: 50%;
	bottom: 24px;
	transform: translate(-50%, 60px);
	background: #1d2933;
	color: #fff;
	padding: .7rem 1.1rem;
	border-radius: .5rem;
	box-shadow: 0 8px 24px rgba(0,0,0,.18);
	font-size: .92rem;
	max-width: calc(100% - 32px);
	opacity: 0;
	transition: transform .3s ease, opacity .3s ease;
	z-index: 100000;
}
.revivelab-toast strong { color: #87e0b6; }
.revivelab-toast--in  { opacity: 1; transform: translate(-50%, 0); }
.revivelab-toast--out { opacity: 0; transform: translate(-50%, 60px); }

/* ========== Free-ship nudge inside classic checkout summary table ========= */
table.shop_table tr.revivelab-free-ship-nudge td {
	background: #eaf4f0; color: #1d4f3c;
	font-size: .9rem;
	border-left: 3px solid #2f8f5d;
}

/* ========== Hide drawer if it ever appears on checkout pages ============= */
body.woocommerce-checkout .all-peptides,
body.woocommerce-checkout .js-all-peptides { display: none !important; }

/* =========================================================================
 *  Q4 — Polar-peptides-style category pills above shop-loop product names.
 *  Colours mirror the polarpeptides.ca pattern in the reference screenshot:
 *    Recovery → mint green | Anti-Aging → coral pink | Weight Loss → blue
 *    Cognitive → indigo    | Sleep → lavender        | GH Support → teal
 *    Libido → magenta      | Pigmentation → amber
 *  Keep the foreground/background contrast above WCAG AA (4.5:1 for text).
 * ======================================================================= */
.revivelab-category-pill {
	display: inline-block;
	font-size: 11px;
	letter-spacing: .04em;
	font-weight: 700;
	text-transform: uppercase;
	padding: 3px 9px;
	border-radius: 4px;
	margin: 0 0 6px 0;
	line-height: 1.5;
	white-space: nowrap;
	vertical-align: middle;
}
.revivelab-category-pill--recovery     { background:#dff5e6; color:#1d6f3c; }
.revivelab-category-pill--anti-aging   { background:#fde4e1; color:#a04338; }
.revivelab-category-pill--weight-loss  { background:#e1ecfb; color:#1c4ea0; }
.revivelab-category-pill--cognitive    { background:#e3e6fb; color:#2e3b9e; }
.revivelab-category-pill--sleep        { background:#ece2f8; color:#5b3aa3; }
.revivelab-category-pill--gh-support   { background:#dcefe9; color:#1f5d4d; }
.revivelab-category-pill--libido       { background:#fbe2ed; color:#9a2667; }
.revivelab-category-pill--pigmentation { background:#fbeed3; color:#8a5b14; }

/* Position above the loop product title — leave a small gap. */
.product-item .woocommerce-loop-product__title { margin-top: 2px; }
.product-item .revivelab-category-pill        { margin-bottom: 4px; }
@media (max-width: 600px) {
	.revivelab-category-pill { font-size: 10px; padding: 2px 7px; }
}

/* =========================================================================
 *  Q5 — First-purchase congrats banner (cart + checkout summary)
 * ======================================================================= */
.revivelab-first-purchase-banner {
	display: flex;
	align-items: flex-start;
	gap: .55rem;
	margin: 0 0 1rem;
	padding: .75rem .95rem;
	background: linear-gradient(135deg, #e9f7f0 0%, #f6efe2 100%);
	border: 1px solid #cde5d6;
	border-left: 4px solid #2f8f5d;
	border-radius: .5rem;
	color: #1d4f3c;
	font-size: .95rem;
	line-height: 1.45;
}
.revivelab-first-purchase-banner__emoji {
	color: #2f8f5d;
	font-size: 1.25rem;
	line-height: 1;
	margin-top: 1px;
}
.revivelab-first-purchase-banner__copy strong {
	display: block;
	font-weight: 700;
	margin-bottom: 1px;
	color: #1d4f3c;
}
.revivelab-first-purchase-banner code {
	background: rgba(47,143,93,.14);
	color: #1d4f3c;
	padding: 1px 6px;
	border-radius: 3px;
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: .9em;
}
@media (max-width: 600px) {
	.revivelab-first-purchase-banner { font-size: .9rem; padding: .65rem .8rem; }
}

/* =========================================================================
 *  v1.0.3 — PDP polar-peptides-style block
 *  Mounted inside .revivelab-bundle-selector, before the tier cards.
 * ======================================================================= */
.revivelab-pdp-block {
	margin: 0 0 1.25rem;
	font-family: inherit;
	color: #1d2933;
}

/* Use-case tagline under product title */
.revivelab-pdp-tagline {
	font-size: 1rem;
	color: #5f6c75;
	margin: -0.4rem 0 0.85rem;
	font-weight: 500;
	letter-spacing: .005em;
	line-height: 1.35;
}

/* In-stock badge — dark pill with green dot */
.revivelab-pdp-stock-badge {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	background: #1d2933;
	color: #fff;
	border-radius: 9999px;
	padding: .28rem .75rem .28rem .55rem;
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .01em;
	margin: 0 0 1rem;
	line-height: 1;
}
.revivelab-pdp-stock-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #2ecc71;
	box-shadow: 0 0 0 0 rgba(46,204,113,.45);
	animation: revivelab-pdp-pulse 2.6s ease-in-out infinite;
}
.revivelab-pdp-stock-out .revivelab-pdp-stock-dot { background: #ef4444; animation: none; }
.revivelab-pdp-stock-out { background: #4a3a3a; }
@keyframes revivelab-pdp-pulse {
	0%   { box-shadow: 0 0 0 0 rgba(46,204,113,.5); }
	70%  { box-shadow: 0 0 0 6px rgba(46,204,113,0); }
	100% { box-shadow: 0 0 0 0 rgba(46,204,113,0); }
}

/* Hide the theme's native "In Stock"/"Out of Stock" line once we've taken over */
.revivelab-hide-native-stock { display: none !important; }

/* Three-icon benefits row */
.revivelab-pdp-benefits {
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: .55rem;
}
.revivelab-pdp-benefits li {
	display: flex;
	align-items: center;
	gap: .65rem;
	font-size: .94rem;
	color: #1d2933;
	line-height: 1.3;
}
.revivelab-pdp-benefit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	color: #4d8b81;
	flex-shrink: 0;
}
.revivelab-pdp-benefit-text { font-weight: 500; }

/* Free shipping callout */
.revivelab-pdp-freeship {
	display: flex;
	align-items: center;
	gap: .75rem;
	background: #f7f3ec;
	border-radius: .6rem;
	padding: .8rem 1rem;
	margin: .25rem 0 1rem;
	border: 1px solid #ebe4d3;
}
.revivelab-pdp-freeship-icon {
	display: inline-flex;
	width: 28px;
	height: 28px;
	color: #4d8b81;
	flex-shrink: 0;
}
.revivelab-pdp-freeship-copy {
	display: flex;
	flex-direction: column;
	gap: 1px;
	line-height: 1.3;
}
.revivelab-pdp-freeship-copy strong {
	font-size: .92rem;
	font-weight: 600;
	color: #1d2933;
}
.revivelab-pdp-freeship-copy small {
	font-size: .78rem;
	color: #6c7a80;
}

@media (max-width: 600px) {
	.revivelab-pdp-tagline { font-size: .9rem; }
	.revivelab-pdp-benefits li { font-size: .88rem; }
	.revivelab-pdp-freeship { padding: .65rem .8rem; }
	.revivelab-pdp-freeship-copy strong { font-size: .85rem; }
}
