/* Calendario FCA 10.6.0 · capa visual final consolidada */

/* ---- cfca-calendar-only-safe.css ---- */
/* Calendario FCA 9.3.1 estable: solo eventos */
#cfca-modal #vista-inscribirse,
#cfca-modal [data-cfca-modal-tab="inscripcion"],
#cfca-modal [data-cfca-modal-panel="inscripcion"],
#cfca-modal .cfca-participacion-hub,
#cfca-modal .cfca-inscripcion-beauty,
#cfca-modal [data-cfca-participacion-panel],
#cfca-modal [data-cfca-inscribir],
#cfca-modal .cfca-btn-inscribir{
  display:none!important;
}
#cfca-modal .cfca-modal-content{
  max-height:calc(100vh - 28px)!important;
  overflow:hidden!important;
}
#cfca-modal #modal-contenido{
  overflow:auto!important;
}
#cfca-modal .cfca-modal-tabs{
  display:grid!important;
  gap:7px!important;
}

/* ---- cfca-calendar-polish-932.css ---- */
#cfca-modal .cfca-modal-footer-actions,
#cfca-modal .cfca-event-footer-main-actions{display:none!important}

#cfca-modal .cfca-modal-content{
  width:min(1260px,calc(100vw - 38px))!important;
  max-width:1260px!important;
  height:min(780px,calc(100vh - 34px))!important;
  max-height:calc(100vh - 34px)!important;
  border:1px solid rgba(20,107,58,.22)!important;
  border-radius:22px!important;
  box-shadow:0 24px 70px rgba(9,49,28,.26)!important;
  background:#f4f8f5!important;
  overflow:hidden!important;
}
#cfca-modal .cfca-window-bar{
  min-height:56px!important;
  padding:8px 14px!important;
  background:#146b3a!important;
}
#cfca-modal .cfca-window-title{color:#fff!important;font-size:15px!important;font-weight:900!important}
#cfca-modal #modal-contenido{
  background:#f4f8f5!important;
  scrollbar-width:thin!important;
  scrollbar-color:#7eb493 #e6efe9!important;
}
#cfca-modal #modal-contenido::-webkit-scrollbar{width:8px!important}
#cfca-modal #modal-contenido::-webkit-scrollbar-track{background:#e6efe9!important}
#cfca-modal #modal-contenido::-webkit-scrollbar-thumb{background:#7eb493!important;border-radius:10px!important}

#cfca-modal .cfca-event-hero,
#cfca-modal .cfca-event-detail-hero,
#cfca-modal .cfca-detail-hero,
#cfca-modal .cfca-res-event-hero{
  min-height:0!important;
  margin:0 0 10px!important;
  padding:16px 22px!important;
  border:1px solid #cfe2d6!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(16,72,42,.05)!important;
}
#cfca-modal .cfca-event-hero h1,
#cfca-modal .cfca-event-hero h2,
#cfca-modal .cfca-event-detail-hero h1,
#cfca-modal .cfca-event-detail-hero h2,
#cfca-modal .cfca-detail-hero h1,
#cfca-modal .cfca-detail-hero h2,
#cfca-modal .cfca-res-event-hero h1,
#cfca-modal .cfca-res-event-hero h2{
  margin:0!important;
  color:#173829!important;
  font-size:clamp(25px,3vw,42px)!important;
  line-height:1.08!important;
  font-weight:950!important;
}

#cfca-modal .cfca-res-organizer-grid,
#cfca-modal .cfca-organizers-grid,
#cfca-modal .cfca-organizer-grid{gap:12px!important;margin:0 0 12px!important}
#cfca-modal .cfca-res-organizer-card,
#cfca-modal .cfca-organizer-card,
#cfca-modal .cfca-org-card{
  min-height:112px!important;
  padding:12px 16px!important;
  border:1px solid #cfe2d6!important;
  border-radius:15px!important;
  background:#fff!important;
}
#cfca-modal .cfca-res-organizer-card img,
#cfca-modal .cfca-organizer-card img,
#cfca-modal .cfca-org-card img{
  width:54px!important;height:54px!important;max-width:54px!important;max-height:54px!important;
  object-fit:contain!important;margin-bottom:5px!important
}

#cfca-modal .cfca-modalities-tabs,
#cfca-modal .cfca-modalidad-tabs,
#cfca-modal .cfca-res-modality-tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:8px!important;
  padding:12px!important;
  border:1px solid #cfe2d6!important;
  border-radius:14px!important;
  background:#fbfefc!important;
}
#cfca-modal .cfca-modalities-tabs button,
#cfca-modal .cfca-modalidad-tabs button,
#cfca-modal .cfca-res-modality-tabs button{
  min-height:42px!important;
  padding:0 18px!important;
  border:1px solid #c7dbcf!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#0b4f2b!important;
  font-weight:900!important;
}
#cfca-modal .cfca-modalities-tabs button:hover,
#cfca-modal .cfca-modalidad-tabs button:hover,
#cfca-modal .cfca-res-modality-tabs button:hover{background:#eef8f2!important}
#cfca-modal .cfca-modalities-tabs button.active,
#cfca-modal .cfca-modalidad-tabs button.active,
#cfca-modal .cfca-res-modality-tabs button.active{
  background:#146b3a!important;border-color:#146b3a!important;color:#fff!important
}

#cfca-modal .cfca-info-grid,
#cfca-modal .cfca-event-info-grid,
#cfca-modal .cfca-detail-grid,
#cfca-modal .cfca-torneo-grid,
#cfca-modal .cfca-res-primary-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
}
#cfca-modal .cfca-info-card,
#cfca-modal .cfca-detail-card,
#cfca-modal .cfca-res-primary-card,
#cfca-modal .cfca-torneo-card{
  min-height:96px!important;
  padding:12px 10px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  text-align:center!important;
  border:1px solid #cfe2d6!important;
  border-radius:14px!important;
  background:#fff!important;
}
#cfca-modal .cfca-info-card span,
#cfca-modal .cfca-detail-card span,
#cfca-modal .cfca-res-primary-card span,
#cfca-modal .cfca-torneo-card span{
  color:#66776d!important;font-size:10px!important;font-weight:850!important;text-transform:uppercase!important
}
#cfca-modal .cfca-info-card strong,
#cfca-modal .cfca-detail-card strong,
#cfca-modal .cfca-res-primary-card strong,
#cfca-modal .cfca-torneo-card strong{
  margin-top:4px!important;color:#173829!important;font-size:18px!important;line-height:1.12!important;font-weight:900!important
}

@media(max-width:900px){
  #cfca-modal .cfca-info-grid,
  #cfca-modal .cfca-event-info-grid,
  #cfca-modal .cfca-detail-grid,
  #cfca-modal .cfca-torneo-grid,
  #cfca-modal .cfca-res-primary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  #cfca-modal .cfca-modal-content{
    width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important
  }
  #cfca-modal .cfca-info-grid,
  #cfca-modal .cfca-event-info-grid,
  #cfca-modal .cfca-detail-grid,
  #cfca-modal .cfca-torneo-grid,
  #cfca-modal .cfca-res-primary-grid{grid-template-columns:1fr!important}
}

/* ---- cfca-calendar-polish-933.css ---- */
.cfca-container.cfca-public-scope{max-width:1320px!important;margin:0 auto!important}

.cfca-official-header{
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  align-items:center;
  gap:22px;
  margin:0 0 16px;
  padding:14px 22px;
  border:1px solid #d5e5db;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(14,79,44,.07);
}
.cfca-official-header__media{display:grid;place-items:center;min-width:0}
.cfca-official-header__media img{
  display:block!important;
  width:104px!important;
  height:82px!important;
  max-width:104px!important;
  max-height:82px!important;
  margin:0!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
.cfca-official-header__content{min-width:0;text-align:center}
.cfca-official-header__eyebrow{
  display:block;margin:0 0 3px;color:#146b3a;font-size:10px;font-weight:900;
  letter-spacing:.12em;text-transform:uppercase
}
.cfca-official-header h1{
  margin:0!important;color:#111827!important;font-size:clamp(1.75rem,3vw,2.75rem)!important;
  line-height:1.04!important;font-weight:950!important;letter-spacing:.02em!important;text-transform:uppercase!important
}
.cfca-official-header p{
  margin:7px 0 0!important;color:#2d4b63!important;font-size:clamp(.9rem,1.4vw,1.1rem)!important;
  line-height:1.2!important;font-weight:850!important;letter-spacing:.04em!important;text-transform:uppercase!important
}
.cfca-public-topbar{margin-top:0!important}

@media(max-width:700px){
  .cfca-official-header{grid-template-columns:1fr;gap:7px;padding:12px 14px}
  .cfca-official-header__media img{
    width:88px!important;height:66px!important;max-width:88px!important;max-height:66px!important
  }
  .cfca-official-header h1{font-size:1.65rem!important}
}

/* ---- cfca-calendar-agenda-934.css ---- */
/* Calendario FCA 9.3.4 · Agenda compacta y legible */

.cfca-public-scope #agenda-lista{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  margin:18px 0 26px!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-card,
.cfca-public-scope #agenda-lista .cfca-agenda-card-v2{
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  min-height:112px!important;
  padding:14px 16px!important;
  border:1px solid #d8e7dd!important;
  border-left:5px solid #146b3a!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(14,79,44,.08)!important;
  opacity:1!important;
  transform:none!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-card:hover,
.cfca-public-scope #agenda-lista .cfca-agenda-card-v2:hover{
  transform:translateY(-2px)!important;
  border-color:#b9d6c3!important;
  box-shadow:0 12px 26px rgba(14,79,44,.12)!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-card.is-past{
  border-left-color:#94a3b8!important;
  background:#f8fafc!important;
  opacity:.92!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-datebox,
.cfca-public-scope #agenda-lista .cfca-agenda-card__date{
  width:76px!important;
  min-width:76px!important;
  min-height:76px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#0f6d46,#0b4f2b)!important;
  color:#fff!important;
  box-shadow:none!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-datebox strong,
.cfca-public-scope #agenda-lista .cfca-agenda-card__day{
  margin:0!important;
  color:#fff!important;
  font-size:1.75rem!important;
  line-height:1!important;
  font-weight:950!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-datebox span,
.cfca-public-scope #agenda-lista .cfca-agenda-card__month{
  margin-top:4px!important;
  color:rgba(255,255,255,.86)!important;
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-content,
.cfca-public-scope #agenda-lista .cfca-agenda-card__body{
  min-width:0!important;
  color:#24392e!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-tags,
.cfca-public-scope #agenda-lista .cfca-agenda-card__top{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  margin:0 0 7px!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-pill,
.cfca-public-scope #agenda-lista .cfca-agenda-status{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  padding:3px 9px!important;
  border-radius:999px!important;
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-pill{
  background:#e8f6ed!important;
  color:#0b5d38!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-status{
  background:#eef2f7!important;
  color:#425466!important;
}

.cfca-public-scope #agenda-lista .is-upcoming .cfca-agenda-status{
  background:#dcfce7!important;
  color:#166534!important;
}

.cfca-public-scope #agenda-lista .is-today .cfca-agenda-status{
  background:#fff4d8!important;
  color:#8a5a00!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-title,
.cfca-public-scope #agenda-lista .cfca-agenda-card__title{
  margin:0 0 7px!important;
  color:#123d2b!important;
  font-size:clamp(1.08rem,1.8vw,1.45rem)!important;
  line-height:1.18!important;
  font-weight:950!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-meta,
.cfca-public-scope #agenda-lista .cfca-agenda-card__meta{
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  flex-wrap:wrap!important;
  color:#596b60!important;
  font-size:.82rem!important;
  font-weight:750!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-meta span,
.cfca-public-scope #agenda-lista .cfca-agenda-card__meta span{
  color:#596b60!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-action,
.cfca-public-scope #agenda-lista .cfca-agenda-card__action{
  min-width:138px!important;
  min-height:44px!important;
  padding:0 17px!important;
  border:1px solid #cfe2d6!important;
  border-radius:12px!important;
  background:#f8fbf9!important;
  color:#0b5d38!important;
  font-size:.88rem!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:.18s ease!important;
}

.cfca-public-scope #agenda-lista .cfca-agenda-action:hover,
.cfca-public-scope #agenda-lista .cfca-agenda-card__action:hover{
  background:#146b3a!important;
  border-color:#146b3a!important;
  color:#fff!important;
  transform:none!important;
}

/* Barra superior más compacta */
.cfca-public-scope .cfca-public-topbar{
  padding:10px!important;
  border-radius:15px!important;
  gap:8px!important;
}

.cfca-public-scope .cfca-view-btn,
.cfca-public-scope .cfca-filter-toggle,
.cfca-public-scope .cfca-clear-filters{
  min-height:40px!important;
  padding:0 13px!important;
  border-radius:10px!important;
  font-size:.78rem!important;
}

.cfca-public-scope .cfca-search-input,
.cfca-public-scope input[type="search"]{
  min-height:40px!important;
}

@media(max-width:850px){
  .cfca-public-scope #agenda-lista .cfca-agenda-card,
  .cfca-public-scope #agenda-lista .cfca-agenda-card-v2{
    grid-template-columns:68px minmax(0,1fr)!important;
    gap:13px!important;
    padding:13px!important;
  }

  .cfca-public-scope #agenda-lista .cfca-agenda-datebox,
  .cfca-public-scope #agenda-lista .cfca-agenda-card__date{
    width:68px!important;
    min-width:68px!important;
    min-height:68px!important;
  }

  .cfca-public-scope #agenda-lista .cfca-agenda-action,
  .cfca-public-scope #agenda-lista .cfca-agenda-card__action{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:560px){
  .cfca-public-scope #agenda-lista{
    gap:10px!important;
  }

  .cfca-public-scope #agenda-lista .cfca-agenda-card,
  .cfca-public-scope #agenda-lista .cfca-agenda-card-v2{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:11px!important;
    min-height:0!important;
    padding:11px!important;
    border-radius:14px!important;
  }

  .cfca-public-scope #agenda-lista .cfca-agenda-datebox,
  .cfca-public-scope #agenda-lista .cfca-agenda-card__date{
    width:58px!important;
    min-width:58px!important;
    min-height:58px!important;
    border-radius:13px!important;
  }

  .cfca-public-scope #agenda-lista .cfca-agenda-datebox strong,
  .cfca-public-scope #agenda-lista .cfca-agenda-card__day{
    font-size:1.4rem!important;
  }

  .cfca-public-scope #agenda-lista .cfca-agenda-meta,
  .cfca-public-scope #agenda-lista .cfca-agenda-card__meta{
    gap:8px!important;
    font-size:.76rem!important;
  }
}

/* ---- cfca-calendar-10-final.css ---- */
/* =========================================================
   Calendario FCA 10.0.0 · Cierre visual y funcional estable
   ========================================================= */

.cfca-container.cfca-public-scope{
  --cfca10-green:#11633a;
  --cfca10-green-dark:#0a4729;
  --cfca10-green-soft:#eaf6ee;
  --cfca10-blue:#1e5c89;
  --cfca10-border:#d7e4dc;
  --cfca10-bg:#f5f8f6;
  --cfca10-text:#18352a;
  --cfca10-muted:#64756c;
  max-width:1340px!important;
  margin:0 auto!important;
}

/* Selector de vistas definitivo */
.cfca-public-scope .cfca-view-switcher,
.cfca-public-scope .cfca-view-buttons,
.cfca-public-scope .cfca-v10-view-switcher{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:5px!important;
  border:1px solid var(--cfca10-border)!important;
  border-radius:13px!important;
  background:#eef4f0!important;
}

.cfca-public-scope .cfca-view-btn{
  min-height:40px!important;
  padding:0 15px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  color:#33483e!important;
  font-size:.75rem!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
  box-shadow:none!important;
}

.cfca-public-scope .cfca-view-btn:hover{
  background:#fff!important;
  color:var(--cfca10-green-dark)!important;
}

.cfca-public-scope .cfca-view-btn.active{
  border-color:var(--cfca10-green)!important;
  background:var(--cfca10-green)!important;
  color:#fff!important;
  box-shadow:0 5px 13px rgba(17,99,58,.18)!important;
}

/* Barra principal compacta */
.cfca-public-scope .cfca-public-topbar{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:9px!important;
  border:1px solid var(--cfca10-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(25,62,42,.06)!important;
}

.cfca-public-scope .cfca-search-input,
.cfca-public-scope input[type="search"]{
  min-height:42px!important;
  border:1px solid #cbdcd1!important;
  border-radius:10px!important;
  color:#1e3429!important;
  background:#fff!important;
}

.cfca-public-scope .cfca-filter-toggle,
.cfca-public-scope .cfca-clear-filters,
.cfca-public-scope .cfca-btn-secondary{
  min-height:40px!important;
  border:1px solid #cbdcd1!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#274537!important;
  font-weight:850!important;
}

/* Cabecera mensual */
.cfca-public-scope .cfca-calendar-header{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:13px!important;
  margin:18px 0 11px!important;
  padding:13px 16px!important;
  border:1px solid var(--cfca10-border)!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(17,74,42,.06)!important;
}

.cfca-public-scope .cfca-calendar-title{
  margin:0!important;
  color:var(--cfca10-text)!important;
  font-size:clamp(1.35rem,2.2vw,2rem)!important;
  font-weight:950!important;
  text-align:center!important;
  text-transform:capitalize!important;
}

.cfca-public-scope .cfca-btn-mes{
  min-height:42px!important;
  padding:0 15px!important;
  border:1px solid #c9ddd0!important;
  border-radius:11px!important;
  background:#f7fbf8!important;
  color:var(--cfca10-green-dark)!important;
  font-size:.8rem!important;
  font-weight:900!important;
  box-shadow:none!important;
}

.cfca-public-scope .cfca-btn-mes:hover{
  border-color:var(--cfca10-green)!important;
  background:var(--cfca10-green)!important;
  color:#fff!important;
}

/* Días de semana */
.cfca-public-scope .cfca-weekdays{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0 0 7px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

.cfca-public-scope .cfca-weekdays>div{
  padding:9px 4px!important;
  border-radius:10px!important;
  background:#e9f2ec!important;
  color:#355044!important;
  font-size:.73rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-align:center!important;
}

/* Cuadrícula mensual definitiva */
.cfca-public-scope .cfca-calendar-grid{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0 0 25px!important;
  padding:8px!important;
  border:1px solid var(--cfca10-border)!important;
  border-radius:18px!important;
  background:#eaf0ec!important;
}

.cfca-public-scope .cfca-calendar-day{
  position:relative!important;
  min-width:0!important;
  min-height:136px!important;
  padding:10px!important;
  border:1px solid #d9e5dd!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}

.cfca-public-scope .cfca-calendar-day:hover{
  z-index:2!important;
  transform:translateY(-2px)!important;
  border-color:#96bda5!important;
  box-shadow:0 10px 22px rgba(17,74,42,.12)!important;
}

.cfca-public-scope .cfca-calendar-day.other-month{
  min-height:136px!important;
  border-style:dashed!important;
  background:#f1f4f2!important;
  opacity:.55!important;
}

.cfca-public-scope .cfca-calendar-day.today{
  border:2px solid var(--cfca10-green)!important;
  background:#f2fbf5!important;
  box-shadow:inset 0 0 0 3px rgba(17,99,58,.08)!important;
}

.cfca-public-scope .cfca-calendar-day.today::before{
  content:"HOY";
  position:absolute;
  top:8px;
  right:8px;
  padding:3px 7px;
  border-radius:999px;
  background:var(--cfca10-green);
  color:#fff;
  font-size:.52rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.06em;
}

.cfca-public-scope .cfca-calendar-day-number{
  display:inline-grid!important;
  place-items:center!important;
  width:31px!important;
  height:31px!important;
  margin:0 0 6px!important;
  border-radius:9px!important;
  color:#1c3e2e!important;
  font-size:1rem!important;
  font-weight:950!important;
}

.cfca-public-scope .cfca-calendar-day.today .cfca-calendar-day-number{
  background:var(--cfca10-green)!important;
  color:#fff!important;
}

.cfca-public-scope .cfca-calendar-day-name{
  position:absolute!important;
  top:14px!important;
  left:49px!important;
  margin:0!important;
  color:#7a8981!important;
  font-size:.63rem!important;
  font-weight:850!important;
  text-transform:uppercase!important;
}

/* Eventos dentro del día */
.cfca-public-scope .cfca-calendar-event{
  position:relative!important;
  display:block!important;
  min-width:0!important;
  margin:4px 0 0!important;
  padding:6px 7px 6px 15px!important;
  border:0!important;
  border-radius:8px!important;
  background:#e7f4eb!important;
  color:#164c30!important;
  font-size:.68rem!important;
  line-height:1.15!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  box-shadow:none!important;
}

.cfca-public-scope .cfca-calendar-event::before{
  content:"";
  position:absolute;
  left:6px;
  top:50%;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--cfca10-green);
  transform:translateY(-50%);
}

.cfca-public-scope .cfca-calendar-day.multiple-events .cfca-calendar-event:nth-of-type(2){
  background:#e9f2fa!important;
  color:#194e73!important;
}
.cfca-public-scope .cfca-calendar-day.multiple-events .cfca-calendar-event:nth-of-type(2)::before{
  background:var(--cfca10-blue)!important;
}
.cfca-public-scope .cfca-calendar-day.multiple-events .cfca-calendar-event:nth-of-type(3){
  background:#f7f0df!important;
  color:#74571c!important;
}
.cfca-public-scope .cfca-calendar-day.multiple-events .cfca-calendar-event:nth-of-type(3)::before{
  background:#b88725!important;
}

.cfca-public-scope .cfca-calendar-more{
  display:inline-flex!important;
  margin-top:5px!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:#eef1ef!important;
  color:#53665b!important;
  font-size:.62rem!important;
  font-weight:900!important;
}

.cfca-public-scope .cfca-calendar-day.has-events::after{
  display:none!important;
}

/* Tabla: opción secundaria pero cuidada */
.cfca-public-scope .cfca-table-container{
  margin-top:17px!important;
  border:1px solid var(--cfca10-border)!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:0 7px 20px rgba(17,74,42,.05)!important;
  overflow:hidden!important;
}

.cfca-public-scope .cfca-table thead th{
  background:#e9f2ec!important;
  color:#244537!important;
  font-size:.72rem!important;
  font-weight:950!important;
}

.cfca-public-scope .cfca-table tbody tr:hover{
  background:#f2f8f4!important;
}

/* Transiciones discretas */
.cfca-public-scope .cfca-vista{
  animation:cfca10Fade .18s ease;
}
@keyframes cfca10Fade{
  from{opacity:.45;transform:translateY(3px)}
  to{opacity:1;transform:none}
}

/* Responsive */
@media(max-width:900px){
  .cfca-public-scope .cfca-calendar-day{
    min-height:112px!important;
    padding:7px!important;
  }
  .cfca-public-scope .cfca-calendar-event{
    padding:5px 5px 5px 12px!important;
    font-size:.61rem!important;
  }
}

@media(max-width:700px){
  .cfca-public-scope .cfca-public-topbar{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .cfca-public-scope .cfca-view-switcher,
  .cfca-public-scope .cfca-view-buttons{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .cfca-public-scope .cfca-calendar-header{
    grid-template-columns:1fr 1fr!important;
  }
  .cfca-public-scope .cfca-calendar-title{
    grid-column:1/-1!important;
    grid-row:1!important;
  }
  .cfca-public-scope .cfca-calendar-grid,
  .cfca-public-scope .cfca-weekdays{
    min-width:700px!important;
  }
  .cfca-public-scope #vista-calendario{
    overflow-x:auto!important;
    padding-bottom:8px!important;
  }
}

/* ---- cfca-modal-dia-1021.css ---- */
/* Calendario FCA 10.2.1: modal diario compacto, legible y adaptable. */
.cfca-modal.cfca-window-mode:not(.cfca-window-max) .cfca-modal-content{
  height:auto!important;
  min-height:0!important;
  max-height:min(88vh,760px)!important;
  resize:both;
}
.cfca-modal.cfca-window-mode:not(.cfca-window-max) #modal-contenido{
  min-height:0!important;
  max-height:calc(88vh - 62px)!important;
}
.cfca-day-modal-title{
  margin:0!important;
  color:#123f2b!important;
  font-size:clamp(22px,2.4vw,34px)!important;
  line-height:1.15!important;
  text-align:left!important;
}
.cfca-day-modal-help{
  margin:7px 0 18px!important;
  color:#61766a!important;
  font-size:14px!important;
}
.cfca-day-event-card{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:76px!important;
  margin:0 0 10px!important;
  padding:15px 18px!important;
  border:1px solid #cfe2d5!important;
  border-left:5px solid #178247!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(16,79,45,.06)!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
.cfca-day-event-card:hover,.cfca-day-event-card:focus-within{
  transform:translateY(-2px);
  border-color:#72bb8f!important;
  box-shadow:0 11px 24px rgba(16,79,45,.12)!important;
}
.cfca-day-event-main{display:grid;gap:6px;min-width:0;text-align:left}
.cfca-day-event-main strong{color:#153b29!important;font-size:18px!important;line-height:1.25!important}
.cfca-day-event-main span{color:#587064!important;font-size:15px!important}
.cfca-day-event-open{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:9px 12px;border-radius:999px;background:#e5f5eb;color:#096638;font-size:13px;font-weight:850}
.cfca-day-event-open b{font-size:22px;line-height:.7}
@media(max-width:700px){
  .cfca-modal.cfca-window-mode:not(.cfca-window-max) .cfca-modal-content{width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important;resize:none}
  .cfca-day-event-card{align-items:flex-start!important;padding:14px!important}
  .cfca-day-event-open{padding:7px 9px;font-size:0}
  .cfca-day-event-open b{font-size:24px}
}
