/*
 * Front-end styles for pbs/steps. `__PREFIX__` is the neutral class prefix; logical
 * properties only (wp/bin/pbs-logical-css.php). Loaded only where this block renders.
 */
.__PREFIX__-steps {
	display: flex;
	flex-direction: column;
	gap: 1.25em;
	margin-block: 1em;
	margin-inline: 0;
	padding: 0;
	list-style: none;
}

.__PREFIX__-steps__item {
	position: relative;
	display: flex;
	gap: 1em;
	align-items: flex-start;
	margin: 0;
}

/* The line joining the numbers, down the page. */
.__PREFIX__-steps--vertical .__PREFIX__-steps__item:not(:last-child)::after {
	content: "";
	position: absolute;
	inset-block: 2.5em -1.25em;
	inset-inline-start: 1.1em;
	border-inline-start: 2px solid rgb(0 0 0 / 15%);
}

.__PREFIX__-steps__number {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	inline-size: 2.25em;
	block-size: 2.25em;
	border: 2px solid var(--__PREFIX__-accent, currentcolor);
	border-radius: 50%;
	font-weight: 700;
	line-height: 1;
}

.__PREFIX__-steps__body {
	min-inline-size: 0;
	padding-block-start: 0.25em;
}

.__PREFIX__-steps__title {
	margin-block: 0 0.25em;
	font-size: 1.125em;
}

.__PREFIX__-steps__text {
	margin-block: 0;
}

@media (min-width: 768px) {
	.__PREFIX__-steps--horizontal {
		flex-direction: row;
	}

	.__PREFIX__-steps--horizontal .__PREFIX__-steps__item {
		flex: 1 1 0;
		flex-direction: column;
	}
}

/* Shared by the G-B blocks. Each block file carries its own copy, because a page loads only the
   stylesheets of the blocks it uses. */
.__PREFIX__-accent--primary {
	--__PREFIX__-accent: var(--wp--preset--color--primary, var(--wp--preset--color--accent-3, #5b21b6));
}

.__PREFIX__-accent--secondary {
	--__PREFIX__-accent: var(--wp--preset--color--secondary, var(--wp--preset--color--accent-4, #3f3f46));
}

.__PREFIX__-accent--contrast {
	--__PREFIX__-accent: var(--wp--preset--color--contrast, currentcolor);
}

.__PREFIX__-accent--text {
	--__PREFIX__-accent: currentcolor;
}

.__PREFIX__-kit-icon,
.__PREFIX__-kit-icon svg {
	display: inline-block;
	line-height: 0;
}

.__PREFIX__-sr {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}
