/*
 * Radio Universidad 94.7 — Bloque de streaming
 * Traducción 1:1 del diseño aprobado (mobile first, breakpoint 768px).
 */

.rus-wrap {
	box-sizing: border-box;
	width: 100%;
	padding: 40px 22.5px;
	display: flex;
	justify-content: center;
}

.rus-wrap__inner {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--rus-max-width, 1230px);
}

.rus-stream {
	box-sizing: border-box;
	width: 100%;
	display: flex;
	flex-direction: column;
	padding: 59.7px 15px 21.1px;
	background: linear-gradient(180deg, #00adee 0%, #00adee 42%, #00a7e8 60%, #0094d6 80%, #0074b7 100%);
}

.rus-stream * {
	box-sizing: border-box;
}

.rus-stream .rus-brand {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: center;
	gap: 13.8px;
	margin-bottom: 49.4px;
}

/* Selectores con clase + etiqueta para ganarle a los `img { height: auto }` de los themes. */
.rus-stream .rus-brand img.rus-word,
.rus-stream .rus-brand img.rus-freq {
	display: block;
	height: clamp(44px, 14.3vw, 53.6px);
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.rus-stream .rus-brand img.rus-play {
	display: none;
}

.rus-stream .rus-stage {
	position: relative;
	width: 100%;
	aspect-ratio: 300 / 158.572;
	background: #4d4d4d;
	overflow: hidden;
}

.rus-stream .rus-stage iframe {
	position: absolute;
	inset: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
	max-width: none;
}

/* Fallback para navegadores sin aspect-ratio. */
@supports not (aspect-ratio: 1 / 1) {
	.rus-stream .rus-stage::before {
		content: "";
		display: block;
		padding-top: 52.857%;
	}
}

@media (min-width: 768px) {
	.rus-stream {
		flex-direction: row;
		align-items: stretch;
		padding: 0 2.785% 0 0;
		border-radius: 9.7px;
		overflow: hidden;
	}

	.rus-stream .rus-brand {
		flex: 0 0 27.51%;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0;
		margin-bottom: 0;
	}

	.rus-stream .rus-brand img.rus-word {
		width: 55.9%;
		height: auto;
	}

	.rus-stream .rus-brand img.rus-freq {
		width: 55.9%;
		height: auto;
		margin-top: 3.5%;
	}

	.rus-stream .rus-brand img.rus-play {
		display: block;
		width: 18.7%;
		height: auto;
		margin-top: 11%;
		max-width: none;
	}

	.rus-stream .rus-stage {
		flex: 1 1 auto;
		aspect-ratio: 857.325 / 453.158;
	}

	@supports not (aspect-ratio: 1 / 1) {
		.rus-stream .rus-stage::before {
			padding-top: 52.857%;
		}
	}
}

/* Aviso de configuración pendiente (solo administradores). */
.rus-aviso {
	box-sizing: border-box;
	margin: 1em 0;
	padding: 12px 16px;
	border-left: 4px solid #0074b7;
	background: #f2f7fb;
	color: #1d2327;
	font-size: 14px;
	line-height: 1.5;
}

.rus-aviso a {
	color: #0074b7;
}
