/**
 * Variant CSS: pricing--striped-rows-rate
 * Layer 2 — Path B pricing role (brief-bound, Element Count 5+, 2026-06-10).
 *
 * A wide zebra-striped price list for FIVE or more priced services. Every tier
 * is one full-width row: the service name on the left, the price enclosed in a
 * rounded "pill" on the right (tabular figures), and a one-line tagline beneath;
 * every other row carries a faint tinted background so a long list reads in
 * clean bands. NO feature lists — the price leads.
 *
 * Chunk-safe striping: the loader can split the tiers into several
 * `.universal-pricing__tiers` rows of 3. Each `__tiers` row is set to
 * `display: contents`, so ALL `__tier` elements collapse into one continuous
 * flow under the section — `:nth-of-type(even)` then alternates globally across
 * the whole list (5-12 rows) instead of restarting at every chunk. Scoped to the
 * variant class.
 */

body.aibt-universal .universal-pricing--striped-rows-rate {
	background: var(--background);
	color: var(--text-primary);
}

/* ── Intro ─────────────────────────────────────────────────────── */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__intro {
	margin-bottom: var(--space-6);
}

body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__kicker {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	color: var(--accent) !important;
	margin: 0 0 var(--space-3) 0 !important;
}

body.aibt-universal .universal-pricing--striped-rows-rate h2.universal-pricing__headline,
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__headline {
	font-family: var(--font-display) !important;
	color: var(--text-primary) !important;
	margin: 0 !important;
	max-width: 22ch;
}

body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-lg) !important;
	line-height: 1.6 !important;
	color: var(--text-secondary) !important;
	margin: var(--space-4) 0 0 0 !important;
	max-width: 56ch;
}

/* ── Collapse every chunked `__tiers` row into one continuous flow so the
   zebra stripe counts globally (see file header). The framing border + radius
   live on the section's tier list wrapper via the first/last rows below. ── */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tiers {
	display: contents;
}

/* Each rate row. nth-of-type alternates across ALL tiers (display:contents). */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier {
	/* Row grid: name + price-pill on a baseline, tagline spans the text column. */
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-areas:
		"name price"
		"tagline price";
	column-gap: var(--space-4);
	row-gap: var(--space-1);
	align-items: baseline;
	padding: var(--space-4) var(--space-5);
	border-radius: var(--radius-md);
	transition: background var(--duration-fast) var(--ease-standard);
}

/* Zebra: every even row gets a faint tint. Uses --background-alt so it tracks
   the active theme and never collides with on-row text (KI-020 safe — text
   colors are --text-primary/secondary, not --background). */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier:nth-of-type(even) {
	background: var(--background-alt);
}

body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier:hover {
	background: var(--background-card, var(--background-alt));
}

body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: -2px;
}

body.aibt-universal .universal-pricing--striped-rows-rate h3.universal-pricing__tier-name,
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier-name {
	grid-area: name;
	font-family: var(--font-display) !important;
	font-size: var(--text-xl) !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	color: var(--text-primary) !important;
	margin: 0 !important;
}

/* Price — enclosed in a pill on the right, tabular figures. The pill hugs its
   content (width:max-content) and never wraps mid-word; overflow-wrap:normal +
   a contained font size keep long text prices ("wycena indywidualna") intact. */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier-price {
	grid-area: price;
	align-self: center;
	justify-self: end;
	width: max-content;
	max-width: 100%;
	font-family: var(--font-display) !important;
	font-size: clamp(1.1rem, 2vw, 1.4rem) !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.01em !important;
	color: var(--on-accent, #fff) !important;
	background: var(--accent);
	margin: 0 !important;
	padding: var(--space-2) var(--space-4);
	border-radius: var(--radius-pill);
	text-align: center;
	overflow-wrap: normal;
	word-break: keep-all;
	font-variant-numeric: tabular-nums;
}

/* The optional "od" / "/ mies." qualifier inside the price pill. Kept legible
   on the accent fill (slightly dimmed white, not a theme token that could be
   dark-on-dark). */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier-price span {
	font-family: var(--font-body);
	font-size: var(--text-sm);
	font-weight: 500;
	letter-spacing: 0;
	opacity: 0.82;
}

/* Tagline — sits in the name column beneath the service name. */
body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier-tagline {
	grid-area: tagline;
	font-family: var(--font-body) !important;
	font-size: var(--text-sm) !important;
	line-height: 1.5 !important;
	color: var(--text-secondary) !important;
	margin: 0 !important;
}

/* ── Tablet ────────────────────────────────────────────────────── */
@media (min-width: 641px) and (max-width: 959px) {
	body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier {
		padding: var(--space-4);
	}
}

/* ── Mobile: stack name → price-pill → tagline in a single column. ── */
@media (max-width: 640px) {
	body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier {
		grid-template-columns: 1fr;
		grid-template-areas:
			"name"
			"price"
			"tagline";
		row-gap: var(--space-2);
		padding: var(--space-4) var(--space-3);
	}
	body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier-price {
		justify-self: start;
	}
	/* A5: drop the wide tracking on the uppercase kicker at narrow widths. */
	body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__kicker {
		letter-spacing: 0 !important;
	}
}

/* Respect reduced-motion. */
@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-pricing--striped-rows-rate .universal-pricing__tier {
		transition: none;
	}
}
