/* =========================================================
   CFCA 7.5.15 - LIMPIO + FLUJOS DE CARGA
   Objetivo: barra limpia en 1 fila desktop, buscador 25%, sin chips,
   sin “Hoy se juega”, sin invadir otros plugins.
   ========================================================= */

/* Alcance estricto: solo calendario público/admin calendario. */
.cfca-public-scope,
.cfca-admin-scope,
[data-cfca-scope="public"],
[data-cfca-scope="admin"]{
  --cfca-rm-green:#0f5132;
  --cfca-rm-green2:#198754;
  --cfca-rm-soft:#f6fbf8;
  --cfca-rm-line:#d9eadf;
  --cfca-rm-text:#17382a;
  --cfca-rm-muted:#637b70;
}

/* Contenedor más limpio, menos alto. */
.cfca-public-scope.cfca-container{
  max-width:1220px!important;
  margin:16px auto!important;
  padding:12px!important;
  border-radius:18px!important;
  background:#f8fcf9!important;
  border:1px solid var(--cfca-rm-line)!important;
  box-shadow:0 8px 24px rgba(15,81,50,.07)!important;
}

/* Barra superior: vistas + exportar compactos. */
.cfca-public-scope .cfca-view-selector{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  padding:7px!important;
  margin:0 0 8px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid var(--cfca-rm-line)!important;
  box-shadow:none!important;
}
.cfca-public-scope .cfca-view-selector > div[style*="margin-left"]{
  margin-left:auto!important;
  gap:7px!important;
}
.cfca-public-scope .cfca-view-btn,
.cfca-public-scope .cfca-btn-secondary,
.cfca-public-scope .cfca-btn-primary,
.cfca-public-scope button.cfca-btn-secondary{
  min-height:34px!important;
  height:34px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  font-size:12.5px!important;
  font-weight:800!important;
  line-height:1!important;
  box-shadow:none!important;
  text-transform:none!important;
  white-space:nowrap!important;
}

/* Filtros: una sola línea en desktop. */
.cfca-public-scope .cfca-filters.cfca-filters-compact{
  padding:7px!important;
  margin:0 0 10px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid var(--cfca-rm-line)!important;
  box-shadow:none!important;
}
.cfca-public-scope .cfca-filter-group.cfca-compact-line{
  display:grid!important;
  grid-template-columns:minmax(210px,25%) auto auto 1fr!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
}
.cfca-public-scope .cfca-filter-group.cfca-compact-line > .cfca-search-wrapper{
  grid-column:auto!important;
  width:100%!important;
  max-width:320px!important;
  min-width:210px!important;
}
.cfca-public-scope .cfca-filter-group.cfca-compact-line .cfca-search-input,
.cfca-public-scope #filtro-buscar.cfca-search-input{
  height:36px!important;
  min-height:36px!important;
  line-height:36px!important;
  padding:0 10px 0 34px!important;
  border-radius:10px!important;
  font-size:13px!important;
  background:#fff!important;
  border:1px solid var(--cfca-rm-line)!important;
  box-shadow:none!important;
}
.cfca-public-scope .cfca-filter-group.cfca-compact-line .cfca-search-icon{
  left:11px!important;
  font-size:13px!important;
}
.cfca-public-scope .cfca-calendario-dropdown summary,
.cfca-public-scope #limpiar-filtros{
  height:36px!important;
  min-height:36px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  background:#fff!important;
  border:1px solid var(--cfca-rm-line)!important;
  color:var(--cfca-rm-green)!important;
  box-shadow:none!important;
}
.cfca-public-scope .cfca-calendario-box{
  grid-template-columns:repeat(3,minmax(130px,1fr))!important;
  min-width:420px!important;
  padding:12px!important;
  gap:10px!important;
  border-radius:14px!important;
}
.cfca-public-scope .cfca-filter-title{font-size:12px!important;color:var(--cfca-rm-green)!important}
.cfca-public-scope .cfca-filter-section label{font-size:12px!important}
.cfca-public-scope .cfca-select{height:34px!important;min-height:34px!important;font-size:12px!important}

/* Quitar Hoy y todo chip/estado visual solicitado. */
.cfca-public-scope label:has(input[value="__hoy"]),
.cfca-public-scope .cfca-badge-today,
.cfca-public-scope .cfca-hoy-strip,
.cfca-public-scope .cfca-today-strip,
.cfca-public-scope .cfca-resumen-hoy,
.cfca-public-scope [data-cfca="hoy"],
.cfca-public-scope [class*="hoy"],
.cfca-public-scope [class*="today"],
.cfca-public-scope .cfca-chips,
.cfca-public-scope .cfca-chip-row,
.cfca-public-scope .cfca-chip,
.cfca-public-scope .cfca-event-chip,
.cfca-public-scope .cfca-meta-chip,
.cfca-public-scope .cfca-pill--tipo,
.cfca-public-scope .cfca-badge:not(.cfca-badge-past):not(.cfca-badge-hidden),
.cfca-modal .cfca-chips,
.cfca-modal .cfca-chip-row,
.cfca-modal .cfca-chip,
.cfca-modal .cfca-event-chip,
.cfca-modal .cfca-meta-chip,
.cfca-modal .cfca-pill--tipo,
.cfca-modal .cfca-badge-today,
.cfca-modal [class*="hoy"],
.cfca-modal [class*="today"]{
  display:none!important;
}

/* Tarjetas: más información visible, menos aire, nombre protagonista. */
.cfca-public-scope .cfca-card,
.cfca-public-scope .cfca-event-card,
.cfca-public-scope .cfca-agenda-item{
  border-radius:15px!important;
  border:1px solid var(--cfca-rm-line)!important;
  box-shadow:0 6px 18px rgba(15,81,50,.05)!important;
  overflow:hidden!important;
}
.cfca-public-scope .cfca-card-title h3,
.cfca-public-scope .cfca-event-title,
.cfca-public-scope h3.cfca-event-title{
  font-size:1.02rem!important;
  line-height:1.2!important;
  margin:0!important;
  color:var(--cfca-rm-green)!important;
}
.cfca-public-scope .cfca-card-body,
.cfca-public-scope .cfca-event-body{
  padding:10px 12px!important;
}
.cfca-public-scope .cfca-card-footer,
.cfca-public-scope .cfca-event-actions,
.cfca-public-scope .cfca-actions{
  gap:6px!important;
  padding:8px 10px!important;
}
.cfca-public-scope .cfca-card-footer button,
.cfca-public-scope .cfca-event-actions button,
.cfca-public-scope .cfca-card-footer a,
.cfca-public-scope .cfca-event-actions a{
  min-height:32px!important;
  height:32px!important;
  padding:0 9px!important;
  border-radius:9px!important;
  font-size:12px!important;
}

/* Tabla compacta. */
.cfca-public-scope .cfca-table th{padding:9px 8px!important;font-size:11.5px!important}
.cfca-public-scope .cfca-table td{padding:8px!important;font-size:12.5px!important}

/* Modal: título y botones arriba, limpio, sin chips. */
.cfca-modal .cfca-modal-content{
  border-radius:18px!important;
  padding:14px!important;
}
.cfca-modal .cfca-modal-header,
.cfca-modal .cfca-event-hero,
.cfca-modal .cfca-modal-hero{
  padding:12px!important;
  margin-bottom:10px!important;
  border-radius:14px!important;
}
.cfca-modal .cfca-event-title,
.cfca-modal h2,
.cfca-modal h3{
  margin:0 0 6px!important;
  font-size:clamp(1.1rem,2vw,1.45rem)!important;
}
.cfca-modal #modal-imprimir,
.cfca-modal #modal-google,
.cfca-modal #modal-compartir,
.cfca-modal .cfca-modal-actions button,
.cfca-modal .cfca-modal-actions a{
  min-height:32px!important;
  height:32px!important;
  padding:0 10px!important;
  border-radius:10px!important;
  font-size:12px!important;
}

@media(max-width:860px){
  .cfca-public-scope .cfca-filter-group.cfca-compact-line{
    grid-template-columns:1fr auto auto!important;
  }
  .cfca-public-scope .cfca-filter-group.cfca-compact-line > .cfca-search-wrapper{
    grid-column:1/-1!important;
    max-width:none!important;
  }
}
@media(max-width:560px){
  .cfca-public-scope.cfca-container{padding:8px!important;margin:8px auto!important}
  .cfca-public-scope .cfca-view-selector{overflow-x:auto!important;flex-wrap:nowrap!important}
  .cfca-public-scope .cfca-filter-group.cfca-compact-line{grid-template-columns:1fr 1fr!important}
  .cfca-public-scope .cfca-calendario-dropdown,
  .cfca-public-scope #limpiar-filtros{width:100%!important}
  .cfca-public-scope .cfca-calendario-dropdown summary,
  .cfca-public-scope #limpiar-filtros{width:100%!important;justify-content:center!important}
  .cfca-public-scope .cfca-calendario-box{position:fixed!important;left:10px!important;right:10px!important;top:70px!important;min-width:0!important;grid-template-columns:1fr!important;max-height:70vh!important;overflow:auto!important}
}


/* CFCA 7.5.15: flujos de carga claros y sin saltos visuales */
.cfca-public-scope.is-filtering,
body.cfca-filtering .cfca-public-scope{
  position:relative!important;
}
.cfca-public-scope.is-filtering::after,
body.cfca-filtering .cfca-public-scope::after{
  content:'Actualizando calendario…';
  position:absolute!important;
  right:14px!important;
  top:14px!important;
  z-index:20!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#ffffff!important;
  color:var(--cfca-rm-green)!important;
  border:1px solid var(--cfca-rm-line)!important;
  box-shadow:0 8px 18px rgba(15,81,50,.12)!important;
  font-size:12px!important;
  font-weight:800!important;
}
.cfca-public-scope .cfca-active-filters,
.cfca-public-scope .cfca-filter-chips,
.cfca-public-scope .cfca-selected-filters,
.cfca-public-scope .cfca-toolbar-title,
.cfca-public-scope .cfca-debug,
.cfca-public-scope .cfca-dev,
.cfca-public-scope .cfca-counter-debug{
  display:none!important;
}
.cfca-public-scope .cfca-view-label{
  display:inline!important;
}
.cfca-public-scope .cfca-view-icon{
  margin-right:4px!important;
}
.cfca-public-scope .cfca-card-title,
.cfca-public-scope .cfca-event-title-wrap{
  min-width:0!important;
}
.cfca-public-scope .cfca-card-title h3,
.cfca-public-scope .cfca-event-title,
.cfca-public-scope h3.cfca-event-title{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
@media(max-width:560px){
  .cfca-public-scope.is-filtering::after,
  body.cfca-filtering .cfca-public-scope::after{
    left:10px!important;right:10px!important;top:10px!important;text-align:center!important;
  }
}


/* CFCA 8.0-alpha4.2 · Agenda limpia + contraste + tarjetas sin duplicación visual */
#agenda-lista{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:18px;
    align-items:stretch;
}
.cfca-agenda-card{
    display:grid;
    grid-template-columns:86px 1fr;
    gap:16px;
    min-height:132px;
    padding:18px;
    border:1px solid rgba(15,109,70,.16);
    border-radius:20px;
    background:#fff;
    box-shadow:0 10px 26px rgba(15,23,42,.08);
    cursor:pointer;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
    overflow:hidden;
}
.cfca-agenda-card:hover{
    transform:translateY(-3px);
    border-color:#0f6d46;
    box-shadow:0 18px 38px rgba(15,23,42,.13);
}
.cfca-agenda-card__date{
    border-radius:16px;
    background:linear-gradient(180deg,#0f6d46,#0a5234);
    color:#fff;
    min-height:94px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:10px;
}
.cfca-agenda-card__day{
    font-size:2rem;
    line-height:1;
    font-weight:900;
    letter-spacing:-.04em;
}
.cfca-agenda-card__month{
    margin-top:6px;
    font-size:.72rem;
    line-height:1.2;
    opacity:.95;
    text-transform:uppercase;
    font-weight:800;
}
.cfca-agenda-card__body{
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.cfca-agenda-card__top{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
    margin-bottom:8px;
}
.cfca-agenda-pill,
.cfca-agenda-status{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:5px 9px;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.03em;
    text-transform:uppercase;
}
.cfca-agenda-pill{
    background:rgba(15,109,70,.10);
    color:#0f6d46;
}
.cfca-agenda-status{
    background:#edf2f7;
    color:#334155;
}
.cfca-agenda-card.is-today .cfca-agenda-status{background:#fff3cd;color:#8a5a00;}
.cfca-agenda-card.is-upcoming .cfca-agenda-status{background:#dcfce7;color:#166534;}
.cfca-agenda-card.is-past{opacity:.78;}
.cfca-agenda-card.is-past .cfca-agenda-card__date{background:linear-gradient(180deg,#64748b,#475569);}
.cfca-agenda-card__title{
    margin:0;
    color:#10231b;
    font-size:1.02rem;
    line-height:1.25;
    font-weight:900;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.cfca-agenda-card__meta{
    margin-top:10px;
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:#475569;
    font-size:.88rem;
    font-weight:650;
}
.cfca-empty-state{
    grid-column:1/-1;
    text-align:center;
    padding:70px 20px;
    border:1px dashed #cbd5e1;
    border-radius:18px;
    background:#fff;
    color:#64748b;
    font-weight:800;
}
@media(max-width:640px){
    #agenda-lista{grid-template-columns:1fr;gap:12px;}
    .cfca-agenda-card{grid-template-columns:72px 1fr;padding:14px;border-radius:16px;}
    .cfca-agenda-card__date{min-height:78px;border-radius:14px;}
    .cfca-agenda-card__day{font-size:1.65rem;}
}


/* CFCA 8.0-alpha4.3 · Hotfix calendario/agenda
   - Evita que la regla global [class*=today] oculte tarjetas/días activos.
   - Agenda vuelve a formato lista legible y compacto.
   - Chips de calendario más pequeños para evitar repetición visual. */
.cfca-public-scope #agenda-lista,
#agenda-lista{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  align-items:stretch!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card,
#agenda-lista .cfca-agenda-card,
.cfca-public-scope #agenda-lista .cfca-agenda-card.is-today,
.cfca-public-scope #agenda-lista .cfca-agenda-card.is-upcoming,
.cfca-public-scope #agenda-lista .cfca-agenda-card.is-past{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  min-height:86px!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  border:1px solid #d9eadf!important;
  border-left:6px solid #0f6d46!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(15,81,50,.07)!important;
  opacity:1!important;
  color:#17382a!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card.is-past{
  border-left-color:#94a3b8!important;
  background:#f8fafc!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card__date,
#agenda-lista .cfca-agenda-card__date{
  min-height:62px!important;
  height:62px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#0f6d46,#0a5234)!important;
  color:#fff!important;
  padding:6px!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card__day{font-size:1.55rem!important;line-height:1!important;}
.cfca-public-scope #agenda-lista .cfca-agenda-card__month{font-size:.64rem!important;line-height:1.05!important;margin-top:4px!important;}
.cfca-public-scope #agenda-lista .cfca-agenda-card__top{margin-bottom:5px!important;}
.cfca-public-scope #agenda-lista .cfca-agenda-pill,
.cfca-public-scope #agenda-lista .cfca-agenda-status{
  display:inline-flex!important;
  padding:3px 8px!important;
  font-size:.62rem!important;
  line-height:1.2!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card__title{
  color:#17382a!important;
  font-size:.98rem!important;
  line-height:1.18!important;
  margin:0!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card__meta{
  margin-top:6px!important;
  font-size:.8rem!important;
  color:#637b70!important;
  gap:6px 12px!important;
}
.cfca-public-scope #agenda-lista .cfca-agenda-card__action,
#agenda-lista .cfca-agenda-card__action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:32px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#e8f5e9!important;
  color:#0f5132!important;
  font-size:.78rem!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.cfca-public-scope .cfca-calendar-day.today,
.cfca-public-scope .cfca-calendar-day.is-today{
  display:block!important;
}
.cfca-public-scope .cfca-calendar-event{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:3px 0!important;
  padding:3px 6px!important;
  border-radius:7px!important;
  background:#e8f5e9!important;
  color:#0f5132!important;
  font-size:.72rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  border:1px solid #cfe8d6!important;
  box-shadow:none!important;
}
@media(max-width:640px){
  .cfca-public-scope #agenda-lista .cfca-agenda-card,
  #agenda-lista .cfca-agenda-card{
    grid-template-columns:62px minmax(0,1fr)!important;
  }
  .cfca-public-scope #agenda-lista .cfca-agenda-card__action,
  #agenda-lista .cfca-agenda-card__action{display:none!important;}
}
/* ===== CFCA Agenda 2.0 ===== */

.cfca-agenda-card-v2{
  display:grid!important;
  grid-template-columns:96px 1fr auto;
  align-items:center;
  gap:22px;
  width:100%;
  padding:24px;
  margin:18px 0;
  border-radius:26px;
  background:linear-gradient(135deg,#0f6d46 0%,#08452d 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 42px rgba(0,0,0,.14);
  border:1px solid rgba(255,255,255,.16);
}

.cfca-agenda-datebox{
  width:82px;
  min-height:82px;
  border-radius:24px;
  background:#fff;
  color:#0f6d46;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}

.cfca-agenda-datebox strong{
  font-size:2rem;
  line-height:1;
  color:#0f6d46!important;
}

.cfca-agenda-datebox span{
  margin-top:6px;
  font-size:.82rem;
  font-weight:800;
  color:#0f6d46!important;
}

.cfca-agenda-content,
.cfca-agenda-content *{
  color:#fff!important;
}

.cfca-agenda-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:10px;
}

.cfca-agenda-pill,
.cfca-agenda-status{
  display:inline-flex;
  align-items:center;
  padding:6px 12px;
  border-radius:999px;
  background:#ecfdf5!important;
  color:#0f6d46!important;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.cfca-agenda-title{
  margin:0 0 10px!important;
  color:#fff!important;
  font-size:1.35rem!important;
  line-height:1.25!important;
  font-weight:900!important;
}

.cfca-agenda-meta{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  color:rgba(255,255,255,.92)!important;
  font-weight:700;
}

.cfca-agenda-meta span{
  color:rgba(255,255,255,.92)!important;
}

.cfca-agenda-action{
  border:0!important;
  border-radius:999px!important;
  padding:12px 20px!important;
  background:#fff!important;
  color:#0f6d46!important;
  font-weight:900!important;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(0,0,0,.16);
}

.cfca-agenda-action:hover{
  transform:translateY(-2px);
}

@media(max-width:780px){
  .cfca-agenda-card-v2{
    grid-template-columns:72px 1fr;
  }

  .cfca-agenda-action{
    grid-column:1 / -1;
    width:100%;
  }

  .cfca-agenda-datebox{
    width:68px;
    min-height:68px;
    border-radius:18px;
  }
/* =========================================================
   CFCA 7.5.16 - Modal Profesional (Optimización Final)
   Aprovecha mejor el ancho y evita partir palabras
   ========================================================= */

/* El modal aprovecha más el ancho disponible */
.cfca-modal .cfca-modal-content{
    max-width:1280px!important;
    width:min(96vw,1280px)!important;
}

/* Dos columnas grandes */
.cfca-modal .cfca-info-grid,
.cfca-modal .cfca-detail-grid,
.cfca-modal .cfca-modal-grid,
.cfca-modal .cfca-card-grid,
.cfca-modal .cfca-data-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;
    gap:18px!important;
    align-items:start!important;
}

/* Las tarjetas usan todo el ancho */
.cfca-modal .cfca-card,
.cfca-modal .cfca-info-card,
.cfca-modal .cfca-detail-card{
    width:100%!important;
    height:100%!important;
    padding:16px!important;
}

/* Campos internos */
.cfca-modal .cfca-info-item,
.cfca-modal .cfca-detail-item,
.cfca-modal .cfca-modal-field{
    min-width:0!important;
    width:100%!important;
}

/* Etiqueta */
.cfca-modal .cfca-info-item span,
.cfca-modal .cfca-detail-item span,
.cfca-modal .cfca-modal-field span{
    display:block!important;
    margin-bottom:4px!important;
    font-size:.74rem!important;
    font-weight:700!important;
    color:#6d7e75!important;
    text-transform:uppercase!important;
}

/* Valor */
.cfca-modal .cfca-info-item b,
.cfca-modal .cfca-detail-item b,
.cfca-modal .cfca-modal-field b{
    display:block!important;
    font-size:.96rem!important;
    line-height:1.45!important;
    color:#17382a!important;
}

/* Muy importante: los emails ya no se parten letra por letra */
.cfca-modal a[href^="mailto"],
.cfca-modal .cfca-email,
.cfca-modal .cfca-contact-email{
    display:block!important;
    width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    line-height:1.45!important;
    font-size:.95rem!important;
}

/* También teléfonos y URLs */
.cfca-modal a[href^="tel"],
.cfca-modal a[href^="http"]{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
}

/* Organización */
.cfca-modal .cfca-org-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
    gap:14px!important;
}

/* Contacto */
.cfca-modal .cfca-contact-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
    gap:14px!important;
}

/* Logo más grande */
.cfca-modal .cfca-logo,
.cfca-modal .cfca-liga-logo{
    width:90px!important;
    height:90px!important;
    object-fit:contain!important;
    border-radius:14px!important;
    padding:8px!important;
    background:#fff!important;
    box-shadow:0 4px 14px rgba(0,0,0,.08)!important;
}

/* Desktop grande */
@media (min-width:1400px){

    .cfca-modal .cfca-modal-content{
        width:min(94vw,1380px)!important;
    }

    .cfca-modal .cfca-info-grid,
    .cfca-modal .cfca-detail-grid{
        grid-template-columns:repeat(2,minmax(420px,1fr))!important;
    }

}

/* Tablet */
@media (max-width:900px){

    .cfca-modal .cfca-info-grid,
    .cfca-modal .cfca-detail-grid,
    .cfca-modal .cfca-card-grid,
    .cfca-modal .cfca-data-grid{
        grid-template-columns:1fr!important;
    }

}

/* Móvil */
@media (max-width:640px){

    .cfca-modal .cfca-modal-content{
        width:98vw!important;
    }

    .cfca-modal .cfca-logo{
        width:72px!important;
        height:72px!important;
    }

}
/* ===== CFCA Event Detail v2 · Ecosistema del Evento ===== */

.cfca-modal .cfca-event-ecosystem{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:14px!important;
  margin:14px 0 20px!important;
}

.cfca-modal .cfca-eco-card{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid #d9eadf!important;
  box-shadow:0 6px 18px rgba(15,81,50,.07)!important;
  min-width:0!important;
}

.cfca-modal .cfca-eco-card img{
  width:62px!important;
  height:62px!important;
  object-fit:contain!important;
  border-radius:14px!important;
  background:#fff!important;
  padding:6px!important;
  flex:0 0 auto!important;
}

.cfca-modal .cfca-eco-card small{
  display:block!important;
  font-size:.72rem!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  color:#637b70!important;
  margin-bottom:4px!important;
}

.cfca-modal .cfca-eco-card strong{
  display:block!important;
  color:#0f5132!important;
  font-size:.96rem!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}

.cfca-modal .cfca-eco-organiza{border-top:4px solid #0f5132!important;}
.cfca-modal .cfca-eco-apoya{border-top:4px solid #2563eb!important;}
.cfca-modal .cfca-eco-avala{border-top:4px solid #d4a017!important;}
.cfca-modal .cfca-eco-patrocina{border-top:4px solid #7c3aed!important;}
}

/* ===== CFCA Event Detail v2 · Ecosistema del Evento ===== */

.cfca-modal .cfca-event-ecosystem{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:14px!important;
  margin:16px 0 20px!important;
}

.cfca-modal .cfca-eco-card{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
  padding:14px!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#17382a!important;
  border:1px solid #d9eadf!important;
  box-shadow:0 8px 22px rgba(15,81,50,.08)!important;
  text-align:left!important;
}

.cfca-modal .cfca-eco-card img{
  width:64px!important;
  height:64px!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
  border-radius:14px!important;
  background:#fff!important;
  padding:6px!important;
}

.cfca-modal .cfca-eco-card small{
  display:block!important;
  font-size:.7rem!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  color:#637b70!important;
  margin-bottom:4px!important;
}

.cfca-modal .cfca-eco-card strong{
  display:block!important;
  color:#0f5132!important;
  font-size:.95rem!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}

.cfca-modal .cfca-eco-organiza{border-top:4px solid #0f5132!important;}
.cfca-modal .cfca-eco-apoya{border-top:4px solid #2563eb!important;}
.cfca-modal .cfca-eco-avala{border-top:4px solid #d4a017!important;}
.cfca-modal .cfca-eco-patrocina{border-top:4px solid #7c3aed!important;}

@media(max-width:760px){
  .cfca-modal .cfca-event-ecosystem{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   CFCA 7.5.16 · Event Detail v2 · Ecosistema del Evento
   Entrega 1: Hero + Organiza / Apoya / Avala / Patrocina
   ========================================================= */
#cfca-modal .cfca-event-ecosystem,
.cfca-modal .cfca-event-ecosystem{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:14px!important;
  margin:14px 0 18px!important;
  padding:0 14px!important;
}
#cfca-modal .cfca-eco-card,
.cfca-modal .cfca-eco-card{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-width:0!important;
  min-height:92px!important;
  padding:14px!important;
  border-radius:18px!important;
  background:#ffffff!important;
  color:#17382a!important;
  border:1px solid #d9eadf!important;
  box-shadow:0 8px 22px rgba(15,81,50,.08)!important;
  text-align:left!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
#cfca-modal .cfca-eco-card:hover,
.cfca-modal .cfca-eco-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 14px 30px rgba(15,81,50,.13)!important;
}
#cfca-modal .cfca-eco-card img,
.cfca-modal .cfca-eco-card img{
  width:66px!important;
  height:66px!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
  border-radius:15px!important;
  background:#fff!important;
  padding:6px!important;
  border:1px solid rgba(15,81,50,.10)!important;
}
#cfca-modal .cfca-eco-placeholder,
.cfca-modal .cfca-eco-placeholder{
  width:66px!important;
  height:66px!important;
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:15px!important;
  background:#f1f8f4!important;
  color:#0f5132!important;
  font-size:28px!important;
  border:1px solid rgba(15,81,50,.10)!important;
}
#cfca-modal .cfca-eco-copy,
.cfca-modal .cfca-eco-copy{
  min-width:0!important;
  width:100%!important;
}
#cfca-modal .cfca-eco-card small,
.cfca-modal .cfca-eco-card small{
  display:block!important;
  font-size:.7rem!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  color:#637b70!important;
  margin-bottom:5px!important;
  line-height:1.1!important;
}
#cfca-modal .cfca-eco-card strong,
.cfca-modal .cfca-eco-card strong{
  display:block!important;
  color:#0f5132!important;
  font-size:.98rem!important;
  font-weight:950!important;
  line-height:1.22!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
#cfca-modal .cfca-eco-organiza,
.cfca-modal .cfca-eco-organiza{border-top:4px solid #0f5132!important;}
#cfca-modal .cfca-eco-apoya,
.cfca-modal .cfca-eco-apoya{border-top:4px solid #2563eb!important;}
#cfca-modal .cfca-eco-avala,
.cfca-modal .cfca-eco-avala{border-top:4px solid #d4a017!important;}
#cfca-modal .cfca-eco-patrocina,
.cfca-modal .cfca-eco-patrocina{border-top:4px solid #7c3aed!important;}
#cfca-modal .cfca-event-hero,
.cfca-modal .cfca-event-hero{
  margin-bottom:0!important;
}
@media(max-width:900px){
  #cfca-modal .cfca-event-ecosystem,
  .cfca-modal .cfca-event-ecosystem{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  #cfca-modal .cfca-event-ecosystem,
  .cfca-modal .cfca-event-ecosystem{
    grid-template-columns:1fr!important;
    padding:0 10px!important;
    gap:10px!important;
  }
  #cfca-modal .cfca-eco-card,
  .cfca-modal .cfca-eco-card{
    min-height:78px!important;
    padding:12px!important;
  }
  #cfca-modal .cfca-eco-card img,
  .cfca-modal .cfca-eco-card img,
  #cfca-modal .cfca-eco-placeholder,
  .cfca-modal .cfca-eco-placeholder{
    width:56px!important;
    height:56px!important;
  }
}

/* =========================================================
   CFCA 7.5.16 · Entrega 2
   Ficha del evento: información, fechas, sede y contacto
   ========================================================= */
#cfca-modal .cfca-event-detail-pro,
.cfca-modal .cfca-event-detail-pro{
  background:linear-gradient(180deg,#f7fcf9,#ffffff)!important;
}
#cfca-modal .cfca-modal-grid-2,
.cfca-modal .cfca-modal-grid-2{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
  margin-bottom:16px!important;
}
#cfca-modal .cfca-info-card,
.cfca-modal .cfca-info-card{
  background:#ffffff!important;
  color:#17382a!important;
  border:1px solid #d9eadf!important;
  border-radius:22px!important;
  box-shadow:0 10px 26px rgba(15,81,50,.07)!important;
  padding:16px!important;
  overflow:visible!important;
  text-align:left!important;
}
#cfca-modal .cfca-info-card .cfca-card-title,
.cfca-modal .cfca-info-card .cfca-card-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 12px!important;
  padding-bottom:10px!important;
  border-bottom:1px solid #e4f1e8!important;
  text-align:left!important;
}
#cfca-modal .cfca-info-card .cfca-card-title h3,
.cfca-modal .cfca-info-card .cfca-card-title h3{
  color:#0f5132!important;
  font-size:1.05rem!important;
  line-height:1.2!important;
  margin:0!important;
  font-weight:950!important;
  text-align:left!important;
}
#cfca-modal .cfca-inner-grid,
.cfca-modal .cfca-inner-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}
#cfca-modal .cfca-info-item,
.cfca-modal .cfca-info-item{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:5px!important;
  min-width:0!important;
  width:100%!important;
  min-height:64px!important;
  padding:11px 13px!important;
  border-radius:16px!important;
  background:#f8fffa!important;
  border:1px solid #dceee2!important;
  box-shadow:none!important;
  text-align:left!important;
}
#cfca-modal .cfca-info-item .label,
.cfca-modal .cfca-info-item .label{
  color:#5f7b6d!important;
  font-size:.68rem!important;
  line-height:1.15!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  text-align:left!important;
}
#cfca-modal .cfca-info-item .value,
.cfca-modal .cfca-info-item .value,
#cfca-modal .cfca-info-item .value a,
.cfca-modal .cfca-info-item .value a{
  color:#10271a!important;
  font-size:.95rem!important;
  line-height:1.35!important;
  font-weight:850!important;
  text-align:left!important;
  width:100%!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  text-decoration:none!important;
}
#cfca-modal .cfca-info-item-email,
.cfca-modal .cfca-info-item-email{
  grid-column:1/-1!important;
}
#cfca-modal .cfca-info-item-email .value,
#cfca-modal .cfca-info-item-email .value a,
.cfca-modal .cfca-info-item-email .value,
.cfca-modal .cfca-info-item-email .value a{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  font-size:.98rem!important;
}
#cfca-modal .cfca-fechas-grid-v2,
.cfca-modal .cfca-fechas-grid-v2{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;
}
#cfca-modal .cfca-info-item-date,
.cfca-modal .cfca-info-item-date{
  background:linear-gradient(180deg,#f0fbf4,#ffffff)!important;
  border-color:#cfead8!important;
}
#cfca-modal .cfca-map-button,
.cfca-modal .cfca-map-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(520px,100%)!important;
  min-height:46px!important;
  margin:14px auto 0!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#0f5132,#198754)!important;
  color:#ffffff!important;
  font-weight:950!important;
  text-decoration:none!important;
  box-shadow:0 12px 24px rgba(15,81,50,.18)!important;
}
#cfca-modal .cfca-poster-card,
.cfca-modal .cfca-poster-card{
  background:#ffffff!important;
  border:1px solid #d9eadf!important;
  border-radius:20px!important;
  box-shadow:0 8px 22px rgba(15,81,50,.07)!important;
}
#cfca-modal .cfca-poster-card img,
.cfca-modal .cfca-poster-card img{
  border-radius:16px!important;
  object-fit:cover!important;
}
@media(max-width:900px){
  #cfca-modal .cfca-modal-grid-2,
  .cfca-modal .cfca-modal-grid-2{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:640px){
  #cfca-modal .cfca-inner-grid,
  .cfca-modal .cfca-inner-grid,
  #cfca-modal .cfca-fechas-grid-v2,
  .cfca-modal .cfca-fechas-grid-v2{
    grid-template-columns:1fr!important;
  }
  #cfca-modal .cfca-info-card,
  .cfca-modal .cfca-info-card{
    padding:13px!important;
    border-radius:18px!important;
  }
}

/* =========================================================
   CFCA 7.5.16 · Entrega 3
   Documentos oficiales + footer de acciones del modal
   ========================================================= */
.cfca-modal .cfca-documents-section{
  margin:18px 0!important;
  padding:16px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#ffffff,#f8fcf9)!important;
  border:1px solid #d9eadf!important;
  box-shadow:0 10px 26px rgba(15,81,50,.07)!important;
  color:#17382a!important;
}
.cfca-modal .cfca-section-title-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0 0 12px!important;
}
.cfca-modal .cfca-section-title-row h4{
  margin:0!important;
  color:#0f5132!important;
  font-size:1.05rem!important;
  font-weight:950!important;
  line-height:1.2!important;
}
.cfca-modal .cfca-section-title-row span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:#e8f5e9!important;
  color:#0f5132!important;
  font-size:.76rem!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.cfca-modal .cfca-documents-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:12px!important;
}
.cfca-modal .cfca-doc-card{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 24px!important;
  align-items:center!important;
  gap:11px!important;
  min-height:78px!important;
  padding:12px!important;
  border-radius:17px!important;
  background:#fff!important;
  border:1px solid #d9eadf!important;
  color:#17382a!important;
  text-decoration:none!important;
  box-shadow:0 6px 16px rgba(15,81,50,.06)!important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease!important;
  overflow:hidden!important;
}
.cfca-modal .cfca-doc-card:hover{
  transform:translateY(-2px)!important;
  border-color:#0f5132!important;
  box-shadow:0 12px 28px rgba(15,81,50,.12)!important;
  color:#17382a!important;
}
.cfca-modal .cfca-doc-icon{
  width:46px!important;
  height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:15px!important;
  background:#eefaf2!important;
  color:#0f5132!important;
  font-size:1.35rem!important;
  flex:0 0 auto!important;
}
.cfca-modal .cfca-doc-copy{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  text-align:left!important;
}
.cfca-modal .cfca-doc-copy strong{
  display:block!important;
  color:#0f5132!important;
  font-size:.93rem!important;
  font-weight:950!important;
  line-height:1.15!important;
  overflow-wrap:anywhere!important;
}
.cfca-modal .cfca-doc-copy em{
  display:block!important;
  margin-top:3px!important;
  color:#637b70!important;
  font-size:.78rem!important;
  font-style:normal!important;
  font-weight:750!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}
.cfca-modal .cfca-doc-arrow{
  color:#0f5132!important;
  font-weight:950!important;
  opacity:.75!important;
}
.cfca-modal .cfca-doc-resolucion .cfca-doc-icon{background:#eefaf2!important;color:#0f5132!important;}
.cfca-modal .cfca-doc-web .cfca-doc-icon{background:#eff6ff!important;color:#1d4ed8!important;}
.cfca-modal .cfca-doc-flyer .cfca-doc-icon{background:#fff7ed!important;color:#c2410c!important;}
.cfca-modal .cfca-doc-chess .cfca-doc-icon{background:#f5f3ff!important;color:#6d28d9!important;}
.cfca-modal .cfca-doc-lichess .cfca-doc-icon{background:#f8fafc!important;color:#334155!important;}

.cfca-modal .cfca-event-footer-actions,
.cfca-modal .cfca-modal-footer-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:18px!important;
  padding:14px!important;
  border-top:1px solid #d9eadf!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(8px)!important;
  border-radius:0 0 18px 18px!important;
}
.cfca-modal .cfca-footer-action,
.cfca-modal #modal-imprimir,
.cfca-modal #modal-google,
.cfca-modal #modal-compartir{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:42px!important;
  height:42px!important;
  min-width:132px!important;
  padding:0 14px!important;
  border-radius:14px!important;
  font-size:.86rem!important;
  font-weight:950!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.cfca-modal #modal-compartir,
.cfca-modal .cfca-footer-whatsapp{
  background:linear-gradient(135deg,#0f5132,#198754)!important;
  color:#fff!important;
  border:1px solid #198754!important;
}
@media(max-width:760px){
  .cfca-modal .cfca-section-title-row{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .cfca-modal .cfca-documents-grid{
    grid-template-columns:1fr!important;
  }
  .cfca-modal .cfca-event-footer-actions,
  .cfca-modal .cfca-modal-footer-actions{
    justify-content:center!important;
    flex-wrap:wrap!important;
  }
  .cfca-modal .cfca-footer-action,
  .cfca-modal #modal-imprimir,
  .cfca-modal #modal-google,
  .cfca-modal #modal-compartir{
    flex:1 1 160px!important;
  }
}

/* =========================================================
   CFCA 7.5.16 · ENTREGA 4
   Timeline + sede premium + CTA + directorio institucional
   ========================================================= */
#cfca-modal .cfca-event-hero,
.cfca-modal .cfca-event-hero{
  position:relative!important;
  overflow:hidden!important;
}
#cfca-modal .cfca-event-hero::after,
.cfca-modal .cfca-event-hero::after{
  content:''!important;
  position:absolute!important;
  inset:auto -40px -70px auto!important;
  width:210px!important;
  height:210px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.12)!important;
  pointer-events:none!important;
}
#cfca-modal .cfca-hero-primary-cta,
.cfca-modal .cfca-hero-primary-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 18px!important;
  margin-top:10px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.45)!important;
  background:#ffffff!important;
  color:#0f5132!important;
  font-size:.92rem!important;
  font-weight:950!important;
  text-decoration:none!important;
  box-shadow:0 12px 24px rgba(0,0,0,.16)!important;
  cursor:pointer!important;
}
#cfca-modal .cfca-hero-primary-cta:hover,
.cfca-modal .cfca-hero-primary-cta:hover{
  transform:translateY(-1px)!important;
}
#cfca-modal .cfca-event-ecosystem,
.cfca-modal .cfca-event-ecosystem{
  position:relative!important;
  margin:14px 14px 12px!important;
  padding:14px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#ffffff,#f7fcf9)!important;
  border:1px solid #d9eadf!important;
  box-shadow:0 10px 26px rgba(15,81,50,.08)!important;
}
#cfca-modal .cfca-event-ecosystem .cfca-eco-title,
.cfca-modal .cfca-event-ecosystem .cfca-eco-title{
  grid-column:1/-1!important;
  color:#0f5132!important;
  font-weight:950!important;
  font-size:.84rem!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  margin:0 0 2px!important;
}
#cfca-modal .cfca-eco-card,
.cfca-modal .cfca-eco-card{
  min-height:92px!important;
}
#cfca-modal .cfca-eco-card .cfca-logo-liga,
.cfca-modal .cfca-eco-card .cfca-logo-liga{
  width:68px!important;
  height:68px!important;
}
#cfca-modal .cfca-event-timeline,
.cfca-modal .cfca-event-timeline{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  margin:10px 0 14px!important;
  padding:10px!important;
  border-radius:18px!important;
  background:#f8fcf9!important;
  border:1px solid #d9eadf!important;
}
#cfca-modal .cfca-timeline-step,
.cfca-modal .cfca-timeline-step{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:42px!important;
  padding:8px 9px!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#637b70!important;
  border:1px solid #e1efe6!important;
  font-size:.76rem!important;
  font-weight:900!important;
  text-align:center!important;
}
#cfca-modal .cfca-timeline-step span,
.cfca-modal .cfca-timeline-step span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
  border-radius:50%!important;
  background:#edf2f7!important;
  color:#64748b!important;
  flex:0 0 auto!important;
}
#cfca-modal .cfca-timeline-step.is-done,
.cfca-modal .cfca-timeline-step.is-done{
  color:#0f5132!important;
  border-color:#c8ead2!important;
  background:#f0fdf4!important;
}
#cfca-modal .cfca-timeline-step.is-done span,
.cfca-modal .cfca-timeline-step.is-done span{
  background:#0f5132!important;
  color:#fff!important;
}
#cfca-modal .cfca-timeline-step.is-active,
.cfca-modal .cfca-timeline-step.is-active{
  color:#0b4f8a!important;
  border-color:#bfdbfe!important;
  background:#eff6ff!important;
  box-shadow:0 8px 18px rgba(37,99,235,.12)!important;
}
#cfca-modal .cfca-timeline-step.is-active span,
.cfca-modal .cfca-timeline-step.is-active span{
  background:#2563eb!important;
  color:#fff!important;
}
#cfca-modal .cfca-venue-premium,
.cfca-modal .cfca-venue-premium{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 14px!important;
  padding:16px!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#ecfdf5,#ffffff)!important;
  border:1px solid #cdebd8!important;
  box-shadow:0 8px 22px rgba(15,81,50,.08)!important;
  color:#0f2f22!important;
}
#cfca-modal .cfca-venue-premium span,
.cfca-modal .cfca-venue-premium span{
  display:block!important;
  color:#637b70!important;
  font-size:.74rem!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  margin-bottom:3px!important;
}
#cfca-modal .cfca-venue-premium strong,
.cfca-modal .cfca-venue-premium strong{
  display:block!important;
  color:#0f5132!important;
  font-size:1.12rem!important;
  line-height:1.2!important;
}
#cfca-modal .cfca-venue-premium p,
.cfca-modal .cfca-venue-premium p{
  margin:5px 0 0!important;
  color:#334155!important;
  font-weight:750!important;
  text-align:left!important;
}
#cfca-modal .cfca-venue-premium a,
.cfca-modal .cfca-venue-premium a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  background:#0f5132!important;
  color:#fff!important;
  font-weight:950!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
@media(max-width:900px){
  #cfca-modal .cfca-event-timeline,
  .cfca-modal .cfca-event-timeline{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  #cfca-modal .cfca-event-ecosystem,
  .cfca-modal .cfca-event-ecosystem{
    margin:10px 8px!important;
    padding:12px!important;
  }
  #cfca-modal .cfca-event-timeline,
  .cfca-modal .cfca-event-timeline{
    grid-template-columns:1fr!important;
  }
  #cfca-modal .cfca-venue-premium,
  .cfca-modal .cfca-venue-premium{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  #cfca-modal .cfca-venue-premium a,
  .cfca-modal .cfca-venue-premium a{
    width:100%!important;
  }
}

/* =========================================================
   CFCA 7.5.16 - ENTREGA 5 · Ahorro real de espacio modal
   - Footer en una sola línea: acciones izquierda, cerrar derecha.
   - Ecosistema sin título redundante.
   - Logos/íconos arriba y texto abajo para ganar ancho útil.
   ========================================================= */
#cfca-modal .cfca-modal-content,
.cfca-modal .cfca-modal-content{
  position:relative!important;
  overflow:hidden!important;
}

#cfca-modal .cfca-modal-close,
.cfca-modal .cfca-modal-close{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0 14px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  background:#f8fafc!important;
  color:#0f5132!important;
  border:1px solid #d9eadf!important;
  font-size:.86rem!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:none!important;
  text-decoration:none!important;
  flex:0 0 auto!important;
}
#cfca-modal .cfca-modal-close:hover,
.cfca-modal .cfca-modal-close:hover{
  background:#e8f5e9!important;
  transform:translateY(-1px)!important;
}

#cfca-modal .cfca-modal-footer-actions,
#cfca-modal .cfca-event-footer-actions,
.cfca-modal .cfca-modal-footer-actions,
.cfca-modal .cfca-event-footer-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:10px 12px!important;
  min-height:54px!important;
  background:rgba(255,255,255,.96)!important;
  border-top:1px solid #d9eadf!important;
}
#cfca-modal .cfca-event-footer-main-actions,
.cfca-modal .cfca-event-footer-main-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
#cfca-modal .cfca-footer-action,
.cfca-modal .cfca-footer-action{
  min-height:38px!important;
  height:38px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  font-size:.84rem!important;
  white-space:nowrap!important;
}

/* Ecosistema más compacto: sin encabezado y con logo arriba */
#cfca-modal .cfca-event-ecosystem,
.cfca-modal .cfca-event-ecosystem{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;
  gap:10px!important;
  margin:10px 14px 8px!important;
  padding:10px!important;
  border-radius:18px!important;
}
#cfca-modal .cfca-event-ecosystem .cfca-eco-title,
.cfca-modal .cfca-event-ecosystem .cfca-eco-title{
  display:none!important;
}
#cfca-modal .cfca-eco-card,
.cfca-modal .cfca-eco-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  min-height:112px!important;
  padding:10px 9px!important;
  text-align:center!important;
}
#cfca-modal .cfca-eco-card .cfca-logo-liga,
.cfca-modal .cfca-eco-card .cfca-logo-liga,
#cfca-modal .cfca-eco-card img,
.cfca-modal .cfca-eco-card img,
#cfca-modal .cfca-eco-placeholder,
.cfca-modal .cfca-eco-placeholder{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  object-fit:contain!important;
  margin:0 auto!important;
  flex:0 0 auto!important;
}
#cfca-modal .cfca-eco-copy,
.cfca-modal .cfca-eco-copy{
  width:100%!important;
  min-width:0!important;
}
#cfca-modal .cfca-eco-card small,
.cfca-modal .cfca-eco-card small{
  display:block!important;
  width:100%!important;
  margin:0 0 3px!important;
  font-size:.64rem!important;
  line-height:1.05!important;
  text-align:center!important;
}
#cfca-modal .cfca-eco-card strong,
.cfca-modal .cfca-eco-card strong{
  display:block!important;
  width:100%!important;
  font-size:.82rem!important;
  line-height:1.18!important;
  text-align:center!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

@media(max-width:720px){
  #cfca-modal .cfca-modal-footer-actions,
  #cfca-modal .cfca-event-footer-actions,
  .cfca-modal .cfca-modal-footer-actions,
  .cfca-modal .cfca-event-footer-actions{
    align-items:stretch!important;
  }
  #cfca-modal .cfca-event-footer-main-actions,
  .cfca-modal .cfca-event-footer-main-actions{
    flex:1 1 auto!important;
  }
  #cfca-modal .cfca-footer-action,
  .cfca-modal .cfca-footer-action{
    flex:1 1 120px!important;
  }
  #cfca-modal .cfca-footer-close-inline,
  .cfca-modal .cfca-footer-close-inline{
    flex:0 0 auto!important;
  }
}
@media(max-width:480px){
  #cfca-modal .cfca-modal-footer-actions,
  #cfca-modal .cfca-event-footer-actions,
  .cfca-modal .cfca-modal-footer-actions,
  .cfca-modal .cfca-event-footer-actions{
    flex-wrap:wrap!important;
  }
  #cfca-modal .cfca-footer-close-inline,
  .cfca-modal .cfca-footer-close-inline{
    width:100%!important;
  }
}

/* =========================================================
   CFCA 7.5.16 - ENTREGA 6 · Modal compacto premium
   - Quita el botón Cerrar duplicado/solitario del pie universal.
   - Compacta hero, pestañas, timeline, documentos y espacios verticales.
   - Mantiene el Cerrar integrado a la derecha en la barra principal.
   ========================================================= */

/* Ocultar/eliminar el cierre universal que queda solo al final */
#cfca-modal .cfca-modal-footer-close-wrap,
.cfca-modal .cfca-modal-footer-close-wrap,
#cfca-modal .cfca-modal-footer-close,
.cfca-modal .cfca-modal-footer-close{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}

/* Modal más compacto y con menos aire vertical */
#cfca-modal .cfca-modal-content,
.cfca-modal .cfca-modal-content{
  width:min(96vw,1240px)!important;
  max-height:94vh!important;
  border-radius:20px!important;
}

#cfca-modal .cfca-event-hero,
#cfca-modal .cfca-event-hero-compact,
.cfca-modal .cfca-event-hero,
.cfca-modal .cfca-event-hero-compact{
  padding:12px 56px 10px 18px!important;
  margin-bottom:6px!important;
  min-height:auto!important;
  border-radius:16px!important;
}

#cfca-modal .cfca-event-hero-main,
.cfca-modal .cfca-event-hero-main{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}

#cfca-modal .cfca-event-kicker,
.cfca-modal .cfca-event-kicker{
  font-size:.68rem!important;
  line-height:1!important;
  margin-bottom:3px!important;
}

#cfca-modal .cfca-event-title-wrap h2,
.cfca-modal .cfca-event-title-wrap h2,
#cfca-modal .cfca-event-title,
.cfca-modal .cfca-event-title{
  font-size:clamp(22px,2.45vw,34px)!important;
  line-height:1.05!important;
  margin:0!important;
  max-width:100%!important;
}

#cfca-modal .cfca-event-status-pill,
.cfca-modal .cfca-event-status-pill{
  min-height:28px!important;
  padding:5px 10px!important;
  border-radius:999px!important;
  font-size:.74rem!important;
  white-space:nowrap!important;
}

/* Franja del hero más baja: chips + contador en línea compacta */
#cfca-modal .cfca-event-chips,
#cfca-modal .cfca-event-premium-row,
#cfca-modal .cfca-acciones-premium,
.cfca-modal .cfca-event-chips,
.cfca-modal .cfca-event-premium-row,
.cfca-modal .cfca-acciones-premium{
  margin-top:6px!important;
  gap:6px!important;
  max-height:38px!important;
  overflow:hidden!important;
}

#cfca-modal .cfca-event-chips > *,
#cfca-modal .cfca-event-premium-row > *,
#cfca-modal .cfca-acciones-premium > *,
.cfca-modal .cfca-event-chips > *,
.cfca-modal .cfca-event-premium-row > *,
.cfca-modal .cfca-acciones-premium > *{
  min-height:28px!important;
  padding:4px 9px!important;
  font-size:.72rem!important;
  line-height:1.05!important;
}

#cfca-modal .cfca-hero-cta-v2,
.cfca-modal .cfca-hero-cta-v2{
  margin-top:7px!important;
}
#cfca-modal .cfca-hero-cta-v2 a,
#cfca-modal .cfca-hero-cta-v2 button,
.cfca-modal .cfca-hero-cta-v2 a,
.cfca-modal .cfca-hero-cta-v2 button{
  min-height:34px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  font-size:.82rem!important;
}

/* Ecosistema: más compacto todavía */
#cfca-modal .cfca-event-ecosystem,
.cfca-modal .cfca-event-ecosystem{
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  gap:8px!important;
  margin:7px 12px 6px!important;
  padding:8px!important;
  border-radius:16px!important;
}
#cfca-modal .cfca-eco-card,
.cfca-modal .cfca-eco-card{
  min-height:96px!important;
  padding:8px 7px!important;
  gap:5px!important;
  border-radius:14px!important;
}
#cfca-modal .cfca-eco-card .cfca-logo-liga,
.cfca-modal .cfca-eco-card .cfca-logo-liga,
#cfca-modal .cfca-eco-card img,
.cfca-modal .cfca-eco-card img,
#cfca-modal .cfca-eco-placeholder,
.cfca-modal .cfca-eco-placeholder{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  padding:4px!important;
}
#cfca-modal .cfca-eco-card small,
.cfca-modal .cfca-eco-card small{
  font-size:.6rem!important;
  margin-bottom:2px!important;
}
#cfca-modal .cfca-eco-card strong,
.cfca-modal .cfca-eco-card strong{
  font-size:.78rem!important;
  line-height:1.12!important;
}

/* Body y pestañas compactas */
#cfca-modal .cfca-modal-body,
.cfca-modal .cfca-modal-body{
  padding:8px 12px 70px!important;
  max-height:calc(94vh - 170px)!important;
}
#cfca-modal .cfca-modal-tabs,
.cfca-modal .cfca-modal-tabs{
  top:0!important;
  padding:6px!important;
  gap:6px!important;
  margin:0 0 8px!important;
  border-radius:14px!important;
  min-height:0!important;
}
#cfca-modal .cfca-modal-tab,
.cfca-modal .cfca-modal-tab,
#cfca-modal .cfca-modal-tabs button,
.cfca-modal .cfca-modal-tabs button{
  min-height:32px!important;
  height:32px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:.78rem!important;
  line-height:1!important;
}

/* Timeline compacto: una línea en escritorio */
#cfca-modal .cfca-event-timeline,
.cfca-modal .cfca-event-timeline{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0 0 9px!important;
  padding:8px!important;
  border-radius:16px!important;
}
#cfca-modal .cfca-timeline-step,
.cfca-modal .cfca-timeline-step{
  min-height:50px!important;
  padding:7px 6px!important;
  border-radius:13px!important;
  gap:3px!important;
}
#cfca-modal .cfca-timeline-step b,
.cfca-modal .cfca-timeline-step b{
  font-size:.78rem!important;
  line-height:1.05!important;
}
#cfca-modal .cfca-timeline-step small,
.cfca-modal .cfca-timeline-step small{
  font-size:.62rem!important;
  line-height:1.05!important;
}

/* Tarjetas internas más bajas */
#cfca-modal .cfca-modal-grid-2,
.cfca-modal .cfca-modal-grid-2{
  gap:10px!important;
}
#cfca-modal .cfca-info-card,
#cfca-modal .cfca-detail-card,
#cfca-modal .cfca-card,
.cfca-modal .cfca-info-card,
.cfca-modal .cfca-detail-card,
.cfca-modal .cfca-card{
  padding:12px!important;
  border-radius:16px!important;
}
#cfca-modal .cfca-card-title,
.cfca-modal .cfca-card-title{
  margin-bottom:8px!important;
}
#cfca-modal .cfca-card-title h3,
.cfca-modal .cfca-card-title h3{
  font-size:1rem!important;
  line-height:1.1!important;
}
#cfca-modal .cfca-inner-grid,
.cfca-modal .cfca-inner-grid{
  gap:7px!important;
}
#cfca-modal .cfca-info-item,
.cfca-modal .cfca-info-item{
  min-height:44px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
}

/* Sede y documentos compactos */
#cfca-modal .cfca-venue-premium,
.cfca-modal .cfca-venue-premium{
  margin:0 0 9px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  gap:10px!important;
}
#cfca-modal .cfca-venue-premium a,
.cfca-modal .cfca-venue-premium a{
  min-height:34px!important;
  padding:0 13px!important;
  font-size:.8rem!important;
}
#cfca-modal .cfca-documents-grid,
.cfca-modal .cfca-documents-grid,
#cfca-modal .cfca-links-container,
.cfca-modal .cfca-links-container{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(155px,1fr))!important;
  gap:8px!important;
}
#cfca-modal .cfca-doc-card,
.cfca-modal .cfca-doc-card,
#cfca-modal .cfca-link-button,
.cfca-modal .cfca-link-button{
  min-height:58px!important;
  padding:9px 10px!important;
  border-radius:14px!important;
}
#cfca-modal .cfca-doc-icon,
.cfca-modal .cfca-doc-icon{
  width:30px!important;
  height:30px!important;
  font-size:1rem!important;
}
#cfca-modal .cfca-doc-copy strong,
.cfca-modal .cfca-doc-copy strong{
  font-size:.82rem!important;
  line-height:1.08!important;
}
#cfca-modal .cfca-doc-copy em,
.cfca-modal .cfca-doc-copy em{
  font-size:.68rem!important;
  line-height:1.08!important;
}

/* Barra inferior: una sola línea real y sin botón duplicado */
#cfca-modal .cfca-modal-footer-actions,
#cfca-modal .cfca-event-footer-actions,
.cfca-modal .cfca-modal-footer-actions,
.cfca-modal .cfca-event-footer-actions{
  min-height:48px!important;
  padding:7px 10px!important;
  gap:8px!important;
}
#cfca-modal .cfca-footer-action,
.cfca-modal .cfca-footer-action,
#cfca-modal .cfca-footer-close-inline,
.cfca-modal .cfca-footer-close-inline{
  height:34px!important;
  min-height:34px!important;
  padding:0 11px!important;
  font-size:.78rem!important;
}

@media(max-width:900px){
  #cfca-modal .cfca-event-timeline,
  .cfca-modal .cfca-event-timeline{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  #cfca-modal .cfca-event-hero,
  #cfca-modal .cfca-event-hero-compact,
  .cfca-modal .cfca-event-hero,
  .cfca-modal .cfca-event-hero-compact{
    padding:12px 44px 10px 12px!important;
  }
  #cfca-modal .cfca-event-hero-main,
  .cfca-modal .cfca-event-hero-main{
    align-items:flex-start!important;
  }
  #cfca-modal .cfca-event-timeline,
  .cfca-modal .cfca-event-timeline{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  #cfca-modal .cfca-modal-footer-actions,
  #cfca-modal .cfca-event-footer-actions,
  .cfca-modal .cfca-modal-footer-actions,
  .cfca-modal .cfca-event-footer-actions{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
  }
  #cfca-modal .cfca-event-footer-main-actions,
  .cfca-modal .cfca-event-footer-main-actions{
    flex-wrap:nowrap!important;
  }
  #cfca-modal .cfca-footer-action span,
  #cfca-modal .cfca-footer-close-inline span,
  .cfca-modal .cfca-footer-action span,
  .cfca-modal .cfca-footer-close-inline span{
    display:none!important;
  }
}

/* =========================================================
   CFCA 7.5.16 · ENTREGA 7
   Compactación premium: email full width, sede limpia, timeline fino
   ========================================================= */

/* Hero todavía más compacto */
#cfca-modal .cfca-event-hero,
#cfca-modal .cfca-event-hero-compact,
.cfca-modal .cfca-event-hero,
.cfca-modal .cfca-event-hero-compact{
  padding:12px 64px 10px 18px!important;
  min-height:0!important;
  border-radius:18px!important;
}
#cfca-modal .cfca-event-hero-main,
.cfca-modal .cfca-event-hero-main{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
#cfca-modal .cfca-event-title-wrap h2,
.cfca-modal .cfca-event-title-wrap h2{
  font-size:clamp(24px,2.35vw,36px)!important;
  line-height:1.06!important;
  margin:0!important;
}
#cfca-modal .cfca-event-kicker,
.cfca-modal .cfca-event-kicker,
#cfca-modal .cfca-event-chips,
.cfca-modal .cfca-event-chips{
  display:none!important;
}
#cfca-modal .cfca-event-status-pill,
.cfca-modal .cfca-event-status-pill{
  min-height:30px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  font-size:.74rem!important;
  white-space:nowrap!important;
}
#cfca-modal .cfca-event-primary-action,
#cfca-modal .cfca-hero-primary-action,
#cfca-modal .cfca-btn-inscribirse,
#cfca-modal .cfca-btn-participar,
.cfca-modal .cfca-event-primary-action,
.cfca-modal .cfca-hero-primary-action,
.cfca-modal .cfca-btn-inscribirse,
.cfca-modal .cfca-btn-participar{
  min-height:34px!important;
  height:34px!important;
  padding:0 14px!important;
  font-size:.82rem!important;
  border-radius:999px!important;
}

/* Ecosistema: más fino, nombre protagonista, rol abajo */
#cfca-modal .cfca-event-ecosystem,
.cfca-modal .cfca-event-ecosystem{
  gap:8px!important;
  margin:8px 0 10px!important;
  padding:0 8px!important;
}
#cfca-modal .cfca-eco-card,
.cfca-modal .cfca-eco-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  min-height:82px!important;
  padding:8px 10px!important;
  gap:4px!important;
  border-radius:14px!important;
  border-width:1px!important;
  box-shadow:0 5px 14px rgba(15,81,50,.05)!important;
}
#cfca-modal .cfca-eco-card img,
.cfca-modal .cfca-eco-card img,
#cfca-modal .cfca-eco-placeholder,
.cfca-modal .cfca-eco-placeholder{
  width:42px!important;
  height:42px!important;
  margin:0 auto 2px!important;
  padding:3px!important;
  border-radius:11px!important;
}
#cfca-modal .cfca-eco-card small,
.cfca-modal .cfca-eco-card small{
  order:3!important;
  margin:1px 0 0!important;
  font-size:.58rem!important;
  line-height:1!important;
  letter-spacing:.07em!important;
  opacity:.78!important;
}
#cfca-modal .cfca-eco-card strong,
.cfca-modal .cfca-eco-card strong{
  order:2!important;
  font-size:.82rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  color:#0f5132!important;
  max-width:100%!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
#cfca-modal .cfca-eco-organiza,
#cfca-modal .cfca-eco-apoya,
#cfca-modal .cfca-eco-avala,
#cfca-modal .cfca-eco-patrocina,
.cfca-modal .cfca-eco-organiza,
.cfca-modal .cfca-eco-apoya,
.cfca-modal .cfca-eco-avala,
.cfca-modal .cfca-eco-patrocina{
  border-top-width:3px!important;
}

/* Tabs más ligeras */
#cfca-modal .cfca-modal-tabs,
.cfca-modal .cfca-modal-tabs{
  padding:5px!important;
  margin:0 0 7px!important;
  min-height:0!important;
}
#cfca-modal .cfca-modal-tab,
.cfca-modal .cfca-modal-tab,
#cfca-modal .cfca-modal-tabs button,
.cfca-modal .cfca-modal-tabs button{
  height:30px!important;
  min-height:30px!important;
  padding:0 12px!important;
  font-size:.76rem!important;
}

/* Timeline más fino y menos alto */
#cfca-modal .cfca-event-timeline,
.cfca-modal .cfca-event-timeline{
  padding:6px!important;
  gap:6px!important;
  margin:0 0 7px!important;
  border-radius:14px!important;
}
#cfca-modal .cfca-timeline-step,
.cfca-modal .cfca-timeline-step{
  min-height:38px!important;
  padding:5px 6px!important;
  border-radius:11px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
}
#cfca-modal .cfca-timeline-step small,
.cfca-modal .cfca-timeline-step small{
  display:none!important;
}
#cfca-modal .cfca-timeline-step b,
.cfca-modal .cfca-timeline-step b{
  font-size:.74rem!important;
  line-height:1!important;
  white-space:nowrap!important;
}

/* Sede: ocultar URLs crudas de Maps y darle protagonismo al dato útil */
#cfca-modal .cfca-venue-premium,
.cfca-modal .cfca-venue-premium{
  margin:0 0 8px!important;
  padding:10px 12px!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
}
#cfca-modal .cfca-venue-premium h3,
#cfca-modal .cfca-venue-premium .cfca-venue-title,
.cfca-modal .cfca-venue-premium h3,
.cfca-modal .cfca-venue-premium .cfca-venue-title{
  margin:0!important;
  font-size:1.05rem!important;
  line-height:1.1!important;
}
#cfca-modal .cfca-venue-premium p,
#cfca-modal .cfca-venue-premium .cfca-venue-address,
.cfca-modal .cfca-venue-premium p,
.cfca-modal .cfca-venue-premium .cfca-venue-address{
  margin:3px 0 0!important;
  font-size:.92rem!important;
  line-height:1.2!important;
}
#cfca-modal .cfca-venue-premium p a[href*="maps.app"],
#cfca-modal .cfca-venue-premium p a[href*="google"],
#cfca-modal .cfca-venue-premium .cfca-venue-address a[href*="maps.app"],
#cfca-modal .cfca-venue-premium .cfca-venue-address a[href*="google"],
.cfca-modal .cfca-venue-premium p a[href*="maps.app"],
.cfca-modal .cfca-venue-premium p a[href*="google"],
.cfca-modal .cfca-venue-premium .cfca-venue-address a[href*="maps.app"],
.cfca-modal .cfca-venue-premium .cfca-venue-address a[href*="google"]{
  display:none!important;
}
#cfca-modal .cfca-venue-premium a,
.cfca-modal .cfca-venue-premium a{
  height:32px!important;
  min-height:32px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}

/* Grids más eficientes */
#cfca-modal .cfca-modal-body,
.cfca-modal .cfca-modal-body{
  padding:7px 12px 62px!important;
  max-height:calc(94vh - 152px)!important;
}
#cfca-modal .cfca-modal-grid-2,
.cfca-modal .cfca-modal-grid-2{
  gap:9px!important;
  margin-bottom:9px!important;
}
#cfca-modal .cfca-info-card,
.cfca-modal .cfca-info-card{
  padding:10px!important;
  border-radius:15px!important;
}
#cfca-modal .cfca-info-card .cfca-card-title,
.cfca-modal .cfca-info-card .cfca-card-title{
  margin:0 0 7px!important;
  padding-bottom:7px!important;
}
#cfca-modal .cfca-info-card .cfca-card-title h3,
.cfca-modal .cfca-info-card .cfca-card-title h3{
  font-size:.95rem!important;
}
#cfca-modal .cfca-inner-grid,
.cfca-modal .cfca-inner-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px!important;
}
#cfca-modal .cfca-info-item,
.cfca-modal .cfca-info-item{
  min-height:42px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
}
#cfca-modal .cfca-info-item .label,
.cfca-modal .cfca-info-item .label{
  font-size:.63rem!important;
}
#cfca-modal .cfca-info-item .value,
#cfca-modal .cfca-info-item .value a,
.cfca-modal .cfca-info-item .value,
.cfca-modal .cfca-info-item .value a{
  font-size:.88rem!important;
  line-height:1.22!important;
}

/* Correos siempre ocupan toda la fila y no se parten innecesariamente */
#cfca-modal .cfca-info-item-email,
.cfca-modal .cfca-info-item-email,
#cfca-modal .cfca-liga-line-email,
.cfca-modal .cfca-liga-line-email{
  grid-column:1/-1!important;
}
#cfca-modal .cfca-info-item-email .value,
#cfca-modal .cfca-info-item-email .value a,
.cfca-modal .cfca-info-item-email .value,
.cfca-modal .cfca-info-item-email .value a,
#cfca-modal .cfca-liga-line-email b,
#cfca-modal .cfca-liga-line-email a,
.cfca-modal .cfca-liga-line-email b,
.cfca-modal .cfca-liga-line-email a{
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  font-size:.9rem!important;
  line-height:1.2!important;
  width:100%!important;
}
#cfca-modal .cfca-liga-lines,
.cfca-modal .cfca-liga-lines{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px!important;
}
#cfca-modal .cfca-liga-line,
.cfca-modal .cfca-liga-line{
  min-height:42px!important;
  padding:8px 10px!important;
  border-radius:12px!important;
}

/* Validaciones oficiales como chips, no como tarjeta alta */
#cfca-modal .cfca-validaciones-oficiales,
#cfca-modal .cfca-official-validations,
#cfca-modal .cfca-validaciones-card,
.cfca-modal .cfca-validaciones-oficiales,
.cfca-modal .cfca-official-validations,
.cfca-modal .cfca-validaciones-card{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px!important;
  min-height:0!important;
  padding:8px 10px!important;
  margin:0 0 8px!important;
  border-radius:14px!important;
}
#cfca-modal .cfca-validaciones-oficiales h3,
#cfca-modal .cfca-official-validations h3,
#cfca-modal .cfca-validaciones-card h3,
.cfca-modal .cfca-validaciones-oficiales h3,
.cfca-modal .cfca-official-validations h3,
.cfca-modal .cfca-validaciones-card h3{
  display:none!important;
}
#cfca-modal .cfca-validacion-chip,
#cfca-modal .cfca-validation-chip,
#cfca-modal .cfca-validaciones-oficiales span,
#cfca-modal .cfca-official-validations span,
.cfca-modal .cfca-validacion-chip,
.cfca-modal .cfca-validation-chip,
.cfca-modal .cfca-validaciones-oficiales span,
.cfca-modal .cfca-official-validations span{
  min-height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:.74rem!important;
  font-weight:900!important;
}

/* Documentos y enlaces más compactos */
#cfca-modal .cfca-documents-grid,
#cfca-modal .cfca-links-container,
.cfca-modal .cfca-documents-grid,
.cfca-modal .cfca-links-container{
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;
  gap:7px!important;
}
#cfca-modal .cfca-doc-card,
#cfca-modal .cfca-link-button,
.cfca-modal .cfca-doc-card,
.cfca-modal .cfca-link-button{
  min-height:50px!important;
  padding:7px 9px!important;
  border-radius:12px!important;
}

/* Footer: cerrar como acción discreta a la derecha */
#cfca-modal .cfca-modal-footer-actions,
#cfca-modal .cfca-event-footer-actions,
.cfca-modal .cfca-modal-footer-actions,
.cfca-modal .cfca-event-footer-actions{
  min-height:44px!important;
  padding:6px 10px!important;
}
#cfca-modal .cfca-footer-close-inline,
.cfca-modal .cfca-footer-close-inline{
  margin-left:auto!important;
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  padding:0!important;
  border-radius:999px!important;
}
#cfca-modal .cfca-footer-close-inline span,
.cfca-modal .cfca-footer-close-inline span{
  display:none!important;
}
#cfca-modal .cfca-footer-close-inline::before,
.cfca-modal .cfca-footer-close-inline::before{
  content:'×'!important;
  font-size:1.15rem!important;
  line-height:1!important;
}

@media(max-width:760px){
  #cfca-modal .cfca-event-hero,
  #cfca-modal .cfca-event-hero-compact,
  .cfca-modal .cfca-event-hero,
  .cfca-modal .cfca-event-hero-compact{
    padding:10px 48px 9px 12px!important;
  }
  #cfca-modal .cfca-event-title-wrap h2,
  .cfca-modal .cfca-event-title-wrap h2{
    font-size:clamp(20px,5.4vw,28px)!important;
  }
  #cfca-modal .cfca-inner-grid,
  #cfca-modal .cfca-liga-lines,
  .cfca-modal .cfca-inner-grid,
  .cfca-modal .cfca-liga-lines{
    grid-template-columns:1fr!important;
  }
  #cfca-modal .cfca-venue-premium,
  .cfca-modal .cfca-venue-premium{
    grid-template-columns:1fr!important;
  }
  #cfca-modal .cfca-venue-premium a,
  .cfca-modal .cfca-venue-premium a{
    width:100%!important;
  }
}

/* =========================================================
   CFCA 7.5.16 - Entrega 8.1 · Competiciones múltiples
   Editor + modal público
   ========================================================= */
.cfca-competitions-editor{
  background:#fff!important;
  border:1px solid #d9eadf!important;
  border-radius:18px!important;
  padding:14px!important;
  box-shadow:0 8px 22px rgba(15,81,50,.06)!important;
}
.cfca-competitions-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:12px!important;
}
.cfca-competitions-head strong{display:block!important;color:#0f5132!important;font-size:1rem!important;font-weight:950!important;}
.cfca-competitions-head span{display:block!important;color:#637b70!important;font-size:.82rem!important;font-weight:700!important;margin-top:2px!important;}
.cfca-competitions-list{display:grid!important;gap:12px!important;}
.cfca-competitions-empty{
  padding:18px!important;
  border:1px dashed #b9d9c4!important;
  border-radius:16px!important;
  background:#f8fcf9!important;
  color:#637b70!important;
  font-weight:800!important;
  text-align:center!important;
}
.cfca-competition-row{
  background:#f8fcf9!important;
  border:1px solid #d9eadf!important;
  border-radius:16px!important;
  padding:12px!important;
}
.cfca-competition-row-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.cfca-competition-row-head strong{color:#0f5132!important;font-weight:950!important;}
.cfca-competition-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(160px,1fr))!important;
  gap:10px!important;
}
.cfca-competition-grid label{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  color:#17382a!important;
  font-size:.78rem!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}
.cfca-competition-grid label.wide{grid-column:1/-1!important;}
.cfca-competitions-public{
  margin:10px 14px 12px!important;
  padding:12px!important;
  border:1px solid #d9eadf!important;
  border-radius:16px!important;
  background:#ffffff!important;
  box-shadow:0 8px 22px rgba(15,81,50,.06)!important;
}
.cfca-competitions-public-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:8px!important;
}
.cfca-competitions-public-head strong{color:#0f5132!important;font-size:.95rem!important;font-weight:950!important;}
.cfca-competitions-public-head span{color:#637b70!important;font-size:.78rem!important;font-weight:850!important;}
.cfca-competition-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-bottom:10px!important;
}
.cfca-competition-tab{
  min-height:32px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  border:1px solid #cfe8d6!important;
  background:#f8fcf9!important;
  color:#0f5132!important;
  font-size:.78rem!important;
  font-weight:950!important;
  cursor:pointer!important;
}
.cfca-competition-tab.active{
  background:#0f5132!important;
  color:#fff!important;
  border-color:#0f5132!important;
}
.cfca-competition-panel{display:none!important;}
.cfca-competition-panel.active{display:block!important;}
.cfca-competition-panel[hidden]{display:none!important;}
.cfca-competition-panel-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:2px 0 10px!important;
  padding-bottom:9px!important;
  border-bottom:1px solid #e2f0e7!important;
}
.cfca-competition-panel-head div>span{
  display:block!important;
  color:#7b8f84!important;
  font-size:.65rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.cfca-competition-panel-head div>strong{
  display:block!important;
  margin-top:2px!important;
  color:#17382a!important;
  font-size:1.02rem!important;
  font-weight:950!important;
}
.cfca-competition-panel-head em{
  flex:0 0 auto!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  background:#e8f5e9!important;
  color:#0f5132!important;
  font-size:.72rem!important;
  font-style:normal!important;
  font-weight:950!important;
}
.cfca-competition-shared-note{
  margin-bottom:9px!important;
  padding:8px 10px!important;
  border:1px solid #f0dda1!important;
  border-radius:10px!important;
  background:#fff9e8!important;
  color:#6b5520!important;
  font-size:.76rem!important;
  font-weight:750!important;
}
.cfca-competition-data-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:8px!important;
}
.cfca-competition-data-grid .cfca-competition-data-wide{grid-column:1/-1!important;}
.cfca-competition-data-grid div{
  padding:9px 10px!important;
  border-radius:12px!important;
  background:#f8fcf9!important;
  border:1px solid #e2f0e7!important;
}
.cfca-competition-data-grid span{
  display:block!important;
  color:#637b70!important;
  font-size:.68rem!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  margin-bottom:3px!important;
}
.cfca-competition-data-grid strong{
  display:block!important;
  color:#17382a!important;
  font-size:.9rem!important;
  font-weight:950!important;
  overflow-wrap:anywhere!important;
}
.cfca-competition-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:10px!important;
}
.cfca-competition-links a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:#e8f5e9!important;
  color:#0f5132!important;
  text-decoration:none!important;
  font-size:.78rem!important;
  font-weight:950!important;
}
@media(max-width:760px){
  .cfca-competitions-head{align-items:flex-start!important;flex-direction:column!important;}
  .cfca-competitions-head .cfca-btn-primary{width:100%!important;}
  .cfca-competition-grid{grid-template-columns:1fr!important;}
  .cfca-competitions-public{margin:8px!important;padding:10px!important;}
  .cfca-competition-tabs{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:3px!important;}
  .cfca-competition-tab{flex:0 0 auto!important;}
  .cfca-competition-panel-head{align-items:flex-start!important;}
}


/* CFCA 10.5.0 · Horario por competición */
.cfca-competition-schedule-public{
  margin-top:10px!important;
  padding:10px!important;
  border:1px solid #e2f0e7!important;
  border-radius:13px!important;
  background:#fbfdfb!important;
}
.cfca-competition-schedule-title{
  color:#0f5132!important;
  font-size:.8rem!important;
  font-weight:950!important;
  margin-bottom:6px!important;
}
.cfca-competition-schedule-row{
  display:grid!important;
  grid-template-columns:90px minmax(140px,1fr) minmax(120px,1.3fr)!important;
  gap:8px!important;
  align-items:center!important;
  padding:7px 5px!important;
  border-top:1px solid #e8f1eb!important;
}
.cfca-competition-schedule-row:first-of-type{border-top:0!important}
.cfca-competition-schedule-row b{color:#174d2d!important;font-size:.78rem!important}
.cfca-competition-schedule-row span{color:#314d3d!important;font-size:.78rem!important}
.cfca-competition-schedule-row small{color:#6b7f72!important;font-size:.72rem!important}
@media(max-width:640px){
  .cfca-competition-schedule-row{grid-template-columns:1fr!important;gap:3px!important}
}
