/* Zona de familias: formularios, Mi zona y fotos de los equipos. */

/* ----------------------------------------------------------------- páginas */

.hec-zona__cab .hec-antetitulo { color: var(--dorado); }
.hec-zona__sub { max-width: 640px; margin: 10px 0 0; color: rgba(255, 255, 255, .78); font-size: 18px; }

.hec-zona { max-width: 920px; }
.hec-zona--acceso { display: grid; grid-template-columns: 1.1fr 1fr; gap: 24px; align-items: start; }

.hec-tarjeta-zona {
	padding: 28px;
	border-radius: var(--radio);
	background: var(--blanco);
	box-shadow: 0 1px 0 rgba(0, 0, 0, .04), 0 10px 30px rgba(6, 18, 26, .06);
}
.hec-tarjeta-zona + .hec-tarjeta-zona { margin-top: 24px; }
.hec-zona--acceso .hec-tarjeta-zona + .hec-tarjeta-zona { margin-top: 0; }
.hec-tarjeta-zona h2 { font-size: 26px; margin-bottom: 14px; }
.hec-tarjeta-zona--oscura { background: var(--oscuro); color: rgba(255, 255, 255, .85); }
.hec-tarjeta-zona--oscura h2 { color: var(--blanco); }
.hec-tarjeta-zona--ok { border-top: 6px solid #1e8e3e; }
.hec-tarjeta-zona a { color: var(--dorado-osc); }
.hec-tarjeta-zona--oscura a.hec-boton,
.hec-tarjeta-zona a.hec-boton { color: var(--oscuro); }

.hec-zona__nav {
	display: flex; flex-wrap: wrap; gap: 8px; align-items: center;
	margin: 0 0 24px; padding: 10px; border-radius: 999px; background: var(--blanco);
	position: sticky; top: 84px; z-index: 5; box-shadow: 0 6px 20px rgba(6, 18, 26, .08);
}
.hec-zona__nav a {
	padding: 9px 16px; border-radius: 999px; text-decoration: none;
	font: 700 14px/1 var(--titulos); text-transform: uppercase; letter-spacing: .03em; color: var(--texto);
}
.hec-zona__nav a:hover { background: var(--claro); }
.hec-zona__nav .hec-zona__salir { margin-left: auto; color: var(--gris); }
.hec-tarjeta-zona { scroll-margin-top: 150px; }

/* ----------------------------------------------------------------- avisos */

.hec-aviso { margin: 0 0 14px; padding: 12px 16px; border-radius: 10px; font-weight: 600; }
.hec-aviso--error { background: #fce8e6; color: #a50e0e; }
.hec-aviso--ok { background: #e6f4ea; color: #0d652d; }

/* ------------------------------------------------------------- formularios */

.hec-form fieldset { margin: 0 0 22px; padding: 22px; border: 1px solid var(--gris-claro); border-radius: var(--radio); background: var(--blanco); }
.hec-tarjeta-zona .hec-form fieldset { padding: 0; border: 0; }
.hec-form legend { padding: 0 8px; margin-left: -8px; font: 800 15px/1 var(--titulos); text-transform: uppercase; letter-spacing: .05em; color: var(--dorado-osc); }

.hec-rejilla-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; }
.hec-campo { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.hec-campo--ancho { grid-column: 1 / -1; }
.hec-campo label { font: 700 14px/1.2 var(--titulos); }
.hec-campo small, .hec-ayuda { color: var(--gris); font-size: 14px; }
.hec-ayuda { margin: 0 0 14px; }

.hec-form input[type="text"],
.hec-form input[type="email"],
.hec-form input[type="tel"],
.hec-form input[type="date"],
.hec-form input[type="time"],
.hec-form input[type="number"],
.hec-form textarea,
.hec-form input[type="password"],
.hec-form input[type="url"],
.hec-form input[type="file"],
.hec-form select,
.hec-form textarea,
.hec-zona #loginform input[type="text"],
.hec-zona #loginform input[type="password"] {
	width: 100%; padding: 12px 14px; border: 1.5px solid #c9ccd1; border-radius: 10px;
	background: var(--blanco); color: var(--texto); font: 400 16px/1.3 var(--cuerpo);
}
.hec-form input:focus, .hec-form select:focus, .hec-zona #loginform input:focus { border-color: var(--dorado); outline: none; box-shadow: 0 0 0 3px rgba(247, 174, 17, .3); }
.hec-form input:disabled { background: var(--claro); color: var(--gris); }
.hec-form .hec-boton, .hec-zona #loginform .button { border: 0; cursor: pointer; font-size: 15px; }

.hec-zona #loginform p { margin: 0 0 14px; }
.hec-zona #loginform label { display: block; margin-bottom: 6px; font: 700 14px/1.2 var(--titulos); }
.hec-zona #loginform .login-remember label { display: inline-flex; gap: 8px; align-items: center; font-weight: 500; }
.hec-zona #loginform .button {
	padding: 15px 28px; border-radius: 999px; background: var(--dorado); color: var(--oscuro);
	font: 700 15px/1 var(--titulos); text-transform: uppercase; letter-spacing: .03em;
}

.hec-casilla { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; }
.hec-casilla input { flex: 0 0 auto; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--dorado-osc); }
.hec-casilla--legal { margin: 6px 0 18px; padding: 14px 16px; border-radius: 10px; background: #fff8e6; font-size: 15px; }
.hec-casilla--legal a { color: var(--dorado-osc); }

.hec-trampa { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* alertas */
.hec-alertas__club { margin: 0 0 8px; font: 800 14px/1 var(--titulos); letter-spacing: .05em; color: var(--texto); }
.hec-casillas { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 8px; margin-bottom: 14px; }
.hec-casillas .hec-casilla { padding: 10px 12px; border: 1.5px solid var(--gris-claro); border-radius: 10px; font-size: 15px; line-height: 1.25; }
.hec-casillas .hec-casilla:has(input:checked) { border-color: var(--dorado); background: #fff8e6; }
.hec-alertas__otro { border-top: 1px solid var(--gris-claro); }
.hec-alertas__otro summary { padding: 12px 2px; cursor: pointer; font: 700 15px/1.2 var(--titulos); }
.hec-alertas__otro summary em { margin-left: 6px; padding: 2px 8px; border-radius: 999px; background: var(--dorado); color: var(--oscuro); font-style: normal; font-size: 12px; }
.hec-alertas__otro .hec-casillas { padding-bottom: 8px; }

/* subida */
.hec-previas { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.hec-previas img { width: 88px; height: 88px; object-fit: cover; border-radius: 8px; }
.hec-previas__mal { padding: 8px; border-radius: 8px; background: #fce8e6; color: #a50e0e; font-size: 13px; }
.hec-subida__estado { margin-left: 10px; color: var(--gris); font-size: 15px; }

/* -------------------------------------------------------------------- fotos */

.hec-fotos { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(46%, 240px), 1fr)); gap: 12px; }
.hec-foto { margin: 0; min-width: 0; }
.hec-foto__img { display: block; overflow: hidden; border-radius: 10px; background: rgba(127, 127, 127, .15); aspect-ratio: 4 / 3; }
.hec-foto__img img, .hec-fotos--mias .hec-foto > img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.hec-fotos--mias .hec-foto > img { aspect-ratio: 4 / 3; border-radius: 10px; }
.hec-foto__img:hover img { transform: scale(1.03); }
.hec-foto figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 10px; padding: 6px 2px 0; font-size: 13px; opacity: .8; }
.hec-foto.is-oculta img { opacity: .35; }

.hec-foto__retirar summary { cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }
.hec-foto__retirar[open] { flex-basis: 100%; }
.hec-foto__retirar form { display: grid; gap: 6px; margin-top: 6px; }
.hec-foto__retirar textarea { width: 100%; padding: 6px 8px; border-radius: 6px; border: 1px solid #aaa; font: inherit; color: #14181c; }
.hec-foto__retirar button, .hec-foto__borrar {
	justify-self: start; padding: 6px 12px; border: 0; border-radius: 999px; cursor: pointer;
	background: #c5221f; color: #fff; font: 700 12px/1 system-ui, sans-serif; text-transform: uppercase;
}

.hec-fotos-vacio { padding: 18px; border: 2px dashed rgba(127, 127, 127, .4); border-radius: 10px; opacity: .8; }
.hec-fotos-pag { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 18px; }
.hec-fotos-pag a, .hec-fotos-pag span { min-width: 38px; padding: 8px 10px; border-radius: 8px; text-align: center; text-decoration: none; border: 1px solid rgba(127, 127, 127, .4); }
.hec-fotos-pag span { background: var(--dorado); border-color: var(--dorado); color: var(--oscuro); font-weight: 700; }
.hec-fotos-mas { margin-top: 14px; }

/* en las páginas de partidos (fondo negro) */
.hec-partidos .hec-foto figcaption, .hec-partidos .hec-fotos-vacio { color: #d6d6d6; }
.hec-partidos .hec-fotos-mas a { color: var(--hec-amarillo); font-weight: 700; text-transform: uppercase; text-decoration: none; }

/* galería con filtro */
.hec-galeria { margin-top: 2em; }
.hec-galeria__filtro { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 18px; }
.hec-galeria__filtro label { font: 700 14px/1 var(--titulos); }
.hec-galeria__filtro select { padding: 10px 12px; border-radius: 10px; border: 1.5px solid #c9ccd1; font: inherit; }
.hec-contenido .hec-galeria__subir, .hec-galeria__subir {
	margin-left: auto; padding: 11px 18px; border-radius: 999px; background: var(--dorado); color: var(--oscuro);
	font: 700 14px/1 var(--titulos); text-transform: uppercase; text-decoration: none;
}

/* visor */
.hec-visor { max-width: min(96vw, 1400px); max-height: 94vh; padding: 0; border: 0; border-radius: 10px; background: #000; overflow: visible; }
.hec-visor::backdrop { background: rgba(0, 0, 0, .85); }
.hec-visor img { max-width: 96vw; max-height: 94vh; object-fit: contain; border-radius: 10px; }
.hec-visor__cerrar {
	position: absolute; top: -14px; right: -14px; width: 40px; height: 40px; border: 0; border-radius: 50%;
	background: var(--dorado); color: var(--oscuro); font-size: 26px; line-height: 1; cursor: pointer;
}

@media (max-width: 760px) {
	.hec-zona--acceso, .hec-rejilla-form { grid-template-columns: 1fr; }
	.hec-tarjeta-zona { padding: 20px; }
	.hec-zona__nav { border-radius: 14px; top: 74px; }
	.hec-zona__nav a { padding: 8px 10px; font-size: 13px; }
	.hec-galeria__subir { margin-left: 0; }
}

/* ======================================================= v1.1: página personal */

.hec-rejilla-form--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hec-vinculo { display: contents; }
.hec-vinculos .hec-vinculo {
	display: grid; grid-template-columns: 1fr 1fr auto; gap: 12px 16px; align-items: end;
	padding: 14px 0; border-bottom: 1px solid var(--gris-claro);
}
.hec-vinculos .hec-vinculo:first-child { padding-top: 0; }
.hec-campo--jugador input[data-hec-otro] { margin-top: 8px; }
.hec-campo--jugador input[hidden] { display: none; }
.hec-vinculo__quitar {
	padding: 10px 14px; border: 1.5px solid var(--gris-claro); border-radius: 10px; background: var(--blanco);
	color: var(--gris); font: 600 13px/1 var(--titulos); cursor: pointer;
}
.hec-vinculo__quitar:hover { border-color: #c5221f; color: #c5221f; }

.hec-boton--secundario { background: var(--oscuro) !important; color: var(--blanco) !important; }
.hec-boton--peligro { background: #c5221f !important; color: var(--blanco) !important; }
.hec-aviso--info { background: #fff8e6; color: #6b4a00; }
.hec-en-linea { display: inline; }
.hec-enlace-boton { padding: 0; border: 0; background: none; color: var(--dorado-osc); font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; }
.hec-form--linea { display: flex; flex-wrap: wrap; gap: 10px; }
.hec-form--linea input { flex: 1 1 240px; }
.hec-tarjeta-zona h3 { margin: 28px 0 12px; font-size: 20px; scroll-margin-top: 150px; }
.hec-borrar { padding: 16px; border: 1.5px dashed #f2b8b5; border-radius: 12px; background: #fff7f6; }

/* barra de secciones de la página personal, a todo lo ancho */
.hec-zona__nav--usuario { position: sticky; top: 74px; z-index: 6; margin: 0; padding: 0; border-radius: 0; background: var(--oscuro); box-shadow: 0 1px 0 rgba(247, 174, 17, .3); }
.hec-zona__nav--usuario .hec-envoltura { display: flex; gap: 4px; overflow-x: auto; padding-top: 8px; padding-bottom: 8px; scrollbar-width: none; }
.hec-zona__nav--usuario a { flex: 0 0 auto; color: rgba(255, 255, 255, .85); }
.hec-zona__nav--usuario a:hover { background: rgba(255, 255, 255, .08); color: var(--dorado); }
.hec-zona__nav--usuario .hec-zona__salir { margin-left: auto; color: rgba(255, 255, 255, .55); }

/* bloque oscuro con partidos y clasificaciones */
.hec-zona-oscura {
	background:
		linear-gradient(115deg, transparent 72%, rgba(250, 192, 18, .08) 72.2%, transparent 76%),
		#0b0b0b;
}
.hec-zona-oscura .hec-partidos { padding-top: 40px; padding-bottom: 48px; }
.hec-zona-oscura .hec-seccion:first-child { margin-top: 0; }
.hec-zona-oscura .hec-seccion { scroll-margin-top: 140px; }
.hec-zona-oscura .hec-vacio a { color: var(--hec-amarillo); }
.hec-mi-equipo + .hec-mi-equipo { margin-top: 26px; }
.hec-mi-equipo__cab { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; margin-bottom: 10px; }
.hec-mi-equipo__cab h3 { margin: 0; font-family: var(--hec-titulos); font-weight: 400; font-size: 30px; line-height: 1; letter-spacing: .02em; text-transform: uppercase; color: var(--hec-amarillo); }
.hec-mi-equipo__cab span { color: var(--hec-gris); font-size: 15px; font-weight: 600; text-transform: uppercase; }
.hec-mi-equipo__cab a { margin-left: auto; color: var(--hec-amarillo); font-weight: 700; text-transform: uppercase; text-decoration: none; font-size: 15px; }
.hec-mi-tabla + .hec-mi-tabla { margin-top: 18px; }

/* subir: fotos y vídeos lado a lado */
.hec-subir { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.hec-subir__col h3 { margin-top: 0; }
.hec-subir__col .hec-campo + .hec-campo { margin-top: 14px; }

/* contador "3 de 5 hoy" */
.hec-contador {
	display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0 0 16px;
	padding: 12px 14px; border-radius: 12px; background: #fff8e6; color: #5b4300; font-size: 15px;
}
.hec-contador__puntos { display: inline-flex; gap: 5px; }
.hec-contador__puntos i { width: 14px; height: 14px; border-radius: 50%; border: 2px solid var(--dorado-osc); }
.hec-contador__puntos i.is-usada { background: var(--dorado-osc); }
.hec-contador.is-agotado { background: #fce8e6; color: #a50e0e; }
.hec-contador.is-agotado .hec-contador__puntos i { border-color: #c5221f; background: #c5221f; }

/* vídeos en las rejillas */
.hec-foto--video .hec-yt { margin: 0; border-radius: 10px; aspect-ratio: 4 / 3; }
.hec-foto--video .hec-yt__aviso { padding: 10px; font-size: 12px; gap: 6px; }
.hec-foto--video .hec-yt__boton svg { width: 52px; height: 37px; }

@media (max-width: 860px) {
	.hec-subir { grid-template-columns: 1fr; }
	.hec-rejilla-form--3 { grid-template-columns: 1fr; }
	.hec-vinculos .hec-vinculo { grid-template-columns: 1fr; }
	.hec-vinculo__quitar { justify-self: start; }
	.hec-zona__nav--usuario { top: 66px; }
}

/* ===================================================== v1.2: registro con varios hijos/as */

.hec-vinculos--registro .hec-vinculo { grid-template-columns: 1fr 1.25fr 1.25fr auto; }
@media (max-width: 760px) {
	.hec-vinculos .hec-vinculo, .hec-vinculos--registro .hec-vinculo { grid-template-columns: 1fr; }
}

/* ------------------------------------------------------------ tablón */

.hec-tablon__equipos { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.hec-tablon__equipos a { padding: 7px 14px; border-radius: 999px; background: var(--claro); text-decoration: none; font: 700 14px/1 var(--titulos); color: var(--oscuro); }
.hec-tablon__equipo { padding-top: 18px; border-top: 3px solid var(--dorado); scroll-margin-top: 150px; }
.hec-tablon__equipo + .hec-tablon__equipo { margin-top: 30px; }
.hec-tablon__equipo > h3 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; font-size: 22px; }
.hec-tablon__equipo > h3 small { font: 500 14px var(--cuerpo); color: var(--gris); }
.hec-rol { padding: 3px 10px; border-radius: 999px; background: var(--oscuro); color: var(--dorado); font: 700 12px/1.4 var(--titulos); text-transform: uppercase; letter-spacing: .05em; }

.hec-tablon__avisos { margin: 6px 0 18px; }
.hec-aviso-eq { margin: 0 0 10px; padding: 14px 16px; border-radius: 10px; background: #fff8e6; border-left: 4px solid var(--dorado); }
.hec-aviso-eq--entrenamiento { background: #e9f4fb; border-left-color: var(--azul-vivo); }
.hec-aviso-eq--urgente { background: #fce8e6; border-left-color: #c5221f; }
.hec-aviso-eq header { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; color: var(--gris); }
.hec-aviso-eq header em { font: 800 12px/1.4 var(--titulos); font-style: normal; text-transform: uppercase; letter-spacing: .06em; color: var(--texto); }
.hec-aviso-eq h4 { margin: 4px 0; font-size: 18px; }
.hec-aviso-eq p { margin: 0 0 6px; }
.hec-aviso-eq footer { font-size: 13px; color: var(--gris); }

.hec-tablon__partido { margin: 0 0 10px; border: 1px solid var(--gris-claro); border-radius: 12px; overflow: hidden; }
.hec-tablon__partido[open] { box-shadow: 0 6px 20px rgba(6, 18, 26, .08); }
.hec-tablon__partido > summary {
	display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 14px;
	padding: 14px 16px; cursor: pointer; list-style: none; background: var(--claro);
}
.hec-tablon__partido > summary::-webkit-details-marker { display: none; }
.hec-conv__partido { display: flex; flex-direction: column; gap: 2px; }
.hec-conv__partido b { font: 700 17px/1.2 var(--titulos); }
.hec-conv__partido span { font-size: 14px; color: var(--gris); }
.hec-conv__res { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: 14px; }
.hec-conv__res em { padding: 3px 9px; border-radius: 999px; font: 700 12px/1.4 var(--titulos); font-style: normal; text-transform: uppercase; letter-spacing: .04em; }
.hec-chip-casa { background: var(--dorado); color: var(--oscuro); }
.hec-chip-fuera { background: var(--oscuro); color: var(--blanco); }
.hec-chip-conv { background: #e6f4ea; color: #0d652d; }
.hec-chip-coche { background: #e9f4fb; color: #0b4f7a; }

.hec-tablon__cuerpo { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; padding: 16px; }
.hec-tablon__bloque h4 { margin: 0 0 10px; font: 800 13px/1 var(--titulos); text-transform: uppercase; letter-spacing: .08em; color: var(--dorado-osc); }
.hec-tablon__enlaces { grid-column: 1 / -1; margin: 12px 0 0; padding-top: 12px; border-top: 1px solid var(--gris-claro); font-size: 14px; }
@media (max-width: 860px) { .hec-tablon__cuerpo { grid-template-columns: 1fr; gap: 20px; } }

.hec-vacio-claro { margin: 0 0 10px; color: var(--gris); font-size: 15px; }
.hec-conv__quedada, .hec-conv__notas { margin: 0 0 6px; }
.hec-conv__notas { font-size: 15px; color: #3a4148; }
.hec-conv__resumen { margin: 8px 0; font-size: 14px; }
.hec-ok { color: #1e8e3e; }
.hec-ko { color: #c5221f; }
.hec-conv__jugadores { list-style: none; margin: 0 0 12px; padding: 0; }
.hec-conv__jugadores li { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 7px 0; border-bottom: 1px solid #eee; }
.hec-conv__jugadores li.is-mio { background: #fff8e6; margin: 0 -8px; padding: 8px; border-radius: 8px; font-weight: 600; }
.hec-conv__jugadores li > span:first-child { flex: 1 1 auto; }
.hec-conv__resp { display: inline-flex; gap: 6px; margin: 0; }
/* Estado (solo lectura): texto con icono, sin forma de botón. */
.hec-estado { font: 700 14px/1.4 var(--titulos); white-space: nowrap; }
.hec-estado--si { color: #1e8e3e; }
.hec-estado--no { color: #c5221f; }
.hec-estado--nada { color: #9a6b00; font-style: italic; font-weight: 600; }
.hec-estado--nada::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #f7ae11; vertical-align: 1px; }
/* Si la fila tiene selector y ya hay respuesta, el selector ya la muestra. */
.hec-conv__jugadores li:has(.hec-resp__op.is-activo) .hec-estado { display: none; }

/* Selector de respuesta: dos opciones unidas tipo interruptor. */
.hec-resp { display: inline-flex; align-items: center; border: 1.5px solid #c9ccd1; border-radius: 10px; overflow: hidden; background: var(--blanco); }
.hec-resp__q { padding: 0 10px; font: 600 13px/1 var(--cuerpo); color: var(--gris); }
.hec-resp__op { min-width: 46px; padding: 7px 14px; border: 0; border-left: 1.5px solid #c9ccd1; background: var(--blanco); color: var(--texto); font: 700 14px/1 var(--titulos); cursor: pointer; transition: background .15s, color .15s; }
.hec-resp__op:hover { background: var(--claro); }
.hec-resp__op--si.is-activo { background: #1e8e3e; color: #fff; }
.hec-resp__op--no.is-activo { background: #c5221f; color: #fff; }
.hec-resp__op--si.is-activo::before { content: "✓ "; }
.hec-resp__op--no.is-activo::before { content: "✕ "; }
.hec-resp__op:focus-visible { outline: 3px solid var(--dorado); outline-offset: -3px; }
.hec-sin-cuenta { font-size: 12px; color: var(--gris); }

.hec-conv__editar { margin-top: 10px; }
.hec-conv__editar > summary { display: inline-block; cursor: pointer; font-weight: 700; color: var(--dorado-osc); }
.hec-conv__editar[open] > summary { margin-bottom: 10px; }
.hec-conv__lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 6px; margin: 0 0 14px; }
.hec-conv__lista .hec-casilla { margin: 0; padding: 8px 10px; border: 1px solid var(--gris-claro); border-radius: 8px; }
.hec-conv__lista .hec-casilla:has(input:checked) { border-color: var(--dorado); background: #fff8e6; }

.hec-boton--mini { padding: 7px 12px !important; font-size: 13px !important; }
.hec-boton--si { background: #1e8e3e !important; color: #fff !important; }
.hec-boton--wa { background: #25d366 !important; color: #06121a !important; }

.hec-coche__lista { list-style: none; margin: 0 0 8px; padding: 0; }
.hec-coche__ad { display: grid; grid-template-columns: auto 1fr; gap: 6px 12px; align-items: start; padding: 10px 0; border-bottom: 1px solid #eee; }
.hec-coche__tipo { padding: 3px 9px; border-radius: 6px; font: 700 12px/1.5 var(--titulos); text-transform: uppercase; white-space: nowrap; }
.hec-coche__ad--ofrezco .hec-coche__tipo { background: #e6f4ea; color: #0d652d; }
.hec-coche__ad--busco .hec-coche__tipo { background: #e9f4fb; color: #0b4f7a; }
.hec-coche__txt small { color: var(--gris); }
.hec-coche__acciones { grid-column: 2; display: flex; flex-wrap: wrap; gap: 6px; }
.hec-coche__acciones:empty { display: none; }
.hec-coche__acciones form { margin: 0; }
.hec-coche__campos { display: grid; grid-template-columns: 1.2fr .6fr 1.2fr .8fr; gap: 10px 12px; }
.hec-coche__campos .hec-campo--ancho { grid-column: 1 / -1; }
@media (max-width: 760px) { .hec-coche__campos { grid-template-columns: 1fr 1fr; } }

.hec-aviso-eqs { border: 0; padding: 0; margin: 0 0 10px; }

/* ------------------------------------------------------------ calendario */

.hec-calendario__botones { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 16px; }
.hec-copiar__fila { display: flex; gap: 8px; }
.hec-copiar__fila input { flex: 1 1 auto; min-width: 0; padding: 10px 12px; border: 1px solid var(--gris-claro); border-radius: 8px; font: 13px ui-monospace, monospace; }

.hec-casilla--destacada { margin-top: 14px; padding: 12px 14px; border-radius: 10px; background: #fff8e6; }

/* ------------------------------------------------------------ entrenamientos */

.hec-entrenos { margin: 0 0 18px; padding: 16px; border-radius: 12px; background: #f7f8f9; border: 1px solid var(--gris-claro); }
.hec-entrenos h4 { margin: 0 0 10px; font: 800 13px/1 var(--titulos); text-transform: uppercase; letter-spacing: .08em; color: var(--dorado-osc); }
.hec-entrenos__semana { list-style: none; margin: 0 0 8px; padding: 0; }
.hec-entrenos__semana li { display: grid; grid-template-columns: 110px 110px 1fr auto; gap: 4px 12px; align-items: baseline; padding: 8px 0; border-bottom: 1px solid #e6e8ea; }
.hec-entrenos__lugar { color: var(--gris); font-size: 15px; }
.hec-entrenos__cal { font-size: 14px; font-weight: 700; color: var(--dorado-osc); white-space: nowrap; }
@media (max-width: 760px) { .hec-entrenos__semana li { grid-template-columns: 100px 1fr; } .hec-entrenos__lugar, .hec-entrenos__cal { grid-column: 1 / -1; } }
.hec-entrenos__avisos { list-style: none; margin: 8px 0; padding: 0; }
.hec-entrenos__avisos li { margin: 0 0 6px; padding: 8px 12px; border-radius: 8px; font-size: 15px; }
.hec-entrenos__avisos li em { font: 800 12px/1 var(--titulos); font-style: normal; text-transform: uppercase; letter-spacing: .05em; margin-right: 6px; }
.hec-entrenos__avisos .is-cancelado { background: #fce8e6; color: #8a1c14; }
.hec-entrenos__avisos .is-extra { background: #e6f4ea; color: #0d652d; }
.hec-entrenos__avisos a { color: inherit; font-weight: 700; }
.hec-fila-entreno { display: grid; grid-template-columns: 1fr .8fr .8fr 2fr auto; gap: 10px 12px; align-items: end; padding: 10px 0; border-bottom: 1px solid var(--gris-claro); }
.hec-fila-entreno--cancelado { grid-template-columns: 1fr 2.4fr auto; }
.hec-fila-entreno--puntual .hec-campo--lugar input + input { margin-top: 6px; }
@media (max-width: 760px) { .hec-fila-entreno, .hec-fila-entreno--cancelado { grid-template-columns: 1fr 1fr; } .hec-fila-entreno .hec-campo--lugar { grid-column: 1 / -1; } }
.hec-entrenos__form fieldset { margin: 0 0 14px; }

/* ------------------------------------------------------------ perfil (registro) */

.hec-perfiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0 0 12px; }
.hec-perfil { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border: 1.5px solid var(--gris-claro); border-radius: 10px; cursor: pointer; }
.hec-perfil:has(input:checked) { border-color: var(--dorado); background: #fff8e6; }
.hec-perfil input { margin-top: 4px; }
.hec-perfil span { display: flex; flex-direction: column; gap: 2px; }
.hec-perfil small { font-size: 13px; color: var(--gris); }
.hec-perfil-equipos { margin: 0 0 12px; }

/* ------------------------------------------------------------ errores de formulario */

.hec-errores { margin: 0 0 20px; padding: 14px 18px; border-radius: 10px; background: #fce8e6; border-left: 5px solid #c5221f; color: #8a1c14; scroll-margin-top: 120px; }
.hec-errores ul { margin: 6px 0 0; padding-left: 20px; }
.hec-errores li { margin: 2px 0; }
.hec-campo.is-error input, .hec-campo.is-error select, .hec-campo.is-error textarea { border-color: #c5221f !important; background: #fff6f5; box-shadow: 0 0 0 3px rgba(197, 34, 31, .15); }
.hec-campo.is-error label { color: #c5221f; }
.hec-casilla.is-error, [data-hec-vinculos].is-error, [data-hec-perfil-equipos].is-error { outline: 2px solid #c5221f; outline-offset: 4px; border-radius: 8px; }
.hec-campo__error { margin: 6px 0 0; color: #c5221f; font-size: 14px; font-weight: 600; }

/* ------------------------------------------------------------ convocatorias (Mi zona) */

.hec-convs__item { display: grid; grid-template-columns: 64px 1fr; gap: 16px; padding: 16px 0; border-top: 1px solid var(--gris-claro); }
.hec-convs__item.is-mia .hec-convs__fecha { background: var(--dorado); color: var(--oscuro); }
.hec-convs__fecha { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 64px; border-radius: 12px; background: var(--oscuro); color: var(--blanco); }
.hec-convs__fecha b { font: 400 32px/1 var(--rotulo); }
.hec-convs__fecha span { font: 700 12px/1 var(--titulos); text-transform: uppercase; letter-spacing: .06em; }
.hec-convs__equipo { margin: 0; font: 800 12px/1.3 var(--titulos); text-transform: uppercase; letter-spacing: .08em; color: var(--dorado-osc); }
.hec-convs h3 { margin: 2px 0 2px; font-size: 19px; }
.hec-convs__cuando { margin: 0 0 6px; color: var(--gris); font-size: 15px; }
.hec-convs__enlaces { margin: 6px 0 0; font-size: 14px; }
.hec-convs__enlaces a { color: var(--dorado-osc); font-weight: 700; }
.hec-nav__num { display: inline-block; min-width: 20px; margin-left: 4px; padding: 1px 6px; border-radius: 999px; background: #c5221f; color: #fff; font: 700 12px/1.4 var(--titulos); font-style: normal; text-align: center; }
@media (max-width: 760px) { .hec-perfiles { grid-template-columns: 1fr 1fr; } }
