/**
 * A small, deliberately restrained utility layer — layout/spacing/text
 * helpers only, for cases a component shouldn't own. Loaded last so
 * utilities can win against component defaults. Do not add color or
 * component-shaped classes here; that belongs in components/.
 */

.u-hidden {
	display: none !important;
}

@media (max-width: 767px) {
	.u-hidden-sm {
		display: none !important;
	}
}

@media (min-width: 1024px) {
	.u-hidden-lg {
		display: none !important;
	}
}

.u-flex {
	display: flex;
}

.u-flex-col {
	display: flex;
	flex-direction: column;
}

.u-items-center {
	align-items: center;
}

.u-justify-between {
	justify-content: space-between;
}

.u-gap-xs {
	gap: var(--wp--preset--spacing--xs);
}

.u-gap-sm {
	gap: var(--wp--preset--spacing--sm);
}

.u-gap-md {
	gap: var(--wp--preset--spacing--md);
}

.u-text-center {
	text-align: center;
}

.u-text-muted {
	color: var(--color-fg-muted);
}

.u-sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
