/**
 * Estilos base del tema hijo (fondo oscuro, layout, header, home).
 * Se cargan siempre; style.css añade el resto. Evita pantalla blanca si falla el bundle grande.
 */

*, *::before, *::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	font: 400 1rem/1.5625rem -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
	overflow-x: hidden;
	word-wrap: break-word;
	color: #8DA0BC;
	background-color: #080F28;
}

a {
	color: #fff;
	text-decoration: none;
}

a:hover {
	color: #007AFF;
}

h1, h2, h3, h4, h5, h6, .Title {
	font-weight: 700;
	color: #fff;
}

#aa-wp {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

#aa-wp > .bd {
	flex: 1 0 auto;
}

.cont {
	margin: 0 auto;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	width: 100%;
	max-width: 1140px;
}

.dfx, .dfxb, .dfxc, .dfxj, .jst-sb, .alg-cr, .center-flex {
	display: flex;
}

.dfxb {
	flex-wrap: wrap;
}

.jst-sb {
	justify-content: space-between;
}

.alg-cr, .center-flex {
	align-items: center;
}

.fg1 {
	flex: 1;
}

.Button,
a.Button,
button[type='submit'] {
	display: inline-block;
	color: #fff;
	background-color: #007AFF;
	border: 0;
	border-radius: 3rem;
	padding: 0.5rem 2rem;
	line-height: 2rem;
	cursor: pointer;
	text-align: center;
	vertical-align: top;
}

.Button.sm {
	padding: 0 1rem;
	font-size: 0.75rem;
	line-height: 2rem;
	text-transform: uppercase;
	font-weight: 700;
}

.Button.loadmore,
.Button.normal {
	background-color: #3D4F91;
	border-radius: 3rem;
	width: 100%;
}

.Button.loadmore:hover,
.Button.normal:hover {
	background-color: #007AFF;
}

.Header {
	position: relative;
	z-index: 11;
	margin-bottom: 2.5rem;
}

.Header:after,
.slider .Header.fx:after {
	content: '';
	z-index: -1;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	height: 100%;
	background: #141A32;
	pointer-events: none;
}

.slider .Header,
.slider .Header.fx {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1001;
	margin-bottom: 0;
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.slider .Header:after {
	height: 160px;
	opacity: 0.9;
	background: linear-gradient(to bottom, rgba(20, 26, 50, 1) 1%, rgba(20, 26, 50, 0) 100%);
	transition: background 0.2s ease, opacity 0.2s ease, height 0.2s ease;
}

.slider .Header.fx:after {
	height: 100%;
	opacity: 1;
	background: #141A32;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
	display: block;
}

.slider .bd > .RxodCn {
	margin-top: 0;
}

.slider .bd {
	padding-top: 5.25rem;
}

.slider .bd:has(> .RxodCn:first-child) {
	padding-top: 0;
}

body.admin-bar .Header,
body.admin-bar.slider .Header,
body.admin-bar.slider .Header.fx,
body.admin-bar #aa-wp.on .Header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	html {
		margin-top: 0 !important;
	}

	#wpadminbar {
		display: none !important;
	}

	body.admin-bar .Header,
	body.admin-bar.slider .Header,
	body.admin-bar.slider .Header.fx,
	body.admin-bar #aa-wp.on .Header {
		top: 0 !important;
	}
}

section > .Top {
	margin-bottom: 2rem;
}

section > .Top > .Title,
section > .Top > h1 {
	font-size: 2.05rem;
	line-height: 3.5rem;
	display: inline-block;
	vertical-align: top;
	margin: 0 1.5rem 0 0;
	color: #fff;
}

section > .Top > .btnstp > .Button.STPb {
	background: transparent;
	padding: 0.5rem 0;
	margin-right: 1.5rem;
	color: #4F6B95;
	border-bottom: 3px solid transparent;
	border-radius: 0;
}

section > .Top > .btnstp > .Button.STPb.Current {
	color: #fff;
	border-bottom-color: #EDB709;
	font-weight: 700;
}

section > .Top > .btnstp > .Button.STPb:hover {
	background-color: transparent;
	color: #fff;
	border-bottom-color: #007AFF;
	animation: none;
	transform: none;
	opacity: 1;
}

main > section {
	margin-bottom: 4rem;
}

@media (min-width: 768px) {
	.TpRwCont {
		display: flex;
	}

	.TpRwCont > main {
		flex: 0 0 calc(100% - 300px);
		max-width: calc(100% - 300px);
		padding-right: 2rem;
	}

	.TpRwCont > aside,
	.TpRwCont > .widget-area {
		flex: 0 0 300px;
		max-width: 300px;
	}
}

.Wdgt > .Title {
	color: #4F6B95;
	font-size: 0.75rem;
	text-align: center;
	background-color: #141A32;
	padding: 0.5rem;
	text-transform: uppercase;
	border-radius: 3px;
	margin-bottom: 1.25rem;
}

.Wdgt {
	margin-bottom: 2.5rem;
}

.ft {
	text-align: center;
	padding: 4rem 0;
	background: linear-gradient(to bottom, rgba(20, 26, 50, 0) 0%, rgba(20, 26, 50, 0.01) 1%, rgba(20, 26, 50, 1) 100%);
}

.ft .copy {
	color: #4F6B95;
	font-size: 0.75rem;
}

/* Home / listados (respaldo si app.css o style.css no cargan) */
.bd,
#aa-wp,
.slider .bd {
	background-color: #080F28;
}

.category-list-bx,
.home-movies,
.home-series {
	background: transparent;
}

.got-dvr img {
	max-width: 100%;
	height: auto;
	border-radius: 3px;
}

/* Episodios: landscape fijo (56%) — no usar height:auto (rompe el grid) */
.gotbx .episodes .Image {
	width: 100%;
}

.gotbx .episodes .Image figure > img {
	max-width: 100%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 3px;
}

/* No forzar .TPostMv/.Image aquí: style.css define el grid (A06/B04).
   Reglas genéricas rompen posters y títulos en Películas Online. */

.items,
.post-items {
	list-style: none;
	margin: 0;
	padding: 0;
}

.items .TPost,
.post-items .TPost {
	margin-bottom: 1rem;
}

.apt {
	display: block;
}

.apt[style*="display: none"] {
	display: none !important;
}

/* Header / búsqueda */
.logo img {
	max-height: 48px;
	width: auto;
}

.Search input[type="text"],
.Search input[type="search"] {
	background: #141A32;
	border: 1px solid #1e2744;
	color: #fff;
	border-radius: 3px;
	padding: 0.5rem 2.5rem 0.5rem 1rem;
}

/* Live search dropdown (Cuevana) */
.Header .Search {
	position: relative;
	z-index: 40;
}

.Header .Search .Result {
	display: none;
	position: absolute;
	right: 0;
	top: calc(100% + 0.45rem);
	min-width: 300px;
	width: max(100%, 300px);
	max-width: min(360px, 92vw);
	padding: 0.85rem 1rem;
	/* 3 resultados visibles + padding del contenedor */
	max-height: calc(3 * 90px + 2 * 1rem + 1.7rem);
	overflow-x: hidden;
	overflow-y: auto;
	background: #1E2747;
	border-radius: 0.5rem;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
	z-index: 50;
	box-sizing: border-box;
}

.Header .Search .Result.On {
	display: block;
}

/* Misma barra que el scroll principal del tema (style.css @1200px) */
.Header .Search .Result::-webkit-scrollbar {
	width: 0.7rem;
	height: 0.7rem;
}

.Header .Search .Result::-webkit-scrollbar-thumb {
	background: linear-gradient(to bottom, #00BCFF, #007AFF);
}

.Header .Search .Result::-webkit-scrollbar-track {
	background-color: #1E2747;
}

.Header .Search .Result .Fd-R {
	list-style: none;
	margin: 0;
	padding: 0;
}

.Header .Search .Result .Fd-R > li {
	margin: 0 0 1rem;
}

.Header .Search .Result .Fd-R > li:last-child {
	margin-bottom: 0;
}

.Header .Search .Result .TPost.A {
	position: relative;
	padding-left: 75px;
	min-height: 60px;
	padding-top: 2px;
}

.Header .Search .Result .TPost.A .Image {
	position: absolute;
	left: 0;
	top: 0;
	width: 60px;
}

.Header .Search .Result .TPost.A .Image figure {
	margin: 0;
	border-radius: 5px;
	overflow: hidden;
	background: #080F28;
}

.Header .Search .Result .TPost.A .Image figure:before {
	display: none;
}

.Header .Search .Result .TPost.A .Image img {
	display: block;
	width: 60px;
	height: 90px;
	object-fit: cover;
	border-radius: 5px;
}

.Header .Search .Result .TPost.A .Title {
	color: #fff;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 0.35rem;
}

.Header .Search .Result .TPost.A .Info {
	margin: 0;
	padding: 0;
	font-size: 0.75rem;
	color: #8DA0BC;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.55rem;
}

.Header .Search .Result .TPost.A .Info .Vote {
	color: #EDB709;
	font-size: 0.875rem;
	font-weight: 700;
}

.Header .Search .Result .TPost.A .Info .Vote:after {
	content: '/5';
	font-size: 0.65rem;
	font-weight: 600;
	margin-left: 1px;
}

.Header .Search .Result .TPost.A .Info .Qlty {
	display: inline-block;
	color: #1A1818;
	background: #EDB709;
	font-size: 0.65rem;
	font-weight: 700;
	line-height: 1;
	padding: 0.28rem 0.4rem;
	border-radius: 2px;
	margin: 0;
}

.Header .Search .Result .cv-live-search-empty,
.Header .Search .Result .cv-live-search-loading {
	margin: 0;
	padding: 0.35rem 0.15rem;
	font-size: 0.85rem;
	color: #8DA0BC;
	text-align: center;
}

.Menu > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.Menu > ul > li > a {
	color: #8DA0BC;
	padding: 0.5rem 0.75rem;
}

.Menu > ul > li:hover > a,
.Menu > ul > li.current-menu-item > a {
	color: #fff;
}

.BgA {
	background: transparent;
}

/* Sidebar widgets */
.Wdgt .post-list,
.Wdgt ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.Wdgt .post-list li,
.Wdgt ul li {
	margin-bottom: 0.75rem;
}

/* Tabs AJAX: solo ocultos con .hide (JS quita la clase al activar).
   NO usar #tab-2 { display:none } fijo: bloquea Estrenos/Ranking/Más vistas. */
.home-movies .apt.hide,
.home-series .series_listado.hide,
#tab-2.hide, #tab-3.hide, #tab-4.hide,
#tabserie-2.hide, #tabserie-3.hide, #tabserie-4.hide {
	display: none !important;
}

/* Páginas internas, singles, taxonomías */
.TpRwCont > aside,
.TpRwCont > .widget-area {
	flex: 0 0 300px;
	max-width: 300px;
}

.TpRwCont.nosidebar > main,
.nosidebar .TpRwCont > main {
	flex: 0 0 100% !important;
	max-width: 100% !important;
	padding-right: 0 !important;
}

/* Archivo A-Z: grid a todo el ancho (4 columnas en desktop) */
.alpha-list .Fd-R {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-left: -0.5rem;
	margin-right: -0.5rem;
}

.alpha-list .Fd-R > li {
	flex: 0 0 100%;
	max-width: 100%;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.alpha-list .Fd-R > li {
		flex: 0 0 50%;
		max-width: 50%;
	}
}

@media (min-width: 992px) {
	.alpha-list .Fd-R > li {
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}
}

@media (min-width: 1200px) {
	.alpha-list .Fd-R > li {
		flex: 0 0 25%;
		max-width: 25%;
	}
}

.alpha-list .TPost.A {
	width: 100%;
	box-sizing: border-box;
}

.widget-area .Wdgt,
aside .Wdgt {
	margin-bottom: 2rem;
}

.Fd-R,
.post-list,
.top {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Solo listados del sidebar; NO .Fd-R.MovieList (rompe el grid) */
.widget-area .Fd-R > li,
.Wdgt .Fd-R > li,
.post-list li {
	margin-bottom: 1.5rem;
}

.Wdgt .Fd-R > li:last-child,
.widget-area .Fd-R > li:last-child {
	margin-bottom: 0;
}

/* Sidebar cards: poster izq + texto der (TOP ESTRENOS / Mas peliculas) */
.TPost.A {
	position: relative;
	padding-left: 100px;
	min-height: 120px;
}

.TPost.A .Image {
	width: 80px;
	position: absolute;
	left: 0;
	top: 0;
}

.TPost.A .Image figure:after {
	padding-top: 100%;
}

.Wdgt .TPost.A {
	min-height: 120px;
}

.Wdgt .TPost.A .Image figure:after {
	padding-top: 150%;
}

.Wdgt .TPost.A .Info {
	margin-bottom: 0;
	padding-top: 0.15rem;
}

.Wdgt .TPost.A .Image figure:before {
	transform: scale(0.6);
}

/* Badges #1 #2… — content-box para que el anillo no aplaste el círculo */
.Wdgt .Fd-R.top,
.Wdgt .MovieList.top {
	counter-reset: top;
}

.Wdgt .Fd-R.top > li,
.Wdgt .MovieList.top > li {
	counter-increment: top;
	position: relative;
}

.Wdgt .Fd-R.top > li:before,
.Wdgt .MovieList.top > li:before {
	content: "#" counter(top);
	box-sizing: content-box !important;
	min-width: 2rem;
	width: 2rem;
	height: 2rem;
	line-height: 2rem;
	text-align: center;
	position: absolute;
	left: -0.5rem;
	top: -0.5rem;
	z-index: 5;
	background-color: #007AFF;
	border: 5px solid #080F28;
	color: #fff;
	border-radius: 3rem;
	font-weight: 700;
	font-size: 1rem;
	padding: 0;
}

.backdrop,
#top-single .backdrop {
	position: relative;
	background: transparent;
	overflow: visible;
	padding-top: 6.5rem;
	margin-top: -6.5rem;
}

/* Backdrop a pantalla completa detrás de la ficha */
#top-single .backdrop > .Image.backdrop-bg,
#top-single .backdrop > .backdrop-bg {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	pointer-events: none;
	margin: 0;
}

#top-single .backdrop > .backdrop-bg figure {
	position: absolute;
	inset: 0;
	margin: 0;
}

#top-single .backdrop > .backdrop-bg img,
#top-single .backdrop > .backdrop-bg #cpt {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 20%;
	border-radius: 0 !important;
	opacity: 0.55;
}

#top-single .backdrop > .backdrop-bg:after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	/* Se funde hacia la mitad inferior del player */
	background: linear-gradient(
		to bottom,
		rgba(8, 15, 40, 0.25) 0%,
		rgba(8, 15, 40, 0.45) 35%,
		rgba(8, 15, 40, 0.72) 62%,
		rgba(8, 15, 40, 0.92) 82%,
		#080f28 100%
	);
}

#top-single .backdrop > .TPost.movtv-info {
	position: relative;
	z-index: 5;
	display: block;
	overflow: visible;
}

/* Header transparente sobre el fondo de la película */
body.single-movies.slider .Header:not(.fx):after,
body.single.slider .Header:not(.fx):after {
	height: 180px;
	opacity: 1;
	background: linear-gradient(to bottom, rgba(8, 15, 40, 0.75) 0%, rgba(8, 15, 40, 0) 100%);
}

#top-single .backdrop > .video.cont {
	clear: both;
	width: 100%;
	position: relative;
	z-index: 2;
	background: transparent;
}

#top-single .backdrop > .video.cont .TPlayerNv {
	background: rgba(20, 26, 50, 0.55);
}

/* Capítulos: título debajo del header + fondo de la serie hasta selector de temporada */
body.single-episodes #top-single .backdrop {
	padding-top: 6.5rem;
	margin-top: -6.5rem;
}

body.single-episodes #top-single .backdrop > .video.cont > .Title {
	position: relative;
	z-index: 3;
	margin-top: 0;
	padding-top: 0.25rem;
}

body.single-episodes #top-single .backdrop > .TPost.movtv-info,
body.single-episodes #top-single .backdrop > .cv-ep-season-bar {
	position: relative;
	z-index: 2;
}

body.single-episodes #top-single .backdrop > .cv-ep-season-bar {
	padding-bottom: 0.75rem;
}

body.single-episodes #top-single .backdrop > .Image.backdrop-bg,
body.single-episodes #top-single .backdrop > .backdrop-bg {
	bottom: 0;
	height: 100%;
	max-height: none;
}

body.single-episodes #top-single .backdrop > .backdrop-bg:after {
	background: linear-gradient(
		to bottom,
		rgba(8, 15, 40, 0.2) 0%,
		rgba(8, 15, 40, 0.35) 25%,
		rgba(8, 15, 40, 0.55) 50%,
		rgba(8, 15, 40, 0.78) 78%,
		#080f28 100%
	);
}

body.single-episodes.slider .Header:not(.fx):after {
	height: 180px;
	opacity: 1;
	background: linear-gradient(to bottom, rgba(8, 15, 40, 0.75) 0%, rgba(8, 15, 40, 0) 100%);
}

@media (max-width: 980px) {
	body.single-episodes #top-single .backdrop > .cv-ep-season-bar {
		padding-bottom: 1rem;
	}
}

#top-single .TPlayer {
	position: relative;
	min-height: 0;
}

#top-single .TPlayer.no-players .more-options,
#top-single .TPlayer.no-players #mdl-help {
	display: none !important;
}

#top-single .TpRwCont.cont {
	clear: both;
	position: relative;
	z-index: 1;
	background: #080f28;
}

/* Series: fondo detrás de ficha + 1ª fila de episodios */
body.single-tvshows #top-single .backdrop > .TpRwCont.cont {
	z-index: 2;
	background: transparent;
}

body.single-tvshows #top-single .backdrop > .Image.backdrop-bg,
body.single-tvshows #top-single .backdrop > .backdrop-bg {
	bottom: auto;
	/* Cubre info + selector + ~primera fila de episodios */
	height: 46rem;
	max-height: 100%;
}

body.single-tvshows #top-single .backdrop > .backdrop-bg:after {
	background: linear-gradient(
		to bottom,
		rgba(8, 15, 40, 0.22) 0%,
		rgba(8, 15, 40, 0.4) 28%,
		rgba(8, 15, 40, 0.62) 52%,
		rgba(8, 15, 40, 0.85) 78%,
		#080f28 100%
	);
}

@media (max-width: 980px) {
	body.single-tvshows #top-single .backdrop > .Image.backdrop-bg,
	body.single-tvshows #top-single .backdrop > .backdrop-bg {
		height: 52rem;
	}
}

.pagination,
.page-navigation {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	margin: 2rem 0;
}

.pagination a,
.pagination span,
.page-navigation a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	height: 2.5rem;
	padding: 0 0.75rem;
	border-radius: 50%;
	background: #141A32;
	color: #fff;
}

.pagination .current,
.page-navigation .current {
	background: #007AFF;
}

.pagination .page-numbers.disabled,
.pagination .prev.disabled,
.pagination .next.disabled {
	opacity: 0.35;
	pointer-events: none;
	cursor: default;
}

/* Archivo A-Z: rating estilo Cuevana */
.alpha-list .TPost.A .Info .Vote:after {
	content: "/5";
	font-size: 0.65rem;
	margin-left: 0.15rem;
	opacity: 0.85;
}

.alpha-list .TPost.A .Info .Qlty {
	background: #f5c518;
	color: #111;
	font-weight: 700;
	border-radius: 999px;
	padding: 0.1rem 0.45rem;
	font-size: 0.7rem;
}

/* Carrusel de géneros: llenar el owl-item (inline-block encoge al texto). */
.category-list .item {
	display: block;
	width: 100%;
	vertical-align: top;
}

.category-list .item > a,
.category-list .category-img {
	display: block;
	width: 100%;
}

.episodes-owl .TPostMv.item,
.episodes.owl-carousel .TPostMv.item {
	display: block;
	width: 100%;
}

.post-items,
.items.full {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -0.5rem;
}

.post-items > *,
.items.full > * {
	padding: 0 0.5rem 1rem;
	flex: 0 0 16.666%;
	max-width: 16.666%;
}

/* Menú hamburguesa (desktop oculto; móvil visible sin depender de app.css) */
.MenuBtn {
	display: none;
	width: 3rem;
	min-width: 3rem;
	height: 3rem;
	cursor: pointer;
	padding: 0.75rem 0.85rem 0;
	background-color: #007AFF;
	border-radius: 3rem;
	z-index: 10;
}

.MenuBtn > i {
	background-color: #fff;
	width: 100%;
	height: 3px;
	margin: 4px 0;
	transition: all 0.2s ease-in;
	display: block;
	border-radius: 5px;
}

#aa-wp.on .MenuBtn > i:nth-child(1) {
	transform: translateY(200%) rotate(45deg);
}

#aa-wp.on .MenuBtn > i:nth-child(2) {
	opacity: 0;
}

#aa-wp.on .MenuBtn > i:nth-child(3) {
	transform: translateY(-200%) rotate(135deg);
	position: relative;
	bottom: 2px;
}

.MenuBtnClose {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	display: none;
	background-color: rgba(0, 0, 0, 0.75);
}

#aa-wp.on .MenuBtnClose {
	display: block;
}

#aa-wp.on {
	overflow: hidden;
}

#aa-wp.on .Header {
	position: fixed;
	width: 100%;
}

/* Slider home (crítico; app.css no lo incluye) */
.RxodCn {
	overflow: hidden;
	position: relative;
	background: #080F28;
}

.cuevana3-slider {
	min-height: 600px;
	position: relative;
	overflow: hidden;
	padding-bottom: 0 !important;
}

.RxodCn .TPostMv .Image {
	position: absolute;
	inset: 0;
	height: 100%;
}

.RxodCn .TPostMv .Image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 15%;
}

.RxodCn .Title {
	color: #fff;
	font-weight: 700;
	letter-spacing: -1px;
	font-size: calc(1.25vw + 1.25vh + 1.7rem);
	line-height: 1.3;
}

@media (max-width: 991px) {
	.MenuBtn {
		display: block;
	}

	/*
	 * translateZ(0) en .slider .Header crea un containing block:
	 * position:fixed del drawer queda relativo al header (altura ~barra)
	 * y el menú se ve recortado. En móvil lo quitamos.
	 * (refuerzo final también en fix-dots.css, que carga después)
	 */
	body.slider .Header,
	body.slider .Header.fx,
	.slider .Header,
	.slider .Header.fx,
	#aa-wp.on .Header {
		transform: none !important;
		-webkit-backface-visibility: visible !important;
		backface-visibility: visible !important;
	}

	.Header .logo {
		max-width: 220px;
		z-index: 4;
		width: auto;
		text-align: left;
		justify-content: flex-start;
	}

	.Header:before,
	.Header .Rght {
		position: fixed;
		left: 0;
		top: 0;
		height: 100vh !important;
		height: 100dvh !important;
		width: 320px;
		max-width: 85vw;
		transform: translateX(-105%);
		transition: transform 400ms ease;
		background-color: #080F28;
		z-index: 2;
		padding: 7.5rem 1.5rem 1.5rem;
		overflow-y: auto;
		box-shadow: 0 0 60px rgba(0, 0, 0, 0.2);
	}

	.Header .Rght {
		display: block !important;
	}

	.Header:before {
		z-index: 3;
		content: '';
		padding: 0;
		height: 7.5rem;
		overflow: hidden;
	}

	#aa-wp.on .Header:before,
	#aa-wp.on .Header .Rght {
		transform: translateX(0);
		opacity: 1;
	}

	.MenuBtnClose {
		width: 100vw;
		height: 100vh;
		height: 100dvh;
	}

	.Header .cont {
		max-width: none !important;
	}

	.Header .Menu {
		margin-left: 0;
		margin-right: 0;
	}

	.Header .Menu > ul {
		display: block;
	}

	.Header .Menu > ul > li {
		float: none;
		padding: 0.5rem 0;
		border-bottom: 1px solid rgb(24, 31, 54);
	}

	.Header .Search {
		margin-bottom: 1rem;
	}

	.Header .Search .Form-Icon input {
		width: 100%;
	}

	.Header .login {
		margin-bottom: 1rem;
	}

	.cuevana3-slider {
		min-height: calc(100vh - 12rem);
		padding-bottom: 3rem;
	}

	.post-items > *,
	.items.full > * {
		flex: 0 0 33.333%;
		max-width: 33.333%;
	}

	.TpRwCont {
		flex-direction: column;
	}

	.TpRwCont > aside,
	.TpRwCont > .widget-area {
		flex: 0 0 100%;
		max-width: 100%;
	}
}

@media (max-width: 576px) {
	.post-items > *,
	.items.full > * {
		flex: 0 0 50%;
		max-width: 50%;
	}

	.cuevana3-slider {
		min-height: 420px;
	}
}

/* Punto amarillo: anclado a .Image (mismo inset que el badge Year) */
.TPost .Image .cv3-dots,
.MovieList.episodes .Image .cv3-dots,
.episodes-owl .Image .cv3-dots {
	top: 0.5rem;
	left: 0.5rem;
}

/* Valoración Cuevana: círculo + 5 estrellas + texto debajo */
.VotesCn .cuevana-starstruck,
.VotesCn .starstruck-wrap {
	float: none;
	display: inline-block;
	vertical-align: top;
	width: auto;
	max-width: 140px;
	margin: 0;
	padding: 0;
	font-size: 10px;
	position: relative;
	line-height: 1.2;
}

.VotesCn .cuevana-starstruck .dt_rating_data,
.VotesCn .starstruck-wrap .dt_rating_data {
	float: none;
	padding: 0;
	position: static;
}

.VotesCn .starstruck {
	display: block;
	position: static;
	line-height: 1;
	min-width: 0 !important;
	width: auto;
	height: 18px;
	margin: 0 0 4px;
	overflow: hidden;
	white-space: nowrap;
}

.VotesCn .starstruck i,
.VotesCn .starstruck .star-on-png,
.VotesCn .starstruck .star-off-png,
.VotesCn .starstruck .star-half-png,
.VotesCn .starstruck .cancel-on-png,
.VotesCn .starstruck .cancel-off-png {
	display: inline-block;
	font-size: 16px !important;
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Pro" !important;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	font-weight: 900;
	line-height: 18px;
	speak: none;
	text-transform: none;
	margin: 0 3px 0 0 !important;
	width: auto !important;
	height: auto !important;
	padding: 0 !important;
	background: none !important;
}

.VotesCn .starstruck .star-on-png:before,
.VotesCn .starstruck .star-off-png:before,
.VotesCn .starstruck .star-half-png:before {
	content: "\f005";
}

.VotesCn .starstruck .star-on-png:before,
.VotesCn .starstruck .star-half-png:before {
	color: #EDB709;
}

.VotesCn .starstruck .star-off-png:before {
	color: rgba(141, 160, 188, 0.55);
}

.VotesCn .cuevana-votes-meta,
.VotesCn .starstruck-rating {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 10px;
	line-height: 1.3;
	color: rgba(255, 255, 255, 0.65);
	white-space: nowrap;
	position: static !important;
}

.VotesCn .starstruck-login-note {
	font-size: 10px;
	color: rgba(255, 255, 255, 0.7);
	margin-bottom: 2px;
}

.VotesCn .starstruck-rating-wrap,
.VotesCn .starstruck-rating i.fa-user-circle,
.VotesCn .starstruck-ptype > div > meta {
	display: none !important;
}

/* Modal de descargas Cuevana */
#mdl-downloads .TPTblCn > table,
#mdl-downloads .cuevana-links-table {
	margin-bottom: 0;
	width: 100%;
	border: 0;
	border-spacing: 0;
}

#mdl-downloads .cuevana-links-empty {
	padding: 1rem;
	color: #4F6B95;
	text-align: center;
	margin: 0;
}

#mdl-downloads .sbox,
#mdl-downloads .links_table,
#mdl-downloads .fix-table {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}
/* Comentarios Cuevana */
.cv-comments-section {
	margin-bottom: 2rem;
}

.cv-comments-section > .Top {
	margin-bottom: 1rem;
}

.cv-comments-section > .notice {
	margin-top: 0;
	margin-bottom: 1.25rem;
	color: #8DA0BC;
}

.cv-comments-section > .notice a {
	color: #fff;
	font-weight: 700;
}

.cv-comment-box {
	position: relative;
	margin-bottom: 1.75rem;
	background: #141A32;
	border: 1px solid #1E2747;
	border-radius: 3px;
	overflow: hidden;
}

.cv-comment-box .comment-user {
	position: absolute;
	left: 1rem;
	top: 1rem;
	z-index: 1;
	width: 60px;
}

.cv-comment-box .comment-user figure,
.cv-comment-box .comment-user figure img {
	width: 60px;
	height: 60px;
	border-radius: 60px;
	display: block;
}

.cv-comment-box .comment-user figcaption {
	position: absolute;
	left: 0;
	right: 0;
	top: 50px;
	margin: 0 auto;
	font-size: 0.65rem;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	background-color: #007AFF;
	padding: 0 0.5rem;
	border-radius: 1rem;
	line-height: 1.25rem;
	min-width: 60px;
	width: max-content;
	max-width: 100%;
	text-align: center;
	box-sizing: border-box;
	z-index: 2;
}

.cv-comment-box textarea {
	display: block;
	width: 100%;
	min-height: 110px;
	max-height: 250px;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: #1E2747;
	color: #8DA0BC;
	padding: 1.25rem 1rem 1rem 6.25rem;
	resize: vertical;
	font: inherit;
}

.cv-comment-box textarea:focus {
	outline: 0;
	color: #fff;
}

.cv-comment-box .comment-bot {
	background: #141A32;
	text-align: right;
	padding: 0.5rem 0.75rem;
}

.cv-comment-box .comment-bot .Button {
	border-radius: 3px;
	padding: 0.45rem 1.25rem;
	line-height: 1.6rem;
	min-width: 6rem;
}

.cv-comment-filters {
	margin-bottom: 1.75rem;
}

.cv-comments-list.is-loading {
	opacity: 0.55;
	pointer-events: none;
}

.cv-comments-list .comments-List,
.cv-comments-list .post-comments {
	list-style: none;
	margin: 0;
	padding: 0;
}

/*
 * Alineación Cuevana (imagen 2):
 * columna fija avatar+nivel a la izquierda; texto/reacciones alineados a la derecha.
 * El avatar es absoluto respecto a #cv-comment-inner (no al <li>) para que
 * las respuestas no se monten sobre el pie del padre.
 */
.cv-comments-list .comment {
	position: relative;
	padding: 0 !important;
	margin: 0 0 2.5rem !important;
	font-size: 0.875rem;
	color: #fff;
	list-style: none;
}

.cv-comments-list .comment > [id^="cv-comment-inner"] {
	display: block;
	position: relative;
	padding: 0 0 0 80px;
	min-height: 75px;
	box-sizing: border-box;
}

.cv-comments-list .comment .comment-user {
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	width: 60px;
	margin: 0;
	padding: 0;
	grid-column: auto;
	grid-row: auto;
}

.cv-comments-list .comment .comment-user figure,
.cv-comments-list .comment .comment-user figure img {
	width: 60px;
	height: 60px;
	border-radius: 60px;
	display: block;
}

.cv-comments-list .comment .comment-user figcaption {
	position: absolute !important;
	left: 0 !important;
	right: auto !important;
	top: 50px !important;
	display: block;
	margin: 0;
	font-size: 0.65rem;
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	background-color: #007AFF;
	padding: 0 0.5rem;
	border-radius: 1rem;
	line-height: 1.25rem;
	min-width: 60px;
	width: 60px;
	text-align: center;
	box-sizing: border-box;
	z-index: 2;
}

.cv-comments-list .comment > [id^="cv-comment-inner"] > header,
.cv-comments-list .comment > [id^="cv-comment-inner"] > .cv-comment-body,
.cv-comments-list .comment > [id^="cv-comment-inner"] > .cv-comment-actions,
.cv-comments-list .comment > [id^="cv-comment-inner"] > em {
	grid-column: auto;
	display: block;
}

.cv-comments-list .comment header {
	margin: 0 0 0.35rem;
}

.cv-comments-list .comment header .user {
	font-size: 1rem;
	margin-right: 0.5rem;
	color: #fff;
}

.cv-comments-list .comment header .user.admin {
	color: #007AFF;
	font-weight: 700;
}

.cv-comments-list .comment .cv-time {
	font-size: 0.75rem;
	color: #4F6B95;
	margin-top: 0.15rem;
}

.cv-comments-list .comment .cv-comment-body,
.cv-comments-list .comment .cv-comment-body p {
	margin: 0.5rem 0;
	color: #fff;
	line-height: 1.5;
}

.cv-reactions {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
}

.cv-reactions .cv-react {
	appearance: none;
	border: 0;
	background: transparent;
	color: #007AFF;
	cursor: pointer;
	padding: 0;
	font-size: 1rem;
	line-height: 1;
}

.cv-reactions .cv-react.on,
.cv-reactions .cv-react:hover {
	color: #EDB709;
}

.cv-reactions .cv-score {
	color: #fff;
	font-weight: 600;
	min-width: 1rem;
	text-align: center;
	font-size: 0.9rem;
}

.cv-no-comments {
	color: #4F6B95;
	margin: 0 0 1rem;
}

.cv-comments-section .comments-title,
.cv-comments-section #respond .comment-reply-title {
	display: none;
}

.cv-comment-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.75rem 1rem;
	margin-top: 0.35rem;
}

.cv-comment-actions .cv-reactions {
	margin-top: 0;
}

.cv-comment-actions .comment-reply-link {
	color: #4F6B95;
	font-size: 0.875rem;
}

.cv-comment-actions .comment-reply-link:hover {
	color: #fff;
}

/* Respuestas indentadas, debajo del padre */
.cv-comments-list ul.children,
.cv-comments-list .children {
	list-style: none !important;
	display: block !important;
	margin: 1.5rem 0 0 !important;
	padding: 0 0 0 80px !important;
	border-left: 0 !important;
	clear: both;
	width: 100%;
	box-sizing: border-box;
}

.cv-comments-list .children > .comment {
	margin-bottom: 1.75rem !important;
	padding: 0 0 0 1.25rem !important;
	border-left: 1px solid #1E2747;
	box-sizing: border-box;
}

.cv-comments-list .children > .comment > [id^="cv-comment-inner"] {
	padding-left: 80px;
}

.cv-comments-list .children .children {
	padding-left: 80px !important;
}

.cv-comments-list .comment #respond.cv-comment-box {
	margin: 1rem 0 0.5rem;
	width: 100%;
	clear: both;
}

.cv-load-more-wrap {
	margin: 2rem 0 0;
	text-align: center;
}

.cv-load-more-wrap[hidden] {
	display: none !important;
}

.cv-load-more-wrap .Button.loadmore,
.cv-comments-section .cv-load-more {
	width: 100%;
	max-width: 100%;
	border-radius: 3rem;
	background-color: #3D4F91;
	padding: 0.85rem 2rem;
	line-height: 1.4;
	font-size: 1rem;
}

.cv-load-more-wrap .Button.loadmore:hover {
	background-color: #007AFF;
}

.cv-comment-box #cancel-comment-reply-link {
	float: left;
	color: #4F6B95;
	line-height: 2.5rem;
	margin-right: 1rem;
}

.cv-comments-section {
	margin-bottom: 0;
	padding-bottom: 1rem;
}

/* Toast Mi lista / Vistos — compacto estilo Cuevana (no usar .txtinfo) */
#cv-toast.cv-toast {
	position: fixed !important;
	right: 1.25rem !important;
	bottom: 1.25rem !important;
	top: auto !important;
	left: auto !important;
	width: 300px !important;
	max-width: calc(100vw - 2rem) !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: .85rem 2.25rem .85rem .9rem !important;
	z-index: 100000 !important;
	display: none;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .2s ease, transform .2s ease;
	pointer-events: none;
	box-sizing: border-box;
	background: rgba(255, 255, 255, .97) !important;
	border-radius: .35rem !important;
	box-shadow: 0 .35rem 1.25rem rgba(0, 0, 0, .28) !important;
	color: #464b52 !important;
	font-size: .875rem !important;
	line-height: 1.35 !important;
}
#cv-toast.cv-toast.is-visible {
	display: block !important;
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
#cv-toast .cv-toast-title {
	margin: 0 0 .35rem !important;
	padding: 0 !important;
	font-weight: 700 !important;
	font-size: .95rem !important;
	color: #080f28 !important;
	text-align: left !important;
	line-height: 1.3 !important;
}
#cv-toast .cv-toast-title:before {
	color: #edb709 !important;
	margin-right: .45rem !important;
	font-weight: 900 !important;
}
#cv-toast .cv-toast-msg {
	margin: 0 !important;
	padding: 0 !important;
	color: #464b52 !important;
	font-weight: 400 !important;
}
#cv-toast .cv-toast-close {
	position: absolute !important;
	top: .35rem !important;
	right: .35rem !important;
	width: 1.5rem !important;
	height: 1.5rem !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #007aff !important;
	color: #fff !important;
	cursor: pointer !important;
	line-height: 1.5rem !important;
	text-align: center !important;
	font-size: .7rem !important;
}
#cv-toast .cv-toast-close:hover {
	opacity: .85;
}
#cv-toast .cv-toast-close i {
	color: #fff !important;
}

/* Enlaces entre modales de auth */
#mdl-login .cv-auth-links,
#mdl-register .cv-auth-links,
#mdl-lostpassword .cv-auth-links {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem 1.25rem;
	margin: .75rem 0 0;
	justify-content: space-between;
}
#mdl-login .cv-auth-links a,
#mdl-register .cv-auth-links a,
#mdl-lostpassword .cv-auth-links a {
	color: #007aff;
	font-size: .875rem;
	cursor: pointer;
}
#mdl-lostpassword .cv-lostpass-help {
	margin: 0 0 .75rem;
	color: #464b52;
	font-size: .875rem;
	line-height: 1.4;
}
#mdl-lostpassword .cv-auth-msg {
	margin: 0 0 .75rem;
	padding: .5rem .65rem;
	border-radius: .25rem;
	font-size: .85rem;
}
#mdl-lostpassword .cv-auth-msg.is-ok {
	background: #e8f7ee;
	color: #146c43;
}
#mdl-lostpassword .cv-auth-msg.is-error {
	background: #fde8e8;
	color: #b42318;
}

/* Agregar a... / Mi lista / Vistos (Cuevana) */
.movtv-info > .Image {
	position: relative;
	z-index: 6;
	overflow: visible;
}
.movtv-info > .Image .addlist {
	position: relative;
	width: 100%;
	z-index: 30;
}
.movtv-info > .Image .addlist.on {
	z-index: 40;
}
.movtv-info > .Image .addlist > .addlist-toggle,
.movtv-info > .Image .addlist > .Button.addlist-toggle {
	display: block;
	width: 100%;
	padding: .5rem .7rem;
	border-radius: .3rem;
	text-align: left;
	background-color: #1E2747;
	color: #fff;
	font-size: .75rem;
	border: 0;
	cursor: pointer;
	line-height: 1.25;
	position: relative;
	z-index: 2;
}
.movtv-info > .Image .addlist > .addlist-toggle > i.fa-plus-square,
.movtv-info > .Image .addlist > .addlist-toggle > i:first-child {
	color: #EDB709;
	float: left;
	margin-right: .5rem;
	line-height: inherit;
}
.movtv-info > .Image .addlist > .addlist-toggle > .ddw,
.movtv-info > .Image .addlist > .addlist-toggle > i.fa-chevron-down {
	float: right;
	color: #007AFF;
	margin-right: 0;
	font-size: .65rem;
	line-height: inherit;
}
.movtv-info > .Image .addlist-menu {
	display: none;
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + .35rem);
	margin: 0;
	padding: .35rem;
	list-style: none;
	background-color: #1E2747;
	border-radius: .3rem;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .45);
	z-index: 50;
}
.movtv-info > .Image .addlist.on .addlist-menu {
	display: block;
}
.movtv-info > .Image .addlist-item {
	display: block;
	width: 100%;
	padding: .45rem .55rem;
	margin: 0;
	color: #8DA0BC;
	border-radius: .25rem;
	font-size: .75rem;
	line-height: 1.2;
	text-decoration: none;
	box-sizing: border-box;
	background: transparent;
	border: 0;
}
.movtv-info > .Image .addlist-item:before {
	width: 1.25rem;
	display: inline-block;
	opacity: .55;
	margin-right: .15rem;
	text-align: center;
}
.movtv-info > .Image .addlist-item:hover {
	color: #fff;
	background-color: #141A32;
}
.movtv-info > .Image .addlist-item:hover:before {
	opacity: 1;
	color: #007AFF;
}
.movtv-info > .Image .addlist-item.active {
	color: #fff;
	background-color: #141A32;
}
.movtv-info > .Image .addlist-item.active:before {
	opacity: 1;
	color: #007AFF;
}
.movtv-info > .Image .addlist-item + .addlist-item {
	margin-top: .15rem;
}

@media (min-width: 768px) {
	.movtv-info > .Image .addlist > .addlist-toggle,
	.movtv-info > .Image .addlist > .Button.addlist-toggle {
		font-size: 1rem;
		padding: .5rem 1rem;
	}
	.movtv-info > .Image .addlist-item {
		font-size: .9rem;
		padding: .5rem .65rem;
	}
	.movtv-info > .Image .addlist-item:before {
		width: 1.5rem;
	}
}

/* Más espacio antes de RELACIONADOS (imagen 2) */
#top-single .TpRwCont > main > section:first-child {
	margin-bottom: 5.5rem;
}

#top-single .TpRwCont > main > section + section > .Top {
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
}
