/* Reproductor TVPlay: negro, pantalla completa, sin controles. */
* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
	width: 100%;
	height: 100%;
	background: #000;
	overflow: hidden;
	cursor: none; /* Oculta el cursor en modo kiosk. */
}

.tvplay-player { position: fixed; inset: 0; background: #000; }

#tvplay-stage { position: fixed; inset: 0; background: #000; }

.tvplay-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;   /* Cambia a 'cover' si prefieres llenar sin barras. */
	background: #000;
	opacity: 0;
	transition: opacity 120ms linear;
	will-change: opacity;
	pointer-events: none;
}

.tvplay-video.is-active { opacity: 1; }

/* Oculta los controles y el botón de play que el navegador/WebView dibuja sobre
   un <video> en pausa o cargando (el círculo con triángulo entre video y video). */
.tvplay-video::-webkit-media-controls,
.tvplay-video::-webkit-media-controls-enclosure,
.tvplay-video::-webkit-media-controls-panel,
.tvplay-video::-webkit-media-controls-overlay-play-button,
.tvplay-video::-webkit-media-controls-start-playback-button {
	display: none !important;
	-webkit-appearance: none !important;
	opacity: 0 !important;
}

/* Capa de estado (oculta durante reproducción normal). */
.tvplay-overlay {
	position: fixed;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000;
	color: #444;
	font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
	font-size: 2vh;
	letter-spacing: .05em;
	text-transform: uppercase;
	opacity: 1;
	transition: opacity 300ms ease;
	z-index: 10;
}

.tvplay-overlay.is-hidden { opacity: 0; pointer-events: none; }

.tvplay-overlay-inner { text-align: center; }

/* Aviso discreto de sonido (esquina inferior). Oculto salvo que el audio quede bloqueado. */
.tvplay-sound-hint {
	position: fixed;
	bottom: 4vh;
	right: 4vh;
	background: rgba(0,0,0,.6);
	color: #fff;
	font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
	font-size: 1.8vh;
	padding: .8vh 1.6vh;
	border-radius: 999px;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .3s ease, transform .3s ease;
	pointer-events: none;
	z-index: 20;
}
.tvplay-sound-hint.is-visible { opacity: 1; transform: translateY(0); }
