/* =========================================================
   DIRPROG Search (scoped) - consistente con el resto del site
   Reglas solo para el buscador del plugin
========================================================= */

.dirprog-search {
  /* Si quieres controlar ancho/margen del bloque del buscador, hazlo aquí */
}

/* Layout general: 2 selects + botón en una fila (desktop) */
.dirprog-search .kb-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: end;
}

/* Mobile: uno debajo del otro */
@media (max-width: 768px) {
  .dirprog-search .kb-form {
    grid-template-columns: 1fr;
  }
}

/* Kadence a veces mete márgenes extra */
.dirprog-search .kadence-blocks-form-field {
  margin: 0 !important;
}

/* Labels (si Kadence los imprime) */
.dirprog-search label {
  font-weight: 600;
  margin-bottom: 6px;
  display: inline-block;
}

/* Selects y inputs: mismo look que tus cards */
.dirprog-search select.kb-field,
.dirprog-search input.kb-field,
.dirprog-search textarea.kb-field {
  width: 100%;
  height: 52px;
  padding: 0 14px;

  border-radius: 4px; /* IMPORTANTE */
  border: 1px solid rgba(0,0,0,.18);
  background: #fff;

  font-size: 15px;
  line-height: 52px;
  box-shadow: none;
  outline: none;
}

/* Placeholder (por si hay inputs) */
.dirprog-search input.kb-field::placeholder {
  opacity: .65;
}

/* Focus: sutil, sin cambiar estética */
.dirprog-search select.kb-field:focus,
.dirprog-search input.kb-field:focus,
.dirprog-search textarea.kb-field:focus {
  border-color: rgba(0,0,0,.35);
  outline: none;
}

/* El submit debe ocupar todo el ancho */
.dirprog-search .kb-submit-field {
  grid-column: 1 / -1;
  margin: 0 !important;
}

/* Botón: estilo consistente con tus botones negros */
.dirprog-search button.kb-forms-submit {
  width: 100%;
  height: 56px;

  border-radius: 4px; /* IMPORTANTE */
  border: 1px solid rgba(0,0,0,.12);
  background: #111;
  color: #fff;

  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;

  box-shadow: none;
  cursor: pointer;
}

/* Hover/active */
.dirprog-search button.kb-forms-submit:hover {
  opacity: .92;
}

.dirprog-search button.kb-forms-submit:active {
  transform: translateY(1px);
}

/* Si el theme mete estilos raros al botón */
.dirprog-search button.kb-forms-submit:focus {
  outline: none;
}

/* Ajuste fino para selects (flecha) en algunos browsers */
.dirprog-search select.kb-field {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, rgba(0,0,0,.55) 50%),
                    linear-gradient(135deg, rgba(0,0,0,.55) 50%, transparent 50%);
  background-position: calc(100% - 18px) 50%, calc(100% - 12px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 40px;
}

/* Si Kadence renderiza mensajes/errores */
.dirprog-search .kb-form-message,
.dirprog-search .kb-form-error,
.dirprog-search .kb-form-success {
  grid-column: 1 / -1;
  border-radius: 4px;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
}