/* Unified block delegates frontend rendering to Features, Story and Presentation CSS. */
.wp-block-vimmera-sticky {
	/* Old saved blocks did not carry this variable. Keep their former theme spacing
	   until Gutenberg migrates them; current blocks write the vh value inline. */
	--vst-block-gap: 0vh;
	/* Runtime modules may reserve only the real visual overflow of UI that hangs
	   outside their normal layout box. This is intrinsic block geometry, not a
	   second spacing system and not part of blockGapVh. */
	--vst-runtime-overflow-end: 0px;
	clear: both !important;
	display: flow-root !important;
	margin-block-end: var(--vst-runtime-block-gap, var(--vst-block-gap));
}

/* Keep out-of-flow runtime UI inside the block's own geometric footprint.
   Story uses this for the progress rail only when it would otherwise protrude
   beyond the configured outer hold. */
.wp-block-vimmera-sticky::after {
	content: "";
	display: block;
	height: var(--vst-runtime-overflow-end, 0px);
	pointer-events: none;
}

/* blockGapVh is the authoritative spacing *after* a Sticky block. WordPress and
   themes often implement normal block spacing as margin-block-start on the next
   sibling; neutralize that second source so 0vh really means no extra gap. */
.wp-block-vimmera-sticky + * {
	margin-block-start: 0 !important;
}
