.fm-dpf-block--rating {
	margin-bottom: 20px;
}

.fm-dpf-rating {
	align-items: center;
	background: #e9e9e9;
	display: flex;
	isolation: isolate;
	min-height: 31px;
	overflow: hidden;
	padding: 5px 15px;
	position: relative;
}

.fm-dpf-rating__fill {
	background: #e8c19f;
	inset: 0 auto 0 0;
	position: absolute;
	transition: width 240ms ease;
	z-index: -1;
}

.fm-dpf-rating__label,
.fm-dpf-rating__value {
	color: #343434;
	font-size: 14px;
	line-height: 1.2;
	position: relative;
}

.fm-dpf-rating__label {
	flex: 1;
	padding-right: 12px;
}

.fm-dpf-rating__value {
	flex: 0 0 auto;
}

@media (prefers-reduced-motion: reduce) {
	.fm-dpf-rating__fill {
		transition: none;
	}
}

/* FM Video differito */
.fm-dpf-video {
	/* aspect-ratio tiene le proporzioni; l'altezza vera la mette lazy-video.js in pixel, perche'
	   dentro un contenitore flex che si dimensiona sul contenuto (l'accordion) un riquadro con
	   aspect-ratio e larghezza in percentuale conta zero e la voce si apre schiacciata. */
	aspect-ratio: var(--fm-dpf-ratio, 16 / 9);
	background: #f1efec;
	margin-inline: auto;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.fm-dpf-video__stage,
.fm-dpf-video__stage > iframe,
.fm-dpf-video__stage > video,
.fm-dpf-video__stage smartvideo,
.fm-dpf-video__stage .swarm-fluid {
	border: 0;
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

/* Quanto spazio lasciare sopra al video quando la pagina ci scorre sopra da sola: il tema lo alza
   se ha un'intestazione appiccicata in cima. */
.fm-dpf-video {
	--fm-dpf-scroll-offset: 16px;
}

.fm-dpf-video--placeholder {
	align-items: center;
	color: #555;
	display: flex;
	font-size: 13px;
	justify-content: center;
	padding: 12px;
	text-align: center;
}
