/* Stream iframe sits inside the original block wrapper (figure, media-text). */
.peuwl-cfs-player {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: #000;
}

.peuwl-cfs-player iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.wp-block-video .peuwl-cfs-player,
.wp-block-media-text__media .peuwl-cfs-player {
	margin: 0;
}

/* Cover backgrounds stay native <video> so core cover CSS still applies. */
.wp-block-cover video.peuwl-cfs-bg,
video.wp-block-cover__video-background.peuwl-cfs-bg {
	object-fit: cover;
}

/* Hide the MSE seek gap when a short cover clip loops back to 0. */
canvas.peuwl-cfs-loop-hold {
	opacity: 0;
	pointer-events: none;
	z-index: 1;
}
canvas.peuwl-cfs-loop-hold.is-visible {
	opacity: 1;
}
