/* Keep native divider geometry; animate only the two decorative lines. */
.w-separator.magic-separator-motion:not(.layout_vertical) {
	container-type: inline-size;
}
.w-separator.magic-separator-motion:not(.layout_vertical).with_content .w-separator-h::before,
.w-separator.magic-separator-motion:not(.layout_vertical).with_content .w-separator-h::after {
	/* Animate the visible line, not a viewport-wide line clipped by the row. */
	width: calc(50cqw - 50%);
}
.w-separator.magic-separator-motion .w-separator-h::before {
	transform: scaleX(var(--magic-separator-progress, 1));
	transform-origin: right center;
}
.w-separator.magic-separator-motion .w-separator-h::after {
	transform: scaleX(var(--magic-separator-progress, 1));
	transform-origin: left center;
}
@media (prefers-reduced-motion: reduce) {
	.w-separator.magic-separator-motion .w-separator-h::before,
	.w-separator.magic-separator-motion .w-separator-h::after { transform: none; }
}
/* Custom separator emblems inherit the selected line colour. */
.w-separator.color_custom .w-separator-h > .magic-inline-icon { color: var(--line-color, currentColor); }
