/**
 * Utility classes — Adapt Theme
 *
 * Small, generic helper classes with no component-specific behaviour
 * (Section 8.6). Kept deliberately minimal in Phase 2: only what the
 * Phase 2 templates (search.php, 404.php) actually need.
 */

/**
 * Visually hides content while keeping it available to assistive
 * technology. WordPress core's own admin styles define ".screen-reader-text"
 * but the frontend does not inherit it — themes must define it themselves.
 * Used by get_search_form()'s field label.
 */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: var(--color-white);
	border-radius: var(--radius-sm);
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: var(--color-text);
	display: block;
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-body-bold);
	height: auto;
	left: 5px;
	line-height: normal;
	padding: var(--space-xs) var(--space-sm);
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/**
 * Long-form reading width (Section 4.6) — used by page.php for legal pages
 * and later by blog/clinical single templates.
 */
.content-reading-width {
	max-width: var(--content-reading-width);
	margin-left: auto;
	margin-right: auto;
}

/**
 * Standard page container (Section 4.6).
 *
 * Gutters are --space-md (1.5rem) rather than --space-sm. At 1rem, body
 * copy sits 16px from the viewport edge on a phone, which reads as
 * cramped against Section 4.6's "generous whitespace". This is the one
 * change in the homepage polish pass that is deliberately sitewide:
 * the container is shared, and a homepage-only gutter would make the
 * homepage inconsistent with every other page rather than better.
 */
.content-container {
	max-width: var(--content-max-width);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--space-md);
	padding-right: var(--space-md);
}
