/* Shared frontend/editor primitives. Heading level describes structure, not size. */
:is(.entry-content,.editor-styles-wrapper) {
	--hawk-component-heading-size: clamp(1.35rem, 2.1vw, 1.65rem);
	--hawk-component-gap: 2rem;
}
:is(.entry-content,.editor-styles-wrapper) .wp-block-heading.is-style-hawk-compact {
	font-size: var(--hawk-component-heading-size);
	line-height: 1.3;
	overflow-wrap: anywhere;
}
:is(.entry-content,.editor-styles-wrapper) .hawk-demo-label {
	padding: .75rem 1rem;
	border-left: 3px solid var(--color-heading,#3b3d40);
	background: var(--color-soft,#f2f2f0);
	font-size: .9375rem;
	overflow-wrap: anywhere;
}
:is(.entry-content,.editor-styles-wrapper) .hawk-demo-case { margin-block: var(--hawk-component-gap); }
/* A visible keyboard focus must not depend on hover or color alone. */
:is(.entry-content,.editor-styles-wrapper) :is(a,button,summary):focus-visible {
	outline: 3px solid var(--color-primary,#c90019);
	outline-offset: 3px;
}
@media (forced-colors: active) {
	:is(.entry-content,.editor-styles-wrapper) :is(a,button,summary):focus-visible { outline-color: Highlight; }
}
/* Match the frontend preview when the editor itself uses a narrow viewport. */
@media (max-width: 48rem) {
	.editor-styles-wrapper .hawk-marginal-section { grid-template-columns: minmax(0,1fr); gap:1.5rem !important; }
	.editor-styles-wrapper .wp-block-gallery.is-style-hawk-square-grid:is(.columns-3,.columns-4) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 30rem) {
	.editor-styles-wrapper .wp-block-gallery.is-style-hawk-square-grid:is(.columns-3,.columns-4) { grid-template-columns:minmax(0,1fr); }
}
