/**
 * Site shell and shared container utilities.
 *
 * Gutenberg block widths are handled in gutenberg.css + theme.json.
 * These utilities are for theme chrome (header/footer) and non-block areas.
 */

.site {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	overflow-x: clip;
}

.site-main {
	flex: 1 0 auto;
	width: 100%;
	min-width: 0;
}

.entry-header {
	width: min(100%, var(--content-width));
	margin-inline: auto;
	margin-block-end: var(--space-xl);
	padding-left: max(var(--content-gutter, 1.25rem), env(safe-area-inset-left, 0px));
	padding-right: max(var(--content-gutter, 1.25rem), env(safe-area-inset-right, 0px));
}

.entry-title {
	margin-block-end: 0;
}

.site-header,
.site-footer {
	width: 100%;
}

/* Shared width helpers for non-block template areas (archives, Woo wrappers, etc.). */
.rr-container {
	width: min(100%, var(--container-width));
	margin-inline: auto;
}

.rr-container--wide {
	width: min(100%, var(--container-wide-width));
	margin-inline: auto;
}

.rr-container--narrow {
	width: min(100%, var(--content-width));
	margin-inline: auto;
}

.page-header {
	width: min(100%, var(--content-width));
	margin-inline: auto;
	margin-block-end: var(--space-xl);
	padding-left: max(var(--content-gutter, 1.25rem), env(safe-area-inset-left, 0px));
	padding-right: max(var(--content-gutter, 1.25rem), env(safe-area-inset-right, 0px));
}

.page-title {
	margin-block-end: var(--space-sm);
}

.archive-description {
	color: var(--color-text-muted);
}
