/* FDNA Competiciones – calendario público (tema oscuro federativo) */

/* Las fuentes se cargan desde fuentes.css */

.fdna-comp {
	--fdna-fondo: #0a1230;
	--fdna-superficie: #121c4a;
	--fdna-cabecera: #000e8f;      /* azul corporativo FDNA */
	--fdna-acento: #3a5bff;        /* botones */
	--fdna-acento-claro: #9db0ff;  /* flechas, detalles */
	--fdna-dorado: #f0c04a;        /* amarillo corporativo: fechas */
	--fdna-normativa: #198a47;     /* N  – verde */
	--fdna-lista: #9b35c6;         /* LS – violeta */
	--fdna-resultados: #d32f36;    /* R  – rojo */
	--fdna-texto: #eef1fa;
	--fdna-suave: #a3aecf;
	--fdna-borde: rgba(255, 255, 255, .1);
	--fdna-hover: rgba(58, 91, 255, .14);
	--fdna-fuente-titulos: "FDNA Titulos", "Bahnschrift", "Arial Black", sans-serif;
	--fdna-fuente-texto: "FDNA Texto", "Bahnschrift", "Segoe UI", Roboto, Arial, sans-serif;

	--fdna-fila: #101a46;          /* fondo de cada fila */
	--fdna-fila-hover: #182561;

	color-scheme: dark;
	padding: 0;
	background: none;
	color: var(--fdna-texto);
	font-family: var(--fdna-fuente-texto);
	font-size: 16px;
	line-height: 1.45;
}

/* Ancho: 80% de la pantalla en escritorio y tablet, aunque el tema use una columna más estrecha. */
body .fdna-comp {
	box-sizing: border-box;
	width: 80vw !important;
	max-width: 80vw !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-left: calc(50% - 40vw) !important;
	margin-right: calc(50% - 40vw) !important;
}
.fdna-comp *, .fdna-comp *::before, .fdna-comp *::after { box-sizing: border-box; }
.fdna-comp [hidden] { display: none !important; }

/* Selector de temporada (encima de Ámbito) y «Descargar PDF» (encima de Categorías), simétricos */
.fdna-comp .fdna-comp-selector-temporada {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--fdna-suave);
}
.fdna-comp .fdna-comp-selector-temporada select {
	width: auto;
	margin: 0;
	padding: 3px 8px;
	border: 1px solid var(--fdna-borde);
	border-radius: 4px;
	background: var(--fdna-superficie);
	color: var(--fdna-texto);
	font: 500 13px var(--fdna-fuente-texto);
}

.fdna-comp .fdna-comp-pdf {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 4px 10px;
	border: 1px solid var(--fdna-borde);
	border-radius: 4px;
	background: transparent;
	color: #f2eee3;
	font: 600 12px var(--fdna-fuente-texto);
	letter-spacing: .06em;
	text-transform: uppercase;
	cursor: pointer;
	transition: border-color .15s, color .15s;
}
.fdna-comp .fdna-comp-pdf:hover,
.fdna-comp .fdna-comp-pdf:focus-visible { border-color: var(--fdna-dorado); color: var(--fdna-dorado); }

/* Barra: [Ámbito]  CALENDARIO 2026/27  [Categorías] */
.fdna-comp .fdna-comp-barra {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
	margin-bottom: 20px;
}
.fdna-comp .fdna-comp-barra-izq,
.fdna-comp .fdna-comp-barra-der { display: flex; flex-direction: column; gap: 8px; }
.fdna-comp .fdna-comp-barra-izq { justify-self: start; align-items: flex-start; }
.fdna-comp .fdna-comp-barra-der { justify-self: end; align-items: flex-end; }
/* El título queda centrado en altura respecto a los botones de los lados (Temporada + Ámbito, PDF + Categorías) */
.fdna-comp .fdna-comp-titulo {
	margin: 0 !important;
	padding: 0; /* el texto queda a la altura de los botones; la rayita cuelga por debajo */
	position: relative;
	color: #fff;
	font-family: var(--fdna-fuente-titulos);
	font-size: clamp(1.6rem, 2.6vw, 2.4rem);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: .02em;
	text-align: center;
	text-transform: uppercase;
}
.fdna-comp .fdna-comp-titulo::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -10px;
	width: 56px;
	height: 3px;
	border-radius: 2px;
	background: var(--fdna-acento);
	transform: translateX(-50%);
}

/* Filtros desplegables */
.fdna-comp .fdna-comp-filtro { position: relative; }
.fdna-comp .fdna-comp-filtro summary {
	list-style: none;
	cursor: pointer;
	position: relative;
	max-width: 260px;
	padding: 8px 34px 8px 14px;
	border: 1px solid var(--fdna-borde);
	border-radius: 6px;
	background: var(--fdna-superficie);
	color: var(--fdna-texto);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: border-color .15s, background-color .15s;
}
.fdna-comp .fdna-comp-filtro summary:hover { border-color: var(--fdna-acento-claro); }
.fdna-comp .fdna-comp-filtro summary::-webkit-details-marker { display: none; }
.fdna-comp .fdna-comp-filtro summary::after {
	content: "▾";
	position: absolute;
	right: 13px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--fdna-acento-claro);
}
.fdna-comp .fdna-comp-filtro.activo summary {
	border-color: var(--fdna-acento);
	background: rgba(58, 91, 255, .22);
}
.fdna-comp .fdna-comp-filtro-panel {
	position: absolute;
	z-index: 50;
	top: calc(100% + 6px);
	left: 0;
	min-width: 200px;
	padding: 10px 14px;
	border: 1px solid var(--fdna-borde);
	border-radius: 8px;
	background: var(--fdna-superficie);
	box-shadow: 0 12px 30px rgba(0, 0, 0, .45);
}
.fdna-comp .fdna-comp-barra-der .fdna-comp-filtro-panel { left: auto; right: 0; }
.fdna-comp .fdna-comp-filtro-panel label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 5px 0;
	color: var(--fdna-texto);
	font-size: 15px;
	white-space: nowrap;
	cursor: pointer;
}
.fdna-comp .fdna-comp-filtro-panel input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: var(--fdna-acento);
}
.fdna-comp .fdna-comp-limpiar {
	margin-top: 8px;
	padding: 0;
	border: 0;
	background: none;
	color: #f2eee3; /* blanco roto */
	font: 600 13px var(--fdna-fuente-texto);
	text-decoration: none;
	cursor: pointer;
}
.fdna-comp .fdna-comp-limpiar:hover { color: var(--fdna-dorado); }

/* Tabla de escritorio */
.fdna-comp .fdna-comp-tabla {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 8px;
	overflow: hidden;
	background: transparent;
}
.fdna-comp .fdna-comp-tabla th {
	padding: 12px 14px;
	border: 0;
	background: var(--fdna-cabecera);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-align: left;
	text-transform: uppercase;
}
.fdna-comp .fdna-comp-tabla th abbr { border: 0; text-decoration: none; cursor: help; }
.fdna-comp .fdna-comp-tabla td {
	padding: 13px 14px;
	border: 0;
	border-bottom: 1px solid var(--fdna-borde);
	color: var(--fdna-texto) !important;
	vertical-align: middle;
}
/* Filas en azul oscuro, aunque el tema de la web pinte las tablas de blanco. */
.fdna-comp .fdna-comp-tabla tbody tr,
.fdna-comp .fdna-comp-tabla tbody tr:nth-child(odd),
.fdna-comp .fdna-comp-tabla tbody tr:nth-child(even),
.fdna-comp .fdna-comp-tabla tbody td {
	background: var(--fdna-fila) !important;
	background-color: var(--fdna-fila) !important;
}
.fdna-comp .fdna-comp-tabla tbody tr:hover td { transition-duration: .15s; }
.fdna-comp .fdna-comp-tabla tbody tr:hover,
.fdna-comp .fdna-comp-tabla tbody tr:hover td {
	background: var(--fdna-fila-hover) !important;
	background-color: var(--fdna-fila-hover) !important;
}
.fdna-comp .fdna-comp-col-fecha {
	white-space: nowrap;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}
.fdna-comp .fdna-comp-tabla td.fdna-comp-col-fecha { color: var(--fdna-dorado) !important; }
.fdna-comp .fdna-comp-fecha,
.fdna-comp .fdna-comp-hora { display: block; }
.fdna-comp .fdna-comp-tabla td.fdna-comp-col-fecha .fdna-comp-hora {
	margin-top: 2px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .04em;
	color: var(--fdna-suave);
}
.fdna-comp .fdna-comp-tabla .fdna-comp-col-doc { width: 54px; text-align: center; }
.fdna-comp .fdna-comp-nombre { font-weight: 600; color: #fff !important; }
/* Competiciones nacionales (RFEN): nombre en rojo */
.fdna-comp .fdna-comp-tabla tr.fdna-comp-rfen td.fdna-comp-nombre,
.fdna-comp .fdna-comp-ficha.fdna-comp-rfen .fdna-comp-nombre { color: #ff5c63 !important; }
.fdna-comp .fdna-comp-cats {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .06em;
}
.fdna-comp .fdna-comp-tabla td.fdna-comp-cats,
.fdna-comp .fdna-comp-tabla td.fdna-comp-sede { color: var(--fdna-suave) !important; }
.fdna-comp .fdna-comp-sede-piscina { margin-left: 4px; white-space: nowrap; }

.fdna-comp .fdna-comp-doc {
	display: inline-block;
	min-width: 38px;
	padding: 5px 8px;
	border-radius: 5px;
	background: var(--fdna-acento);
	color: #fff !important;
	font: 700 12px/1.2 var(--fdna-fuente-texto);
	letter-spacing: .05em;
	text-align: center;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: background-color .15s, transform .15s;
}
.fdna-comp .fdna-comp-doc--normativa { background: var(--fdna-normativa); }
.fdna-comp .fdna-comp-doc--lista { background: var(--fdna-lista); }
.fdna-comp .fdna-comp-doc--resultados { background: var(--fdna-resultados); }
.fdna-comp .fdna-comp-doc:hover,
.fdna-comp .fdna-comp-doc:focus-visible { filter: brightness(1.15); transform: translateY(-1px); }
.fdna-comp .fdna-comp-doc:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.fdna-comp .fdna-comp-doc-vacio { color: rgba(255, 255, 255, .22); }

.fdna-comp .fdna-comp-mensaje {
	margin: 0;
	padding: 28px 16px;
	color: var(--fdna-suave);
	text-align: center;
}

/* Fichas de móvil */
.fdna-comp .fdna-comp-fichas { display: none; border-top: 1px solid var(--fdna-borde); }
.fdna-comp .fdna-comp-ficha { margin: 0; border-bottom: 1px solid var(--fdna-borde); background: var(--fdna-fila) !important; }
.fdna-comp .fdna-comp-ficha summary {
	display: block;
	list-style: none;
	position: relative;
	padding: 13px 36px 13px 4px;
	color: var(--fdna-texto);
	cursor: pointer;
}
.fdna-comp .fdna-comp-ficha summary::-webkit-details-marker { display: none; }
.fdna-comp .fdna-comp-ficha summary::after {
	content: "▼";
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 11px;
	color: var(--fdna-dorado);
}
.fdna-comp .fdna-comp-ficha[open] summary::after { content: "▲"; }
.fdna-comp .fdna-comp-ficha[open] { background: var(--fdna-fila-hover) !important; }
.fdna-comp .fdna-comp-ficha-l1 { display: block; }
.fdna-comp .fdna-comp-ficha-fecha { font-weight: 700; white-space: nowrap; color: var(--fdna-dorado); }
.fdna-comp .fdna-comp-ficha-sep { margin: 0 7px; color: rgba(255, 255, 255, .25); }
.fdna-comp .fdna-comp-ficha-l2 {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	color: var(--fdna-suave);
}
.fdna-comp .fdna-comp-ficha-docs {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	padding: 2px 4px 16px;
}
.fdna-comp .fdna-comp-ficha-docs .fdna-comp-doc { flex: 0 1 96px; min-width: 84px; padding: 11px 14px; font-size: 14px; }
.fdna-comp .fdna-comp-sin-docs { font-size: 13px; color: var(--fdna-suave); }

@media (max-width: 1024px) {
	/* Tablet: nombre de la sede arriba y piscina debajo, en la misma celda. */
	.fdna-comp .fdna-comp-sede-nombre,
	.fdna-comp .fdna-comp-sede-piscina { display: block; }
	.fdna-comp .fdna-comp-sede-piscina { margin: 2px 0 0; font-size: 13px; }
}

@media (max-width: 767px) {
	/* Móvil: 100% del ancho de la pantalla. */
	body .fdna-comp {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
	}
	.fdna-comp { padding: 0 12px; font-size: 15px; }
	.fdna-comp .fdna-comp-tabla { display: none; }
	.fdna-comp .fdna-comp-fichas { display: block; }
	.fdna-comp .fdna-comp-barra { grid-template-columns: 1fr 1fr; gap: 12px; }
	.fdna-comp .fdna-comp-titulo { grid-column: 1 / -1; order: -1; margin-bottom: 14px !important; }
	.fdna-comp .fdna-comp-filtro summary { max-width: 44vw; font-size: 13px; }
}

/* Botones de documentos: sin subrayado en ningún estado, aunque el tema lo imponga. */
.fdna-comp a.fdna-comp-doc,
.fdna-comp a.fdna-comp-doc:link,
.fdna-comp a.fdna-comp-doc:visited,
.fdna-comp a.fdna-comp-doc:hover,
.fdna-comp a.fdna-comp-doc:focus,
.fdna-comp a.fdna-comp-doc:active {
	text-decoration: none !important;
	text-decoration-line: none !important;
	border-bottom: 0 !important;
	background-image: none !important;
	color: #fff !important;
}

/* Competición resaltada al llegar desde la cuenta atrás o el calendario: aparece rápido y se desvanece despacio */
.fdna-comp .fdna-comp-tabla tbody td { transition: background-color 1.6s ease, box-shadow 1.6s ease; }
.fdna-comp .fdna-comp-tabla tbody td:first-child { box-shadow: inset 0 0 0 transparent; }
.fdna-comp .fdna-comp-tabla tr.fdna-comp-destacada td { background-color: #4a3d1e !important; transition-duration: .25s; }
.fdna-comp .fdna-comp-tabla tr.fdna-comp-destacada td:first-child { box-shadow: inset 5px 0 0 var(--fdna-dorado); }
.fdna-comp .fdna-comp-ficha { transition: background-color 1.6s ease, box-shadow 1.6s ease; }
.fdna-comp .fdna-comp-ficha.fdna-comp-destacada { background-color: #4a3d1e !important; box-shadow: inset 4px 0 0 var(--fdna-dorado); transition-duration: .25s; }
.fdna-comp .fdna-comp-tabla tr { scroll-margin-top: 120px; }
