.cd-swatch--fenix { background: linear-gradient(135deg, var(--fx-claro, #fcc35a), var(--fx-acento, #f6751c) 50%, var(--fx-oscuro, #a61319)); }

html.fx { background: var(--cd-bg); }
.fx-on body.cd-body { background: transparent; }

.fx-fuego {
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	overflow: hidden;
	contain: strict;
}
.fx-fuego__brillo {
	position: absolute;
	left: -12%;
	right: -12%;
	bottom: -10vh;
	height: calc(var(--fx-altura, 42vh) + 34vh);
	opacity: var(--fx-intensidad, .6);
}
.fx-fuego__brillo::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(46% 58% at 50% 100%, rgba(var(--cd-ember-rgb), .34), transparent 72%),
		radial-gradient(26% 42% at 14% 100%, rgba(var(--cd-accent-rgb), .2), transparent 70%),
		radial-gradient(26% 42% at 86% 100%, rgba(var(--cd-accent-rgb), .2), transparent 70%),
		radial-gradient(90% 40% at 50% 100%, rgba(var(--cd-ember-rgb), .16), transparent 80%);
	transform-origin: 50% 100%;
	animation: fx-respira 6.5s ease-in-out infinite alternate;
	will-change: transform, opacity;
}
.fx-fuego__llamas {
	position: absolute;
	left: -3%;
	bottom: -18px;
	width: 106%;
	height: calc(var(--fx-altura, 42vh) + 18px);
	opacity: var(--fx-intensidad, .6);
	-webkit-mask-image: linear-gradient(to top, #000 0%, #000 22%, rgba(0, 0, 0, .55) 58%, transparent 100%);
	mask-image: linear-gradient(to top, #000 0%, #000 22%, rgba(0, 0, 0, .55) 58%, transparent 100%);
}
.fx-fuego__chispas {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 78vh;
}
.is-inner .fx-fuego { opacity: .72; }
.fx-fuego.is-estatica .fx-fuego__brillo::before { animation: none; }

@keyframes fx-respira {
	from { opacity: .7; transform: scale(1, .92); }
	to { opacity: 1; transform: scale(1.03, 1.06); }
}

.cd-intro > .fx-fuego { opacity: 1; }

/* chispas por delante de toda la web (fuego.json → frente) */
.fx-frente {
	position: fixed;
	inset: 0;
	z-index: 190; /* encima del contenido, el header y los botones flotantes; debajo de menús, buscador y ventanas */
	width: 100%;
	height: 100%;
	pointer-events: none; /* los clics atraviesan las chispas */
	contain: strict;
}
.cd-intro > .fx-frente { z-index: 2; }
@media print {
	.fx-fuego, .fx-frente { display: none !important; }
}

.cd-ticker { background: linear-gradient(rgba(0, 0, 0, .38), rgba(0, 0, 0, .38)), var(--cd-bg); }
.cd-header { background: rgba(var(--fx-fondo-rgb), .76); }
.cd-header.is-scrolled { background: rgba(var(--fx-fondo-rgb), .95); box-shadow: 0 14px 34px -20px rgba(0, 0, 0, .95), 0 1px 0 rgba(var(--cd-accent-rgb), .08); }
.fx-on .cd-header::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 1px;
	background: linear-gradient(90deg, transparent 4%, rgba(var(--cd-ember-rgb), .55) 28%, rgba(var(--cd-accent-rgb), .95) 50%, rgba(var(--cd-ember-rgb), .55) 72%, transparent 96%);
	transform-origin: 50% 50%;
	animation: fx-linea 6s ease-in-out infinite alternate;
	pointer-events: none;
}
@keyframes fx-linea {
	from { opacity: .45; transform: scaleX(.55); }
	to { opacity: 1; transform: scaleX(1); }
}

.cd-dropdown,
.cd-account__menu,
.cd-pop { background: linear-gradient(180deg, var(--cd-surface-2), var(--cd-surface)); }
.cd-dropdown { box-shadow: var(--cd-shadow), 0 0 0 1px rgba(var(--cd-accent-rgb), .04); }
.cd-toast { background: linear-gradient(180deg, var(--cd-surface-2), var(--cd-surface)); }
.cd-dock__btn { background: rgba(var(--fx-fondo-rgb), .9); -webkit-backdrop-filter: none; backdrop-filter: none; }
.cd-dock__btn:hover { border-color: rgba(var(--cd-accent-rgb), .5); }
.cd-live { background: rgba(var(--fx-fondo-rgb), .95); -webkit-backdrop-filter: none; backdrop-filter: none; }
.cd-palette { background: rgba(var(--fx-fondo-rgb), .78); }
.cd-modal { background: rgba(var(--fx-fondo-rgb), .82); }
.cd-backdrop { background: rgba(var(--fx-fondo-rgb), .66); }
.cd-throne__facts div { background: rgba(var(--fx-fondo-rgb), .62); }

.cd-wordmark__pre { color: var(--cd-accent-2); }
.cd-wordmark__name {
	padding-top: .2em;
	margin-top: -.2em;
	background: linear-gradient(180deg, #fff6e4 22%, var(--cd-accent-2) 50%, var(--cd-accent) 78%, var(--cd-accent-3) 106%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.cd-header__brand .cd-logo--img { gap: 12px; }
.cd-header__brand .cd-logo-img {
	filter: drop-shadow(0 0 10px rgba(var(--cd-ember-rgb), .38));
	transition: transform .45s var(--cd-ease), filter .45s;
}
.cd-header__brand:hover .cd-logo-img {
	transform: scale(1.07) rotate(-2deg);
	filter: drop-shadow(0 0 16px rgba(var(--cd-accent-rgb), .7));
}
.cd-wordmark__name { white-space: nowrap; }
/* nombre del header: "MU CAÍDOS" completo y todo del mismo tamaño */
.cd-header__brand .cd-wordmark__name { font-size: 22px; }

.cd-hero {
	background:
		radial-gradient(55% 60% at 78% 105%, rgba(var(--cd-ember-rgb), .24), transparent 70%),
		radial-gradient(45% 55% at 12% -10%, rgba(var(--cd-accent-rgb), .14), transparent 70%),
		linear-gradient(180deg, var(--cd-bg-2) 0%, var(--cd-bg) 100%);
}
.cd-hero__shade {
	background:
		linear-gradient(90deg, rgba(var(--fx-fondo-rgb), .92) 0%, rgba(var(--fx-fondo-rgb), .55) 45%, rgba(var(--fx-fondo-rgb), .15) 100%),
		linear-gradient(180deg, transparent 60%, var(--cd-bg) 100%);
}
.cd-pagehead {
	background:
		radial-gradient(50% 120% at 85% 0%, rgba(var(--cd-accent-rgb), .12), transparent 70%),
		linear-gradient(180deg, var(--cd-bg-2), var(--cd-bg));
}
.cd-footer { background: var(--cd-bg); }
.cd-footer__cta {
	background:
		radial-gradient(60% 120% at 50% 120%, rgba(var(--cd-ember-rgb), .22), transparent 70%),
		radial-gradient(40% 90% at 0% 0%, rgba(var(--cd-accent-rgb), .1), transparent 70%),
		linear-gradient(180deg, var(--cd-bg), var(--cd-bg-2));
}

.fx-on .cd-hero {
	background:
		radial-gradient(48% 58% at 74% 104%, rgba(var(--cd-ember-rgb), .2), transparent 70%),
		radial-gradient(40% 52% at 8% -8%, rgba(var(--cd-accent-rgb), .12), transparent 70%),
		linear-gradient(180deg, rgba(var(--fx-fondo-rgb), .94) 0%, rgba(var(--fx-fondo-rgb), .5) 62%, rgba(var(--fx-fondo-rgb), 0) 100%);
}
.fx-on .cd-hero__embers { display: none; }
.cd-hero__skyline { background-image: url(../img/skyline-fuego.svg); opacity: 1; }
.fx-on .cd-hero__shade {
	background: linear-gradient(90deg, rgba(var(--fx-fondo-rgb), .9) 0%, rgba(var(--fx-fondo-rgb), .58) 38%, rgba(var(--fx-fondo-rgb), .12) 72%, rgba(var(--fx-fondo-rgb), 0) 100%);
}
.cd-hero__badge { background: rgba(var(--fx-fondo-rgb), .55); }

.cd-hero__crest--logo {
	position: relative;
	display: inline-block;
	isolation: isolate;
	margin: -10px 0 16px;
}
.fx-aura .cd-hero__crest--logo::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: -1;
	width: 112%;
	aspect-ratio: 1;
	transform: translate(-50%, -50%);
	background: radial-gradient(closest-side, rgba(var(--cd-ember-rgb), .34), rgba(var(--cd-accent-rgb), .14) 48%, transparent 72%);
	animation: fx-aura 5.5s ease-in-out infinite alternate;
	pointer-events: none;
}
@keyframes fx-aura {
	from { opacity: .5; transform: translate(-50%, -50%) scale(.9); }
	to { opacity: 1; transform: translate(-50%, -50%) scale(1.04); }
}
.cd-logo--hero { position: relative; }
.cd-logo--hero .cd-logo-img {
	filter: drop-shadow(0 22px 34px rgba(0, 0, 0, .7));
}
.fx-flotar .cd-logo--hero { animation: fx-flotar 7s ease-in-out infinite; }
@keyframes fx-flotar {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-8px); }
}
.fx-destello-logo {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
	-webkit-mask: var(--fx-logo) center / contain no-repeat;
	mask: var(--fx-logo) center / contain no-repeat;
	mix-blend-mode: screen;
}
.fx-destello-logo i {
	position: absolute;
	top: -10%;
	bottom: -10%;
	left: 0;
	width: 42%;
	background: linear-gradient(90deg, transparent 0%, rgba(255, 246, 230, 0) 18%, rgba(255, 246, 230, .5) 50%, rgba(255, 246, 230, 0) 82%, transparent 100%);
	transform: translateX(-130%) skewX(-14deg);
	animation: fx-destello 9s ease-in-out 2.5s infinite;
}
@keyframes fx-destello {
	0%, 70% { transform: translateX(-130%) skewX(-14deg); }
	100% { transform: translateX(340%) skewX(-14deg); }
}

.fx-on .cd-stats {
	background: linear-gradient(180deg, rgba(var(--fx-fondo-rgb), .5), rgba(var(--fx-fondo-rgb), .82));
	border-top-color: rgba(var(--cd-accent-rgb), .22);
}
.cd-stats__icon { box-shadow: 0 0 18px -4px rgba(var(--cd-accent-rgb), .45); }

.cd-status {
	background: linear-gradient(180deg, rgba(var(--fx-fondo-rgb), .9), rgba(var(--fx-fondo-rgb), .96)), linear-gradient(180deg, var(--cd-surface-2), var(--cd-bg));
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}
.cd-status::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background: radial-gradient(80% 50% at 50% 0%, rgba(var(--cd-accent-rgb), .1), transparent 70%);
}

.cd-section__title,
.cd-footer__cta-text h2 {
	background: linear-gradient(180deg, #fff6e6 18%, var(--cd-accent-2) 78%, var(--cd-accent) 118%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.cd-module .page-title span {
	background: linear-gradient(180deg, #fff6e6 18%, var(--cd-accent-2) 80%, var(--cd-accent) 120%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.cd-module .page-title::after { width: 120px; background: linear-gradient(90deg, var(--cd-ember), var(--cd-accent), transparent); }

.fx-on .cd-section--alt {
	background: linear-gradient(180deg, rgba(var(--cd-accent-rgb), .025), rgba(var(--cd-accent-rgb), 0) 70%);
}

.cd-newscard__media.is-art[data-art="0"] { background: radial-gradient(80% 90% at 20% 100%, rgba(var(--cd-ember-rgb), .45), transparent 60%), linear-gradient(135deg, var(--cd-surface-3), var(--cd-bg)); }
.cd-newscard__media.is-art[data-art="1"] { background: radial-gradient(70% 80% at 85% 0%, rgba(var(--cd-accent-rgb), .35), transparent 60%), linear-gradient(135deg, var(--cd-surface-2), var(--cd-bg)); }
.cd-newscard__media.is-art[data-art="2"] { background: radial-gradient(90% 80% at 50% 120%, rgba(var(--cd-ember-rgb), .38), transparent 60%), linear-gradient(135deg, var(--cd-surface-2), var(--cd-bg)); }
.cd-newscard__media.is-art[data-art="3"] { background: radial-gradient(80% 90% at 0% 0%, rgba(var(--cd-ember-rgb), .3), transparent 55%), radial-gradient(60% 70% at 100% 100%, rgba(var(--cd-accent-rgb), .25), transparent 60%), var(--cd-bg-2); }
.cd-newscard__media.is-art .cd-sello { opacity: .82; filter: drop-shadow(0 10px 22px rgba(0, 0, 0, .6)); }

.cd-newscard__link:hover,
.cd-board:hover,
.cd-throne:hover { box-shadow: 0 22px 44px -26px rgba(var(--cd-ember-rgb), .6); }
.cd-board,
.cd-throne { transition: border-color .3s, box-shadow .3s; }
.cd-board:hover,
.cd-throne:hover { border-color: rgba(var(--cd-accent-rgb), .3); }

.cd-btn--primary { overflow: hidden; }
.cd-btn--primary::after {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(105deg, transparent 32%, rgba(255, 255, 255, .42) 50%, transparent 68%);
	transform: translateX(-115%);
	transition: transform .75s var(--cd-ease);
}
.cd-btn--primary:hover::after { transform: translateX(115%); }

.fx-on .cd-pagehead {
	background:
		radial-gradient(50% 120% at 85% 0%, rgba(var(--cd-accent-rgb), .12), transparent 70%),
		linear-gradient(180deg, var(--cd-bg-2), rgba(var(--fx-fondo-rgb), 0));
}
.cd-pagehead__bg--logo {
	top: -12%;
	bottom: -12%;
	right: 6%;
	transform: none;
	opacity: .16;
}
.cd-pagehead__bg--logo .cd-sello {
	width: auto;
	height: 100%;
	max-height: none;
	aspect-ratio: 1;
	filter: saturate(.9);
	-webkit-mask-image: radial-gradient(closest-side, #000 48%, transparent 100%);
	mask-image: radial-gradient(closest-side, #000 48%, transparent 100%);
}
@media (max-width: 720px) {
	.cd-pagehead__bg--logo { right: -4%; opacity: .12; }
}

.fx-on .cd-footer { background: linear-gradient(180deg, rgba(var(--fx-fondo-rgb), .72), rgba(var(--fx-fondo-rgb), .9)); }
.fx-on .cd-footer__cta {
	background:
		radial-gradient(60% 120% at 50% 120%, rgba(var(--cd-ember-rgb), .2), transparent 70%),
		radial-gradient(40% 90% at 0% 0%, rgba(var(--cd-accent-rgb), .08), transparent 70%);
}
.cd-logo--footer .cd-wordmark { display: none; }
.cd-logo--footer .cd-logo-img { filter: drop-shadow(0 0 22px rgba(var(--cd-ember-rgb), .32)); }

.cd-intro {
	background:
		radial-gradient(42% 46% at 50% 44%, rgba(var(--cd-accent-rgb), .14), transparent 70%),
		var(--cd-bg);
}
.cd-logo--intro ~ .cd-intro__name { display: none; }
.cd-logo--intro { position: relative; isolation: isolate; }
.cd-logo--intro .cd-logo-img {
	height: min(var(--cd-logo-hero-h, 360px), 42vh);
	filter: drop-shadow(0 18px 44px rgba(var(--cd-ember-rgb), .35));
}
.fx-aura .cd-logo--intro::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: -1;
	width: 120%;
	aspect-ratio: 1;
	transform: translate(-50%, -50%);
	background: radial-gradient(closest-side, rgba(var(--cd-ember-rgb), .4), rgba(var(--cd-accent-rgb), .14) 50%, transparent 72%);
	animation: fx-aura 4.5s ease-in-out infinite alternate;
	pointer-events: none;
}
.cd-intro__bar span { background: linear-gradient(90deg, var(--cd-accent-3), var(--cd-ember), var(--cd-accent), var(--cd-accent-2)); }

.cd-module .cd-kv div { background: rgba(var(--fx-fondo-rgb), .7); }
.cd-wheel__seg.is-a { fill: var(--cd-surface-3); }
.cd-wheel__hub { background: radial-gradient(circle at 50% 35%, var(--cd-surface-3), var(--cd-bg) 70%); }
.cd-module .profiles_player_card::before { background: linear-gradient(90deg, rgba(var(--fx-fondo-rgb), .1) 0%, rgba(var(--fx-fondo-rgb), .75) 45%, rgba(var(--fx-fondo-rgb), .95) 100%); }

.cd-body { scrollbar-color: var(--cd-accent-3) var(--cd-bg); }
.cd-body ::-webkit-scrollbar-thumb { background: linear-gradient(180deg, var(--cd-accent), var(--cd-accent-3)); }

@media (max-width: 720px) {
	.cd-module .profiles_player_card::before { background: linear-gradient(180deg, rgba(var(--fx-fondo-rgb), .05) 0%, rgba(var(--fx-fondo-rgb), .92) 50%); }
}

@media (max-width: 980px) {
	.cd-hero__content { text-align: center; }
	.cd-hero__crest--logo { margin-inline: auto; }
	.cd-hero__crest { display: flex; justify-content: center; }
	.cd-hero__badge { justify-content: center; }
	.cd-hero .cd-hero__text { margin-left: auto; margin-right: auto; }
	.cd-hero__actions { justify-content: center; }
	.cd-logo--hero .cd-logo-img { object-position: center; }
	.cd-status { margin-inline: auto; width: 100%; }
}

@media (max-width: 520px) {
	.cd-logo--hero .cd-logo-img { width: auto; height: min(var(--cd-logo-hero-h, 360px), 78vw); max-height: none; }
	.cd-header__brand .cd-logo-img { height: var(--cd-logo-h-m, 46px); }
	.cd-header__brand .cd-wordmark__name { font-size: 19px; }
	.fx-fuego__chispas { height: 70vh; }
}

@media (max-width: 420px) {
	.cd-header__brand .cd-wordmark__name { font-size: 16px; letter-spacing: .05em; }
}

@media (max-width: 360px) {
	.cd-header__brand .cd-wordmark__name { font-size: 14px; letter-spacing: .04em; }
}

@media (prefers-reduced-motion: reduce) {
	html:not(.fx-suave) .fx-fuego__brillo::before,
	html:not(.fx-suave).fx-on .cd-header::after,
	html:not(.fx-suave).fx-aura .cd-hero__crest--logo::before,
	html:not(.fx-suave).fx-aura .cd-logo--intro::before { animation: none !important; }
	.fx-flotar .cd-logo--hero { animation: none !important; }
	.fx-destello-logo { display: none; }
	.fx-suave .cd-body .fx-fuego__brillo::before { animation-duration: 9s !important; animation-iteration-count: infinite !important; }
	.fx-suave.fx-on .cd-body .cd-header::after { animation-duration: 8s !important; animation-iteration-count: infinite !important; }
	.fx-suave.fx-aura .cd-body .cd-hero__crest--logo::before,
	.fx-suave.fx-aura .cd-body .cd-logo--intro::before { animation-duration: 7s !important; animation-iteration-count: infinite !important; }
}
