/* ============================================================
   BUSCADOR DE AGENCIAS — estilos
   Prefijo cb- (cleo-buscador). Toma los colores de quien lo
   incruste, con valores de reserva por si faltan.
   ============================================================ */
.cb-caja{
  --cb-papel:#fff;
  --cb-crema:#faf6f2;
  --cb-hundido:#f5efeb;
  --cb-rosa:#c8a090;
  --cb-rosa-osc:#a87d6b;
  --cb-rosa-cl:#f0e2d9;
  --cb-tinta:#2e2622;
  --cb-suave:#6d5c53;
  --cb-tenue:#9c8a80;
  --cb-linea:#e6dad2;
  --cb-malo:#a4514a;
  --cb-shalom:#0a4d8c;
  --cb-olva:#d81f26;
  position:relative;
}

/* ---------------- entrada ---------------- */
.cb-entrada{position:relative;display:flex;align-items:center}
.cb-lupa{
  position:absolute;left:13px;width:17px;height:17px;pointer-events:none;
  fill:none;stroke:var(--cb-tenue);stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;
}
.cb-input{
  width:100%;padding:12px 38px 12px 38px;
  border:1px solid var(--cb-linea);border-radius:10px;
  font-family:inherit;font-size:.97rem;font-weight:300;
  background:var(--cb-papel);color:var(--cb-tinta);
  transition:border-color .15s,box-shadow .15s;
}
.cb-input::placeholder{color:var(--cb-tenue)}
.cb-input:focus{
  outline:none;border-color:var(--cb-rosa);
  box-shadow:0 0 0 3px var(--cb-rosa-cl);
}
.cb-input:focus + .cb-limpiar,.cb-input:focus ~ .cb-lupa{stroke:var(--cb-rosa-osc)}
.cb-input:disabled{background:var(--cb-hundido);cursor:not-allowed;color:var(--cb-tenue)}
.cb-input.cb-mal{border-color:var(--cb-malo);background:#fffbfa}
.cb-input.cb-mal:focus{box-shadow:0 0 0 3px rgba(164,81,74,.14)}

.cb-limpiar{
  position:absolute;right:8px;width:26px;height:26px;
  border:0;border-radius:50%;background:var(--cb-hundido);
  color:var(--cb-suave);font-size:17px;line-height:1;cursor:pointer;
  display:grid;place-items:center;
}
.cb-limpiar:hover{background:var(--cb-rosa);color:#fff}
.cb-limpiar:focus-visible{outline:2px solid var(--cb-rosa-osc);outline-offset:1px}

/* ---------------- lista ---------------- */
.cb-lista{
  position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:50;
  margin:0;padding:5px;list-style:none;
  max-height:280px;overflow-y:auto;overscroll-behavior:contain;
  background:var(--cb-papel);border:1px solid var(--cb-linea);
  border-radius:12px;box-shadow:0 14px 40px rgba(96,66,52,.18);
  scrollbar-width:thin;
}
.cb-lista::-webkit-scrollbar{width:8px}
.cb-lista::-webkit-scrollbar-thumb{background:var(--cb-linea);border-radius:8px}

.cb-grupo{
  padding:9px 9px 5px;position:sticky;top:-5px;
  background:var(--cb-papel);z-index:1;
}
.cb-marca{
  display:inline-block;
  font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;
  color:#fff;background:var(--cb-tinta);border-radius:20px;padding:3px 10px;
}
.cb-marca--shalom{background:var(--cb-shalom)}
.cb-marca--olva{background:var(--cb-olva)}

.cb-item{
  display:flex;flex-direction:column;gap:1px;
  padding:9px 11px;border-radius:9px;cursor:pointer;
  transition:background .12s;
}
.cb-item:hover,.cb-item.cb-activo{background:var(--cb-rosa-cl)}
.cb-item-nom{font-size:.92rem;font-weight:400;color:var(--cb-tinta);line-height:1.3}
.cb-item-prov{font-size:.75rem;color:var(--cb-rosa-osc);letter-spacing:.03em}
.cb-item-dir{
  font-size:.78rem;color:var(--cb-tenue);line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;
}
.cb-item mark{background:#f7e2a8;color:inherit;border-radius:3px;padding:0 1px}

.cb-nada{padding:20px 14px;text-align:center;font-size:.87rem;color:var(--cb-tenue)}

@media (prefers-reduced-motion:reduce){
  .cb-input,.cb-item{transition:none}
}
