/**
 * Variant CSS: pricing--usage-tiers-rows
 *
 * A volume tier ladder: each row is a usage bracket (do 10 / do 50 / do 200 /
 * 200+). Left zone = big quantity range on an accent-tinted pad; middle zone =
 * tier name + short description; right zone = price + per-unit hint, right-aligned.
 * A thin legend row labels the columns. The featured row gets an accent edge bar
 * + tint. Body text stays --ink; range, em, price accents take --accent. On mobile
 * each row collapses to a stacked card with the range as a top badge.
 * Part of the `pricing` role.
 */

body.aibt-universal .universal-pricing--usage-tiers-rows {
	padding-block: calc(clamp(3rem, 7vw, 5.5rem) * var(--density, 1));
}

/* ── Intro (left-aligned) ──────────────────────────────────────── */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__kicker {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-widest) !important;
	text-transform: uppercase !important;
	color: var(--accent) !important;
	margin: 0 0 var(--space-sm) 0 !important;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__headline {
	font-family: var(--font-display) !important;
	color: var(--ink) !important;
	margin: 0 0 var(--space-sm) 0 !important;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__headline em {
	color: var(--accent) !important;
	font-style: italic;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-base) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--ink) !important;
	opacity: 0.78;
	max-width: 58ch;
	margin: 0 0 clamp(1.8rem, 4vw, 2.6rem) 0 !important;
}

/* ── Ladder container ──────────────────────────────────────────── */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__ladder {
	border: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
	border-radius: var(--decor-radius, 14px);
	overflow: hidden;
}

/* Legend header — column labels. */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__legend {
	gap: clamp(1rem, 2.4vw, 1.8rem) !important;
	padding: 0.85rem clamp(1.2rem, 3vw, 2rem);
	background: color-mix(in srgb, var(--ink) 4%, transparent);
	border-bottom: 1px solid color-mix(in srgb, var(--ink) 12%, transparent);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__legend-col {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 700 !important;
	letter-spacing: var(--tracking-wide) !important;
	text-transform: uppercase !important;
	color: var(--ink) !important;
	opacity: 0.55;
	margin: 0 !important;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__legend-col--range {
	flex: 0 0 clamp(6rem, 16vw, 9rem);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__legend-col--plan {
	flex: 1 1 auto;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__legend-col--price {
	flex: 0 0 clamp(7rem, 18vw, 10rem);
	text-align: right;
}

/* ── Tier rows ─────────────────────────────────────────────────── */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row {
	position: relative;
	gap: clamp(1rem, 2.4vw, 1.8rem) !important;
	padding: clamp(1.1rem, 2.6vw, 1.5rem) clamp(1.2rem, 3vw, 2rem);
	border-bottom: 1px solid color-mix(in srgb, var(--ink) 10%, transparent);
	transition: background var(--duration-fast, 0.18s) var(--ease-default, ease);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row:last-child {
	border-bottom: 0;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row:hover {
	background: color-mix(in srgb, var(--ink) 3%, transparent);
}

/* Featured row — accent tint + left edge bar. */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row--featured {
	background: color-mix(in srgb, var(--accent) 7%, transparent);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row--featured:hover {
	background: color-mix(in srgb, var(--accent) 10%, transparent);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row--featured::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--accent);
}

/* Left zone: big quantity range on a tinted pad. */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-range {
	flex: 0 0 clamp(6rem, 16vw, 9rem);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 3.2rem;
	font-family: var(--font-display) !important;
	font-size: clamp(1.15rem, 2.6vw, 1.5rem) !important;
	font-weight: 800 !important;
	line-height: 1.05 !important;
	letter-spacing: -0.01em !important;
	color: var(--accent) !important;
	background: color-mix(in srgb, var(--accent) 10%, transparent);
	border-radius: var(--decor-radius, 12px);
	padding: 0.5rem 0.7rem !important;
	margin: 0 !important;
	text-align: center;
	font-variant-numeric: tabular-nums;
}

/* Middle zone: tier name + description. */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-mid {
	flex: 1 1 auto;
	min-width: 0;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-flag {
	display: inline-block;
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 700 !important;
	letter-spacing: var(--tracking-wide) !important;
	text-transform: uppercase !important;
	color: var(--cta-text-primary, #ffffff) !important;
	background: var(--cta-bg-primary, var(--accent)) !important;
	margin: 0 0 0.4rem 0 !important;
	padding: 0.22rem 0.7rem !important;
	border-radius: var(--decor-radius-pill, 999px) !important;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-name {
	font-family: var(--font-display) !important;
	font-size: var(--text-lg) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: var(--ink) !important;
	margin: 0 0 0.25rem 0 !important;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-desc {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	line-height: 1.45 !important;
	color: var(--ink) !important;
	opacity: 0.74;
	margin: 0 !important;
}

/* Right zone: price + per-unit hint, right-aligned. */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-aside {
	flex: 0 0 clamp(7rem, 18vw, 10rem);
	text-align: right;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-price {
	font-family: var(--font-display) !important;
	font-size: clamp(1.4rem, 3vw, 1.9rem) !important;
	font-weight: 800 !important;
	line-height: 1.05 !important;
	letter-spacing: -0.02em !important;
	color: var(--ink) !important;
	margin: 0 0 0.15rem 0 !important;
	font-variant-numeric: tabular-nums;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-price span {
	display: inline;
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	color: var(--ink) !important;
	opacity: 0.6;
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-unit {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	color: var(--accent) !important;
	margin: 0 !important;
}

/* ── CTA + footnote ────────────────────────────────────────────── */
body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__cta-row {
	margin-top: clamp(1.6rem, 3.5vw, 2.4rem);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__cta .wp-block-button__link {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	font-weight: 600 !important;
	padding: 0.9rem 1.6rem !important;
	background: var(--cta-bg-primary, var(--accent)) !important;
	color: var(--cta-text-primary, #ffffff) !important;
	border: none !important;
	transition: background var(--duration-fast, 0.18s) var(--ease-default, ease),
		transform var(--duration-fast, 0.18s) var(--ease-default, ease);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__cta .wp-block-button__link:hover {
	background: var(--accent-hover, var(--accent)) !important;
	color: var(--cta-text-primary, #ffffff) !important;
	transform: translateY(-2px);
}

body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__foot {
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	color: var(--ink) !important;
	opacity: 0.6;
	margin: var(--space-md) 0 0 0 !important;
}

/* Focus-visible rings on every interactive element. */
body.aibt-universal .universal-pricing--usage-tiers-rows .wp-block-button__link:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

/* A5: drop wide tracking on uppercase labels at narrow widths. */
@media (max-width: 640px) {
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__kicker,
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-flag {
		letter-spacing: 0 !important;
	}
}

/* ── Mobile: legend hides, each row stacks to a card ───────────── */
@media (max-width: 781px) {
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__legend {
		display: none;
	}

	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row {
		flex-wrap: wrap !important;
		gap: 0.6rem 1rem !important;
		align-items: flex-start !important;
	}

	/* Range becomes a compact top badge, no longer a full-height pad. */
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-range {
		flex: 0 0 auto;
		min-height: 0;
		font-size: var(--text-base) !important;
		padding: 0.3rem 0.7rem !important;
	}

	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-mid {
		flex: 1 1 100%;
		order: 3;
	}

	/* Price sits beside the range badge on the top line. */
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-aside {
		flex: 1 1 auto;
		text-align: right;
	}
}

/* Respect reduced-motion: no transitions or transforms. */
@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__tier-row,
	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__cta .wp-block-button__link {
		transition: none;
	}

	body.aibt-universal .universal-pricing--usage-tiers-rows .universal-pricing__cta .wp-block-button__link:hover {
		transform: none;
	}
}
