/* Gestión (txedep/modulos/gestion.py). Solo variables de :root de txedep.css; los colores del club, de /gestion/colores.css. */

/* lo que no cabe a lo ancho se desliza dentro, sin mover la página */
.ges-desliza { overflow-x: auto; min-width: 0; }
.ges-desliza .tabla { min-width: 520px; }

.ges-pildora { display: inline-flex; align-items: center; height: 22px; padding: 0 var(--e-2); border-radius: var(--r-control); background-color: var(--bandeja-hover); color: var(--texto-2); font-size: var(--t-12); font-weight: var(--p-rotulo); white-space: nowrap; vertical-align: middle; }
.ges-pildora--ok { background-color: var(--ok-fondo); color: var(--ok-texto); }

/* elegir una entre varias (temporadas) o marcar varias (equipos, jugadores) */
.ges-opciones { display: grid; gap: var(--e-1); }
.ges-opcion { display: flex; align-items: center; gap: var(--e-3); min-height: 56px; padding: var(--e-2) var(--e-3); border-radius: var(--r-campo); cursor: pointer; transition: background-color var(--dur) var(--curva); }
.ges-opcion:hover { background-color: var(--bandeja); }
.ges-opcion input { width: 18px; height: 18px; margin: 0; accent-color: var(--accion); flex: none; }
.ges-opcion__texto { display: grid; min-width: 0; flex: 1; }
.ges-opcion__texto .nombre { font-weight: var(--p-rotulo); }
.ges-opcion__texto .secundario { font-size: var(--t-13); }

.ges-plegable > summary { list-style: none; }
.ges-plegable > summary::-webkit-details-marker { display: none; }
.ges-plegable[open] { flex-basis: 100%; }

/* contacto */
.ges-consulta { display: grid !important; gap: var(--e-2); padding: var(--e-3) 0 !important; }
.ges-consulta__cabeza { display: flex; flex-wrap: wrap; align-items: center; gap: var(--e-1) var(--e-2); }
.ges-respuesta { display: grid; gap: 2px; padding: var(--e-2) var(--e-3); border-radius: var(--r-campo); background-color: var(--bandeja); }

/* configuración */
.ges-colores { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--e-4); }
.ges-colores .campo { width: 140px; }
.ges-colores input[type="color"] { padding: var(--e-1) !important; cursor: pointer; }
.ges-muestras { display: inline-flex; border-radius: var(--r-campo); overflow: hidden; box-shadow: 0 0 0 1px var(--borde); height: var(--alto-campo); }
.ges-muestra { width: 56px; background-color: var(--bandeja); }
.ges-muestra--1 { background-color: var(--club-1, var(--bandeja)); }
.ges-muestra--2 { background-color: var(--club-2, var(--bandeja-fuerte)); }

/* escudo */
.ges-escudo { grid-template-columns: auto minmax(0, 1fr); gap: var(--e-5); align-items: start; }
.ges-escudo .zona-peligro { grid-column: 1 / -1; }
.ges-escudo__vista { display: flex; align-items: flex-end; gap: var(--e-4); padding: var(--e-4); border-radius: var(--r-campo); background-color: var(--bandeja); }
.ges-escudo__vista img { display: block; object-fit: contain; }

/* notas y novedades */
.ges-notas, .ges-novedades { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--e-3); }
.ges-nota .acciones-linea { margin-top: 0; flex-wrap: wrap; }
/* la confirmación de borrar se abre bajo la tarjeta, dentro de la pantalla */
.ges-notas > li, .ges-novedades > li { position: relative; }
.ges-notas .confirma, .ges-novedades .confirma { position: static; }
.ges-notas .confirma__caja, .ges-novedades .confirma__caja { left: var(--e-4); right: auto; top: calc(100% - var(--e-3)); }
.ges-nota--vence { box-shadow: 0 0 0 1.5px var(--aviso-texto); }
.ges-nota--vence .tarjeta__cabecera .secundario { color: var(--aviso-texto); font-weight: var(--p-rotulo); }
.ges-nota--hecha > .texto-largo { color: var(--texto-2); text-decoration: line-through; }
.ges-novedades .acciones-linea { flex-wrap: wrap; }

/* importar: los pasos del asistente */
.ges-pasos { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--e-2) var(--e-5); color: var(--texto-2); font-weight: var(--p-rotulo); }
.ges-pasos li { display: inline-flex; align-items: center; gap: var(--e-2); }
.ges-pasos__n { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background-color: var(--bandeja-hover); font-size: var(--t-12); font-weight: var(--p-cifra); }
.ges-pasos__actual { color: var(--texto); }
.ges-pasos__actual .ges-pasos__n { background-color: var(--accion); color: var(--sobre-accion); }
.ges-pasos__hecho .ges-pasos__n { background-color: var(--bandeja-fuerte); color: var(--texto); }
.ges-columnas .campo { min-width: 200px; }
.ges-revisar td { vertical-align: top; padding-top: var(--e-3); padding-bottom: var(--e-3); }
.ges-revisar .nombre { display: block; font-weight: var(--p-rotulo); }
.ges-decide { display: grid; gap: 2px; min-width: 220px; }
.ges-decide .casilla { align-items: flex-start; min-height: 28px; }
.ges-decide .casilla input { margin-top: 1px; }
.ges-aviso { display: block; font-size: var(--t-13); color: var(--aviso-texto); }
.ges-aviso--error { color: var(--error-texto); }

/* formularios web: los campos que se definen */
.ges-campos { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--e-3); }
.ges-campo { display: grid; grid-template-columns: 24px minmax(160px, 2fr) minmax(140px, 1.2fr) minmax(160px, 2fr) minmax(150px, 1.4fr) auto; gap: var(--e-3); align-items: end; padding-bottom: var(--e-3); box-shadow: inset 0 -1px 0 var(--linea); }
.ges-campo__n { align-self: center; padding-top: var(--e-5); }
.ges-respuestas .corta { max-width: 180px; }

/* el formulario público */
.ges-publico { max-width: 640px; }
.ges-publico__cabeza { display: grid; justify-items: center; gap: var(--e-2); text-align: center; }
.ges-publico__cabeza img { display: block; }
.ges-error { font-size: var(--t-13); color: var(--error-texto); font-weight: var(--p-rotulo); margin-top: calc(-1 * var(--e-2)); }
.ges-proteccion { display: grid; gap: var(--e-2); padding: var(--e-3) var(--e-4); border-radius: var(--r-campo); background-color: var(--bandeja); }
.ges-gracias { justify-items: center; text-align: center; }

@media (max-width: 900px) {
  .ges-campo { grid-template-columns: 24px repeat(2, minmax(0, 1fr)); }
  .ges-campo .casilla { grid-column: 2 / -1; }
  .ges-campo__n { padding-top: 0; align-self: start; }
  .ges-campo > .campo:nth-of-type(3), .ges-campo > .campo:nth-of-type(4) { grid-column: span 1; }
}
@media (max-width: 600px) {
  .ges-escudo { grid-template-columns: minmax(0, 1fr); }
  .ges-campo { grid-template-columns: minmax(0, 1fr); }
  .ges-campo__n { display: none; }
  .ges-campo .casilla { grid-column: auto; }
  /* revisar la importación: cada fila, una ficha */
  .ges-desliza .tabla.ges-revisar { min-width: 0; }
  .ges-revisar thead { display: none; }
  .ges-revisar tr { display: grid; grid-template-columns: 32px minmax(0, 1fr); box-shadow: inset 0 1px 0 var(--linea); }
  .ges-revisar td { box-shadow: none; padding: var(--e-2) 0; }
  .ges-revisar td:first-child { padding-top: var(--e-3); }
  .ges-revisar td:last-child { grid-column: 2; padding-top: 0; }
  .ges-desliza .tabla.ges-columnas { min-width: 0; }
  .ges-columnas thead { display: none; }
  .ges-columnas tr { display: grid; box-shadow: inset 0 1px 0 var(--linea); padding: var(--e-2) 0; }
  .ges-columnas td { box-shadow: none; padding: 2px 0; }
  .ges-columnas .campo { min-width: 0; }
}

/* configuración: índice de apartados y accesos directos */
.ges-indice { display: flex; flex-wrap: wrap; gap: var(--e-1) var(--e-4); }
.ges-indice a { color: var(--texto-2); font-weight: var(--p-rotulo); text-decoration: none; }
.ges-indice a:hover { color: var(--texto); text-decoration: underline; }
.ges-accesos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--e-2) var(--e-4); }
.ges-accesos li { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: center; gap: var(--e-2); }
.ges-accesos__n { color: var(--texto-2); font-size: var(--t-13); text-align: right; }

/* fotos de los usuarios */
.ges-foto { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; flex: none; background-color: var(--bandeja-hover); }
.ges-foto--g { width: 64px; height: 64px; }
.ges-catalogos { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--e-4); }
.ges-foto-fila { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--e-4); }

/* la tabla de permisos en el teléfono: los nombres de los módulos enteros */
.tabla--permisos td:first-child { white-space: nowrap; }
@media (max-width: 600px) {
  .tabla--permisos th, .tabla--permisos td { padding-left: 2px; padding-right: 2px; }
  .tabla--permisos .boton--p { padding: 0 var(--e-2); }
}
