/* =====================================================================
   SionSeries — tema "racing": fibra de carbono, rojo de carreras y cian de telemetría.
   Se carga después de style.css y ajusta tanto el tema Astra como los bloques del plugin.
   ===================================================================== */

:root {
	--ss-red: #e10600;
	--ss-red-hi: #ff2d24;
	--ss-cyan: #00d2ff;
	--ss-bg: #05070c;
	--ss-panel: #0b0f19;
	--ss-panel-2: #111726;
	--ss-line: rgba(255, 255, 255, .09);
	--ss-text: #e8eef7;
	--ss-muted: #8d9ab0;
	--ss-font-display: "Saira Condensed", "Saira", sans-serif;
	--ss-cut: 14px;
}

/* ---------- Fondo: foto atenuada + rejilla técnica ---------- */
body {
	background-color: var(--ss-bg) !important;
	color: var(--ss-text);
}
body::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background:
		linear-gradient(rgba(5, 7, 12, .78), rgba(5, 7, 12, .94)),
		repeating-linear-gradient(0deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 48px),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 48px);
}
#page { position: relative; z-index: 1; }

h1, h2, h3, h4,
.entry-title,
.ss-heading,
.ss-card__title {
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .02em;
	font-weight: 700;
}

/* ---------- Cabecera ---------- */
.main-header-bar,
.ast-primary-header-bar {
	background: rgba(5, 7, 12, .82) !important;
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--ss-line) !important;
}
.ast-below-header-bar {
	background: linear-gradient(90deg, #0a0e18, #0d1322 60%, #0a0e18) !important;
	position: relative;
	border-bottom: 0 !important;
}
.ast-below-header-bar::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	background: linear-gradient(90deg, var(--ss-red) 0%, var(--ss-red) 35%, var(--ss-cyan) 100%);
}
.ast-builder-menu .menu-item > .menu-link,
#ast-hf-menu-1 > li > a {
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .14em;
	font-weight: 600;
	font-size: .95rem;
	transition: color .15s, box-shadow .15s;
}
#ast-hf-menu-1 > li > a:hover,
#ast-hf-menu-1 > li.current-menu-item > a {
	color: #fff !important;
	box-shadow: inset 0 -3px 0 var(--ss-red);
}

/* Acceso al perfil: casco integral de carreras (de perfil, mirando a la derecha) + texto "Mi cuenta" */
.ast-header-account-link {
	display: inline-flex !important;
	align-items: center;
	gap: .55em;
	padding: 5px 14px 5px 8px;
	border: 1px solid var(--ss-line);
	background: rgba(255, 255, 255, .04);
	clip-path: polygon(8px 0, 100% 0, calc(100% - 8px) 100%, 0 100%);
	transition: background .15s, border-color .15s;
}
.ast-header-account-link:hover { background: rgba(225, 6, 0, .18); border-color: var(--ss-red); }
.ast-header-account-link .ahfb-svg-iconset svg { display: none !important; }
.ast-header-account-link .ahfb-svg-iconset {
	width: 36px;
	height: 36px;
	display: inline-block !important;
	background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M13 54C6 48 4 40 5 31 7 17 18 8 33 8c15 0 25 10 26 24v12c0 6-4 10-10 10z' fill='%23ffffff'/%3E%3Cpath d='M31 23h26.6c.9 2.8 1.4 5.8 1.4 9v4H37a6 6 0 0 1-6-6z' fill='%230b0f19'/%3E%3Cpath d='M33 25h23.6c.4 1.1.7 2.2.9 3.4H34.5z' fill='%2300d2ff'/%3E%3Cpath d='M5.5 36c9-3.5 19-3.5 27 .5 4 2 7 5 8.5 8.5' fill='none' stroke='%23e10600' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M47 41h9M47 46h7' stroke='%230b0f19' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
	transition: transform .2s, filter .2s;
}
.ast-header-account-link:hover .ahfb-svg-iconset { transform: rotate(-6deg); filter: drop-shadow(0 0 6px rgba(0, 210, 255, .6)); }
.ast-header-account-link::after {
	content: "Mi cuenta";
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .12em;
	font-weight: 700;
	font-size: .85rem;
	color: #fff;
	white-space: nowrap;
}
html[lang^="en"] .ast-header-account-link::after { content: "My account"; }
@media (max-width: 544px) { .ast-header-account-link::after { display: none; } }

/* ---------- Panel de contenido ---------- */
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.ast-separate-container .comments-area {
	background: linear-gradient(180deg, rgba(13, 18, 30, .94), rgba(7, 10, 17, .96)) !important;
	border: 1px solid var(--ss-line);
	clip-path: polygon(0 0, calc(100% - 28px) 0, 100% 28px, 100% 100%, 28px 100%, 0 calc(100% - 28px));
	box-shadow: 0 30px 60px rgba(0, 0, 0, .45);
}
.entry-title {
	font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
	font-style: italic;
	font-weight: 800;
	position: relative;
	padding-left: 22px;
}
.entry-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: .15em;
	bottom: .15em;
	width: 7px;
	background: var(--ss-red);
	transform: skewX(-18deg);
}
.ss-heading,
.entry-content h2 {
	font-size: 1.55rem;
	font-style: italic;
	display: flex;
	align-items: center;
	gap: .55em;
}
.ss-heading::after {
	content: "";
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, var(--ss-line), transparent);
}

/* ---------- Botones: paralelogramo ---------- */
.ss-button,
.ss-notice__button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	font-family: var(--ss-font-display) !important;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-weight: 700 !important;
	border: 0 !important;
	border-radius: 0 !important;
	clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
	padding: .7em 1.6em !important;
	transition: background .15s, color .15s, transform .15s;
}
.ss-button {
	background: rgba(255, 255, 255, .08);
	color: #fff !important;
}
.ss-button:hover,
.ss-button--primary,
.ss-notice__button,
.woocommerce a.button,
.woocommerce button.button {
	background: var(--ss-red) !important;
	color: #fff !important;
}
.ss-button:hover,
.ss-notice__button:hover { background: var(--ss-red-hi) !important; transform: translateY(-1px); }
.ss-button--disabled,
.ss-button--disabled:hover { background: rgba(255, 255, 255, .05) !important; color: var(--ss-muted) !important; transform: none; }

/* ---------- Insignias de estado ---------- */
.ss-badge {
	border-radius: 2px;
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: .7rem;
	font-weight: 700;
	padding: 3px 9px;
	border: 1px solid currentColor;
	background: transparent !important;
}
.ss-badge--ok, .ss-badge--livery-accepted { color: #2ee87a; }
.ss-badge--started { color: var(--ss-red-hi); }
.ss-badge--upcoming { color: var(--ss-cyan); }
.ss-badge--off, .ss-badge--livery-none { color: var(--ss-muted); }

/* ---------- Licencias (hexágonos) ---------- */
.ss-lic { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; vertical-align: middle; --lic: var(--ss-cyan); }
.ss-lic--rallye { --lic: #ff8a00; }
.ss-lic--drift { --lic: #d23cff; }
.ss-lic svg { display: block; width: 36px; height: 41px; filter: drop-shadow(0 0 6px color-mix(in srgb, var(--lic) 45%, transparent)); }
.ss-lic--sm svg { width: 24px; height: 27px; filter: none; }
.ss-lic--lg svg { width: 64px; height: 73px; }
.ss-lic__edge { fill: var(--lic); }
.ss-lic__face { fill: #0b0f19; }
.ss-lic__shine { fill: var(--lic); opacity: .25; }
.ss-lic text { fill: #fff; font-family: var(--ss-font-display); font-weight: 800; font-size: 19px; }
.ss-lic__cat { font-family: var(--ss-font-display); font-size: .6rem; letter-spacing: .12em; text-transform: uppercase; color: var(--lic); font-weight: 700; }
.ss-lic--off { --lic: #3a4255; }
.ss-lic--off svg { filter: none; opacity: .7; }
.ss-lic--off text { fill: #6b7489; }
.ss-lic + .ss-lic { margin-left: 3px; }

/* Pulso: el hexágono "late" con un halo de su color (las no obtenidas no laten).
   Solo se animan transform y opacity (los mueve la tarjeta gráfica): animar un filtro
   de sombra obligaba a redibujar cada fotograma y ralentizaba la página. */
.ss-lic { position: relative; --lic-w: 36px; }
.ss-lic--sm { --lic-w: 24px; }
.ss-lic--lg { --lic-w: 64px; }
.ss-licenses__lower .ss-lic { --lic-w: 30px; }
.ss-lic svg { position: relative; z-index: 1; filter: none !important; }
.ss-lic::before {
	content: "";
	position: absolute;
	z-index: 0;
	top: calc(var(--lic-w) * -0.2);
	left: 50%;
	width: calc(var(--lic-w) * 1.6);
	height: calc(var(--lic-w) * 1.6);
	margin-left: calc(var(--lic-w) * -0.8);
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--lic) 75%, transparent) 0%, transparent 65%);
	opacity: .25;
	pointer-events: none;
}
@keyframes ss-lic-beat { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.07); } }
@keyframes ss-lic-glow { 0%, 100% { opacity: .2; transform: scale(.85); } 50% { opacity: .9; transform: scale(1.1); } }
.ss-lic:not(.ss-lic--off) svg { animation: ss-lic-beat 2.2s ease-in-out infinite; will-change: transform; }
.ss-lic:not(.ss-lic--off)::before { animation: ss-lic-glow 2.2s ease-in-out infinite; will-change: opacity, transform; }
.ss-lic--off::before { display: none; }
.ss-lic + .ss-lic svg, .ss-lic + .ss-lic::before { animation-delay: .25s; }
.ss-lic + .ss-lic + .ss-lic svg, .ss-lic + .ss-lic + .ss-lic::before { animation-delay: .5s; }
.ss-lic + .ss-lic + .ss-lic + .ss-lic svg, .ss-lic + .ss-lic + .ss-lic + .ss-lic::before { animation-delay: .75s; }
@media (prefers-reduced-motion: reduce) { .ss-lic svg, .ss-lic::before { animation: none !important; } }

/* ---------- Eventos por secciones ---------- */
.ss-section { margin: 0 0 3em; }
.ss-section__title { font-size: 1.9rem !important; }
.ss-section__count {
	font-size: .85rem;
	font-style: normal;
	background: var(--ss-red);
	color: #fff;
	padding: .15em .7em;
	clip-path: polygon(5px 0, 100% 0, calc(100% - 5px) 100%, 0 100%);
}
.ss-section--drift .ss-section__count { background: #d23cff; }
.ss-section--rallye .ss-section__count { background: #ff8a00; }
.ss-section--tanda .ss-section__count { background: rgba(255, 255, 255, .15); }
.ss-section--tanda .ss-section__title { font-size: 1.4rem !important; color: var(--ss-muted); }
.ss-section__intro { color: var(--ss-muted); margin: -.4em 0 1.2em; }
/* Tandas: tarjetas más pequeñas, 3 por fila, solo la foto del coche */
.ss-cards--compact { grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)) !important; gap: 1em !important; }
.ss-cards--compact .ss-card { aspect-ratio: 16 / 9; min-height: 180px; }
.ss-cards--compact .ss-card__media { grid-template-rows: 1fr !important; }
.ss-cards--compact .ss-card__media img + img { display: none; }
.ss-cards--compact .ss-card__title { font-size: 1rem !important; -webkit-line-clamp: 2; }
.ss-cards--compact .ss-card__body { padding: .8em .9em !important; font-size: .9em; }
.ss-cards--compact .ss-card__date { display: none !important; }
.ss-cards--compact .ss-card__cta { padding: .45em 1em !important; font-size: .8rem; }
.ss-badge--free { color: #2ee87a; }
.ss-free-note { display: inline-block; font-family: var(--ss-font-display); text-transform: uppercase; letter-spacing: .08em; color: #2ee87a; border: 1px solid currentColor; padding: .5em 1em; }

/* ---------- Steam: botón, aviso en Mi cuenta ---------- */
.ss-steam-btn {
	display: inline-flex;
	align-items: center;
	gap: .6em;
	padding: .7em 1.4em;
	background: linear-gradient(135deg, #1b2838, #2a475e);
	color: #fff !important;
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-weight: 700;
	text-decoration: none !important;
	clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0 100%);
	transition: filter .15s, transform .15s;
}
.ss-steam-btn:hover { filter: brightness(1.25); transform: translateY(-1px); }
.ss-steam-btn svg { width: 22px; height: 22px; flex: none; }
.ss-steam-alt { display: flex; align-items: center; gap: 1em; margin: 1.2em 0 .4em; color: var(--ss-muted); text-transform: uppercase; font-size: .8rem; letter-spacing: .12em; }
.ss-steam-pending { color: #2ee87a; font-weight: 600; }
.ss-steam-banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1em 1.5em;
	padding: 1em 1.3em;
	margin-bottom: 1.5em;
	background: linear-gradient(135deg, rgba(42, 71, 94, .45), rgba(11, 15, 25, .9));
	border: 1px solid rgba(102, 192, 244, .35);
	border-left: 3px solid #66c0f4;
}
.ss-steam-banner strong { font-family: var(--ss-font-display); text-transform: uppercase; letter-spacing: .08em; font-size: 1.05rem; color: #fff; }
.ss-steam-banner p { margin: .2em 0 0; font-size: .9rem; color: var(--ss-muted); max-width: 46em; }

/* ---------- Pilotos enlazables y ficha pública ---------- */
.ss-pilot-link { color: #fff !important; text-decoration: none !important; border-bottom: 1px dashed rgba(0, 210, 255, .5); transition: color .15s, border-color .15s; }
.ss-pilot-link:hover { color: var(--ss-cyan) !important; border-bottom-color: var(--ss-cyan); }
.ss-pilot-link::after { content: " ›"; color: var(--ss-cyan); opacity: 0; transition: opacity .15s; }
.ss-pilot-link:hover::after { opacity: 1; }

.ss-pilot__head { display: flex; align-items: center; gap: 1.1em; margin-bottom: 1.4em; }
.ss-pilot__helmet {
	width: 78px;
	height: 78px;
	flex: none;
	background: no-repeat center / 80% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M13 54C6 48 4 40 5 31 7 17 18 8 33 8c15 0 25 10 26 24v12c0 6-4 10-10 10z' fill='%23ffffff'/%3E%3Cpath d='M31 23h26.6c.9 2.8 1.4 5.8 1.4 9v4H37a6 6 0 0 1-6-6z' fill='%230b0f19'/%3E%3Cpath d='M33 25h23.6c.4 1.1.7 2.2.9 3.4H34.5z' fill='%2300d2ff'/%3E%3Cpath d='M5.5 36c9-3.5 19-3.5 27 .5 4 2 7 5 8.5 8.5' fill='none' stroke='%23e10600' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E"), linear-gradient(135deg, #1a2235, #0b0f19);
	border: 1px solid var(--ss-line);
	clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
.ss-pilot__eyebrow { font-family: var(--ss-font-display); text-transform: uppercase; letter-spacing: .2em; font-size: .75rem; color: var(--ss-red-hi); font-weight: 700; }
.ss-pilot__name { margin: 0 !important; font-size: clamp(1.8rem, 4vw, 2.6rem) !important; font-style: italic; font-weight: 800; line-height: 1; }
.ss-licenses--public .ss-licenses__current { margin-bottom: 0; }
.ss-licenses__lower { display: flex; flex-wrap: wrap; gap: 8px 4px; margin-top: .9em; padding-top: .8em; border-top: 1px solid var(--ss-line); }
.ss-licenses__lower .ss-lic svg { width: 30px; height: 34px; }
.ss-pilot__palmares a { color: #fff !important; text-decoration: none !important; }
.ss-pilot__palmares a:hover { color: var(--ss-cyan) !important; }
.ss-pilot__palmares small { color: var(--ss-muted); text-transform: uppercase; letter-spacing: .06em; font-size: .75em; }

/* ---------- Ticker de novedades (bajo la barra de secciones) ---------- */
.ss-ticker {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background: linear-gradient(90deg, #12060a, #0a0e18 50%, #12060a);
	border-bottom: 1px solid var(--ss-line);
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: .85rem;
	color: #fff;
}
/* Bordes difuminados con degradados fijos (una máscara sobre algo animado obliga a repintar sin parar). */
.ss-ticker::before,
.ss-ticker::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	width: 70px;
	z-index: 1;
	pointer-events: none;
}
.ss-ticker::before { left: 0; background: linear-gradient(90deg, #12060a, transparent); }
.ss-ticker::after { right: 0; background: linear-gradient(270deg, #12060a, transparent); }
.ss-ticker__track { display: flex; width: max-content; animation: ss-ticker 38s linear infinite; will-change: transform; }
.ss-ticker:hover .ss-ticker__track { animation-play-state: paused; }
.ss-ticker__group { display: flex; flex: none; }
.ss-ticker__item { display: inline-flex; align-items: center; gap: .7em; padding: .62em 3.5em .62em 0; white-space: nowrap; }
.ss-ticker__item::after { content: "///"; color: var(--ss-red); margin-left: 2.8em; letter-spacing: -.1em; font-weight: 800; }
.ss-ticker__tag {
	background: var(--ss-red);
	padding: .15em .8em;
	font-weight: 800;
	font-size: .75rem;
	letter-spacing: .14em;
	clip-path: polygon(6px 0, 100% 0, calc(100% - 6px) 100%, 0 100%);
}
.ss-ticker a { color: var(--ss-cyan) !important; font-weight: 800; text-decoration: none !important; border-bottom: 1px solid currentColor; }
.ss-ticker a:hover { color: #fff !important; }
@keyframes ss-ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
	.ss-ticker__track { animation: none; }
	.ss-ticker__group[aria-hidden] { display: none; }
}

/* ---------- Colaboradores (encima del pie) ---------- */
.ss-partners {
	position: relative;
	z-index: 1;
	background: linear-gradient(180deg, rgba(5, 7, 12, .6), rgba(5, 7, 12, .96));
	border-top: 1px solid var(--ss-line);
	padding: 2.4em 20px 2.6em;
}
.ss-partners::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 50%;
	width: min(420px, 60%);
	height: 2px;
	transform: translateX(-50%);
	background: linear-gradient(90deg, transparent, var(--ss-red), var(--ss-cyan), transparent);
}
.ss-partners__inner { max-width: 1100px; margin: 0 auto; text-align: center; }
.ss-partners__title {
	font-size: .8rem !important;
	letter-spacing: .3em !important;
	color: var(--ss-muted) !important;
	margin: 0 0 1.6em !important;
	font-style: normal !important;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1em;
}
.ss-partners__title::before,
.ss-partners__title::after { content: ""; width: 40px; height: 1px; background: var(--ss-line); }
.ss-partners__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 1.2em 3.2em;
}
.ss-partners__list a { display: block; padding: 6px; }
.ss-partners__list img {
	display: block;
	height: 58px;
	width: auto;
	max-width: 170px;
	object-fit: contain;
	transition: transform .25s;
}
.ss-partners__list a:hover img { transform: translateY(-3px) scale(1.06); }
@media (max-width: 600px) {
	.ss-partners__list { gap: 1em 2em; }
	.ss-partners__list img { height: 42px; max-width: 120px; }
}

/* ---------- Tarjetas de competición ---------- */
.ss-card {
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--ss-panel) !important;
	clip-path: polygon(0 0, calc(100% - var(--ss-cut)) 0, 100% var(--ss-cut), 100% 100%, var(--ss-cut) 100%, 0 calc(100% - var(--ss-cut)));
	transition: transform .2s, box-shadow .2s;
	box-shadow: none !important;
}
.ss-card::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	border: 1px solid var(--ss-line);
	clip-path: inherit;
}
.ss-card:hover { transform: translateY(-3px); }
.ss-card__media img { transition: transform .5s; }
.ss-card:hover .ss-card__media img { transform: scale(1.05); }
.ss-card__body {
	background: linear-gradient(160deg, #0f1524, #070a12) !important;
	border-left: 2px solid var(--ss-red) !important;
	padding: 1.1em 1.3em !important;
}
.ss-card__body::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 60%;
	height: 2px;
	background: linear-gradient(90deg, transparent, var(--ss-cyan));
	opacity: .6;
}
.ss-card__title { font-size: 1.25rem !important; font-style: italic; font-weight: 800 !important; line-height: 1.05 !important; }
.ss-card__title a:hover { color: var(--ss-cyan) !important; }
.ss-card__facts { font-size: .85rem !important; }
.ss-card__facts li { display: flex; align-items: center; gap: .5em; color: var(--ss-muted) !important; }
.ss-card__facts li::before {
	content: "";
	width: 14px;
	height: 14px;
	flex: none;
	background: var(--ss-muted);
	-webkit-mask: var(--ico) no-repeat center / contain;
	mask: var(--ico) no-repeat center / contain;
}
.ss-card__facts strong { color: #fff; font-family: var(--ss-font-display); font-size: 1.05em; letter-spacing: .03em; }
.ss-card__date {
	--ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2v3M17 2v3M3 9h18M5 5h14a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2z' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E");
	color: var(--ss-cyan) !important;
	font-family: var(--ss-font-display);
	letter-spacing: .14em !important;
}
.ss-card__date::before { background: var(--ss-cyan) !important; }
.ss-card__facts li:nth-child(2) { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M1 21c0-4 4-7 8-7s8 3 8 7z'/%3E%3Ccircle cx='18' cy='9' r='3'/%3E%3Cpath d='M17 14c3 0 6 2 6 6h-4c0-2-1-4-2-6z'/%3E%3C/svg%3E"); }
.ss-card__facts li:last-child:not(.ss-card__license) { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 11V6a3 3 0 0 1 3-3h8a3 3 0 0 1 3 3v5M3 11h18v6H3zM5 17v4M19 17v4'/%3E%3C/svg%3E"); }
.ss-card__license { color: #fff !important; }
.ss-card__license::before { display: none; }
.ss-card__license-label { font-family: var(--ss-font-display); text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; color: var(--ss-muted); }
.ss-card__cta { margin-top: auto !important; }

/* ---------- Carrusel ---------- */
.ss-carousel__nav {
	border-radius: 0 !important;
	clip-path: polygon(8px 0, 100% 0, calc(100% - 8px) 100%, 0 100%);
	background: rgba(5, 7, 12, .9) !important;
	border: 0 !important;
	width: 48px !important;
}
.ss-carousel__nav:hover { background: var(--ss-red) !important; }
.ss-home-heading { font-style: italic; font-size: 2rem; }

/* ---------- Ficha del campeonato ---------- */
.ss-event-box {
	border: 1px solid var(--ss-line) !important;
	border-radius: 0 !important;
	background: rgba(5, 8, 14, .6);
	clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 0 100%);
}
.ss-event-box .ss-media { border-radius: 0 !important; }
.ss-facts { gap: 0 !important; border-top: 1px solid var(--ss-line); border-left: 1px solid var(--ss-line); }
.ss-facts > div { padding: .7em .9em; border-right: 1px solid var(--ss-line); border-bottom: 1px solid var(--ss-line); }
.ss-facts dt { font-family: var(--ss-font-display); letter-spacing: .14em !important; color: var(--ss-muted); font-size: .72rem !important; opacity: 1 !important; }
.ss-facts dd { font-family: var(--ss-font-display); font-size: 1.25rem; color: #fff; }
.ss-facts__licenses { grid-column: span 2; }
.ss-facts__licenses dd { display: flex; gap: 6px; flex-wrap: wrap; padding-top: 4px; }

.ss-tracks li { border-bottom: 1px solid var(--ss-line) !important; }
.ss-tracks__img { border-radius: 0 !important; clip-path: polygon(6px 0, 100% 0, calc(100% - 6px) 100%, 0 100%); }
.ss-tracks__name { font-family: var(--ss-font-display); font-size: 1.05rem; letter-spacing: .03em; }
.ss-cars li { border-radius: 0 !important; border-color: var(--ss-line) !important; background: var(--ss-panel); }
.ss-cars__specs { display: flex !important; align-items: center; gap: 6px; opacity: 1 !important; color: var(--ss-muted); font-family: var(--ss-font-display); letter-spacing: .05em; }

/* ---------- Tablas tipo panel de tiempos ---------- */
.ss-table { border: 1px solid var(--ss-line) !important; background: rgba(5, 8, 14, .55); }
.ss-table thead th {
	font-family: var(--ss-font-display);
	letter-spacing: .16em !important;
	font-size: .72rem !important;
	color: var(--ss-muted) !important;
	background: rgba(255, 255, 255, .03) !important;
	border-bottom: 1px solid var(--ss-red) !important;
}
.ss-table td { border-color: var(--ss-line) !important; }
.ss-table tbody tr:hover td { background: rgba(0, 210, 255, .05); }
.ss-results td:first-child,
.ss-standings td:first-child {
	font-family: var(--ss-font-display);
	font-weight: 800;
	font-size: 1.1em;
	font-style: italic;
}
.ss-results td:last-child,
.ss-standings td:last-child { font-family: ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 700; color: #fff; }
.ss-podium td:first-child { box-shadow: inset 4px 0 0 currentColor; }
.ss-standings__class { color: var(--ss-cyan); font-style: italic; }

/* ---------- Aviso de ForgedMod ---------- */
.ss-notice {
	border-radius: 0 !important;
	clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 24px, 100% 100%, 24px 100%, 0 calc(100% - 24px));
	background: linear-gradient(135deg, rgba(225, 6, 0, .16), rgba(0, 210, 255, .08)), rgba(8, 11, 19, .92) !important;
}
.ss-notice::before { background: linear-gradient(90deg, var(--ss-red), var(--ss-cyan)) !important; }
.ss-notice__eyebrow { border-radius: 0 !important; clip-path: polygon(6px 0, 100% 0, calc(100% - 6px) 100%, 0 100%); }
.ss-notice__title { font-style: italic; font-weight: 800; font-size: 2rem !important; }

/* ---------- Mi cuenta ---------- */
.woocommerce-MyAccount-navigation ul { border: 1px solid var(--ss-line) !important; background: var(--ss-panel); }
.woocommerce-MyAccount-navigation ul li { border-color: var(--ss-line) !important; }
.woocommerce-MyAccount-navigation ul li a {
	font-family: var(--ss-font-display);
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--ss-muted) !important;
	border-left: 3px solid transparent;
	transition: color .15s, border-color .15s, background .15s;
}
.woocommerce-MyAccount-navigation ul li a:hover { color: #fff !important; background: rgba(255, 255, 255, .03); }
.woocommerce-MyAccount-navigation ul li.is-active a {
	color: #fff !important;
	background: linear-gradient(90deg, rgba(225, 6, 0, .25), transparent) !important;
	border-left-color: var(--ss-red);
}

.ss-stat {
	border-radius: 0 !important;
	border-color: var(--ss-line) !important;
	background: var(--ss-panel);
	clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%);
}
.ss-stat__value { font-family: var(--ss-font-display); font-style: italic; font-size: 2.2em !important; color: #fff; }

/* Licencias del piloto */
.ss-licenses__group {
	border-radius: 0 !important;
	border-color: var(--ss-line) !important;
	background: var(--ss-panel);
	clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 16px, 100% 100%, 0 100%);
}
.ss-licenses__current { display: flex; align-items: center; gap: .9em; margin: .3em 0 .8em; }
.ss-licenses__current strong { display: block; font-family: var(--ss-font-display); font-size: 1.5rem; font-style: italic; text-transform: uppercase; color: #fff; line-height: 1.1; }
.ss-licenses__points { font-family: var(--ss-font-display); color: var(--ss-muted); letter-spacing: .05em; }
.ss-progress { height: 6px; background: rgba(255, 255, 255, .07); margin: 0 0 .35em; overflow: hidden; }
.ss-progress span { display: block; height: 100%; background: linear-gradient(90deg, var(--ss-red), var(--ss-cyan)); }
.ss-licenses__next { display: block; margin-bottom: .8em; color: var(--ss-muted); }
.ss-license { border-radius: 0 !important; border-color: var(--ss-line) !important; opacity: 1 !important; }
.ss-license__name { display: flex; align-items: center; gap: .55em; font-family: var(--ss-font-display); letter-spacing: .04em; }
.ss-license:not(.ss-license--owned) .ss-license__name { color: var(--ss-muted); }
.ss-license--owned { background: rgba(255, 255, 255, .03); }

/* ---------- Formularios ---------- */
.ss-form input[type=text],
.ss-form select,
.ss-form textarea,
.ss-steam input {
	background: #070a12 !important;
	border: 1px solid var(--ss-line) !important;
	border-radius: 0 !important;
	color: #fff !important;
}
.ss-form input:focus,
.ss-form textarea:focus,
.ss-steam input:focus { border-color: var(--ss-cyan) !important; outline: none; box-shadow: 0 0 0 2px rgba(0, 210, 255, .2); }

/* ---------- Pie y selector de idioma ---------- */
.site-footer { background: rgba(5, 7, 12, .9) !important; border-top: 1px solid var(--ss-line); }
#trp-floater-ls { border-radius: 0 !important; background: var(--ss-panel) !important; border: 1px solid var(--ss-line); }

@media (max-width: 600px) {
	.ast-separate-container .ast-article-single,
	.ast-separate-container .ast-article-post { clip-path: none; }
	.ss-notice__title { font-size: 1.45rem !important; }
}
