/* ============================================================
   iconfutbol · FILTRO DE TIENDA (Liga · Equipo · Tipo) — dropdowns con icono
   ============================================================ */

.icf-body .icf-filter{
  display:flex;align-items:flex-end;flex-wrap:wrap;gap:14px;
  background:var(--icf-paper);border:1px solid var(--icf-hair);
  border-radius:16px;padding:16px 18px;margin:0 0 26px;
}

.icf-body .icf-filter__brand{
  display:flex;align-items:center;gap:8px;align-self:center;
  margin-right:2px;padding-right:14px;border-right:1px solid var(--icf-hair-soft);
}
.icf-body .icf-filter__brand svg{width:18px;height:18px;color:var(--icf-celeste)}
.icf-body .icf-filter__brand span{
  font-family:'Anton',Impact,sans-serif;text-transform:uppercase;
  letter-spacing:.04em;font-size:15px;color:var(--icf-ink);line-height:1;
}

.icf-body .icf-filter__field{display:flex;flex-direction:column;gap:7px;flex:1 1 210px;min-width:170px}
.icf-body .icf-filter__lbl{
  font-family:'Barlow',sans-serif;font-weight:700;text-transform:uppercase;
  letter-spacing:.09em;font-size:10.5px;color:var(--icf-muted);padding-left:2px;
}

/* ---------- Dropdown ---------- */
.icf-body .icf-dd{position:relative}

.icf-body .icf-dd__btn{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;min-height:50px;padding:8px 14px;
  background:#fff;border:1.5px solid var(--icf-hair);border-radius:12px;
  font-family:'Barlow',sans-serif;font-weight:600;font-size:14.5px;color:var(--icf-ink);
  line-height:1.2;text-align:left;cursor:pointer;
  transition:border-color .18s var(--icf-ease),box-shadow .18s var(--icf-ease);
}
.icf-body .icf-dd__btn:hover{border-color:rgba(15,147,214,.45)}
.icf-body .icf-dd.is-open .icf-dd__btn{border-color:var(--icf-celeste);box-shadow:0 0 0 4px var(--icf-celeste-soft)}
.icf-body .icf-dd.is-disabled{opacity:.55}
.icf-body .icf-dd.is-disabled .icf-dd__btn{cursor:not-allowed}

.icf-body .icf-dd__cur{display:flex;align-items:center;gap:9px;min-width:0;flex:1}
.icf-body .icf-dd__txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;min-width:0}
.icf-body .icf-dd__ico{
  width:24px;height:24px;flex:0 0 auto;object-fit:contain;border-radius:5px;background:#fff;
}
.icf-body .icf-dd__chev{width:16px;height:16px;flex:0 0 auto;color:var(--icf-muted);transition:transform .2s var(--icf-ease)}
.icf-body .icf-dd.is-open .icf-dd__chev{transform:rotate(180deg);color:var(--icf-celeste)}

/* panel */
.icf-body .icf-dd__pop{
  position:absolute;top:calc(100% + 7px);left:0;right:0;z-index:60;
  background:#fff;border:1.5px solid var(--icf-hair);border-radius:13px;
  box-shadow:0 14px 40px -12px rgba(17,17,16,.22);
  max-height:330px;overflow-y:auto;padding:6px;display:none;
}
.icf-body .icf-dd.is-open .icf-dd__pop{display:block;animation:icfDD .16s var(--icf-ease)}
@keyframes icfDD{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

.icf-body .icf-dd__opt{
  display:flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:9px;cursor:pointer;
  font-family:'Barlow',sans-serif;font-weight:500;font-size:14px;color:var(--icf-ink);
}
.icf-body .icf-dd__opt>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.icf-body .icf-dd__opt:hover{background:var(--icf-celeste-soft)}
.icf-body .icf-dd__opt.is-sel{background:var(--icf-celeste-soft);color:var(--icf-celeste-dark);font-weight:700}

/* scrollbar del panel */
.icf-body .icf-dd__pop::-webkit-scrollbar{width:9px}
.icf-body .icf-dd__pop::-webkit-scrollbar-thumb{background:var(--icf-hair);border-radius:9px;border:2px solid #fff}

/* limpiar + contador */
.icf-body .icf-filter__clear{
  align-self:center;background:none;border:0;cursor:pointer;
  font-family:'Barlow',sans-serif;font-weight:700;text-transform:uppercase;
  letter-spacing:.06em;font-size:11.5px;color:var(--icf-muted);padding:8px 4px;
  transition:color .2s var(--icf-ease);
}
.icf-body .icf-filter__clear:hover{color:var(--icf-celeste)}
.icf-body .icf-filter__count{
  align-self:center;margin-left:auto;
  font-family:'Bebas Neue',sans-serif;letter-spacing:.04em;font-size:17px;
  color:var(--icf-ink-2);white-space:nowrap;
}

/* grid en carga / vacío / cargar más */
.icf-body ul.products.is-loading{opacity:.45;pointer-events:none;transition:opacity .2s ease}
.icf-body ul.products.icf-empty{display:block!important}
.icf-body .icf-filter-empty{
  list-style:none;width:100%!important;float:none!important;margin:30px 0!important;
  text-align:center;font-family:'Barlow',sans-serif;font-size:16px;color:var(--icf-muted);
}
.icf-body .icf-loadmore{
  display:block;margin:14px auto 0;background:transparent;color:var(--icf-ink);
  border:1.5px solid var(--icf-hair);border-radius:10px;
  font-family:'Barlow',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  font-size:13px;padding:13px 30px;cursor:pointer;
  transition:background .2s var(--icf-ease),border-color .2s var(--icf-ease),color .2s var(--icf-ease);
}
.icf-body .icf-loadmore:hover{background:var(--icf-ink);border-color:var(--icf-ink);color:#fff}

/* móvil */
@media (max-width:782px){
  .icf-body .icf-filter{gap:11px;padding:14px 13px;border-radius:14px}
  .icf-body .icf-filter__brand{width:100%;border-right:0;border-bottom:1px solid var(--icf-hair-soft);padding:0 0 11px;margin:0}
  .icf-body .icf-filter__field{flex:1 1 100%;min-width:0}
  .icf-body .icf-filter__count{margin-left:0;width:100%;text-align:right}
}
