/**
 * Variant CSS: features--interactive-tabs-photo-static
 * Layer 2 — Path B features role (2026-06-06).
 *
 * Two-column "menu on the left / preview on the right" feature browser.
 * Left: a vertical rail of feature tabs (icon + title), the first marked
 * .is-active with an accent left-bar + tinted surface. Right: the active
 * feature detail — large photo, small accent eyebrow (mirrors the active
 * tab title via shared binding), a static title and an expanded description.
 * Static (no JS): the first feature is always shown. Structurally distinct
 * from the horizontal tabbed-showcase (tabs-on-top) — here the tabs stack
 * vertically beside an illustrated detail panel.
 *
 * All selectors scoped to .universal-features--interactive-tabs-photo-static.
 */

body.aibt-universal .universal-features--interactive-tabs-photo-static {
	background: var(--background);
	color: var(--text-primary);
	border-bottom: 1px solid var(--divider-primary);
}

/* ── Intro ─────────────────────────────────────────────────────── */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__intro {
	margin: 0 0 var(--space-2xl) 0;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__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-features--interactive-tabs-photo-static h2.universal-features__headline,
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__headline {
	font-family: var(--font-display) !important;
	color: var(--text-primary) !important;
	margin: 0 !important;
	max-width: 20ch;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__headline em {
	font-style: normal;
	color: var(--accent);
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-lg) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-secondary) !important;
	margin: var(--space-md) 0 0 0 !important;
	max-width: 52ch;
}

/* ── Split layout ──────────────────────────────────────────────── */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__split {
	gap: clamp(1.5rem, 3.5vw, 3rem) !important;
	align-items: stretch !important;
}

/* ── Left rail — vertical tabs ─────────────────────────────────── */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tabs {
	display: flex !important;
	flex-direction: column;
	gap: var(--space-xs);
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab {
	position: relative;
	display: flex !important;
	flex-direction: row;
	align-items: center;
	gap: var(--space-sm);
	padding: clamp(0.9rem, 1.8vw, 1.25rem) clamp(1rem, 2vw, 1.4rem);
	border: 1px solid var(--divider-primary);
	border-radius: var(--decor-radius, 0);
	background: var(--background);
	cursor: pointer;
	overflow: hidden;
	transition:
		background var(--duration-fast) var(--ease-default),
		border-color var(--duration-fast) var(--ease-default),
		transform var(--duration-fast) var(--ease-default);
}

/* Accent left-bar slides in on hover/active. */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--accent);
	transform: scaleY(0);
	transform-origin: top;
	transition: transform var(--duration-fast) var(--ease-default);
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab:hover {
	border-color: color-mix(in srgb, var(--accent) 45%, var(--divider-primary));
	background: color-mix(in srgb, var(--accent) 4%, var(--background));
	transform: translateY(-2px);
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab:hover::before {
	transform: scaleY(1);
}

/* Active tab — accent bar shown, tinted surface, stronger border. */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab.is-active {
	border-color: color-mix(in srgb, var(--accent) 55%, var(--divider-primary));
	background: color-mix(in srgb, var(--accent) 7%, var(--background));
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab.is-active::before {
	transform: scaleY(1);
}

/* Keyboard focus ring on the tab group (focusable container in editor). */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab-icon {
	font-size: 1.4rem !important;
	line-height: 1 !important;
	flex: 0 0 auto;
	margin: 0 !important;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab-label {
	font-family: var(--font-display) !important;
	font-weight: 600 !important;
	font-size: var(--text-base) !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em !important;
	color: var(--text-primary) !important;
	margin: 0 !important;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab.is-active .universal-features__tab-label {
	color: var(--accent) !important;
}

/* ── Right — active detail with photo ──────────────────────────── */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail {
	display: flex !important;
	flex-direction: column;
	gap: var(--space-md);
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-img {
	margin: 0 !important;
	width: 100%;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-img img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: var(--decor-radius, 0);
}

/* Accent eyebrow tag mirrors the active tab title (shared binding). */
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-title-tag {
	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 !important;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static h3.universal-features__detail-title,
body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-title {
	font-family: var(--font-display) !important;
	font-weight: 600 !important;
	font-size: clamp(1.5rem, 3vw, 2.1rem) !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em !important;
	color: var(--text-primary) !important;
	margin: calc(var(--space-xs) * -1) 0 0 0 !important;
}

body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-desc {
	font-family: var(--font-body) !important;
	font-size: var(--text-lg) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--text-secondary) !important;
	margin: 0 !important;
	max-width: 60ch;
}

/* ── Mobile: stack rail above detail ───────────────────────────── */
@media (max-width: 781px) {
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__split {
		display: flex !important;
		flex-direction: column;
		gap: var(--space-lg) !important;
	}
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tabs,
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail {
		flex-basis: auto !important;
		width: 100% !important;
	}
	/* On phones the detail is the focus — show it first, tabs as a menu below. */
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail {
		order: -1;
	}
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-img img {
		aspect-ratio: 3 / 2;
	}
}

/* Drop wide uppercase tracking on narrow phones (A5). */
@media (max-width: 640px) {
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__kicker,
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__detail-title-tag {
		letter-spacing: 0 !important;
	}
}

/* Honour reduced-motion: kill tab transitions + reveal the active bar statically. */
@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab,
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab::before {
		transition: none;
	}
	/* Drop the hover lift entirely when motion is reduced. */
	body.aibt-universal .universal-features--interactive-tabs-photo-static .universal-features__tab:hover {
		transform: none;
	}
}
