/* Shared frontend and editor additions. */
:where(.wp-site-blocks, .editor-styles-wrapper) {
	overflow-wrap: anywhere;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid currentColor;
	outline-offset: 4px;
}

.wp-element-button:focus-visible,
.wp-block-button__link:focus-visible {
	outline-color: var(--wp--preset--color--contrast);
	box-shadow: none;
}

:where(.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close) {
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
}

.wp-block-navigation-item__content {
	padding-block: var(--wp--preset--spacing--xs);
}

.wp-block-search__input {
	min-width: 0;
}

.wp-block-search__button {
	flex-shrink: 0;
	white-space: nowrap;
}

:where(.wp-block-button__link, .wp-block-search__button) {
	min-height: 44px;
}

.wp-block-post-content > .vv-section {
	margin-block: var(--wp--preset--spacing--xl);
}

@media (prefers-reduced-motion: reduce) {
	html:focus-within {
		scroll-behavior: auto;
	}
}

/* Keep readable text widths, aligned to the common wide container edge.
 * Core uses important auto margins for constrained children. */
.wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.vv-section.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	margin-left: 0 !important;
	margin-right: auto !important;
}

.vv-section.is-layout-constrained > .wp-block-heading {
	max-width: var(--wp--style--global--wide-size);
}
