@font-face { font-family: Poppins; src: url('/poppins.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: OpenSans; src: url('/opensans.woff2') format('woff2'); font-weight: 300 800; font-display: swap; }
:root { --primario: #ff9900; --texto: #161333; --muted: #696c80; --fondo: #f8f9fc; --linea: #e4e7ef; --verde: #19796a; }
* { box-sizing: border-box; }
body { margin: 0; color: var(--texto); background: var(--fondo); font: 15px/1.6 OpenSans, sans-serif; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--verde); }
h1, h2, h3 { font-family: Poppins, sans-serif; font-weight: 600; line-height: 1.25; }
h1 { font-size: clamp(27px, 3vw, 38px); letter-spacing: -1px; margin: 8px 0 18px; }
h2 { font-size: 21px; margin: 0 0 12px; }
h3 { font-size: 17px; margin: 0 0 10px; }
p { color: var(--muted); margin: 0 0 16px; }
small { color: var(--muted); }
.icono { width: 21px; height: 21px; flex: 0 0 auto; vertical-align: middle; }
.preview { padding: 6px 16px; text-align: center; background: #f0e9dc; color: #665135; font-size: 11px; }
.menu { display: flex; align-items: center; gap: 30px; padding: 18px 4%; background: #fff; border-bottom: 1px solid var(--linea); }
.marca { display: flex; align-items: center; gap: 12px; font-family: Poppins, sans-serif; font-size: 19px; }
.marca img { width: 135px; height: auto; }
.marca span { padding-left: 12px; border-left: 1px solid var(--linea); }
nav { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.menu nav { flex: 1; justify-content: center; gap: 8px; }
.menu nav a, .barra-personal a { display: flex; align-items: center; gap: 8px; padding: 10px 12px; font-size: 13px; }
.menu nav a[aria-current], .barra-personal a[aria-current] { background: #edf6f3; color: #176d60; border-radius: 10px; }
.acceso-jugador { display: flex; align-items: center; gap: 10px; }
.acceso-corto { display: none; }
.cuenta-menu { position: relative; border: 0; margin: 0; background: none; }
.cuenta-menu > summary { padding: 0; cursor: pointer; list-style: none; }
.cuenta-menu > summary:after { content: '⌄'; color: var(--muted); }
.menu .cuenta-menu > nav { position: absolute; display: grid; top: 46px; right: 0; min-width: 205px;
  padding: 10px; background: #fff; border: 1px solid var(--linea); border-radius: 12px; box-shadow: 0 8px 25px #11102b15; z-index: 5; }
.identidad-jugador { display: flex; align-items: center; gap: 9px; font-size: 12px; max-width: 180px; }
.identidad-jugador > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.avatar { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 auto; border-radius: 50%;
  background: #f5e8d6; color: #5f4027; font-weight: 700; text-transform: uppercase; }
.barra-personal { padding: 8px 4%; background: #fff; border-bottom: 1px solid var(--linea); gap: 8px; }
.barra-personal .cambio-portal { margin-left: auto; font-weight: 600; }
main { max-width: 1300px; margin: auto; padding: 32px 4% 64px; }
footer { padding: 22px; border-top: 1px solid var(--linea); color: var(--muted); text-align: center; font-size: 12px; }
footer p { margin: 8px 0 0; font-size: 12px; }
.eyebrow { display: block; font-size: 10px; font-weight: 700; letter-spacing: 2px; color: var(--verde); }
.encabezado-pagina { margin-bottom: 24px; }
.encabezado-pagina h1 { margin-bottom: 10px; }
.grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 20px; }
.card { padding: 24px; background: #fff; border: 1px solid var(--linea); border-radius: 16px; margin: 0 0 20px; }
.card > :last-child { margin-bottom: 0; }
.hero-comunidad { display: grid; grid-template-columns: 1fr .9fr; align-items: center; background: #eaf4f0;
  border-radius: 22px; overflow: hidden; margin-bottom: 30px; }
.hero-comunidad .texto-hero { padding: 36px; }
.hero-comunidad h1 { font-size: clamp(29px, 3.5vw, 44px); margin: 12px 0; }
.hero-comunidad p { color: #436c61; max-width: 540px; }
.hero-comunidad img { width: 100%; height: 285px; object-fit: cover; }
.hero-comunidad .eyebrow { color: #327163; }
.acciones-hero { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.acciones-hero > a:not(.boton) { font-weight: 600; font-size: 13px; }
.entrada-jugadores { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start;
  max-width: 1050px; margin: 20px auto 30px; }
.entrada-jugadores h1 { font-size: clamp(30px, 4vw, 46px); margin: 12px 0 18px; }
.entrada-jugadores > div:first-child { padding-top: 18px; }
.beneficios-jugadores { display: grid; gap: 18px; margin: 30px 0; color: #326b60; font-size: 14px; }
.beneficios-jugadores span { display: flex; align-items: center; gap: 12px; }
.explorar-jugadores { color: var(--verde); font-size: 13px; font-weight: 600; }
.acceso-jugadores { border-top: 4px solid var(--primario); }
.ayuda-ingreso, .nota-piloto { font-size: 12px; }
.nota-piloto { background: #faf3e4; color: #695229; padding: 12px; border-radius: 8px; }
.compartir-jugadores { max-width: 1050px; margin: 0 auto 24px; }
.compartir-jugadores input { font-size: 13px; background: #f8faf9; }
.compartir-jugadores .acciones-hero { margin-top: 16px; }
.resultado-copia { margin-top: 12px; font-size: 12px; color: var(--verde); }
.titulo-seccion { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 28px 0 18px; }
.titulo-seccion h2 { margin: 0; }
.titulo-seccion > a { color: var(--verde); font-size: 13px; font-weight: 600; }
.ficha-club { padding: 0; overflow: hidden; }
.cubierta-club { display: flex; justify-content: space-between; align-items: end; height: 95px;
  padding: 18px 24px; background: #d5e6dd; color: #23624d; font-size: 12px; }
.cubierta-club .icono { width: 50px; height: 50px; stroke-width: 1; }
.ficha-club:nth-child(2n) .cubierta-club { background: #e0e6f3; color: #48648a; }
.ficha-contenido { padding: 20px 24px 24px; }
.ficha-contenido .emblema { margin-top: -42px; border: 4px solid #fff; position: relative; }
.emblema { display: grid; place-items: center; width: 48px; height: 48px; background: #e9f2ed; border-radius: 14px;
  color: #2b654f; font-size: 14px; font-weight: 700; margin-bottom: 14px; }
.ficha-club h2, .ficha-partido h2 { font-size: 18px; }
.plazas { display: flex; gap: 8px; margin: 18px 0; }
.plaza { display: grid; place-items: center; width: 35px; height: 35px; background: #f5f7f9;
  border: 1px dashed #b7c9c4; border-radius: 50%; color: #5d8a7d; }
.plaza.tomada { background: #dbede5; border: 1px solid #dbede5; color: #27715a; }
.ficha-partido .boton { width: 100%; text-align: center; }
button, .boton { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 10px;
  padding: 12px 18px; color: #17152f; background: var(--primario); font: 600 13px Poppins, sans-serif; cursor: pointer;
  min-height: 44px; }
button:hover, .boton:hover { filter: brightness(.96); color: #17152f; }
.boton.secundario { background: #fff; border: 1px solid var(--linea); color: var(--texto); }
.inline { display: inline; margin: 0; }
.inline button { background: transparent; border: 1px solid var(--linea); color: var(--muted); padding: 8px 12px; min-height: 36px; }
form:not(.inline) { display: grid; gap: 14px; max-width: 680px; margin: 20px 0; }
form button { justify-self: start; }
label { display: block; font-size: 13px; font-weight: 600; }
input, select, textarea { display: block; width: 100%; max-width: 100%; margin-top: 6px; padding: 11px 12px;
  background: #fff; border: 1px solid #dce1eb; border-radius: 9px; color: var(--texto); font: 16px OpenSans, sans-serif; }
textarea { min-height: 110px; resize: vertical; }
input[type=hidden] { display: none; }
.check { display: flex; align-items: center; gap: 10px; }
.check input { width: auto; margin: 0; }
details { background: #fff; border: 1px solid var(--linea); border-radius: 12px; margin-bottom: 18px; }
details > summary { padding: 16px 20px; cursor: pointer; font-weight: 600; }
details > form { margin: 0 20px 20px; }
details .formulario-turno { border: 0; padding-top: 0; margin-bottom: 0; }
.secciones { padding: 0 0 14px; margin: 12px 0 24px; border-bottom: 1px solid var(--linea); font-size: 13px; }
.secciones a { padding: 6px 0; }
.portal-club .secciones { display: none; }
.portal-jugador .secciones { display: none; }
.proximos-dias { margin-bottom: 18px; gap: 7px; }
.proximos-dias a { border: 1px solid var(--linea); border-radius: 6px; padding: 5px 9px; color: var(--muted); font-size: 10px; }
.proximos-dias a:hover { background: #f3f5f8; }
.calendario-barra .fecha-navegacion { flex-wrap: wrap; }
.resumenes + .card { margin-top: 24px; }
.fila { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.estado { display: inline-block; background: #edf4f0; color: #31735c; padding: 4px 9px; border-radius: 6px;
  font-size: 11px; margin-bottom: 12px; }
.tabla { width: 100%; overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 13px; }
th, td { padding: 12px 10px; text-align: left; border-bottom: 1px solid var(--linea); vertical-align: top; }
th { color: var(--muted); background: #f9fafc; font-size: 11px; }
dl { display: grid; grid-template-columns: 1fr auto; gap: 12px; }
dd { margin: 0; font-weight: 600; }
.mensaje { max-width: 720px; padding: 18px; background: #fff; border-radius: 12px; border-left: 3px solid #92bbad; margin-bottom: 16px; }
.mensaje p { white-space: pre-wrap; }
.error { border-left: 4px solid #b63728; }
.estado-vacio { text-align: center; background: #fff; border: 1px dashed #d7dedf; padding: 30px 18px; border-radius: 14px; }
.estado-vacio > span { display: inline-grid; place-items: center; width: 50px; height: 50px; border-radius: 50%;
  background: #eef4f0; color: var(--verde); margin-bottom: 12px; }
.estado-vacio p { max-width: 500px; margin: 0 auto 20px; font-size: 13px; }
.resumenes { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; margin: 20px 0; }
.resumen { display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--linea);
  padding: 18px; border-radius: 13px; }
.resumen > span { display: grid; place-items: center; width: 42px; height: 42px; background: #fff1dc; border-radius: 12px; }
.resumen strong { display: block; font-family: Poppins, sans-serif; font-size: 24px; }
.resumen small { display: block; font-size: 11px; }
.dos-paneles { display: grid; grid-template-columns: 1.8fr 1fr; gap: 24px; }
.aviso-lista { padding: 0; list-style: none; }
.aviso-lista li a { display: block; padding: 12px 0; border-bottom: 1px solid var(--linea); font-size: 13px; }
.proximo-juego { border-left: 5px solid var(--verde); }
.proximo-juego .fecha-grande { display: inline-flex; align-items: center; gap: 10px; color: var(--verde); font-weight: 700; }
.lateral-club { position: fixed; top: 0; left: 0; bottom: 0; width: 238px; background: #19182e; color: #cfcede;
  display: flex; flex-direction: column; padding: 22px 18px; z-index: 3; overflow-y: auto; }
.lateral-club .marca { background: #fff; color: #201837; border-radius: 8px; padding: 10px; font-size: 14px; gap: 7px; }
.lateral-club .marca img { width: 115px; }
.lateral-club .marca span { padding-left: 8px; }
.rotulo-panel { font-size: 9px; letter-spacing: 2px; color: #8c8aab; margin: 24px 0 14px; }
.identidad-club { display: flex; flex-direction: column; padding-bottom: 22px; border-bottom: 1px solid #323148; margin-bottom: 18px; }
.identidad-club .emblema { background: #343047; color: #ffb53a; }
.identidad-club strong { color: #fff; font-size: 14px; line-height: 1.5; }
.identidad-club small { color: #908fac; margin-top: 3px; font-size: 11px; }
.lateral-club nav { display: grid; gap: 5px; }
.lateral-club nav a { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 9px; font-size: 12px; }
.lateral-club nav a:hover { color: #fff; background: #2c2a43; }
.lateral-club nav a[aria-current] { color: #ffba50; background: #3c302a; }
.cambiar-club { margin-top: auto; padding-top: 24px; display: grid; gap: 10px; font-size: 11px; }
.cambiar-club a { color: #afadc9; }
.cambiar-club .icono { width: 15px; height: 15px; }
.barra-club { margin-left: 238px; background: #fff; display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid var(--linea); padding: 16px 32px; height: 74px; font-size: 12px; }
.barra-club > div { display: flex; align-items: center; gap: 14px; }
.portal-club main { margin: 0 0 0 238px; max-width: none; padding: 28px 32px 60px; }
.portal-club footer { margin-left: 238px; }
.portal-club .preview { margin-left: 238px; }
.portal-club .encabezado-pagina .eyebrow { color: #8b819c; }
.agenda-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 18px; flex-wrap: wrap; margin-bottom: 20px; }
.fecha-navegacion { display: flex; gap: 10px; align-items: center; font-size: 13px; }
.fecha-navegacion strong { font-size: 14px; text-transform: capitalize; }
.icono-boton { display: grid; place-items: center; min-width: 36px; height: 36px; background: #fff;
  border: 1px solid var(--linea); border-radius: 9px; font-size: 23px; }
.segmentos { display: flex; gap: 2px; padding: 4px; background: #e9ecf2; border-radius: 9px; }
.segmentos a { padding: 6px 10px; font-size: 12px; }
.segmentos a[aria-current] { color: var(--texto); background: #fff; border-radius: 6px; box-shadow: 0 2px 5px #15112b0a; }
.leyenda { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin: 14px 0; font-size: 11px; color: var(--muted); }
.leyenda > span:before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 3px; background: #b9c6bf; }
.leyenda .confirmada:before { background: #79c7ab; }
.leyenda .solicitud:before { background: #f5c263; }
.leyenda .fijo:before { background: #b89cda; }
.agenda-deslizante { width: 100%; max-height: 700px; overflow: auto; border: 1px solid var(--linea); border-radius: 14px; background: #fff; }
.plano-canchas { display: flex; min-width: 100%; }
.columna-horas { width: 62px; flex: 0 0 62px; position: sticky; left: 0; z-index: 2; background: #fbfcfe; }
.columna-cancha { flex: 1 0 220px; min-width: 220px; border-left: 1px solid var(--linea); }
.columna-cancha > header, .columna-horas > header { height: 78px; padding: 14px 18px; background: #fff; border-bottom: 1px solid var(--linea);
  position: sticky; top: 0; z-index: 2; display: flex; align-items: center; gap: 10px; }
.columna-horas > header { padding: 14px 8px; font-size: 10px; }
.columna-cancha h3 { font: 600 13px Poppins, sans-serif; margin: 0 0 3px; }
.columna-cancha small { font-size: 10px; }
.cancha-icono { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; background: #eef4f7; color: #729495; }
.parrilla { display: grid; grid-template-columns: 1fr; background: repeating-linear-gradient(to bottom,
  transparent 0, transparent 47px, #edf0f6 47px, #edf0f6 48px); }
.franja-manana, .franja-tarde { grid-template-rows: repeat(300, 1.6px); }
.franja-noche { grid-template-rows: repeat(360, 1.6px); }
.franja-dia { grid-template-rows: repeat(1440, 1.6px); }
.hora-eje { grid-column: 1; padding: 8px; font-size: 10px; color: #8a8c9d; }
.hueco { grid-column: 1; display: flex; gap: 8px; align-items: center; justify-content: center; margin: 2px 4px;
  color: #88a69b; font-size: 10px; border: 1px dashed transparent; border-radius: 6px; }
a.hueco:hover, a.hueco:focus-visible { border-color: #5eac96; background: #eff8f3; color: #2c755f; }
.hueco > span { font-size: 18px; color: #96b0a4; }
.hueco.cerrada { background: repeating-linear-gradient(135deg, #fafbfc 0, #fafbfc 8px, #f0f2f5 8px, #f0f2f5 9px); color: #b2b5c0; }
.turno { grid-column: 1; display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; margin: 3px 5px;
  border-radius: 9px; border-left: 3px solid #6aaf95; background: #eaf5ef; color: #205c47; min-height: 0; overflow: auto; }
.turno strong { font-size: 13px; line-height: 1.3; }
.turno small { color: inherit; font-size: 10px; }
.turno-hora { font-size: 10px; font-weight: 600; }
.turno.solicitud { background: #fff4dd; color: #916723; border-color: #e4b355; }
.turno.fijo { background: #f0eafa; color: #705793; border-color: #ab8bcf; }
.turno:hover { filter: brightness(.97); color: inherit; }
.ayuda-agenda { font-size: 11px; margin: 10px 0 22px; }
.formulario-turno { scroll-margin-top: 20px; }
.calendario-panel { background: #fff; border: 1px solid var(--linea); border-radius: 16px; overflow: hidden; }
.calendario-barra { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px; border-bottom: 1px solid var(--linea); }
.calendario-personal { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.dia-personal { padding: 12px; border-right: 1px solid var(--linea); border-bottom: 1px solid var(--linea); min-height: 145px; }
.semana .dia-personal { min-height: 350px; }
.dia-personal > header { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 8px 0 12px; }
.dia-personal > header > span { font-size: 10px; text-transform: uppercase; color: var(--muted); }
.dia-personal > header > .numero-dia { font-family: Poppins, sans-serif; font-size: 22px; line-height: 1.3; }
.dia-personal.hoy > header > .numero-dia { background: #d9eee3; color: var(--verde); border-radius: 50%; padding: 2px 8px; }
.dia-personal { scroll-margin-top: 20px; }
.dias-movil { display: none; }
.dia-personal.hoy > header > small { color: var(--verde); font-size: 9px; }
.otro-mes { background: #fafbfc; }
.otro-mes > header { opacity: .5; }
.evento-jugador { display: flex; flex-direction: column; margin-bottom: 8px; padding: 10px; background: #edf6f1;
  border-left: 3px solid #6ea58d; border-radius: 8px; color: #2e614c; gap: 4px; }
.evento-jugador b { font-size: 12px; }
.evento-jugador strong { font-size: 11px; line-height: 1.35; }
.evento-jugador > span, .evento-jugador small { font-size: 9px; color: inherit; }
.evento-jugador.solicitud { background: #fff6e2; border-color: #dbaf63; color: #927131; }
.evento-jugador.cancelada, .evento-jugador.vencida { background: #f2f2f4; color: #8d8d99; border-color: #c9c9d2; text-decoration: line-through; }
.sin-turnos { text-align: center; font-size: 10px; color: #bbc0cb; margin-top: 30px; }
.salto { position: absolute; left: -10000px; }
.salto:focus { left: 16px; top: 10px; z-index: 10; background: #fff; padding: 12px; }
:focus-visible { outline: 3px solid #674c94; outline-offset: 3px; }
@media (max-width: 1100px) {
  .menu { flex-wrap: wrap; gap: 15px; }
  .menu nav { order: 3; flex-basis: 100%; justify-content: flex-start; }
  .acceso-jugador { margin-left: auto; }
  .lateral-club { width: 205px; }
  .portal-club main, .portal-club footer, .portal-club .preview, .barra-club { margin-left: 205px; }
  .portal-club main { padding: 24px 20px 48px; }
  .dia-personal { padding: 8px 5px; }
}
@media (max-width: 760px) {
  .acceso-largo { display: none; }
  .acceso-corto { display: inline; }
  .entrada-jugadores { grid-template-columns: 1fr; gap: 24px; margin-top: 0; }
  .entrada-jugadores > div:first-child { padding-top: 0; }
  .beneficios-jugadores { display: none; }
  .menu { padding: 14px 16px; }
  .menu .marca img { width: 110px; }
  .menu .marca { font-size: 15px; }
  .identidad-jugador > span:last-child { display: none; }
  .menu > nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 3px; }
  .menu > nav a { padding: 8px 1px; font-size: 10px; flex-direction: column; gap: 4px; text-align: center; }
  .menu nav .icono { width: 17px; height: 17px; }
  .barra-personal { flex-wrap: nowrap; overflow-x: auto; padding: 8px 12px; scrollbar-width: none; }
  .barra-personal::-webkit-scrollbar, .lateral-club nav::-webkit-scrollbar { display: none; }
  .barra-personal a { white-space: nowrap; padding: 8px; font-size: 11px; }
  main { padding: 24px 16px 40px; }
  .hero-comunidad { grid-template-columns: 1fr; }
  .hero-comunidad .texto-hero { padding: 26px; }
  .hero-comunidad img { height: 160px; }
  .card { padding: 20px; }
  .dos-paneles { grid-template-columns: 1fr; }
  .ficha-club { padding: 0; }
  .fila { align-items: flex-start; flex-wrap: wrap; }
  .lateral-club { position: static; width: 100%; padding: 12px 16px; overflow: visible;
    display: grid; grid-template-columns: 148px minmax(0, 1fr); gap: 12px; align-items: center; }
  .lateral-club .marca { max-width: 148px; padding: 10px; gap: 6px; font-size: 12px; }
  .lateral-club .marca img { width: 80px; }
  .lateral-club .marca span { padding-left: 6px; }
  .rotulo-panel { display: none; }
  .identidad-club { padding: 0; margin: 0; border: 0; }
  .identidad-club strong { font-size: 12px; }
  .identidad-club small { font-size: 10px; }
  .identidad-club .emblema { display: none; }
  .lateral-club nav { grid-column: 1 / -1; display: flex; flex-wrap: nowrap; overflow-x: auto;
    margin-inline: -16px; padding-inline: 16px; scrollbar-width: none; }
  .lateral-club nav a { white-space: nowrap; min-height: 44px; }
  .cambiar-club { grid-column: 1 / -1; display: flex; padding-top: 0; gap: 20px; }
  .cambiar-club a:last-child { display: none; }
  .cambiar-club:not(:has(a:nth-child(2))) { display: none; }
  .portal-club main, .portal-club footer, .portal-club .preview, .barra-club { margin-left: 0; }
  .portal-club main { padding: 24px 16px 40px; }
  .barra-club { height: 55px; padding: 10px 16px; }
  .barra-club > span { display: none; }
  .barra-club > div { width: 100%; justify-content: space-between; }
  .agenda-toolbar { gap: 12px; }
  .fecha-navegacion { gap: 8px; }
  .fecha-navegacion strong { font-size: 12px; }
  .segmentos { width: 100%; justify-content: space-between; }
  .calendario-barra { flex-direction: column; gap: 14px; padding: 14px; align-items: stretch; }
  .calendario-barra .fecha-navegacion { gap: 6px; font-size: 11px; }
  .calendario-barra .fecha-navegacion strong { font-size: 11px; }
  .calendario-barra .fecha-navegacion .boton { padding: 9px 12px; }
  .calendario-personal.semana { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .semana .dia-personal { min-height: 150px; padding: 12px 8px; }
  .semana .dia-personal:target { background: #edf6f3; outline: 2px solid var(--verde); outline-offset: -2px; }
  .calendario-personal.mes { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .mes .dia-personal { padding: 4px 2px; min-height: 95px; }
  .mes .dia-personal > header > .numero-dia { font-size: 14px; }
  .dias-movil { display: flex; gap: 2px; padding: 10px 6px; border-bottom: 1px solid var(--linea); justify-content: space-between; }
  .dias-movil a { font-size: 9px; padding: 8px 3px; }
  .mes .dia-personal > header > span { font-size: 8px; }
  .mes .evento-jugador { padding: 4px 2px; border-left-width: 2px; gap: 2px; }
  .mes .evento-jugador > strong { font-size: 8px; }
  .mes .evento-jugador > b { font-size: 9px; }
  .mes .evento-jugador > span, .mes .evento-jugador > small, .mes .sin-turnos { display: none; }
  .resumenes { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .resumen { padding: 12px; gap: 8px; }
  .resumen strong { font-size: 20px; }
}

:root{--primario:#ff9900}