/* KOVRA — pulido profesional de Agenda Financiera / Cobros. */
.collections-clean-header{
  margin-bottom:6px !important;
}

.collections-clean-header + .search-row{
  margin:0 0 10px !important;
}

.collections-clean-header + .search-row .search-box{
  height:44px;
  border-color:var(--theme-border);
  background:var(--theme-surface);
}

.collections-clean-header + .search-row .search-box input{
  font-size:12.5px;
  font-weight:620;
}

.collections-clean-header + .search-row .search-box input::placeholder{
  color:var(--theme-muted);
  opacity:1;
}

/* =========================================================
   RESUMEN SUPERIOR
========================================================= */
.summary-grid{
  gap:8px !important;
  margin-bottom:11px !important;
}

.summary-grid .summary-card{
  min-height:88px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px 15px !important;
  border:1px solid var(--theme-border)!important;
  border-radius:15px !important;
  background:var(--theme-surface-2)!important;
  box-shadow:none;
}

.summary-grid .summary-card.warning-card{
  border-color:rgba(255,152,82,.15) !important;
}

.summary-grid .summary-card > span{
  margin:0 0 8px !important;
  color:var(--theme-muted) !important;
  font-size:clamp(12px,3vw,12.5px) !important;
  font-weight:680 !important;
  line-height:1.15;
  letter-spacing:.005em;
}

.summary-grid .summary-card > strong{
  margin:0 !important;
  font-size:clamp(20px,5.2vw,25px) !important;
  font-weight:850 !important;
  line-height:1 !important;
  letter-spacing:-.02em;
}

.summary-grid .summary-card #activeCapital{
  font-size:clamp(18px,4.6vw,23px) !important;
  letter-spacing:-.025em;
}

.summary-grid .summary-card > small{
  display:none !important;
}

/* =========================================================
   FILTROS: Hoy / Atrasados / Próximos / Promesas / Todos
   Los tres filtros centrales reciben el ancho que necesitan
   para mantener etiqueta + contador dentro de cada caja.
========================================================= */
.filters{
  display:grid !important;
  grid-template-columns:
    minmax(0,.58fr)
    minmax(0,1.34fr)
    minmax(0,1.34fr)
    minmax(0,1.34fr)
    minmax(0,.72fr) !important;
  align-items:stretch !important;
  gap:5px !important;
  margin:1px 0 15px !important;
}

.filters .filter-button{
  position:relative !important;
  min-width:0 !important;
  width:100% !important;
  height:44px !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:nowrap !important;
  gap:2px !important;
  margin:0 !important;
  padding:0 3px !important;
  overflow:hidden !important;
  border:1px solid var(--theme-border)!important;
  border-radius:12px !important;
  background:var(--theme-surface-2)!important;
  color:var(--theme-text-2) !important;
  font-size:clamp(12px,2.35vw,12px) !important;
  font-weight:750 !important;
  line-height:1 !important;
  letter-spacing:-.015em !important;
  white-space:nowrap !important;
  vertical-align:middle !important;
  transform:none !important;
  box-shadow:none;
}

.filters .filter-button span{
  position:static !important;
  flex:0 0 auto !important;
  min-width:0 !important;
  width:auto !important;
  height:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:inherit !important;
  font-size:.92em !important;
  font-weight:900 !important;
  line-height:1 !important;
  transform:none !important;
}

.filters .filter-button.active{
  border-color:var(--theme-border-strong)!important;
  background:var(--theme-accent-soft)!important;
  color:var(--theme-accent) !important;
  box-shadow:none;
}

/* Navegación inferior: Inicio y Clientes usan exactamente la misma escala. */
.bottom-nav .nav-button{
  min-width:0 !important;
  min-height:44px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  padding:0 !important;
  font-size:12px !important;
  line-height:1.05 !important;
  transform:none !important;
  scale:1 !important;
}

.bottom-nav .nav-button .nav-icon{
  display:block !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  font-size:21px !important;
  line-height:1 !important;
  transform:none !important;
}

.bottom-nav #homeButton,
.bottom-nav #clientsButton{
  font-size:12px !important;
  opacity:1 !important;
}

@media(max-width:430px){
  .collections-clean-header + .search-row .search-box{
    height:42px;
  }

  .collections-clean-header + .search-row .search-box input{
    font-size:12px;
  }

  .summary-grid .summary-card{
    min-height:84px;
    padding:12px 13px !important;
  }

  .filters{
    grid-template-columns:
      minmax(0,.58fr)
      minmax(0,1.34fr)
      minmax(0,1.34fr)
      minmax(0,1.34fr)
      minmax(0,.72fr) !important;
    gap:4px !important;
  }

  .filters .filter-button{
    height:42px !important;
    padding:0 2px !important;
    gap:2px !important;
    font-size:clamp(12px,2.35vw,12px) !important;
  }
}

@media(max-width:360px){
  .filters{
    gap:3px !important;
  }

  .filters .filter-button{
    padding:0 1px !important;
    gap:1px !important;
    font-size:12px !important;
  }
}
