/**
 * ZARE Theme Core block presentation / Stylebook layer — DS-2.
 *
 * Presentation-only roles consume semantic Experience Profile tokens. Core
 * remains responsible for block semantics, structure, responsive controls and
 * interaction/runtime behavior.
 */
:root,
body {
	--zare-theme-media-radius: var(--wp--custom--zare-experience--shape--media, var(--wp--custom--zare-experience--radius--md, 0.5rem));
	--zare-theme-component-gap: var(--wp--custom--zare-experience--density--component-gap, var(--wp--preset--spacing--4, 1rem));
	--zare-theme-grid-gap: var(--wp--custom--zare-experience--density--grid-gap, var(--wp--preset--spacing--4, 1rem));
	--zare-theme-eyebrow-gap: var(--wp--custom--zare-experience--density--control-gap, var(--wp--preset--spacing--2, 0.5rem));
	--zare-theme-eyebrow-inset-block: max(0.25rem, calc(var(--wp--custom--zare-experience--density--control-block-padding, 0.5rem) / 2));
	--zare-theme-eyebrow-inset-inline: max(0.5rem, calc(var(--wp--custom--zare-experience--density--control-inline-padding, 1rem) / 2));
}

.wp-block-heading.is-style-display {
	font-size: var(--wp--preset--font-size--5-xl);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.04em;
}

.wp-block-heading.is-style-page-title {
	font-size: var(--wp--preset--font-size--4-xl);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.035em;
}

.wp-block-heading.is-style-section-title {
	font-size: var(--wp--preset--font-size--3-xl);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.025em;
}

.wp-block-heading.is-style-card-title {
	font-size: var(--wp--preset--font-size--xl);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.015em;
}

.wp-block-heading.is-style-body {
	font-size: var(--wp--preset--font-size--base);
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0;
}

.wp-block-heading.is-style-small {
	color: var(--wp--preset--color--muted-foreground);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0;
}

.wp-block-heading.is-style-label {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.02em;
}

.wp-block-heading.is-style-eyebrow {
	color: var(--wp--custom--zare-experience--color--primary-text, var(--wp--preset--color--foreground));
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.wp-block-paragraph.is-style-display {
	font-size: var(--wp--preset--font-size--4-xl);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.035em;
}

.wp-block-paragraph.is-style-lead {
	color: var(--wp--preset--color--muted-foreground);
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.6;
}

.wp-block-paragraph.is-style-body {
	font-size: var(--wp--preset--font-size--base);
	line-height: 1.5;
}

.wp-block-paragraph.is-style-small {
	color: var(--wp--preset--color--muted-foreground);
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.5;
}

.wp-block-paragraph.is-style-label {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.02em;
}

.wp-block-paragraph.is-style-eyebrow {
	width: fit-content;
	max-width: 100%;
	margin-block-end: 0;
	color: var(--wp--custom--zare-experience--color--primary-text, var(--wp--preset--color--foreground));
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-leading-line,
.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-trailing-line {
	display: inline-flex;
	align-items: center;
	gap: var(--zare-theme-eyebrow-gap);
}

.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-leading-line::before,
.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-trailing-line::after {
	content: "";
	flex: 0 0 var(--wp--preset--spacing--8, 2rem);
	inline-size: var(--wp--preset--spacing--8, 2rem);
	block-size: 1px;
	background: currentColor;
}

.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-soft,
.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-badge,
.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-pill {
	display: inline-flex;
	align-items: center;
	padding: var(--zare-theme-eyebrow-inset-block) var(--zare-theme-eyebrow-inset-inline);
}

.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-soft {
	background: color-mix(in srgb, var(--wp--preset--color--primary) 10%, var(--wp--preset--color--background));
	border-radius: var(--zare-theme-control-radius);
}

.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-badge {
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--secondary-foreground);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--zare-theme-control-radius);
}

.wp-block-paragraph.is-style-eyebrow.zare-eyebrow-presentation-pill {
	background: color-mix(in srgb, var(--wp--preset--color--primary) 12%, var(--wp--preset--color--background));
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--primary) 24%, transparent);
	border-radius: var(--wp--custom--zare-experience--radius--full, 999px);
}

.wp-block-image.is-style-media-frame,
.wp-block-post-featured-image.is-style-media-frame {
	overflow: clip;
	border-radius: var(--zare-theme-media-radius);
}

.wp-block-image.is-style-media-frame img,
.wp-block-post-featured-image.is-style-media-frame img {
	display: block;
	inline-size: 100%;
	border-radius: inherit;
}

.wp-block-separator.is-style-subtle {
	border: 0;
	block-size: 1px;
	background: color-mix(in srgb, var(--wp--preset--color--muted-foreground) 45%, transparent);
	color: var(--wp--preset--color--muted-foreground);
}

.wp-block-separator.is-style-accent,
.wp-block-separator.is-style-short-accent {
	border: 0;
	block-size: 2px;
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary);
}

.wp-block-separator.is-style-short-accent {
	inline-size: var(--wp--preset--spacing--24, 6rem);
	max-inline-size: 25%;
	margin-inline-start: 0;
	margin-inline-end: auto;
}

.wp-block-separator.is-style-dots {
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--muted-foreground);
}

.wp-block-list.is-style-compact {
	line-height: 1.35;
}

.wp-block-list.is-style-compact > li + li {
	margin-block-start: 0.125em;
}

.wp-block-list.is-style-check-list {
	display: grid;
	gap: calc(var(--zare-theme-component-gap) / 2);
	padding-inline-start: 0;
	list-style: none;
}

.wp-block-list.is-style-check-list > li {
	position: relative;
	padding-inline-start: 1.5em;
}

.wp-block-list.is-style-check-list > li::before {
	content: "✓";
	position: absolute;
	inset-inline-start: 0;
	color: var(--wp--custom--zare-experience--color--primary-text, var(--wp--preset--color--foreground));
	font-weight: 700;
}

.wp-block-details.is-style-divided,
.wp-block-accordion.is-style-divided {
	border-block: 1px solid var(--wp--preset--color--border);
}

.wp-block-details.is-style-surface,
.wp-block-accordion.is-style-surface {
	box-sizing: border-box;
	background: var(--wp--preset--color--card);
	color: var(--wp--preset--color--card-foreground);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--zare-theme-surface-radius);
	box-shadow: var(--zare-theme-surface-shadow);
	padding: var(--zare-theme-component-padding);
}

/* P5-H0 Chunk D — Core-owned component presentation. */
.wp-block-tabs.is-style-line .wp-block-tabs__list,
.wp-block-tabs.is-style-line [role="tablist"] { border-block-end: 1px solid var(--wp--preset--color--border); }
.wp-block-tabs.is-style-line [role="tab"] { margin-block-end: -1px; border-block-end: 2px solid transparent; border-radius: 0; }
.wp-block-tabs.is-style-line [role="tab"][aria-selected="true"] { border-block-end-color: var(--wp--preset--color--foreground); }
