/* =========================
   Raven Product Search (UI)
   ========================= */

#raven-product-search {
  font-family: "Roboto", system-ui, -apple-system, Segoe UI, Helvetica, Arial, sans-serif;
  color: #1b1b1b;
}

#raven-product-search .rps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
  align-items: end;
}

/* Esconde os labels (mantém acessibilidade para leitores) */
#raven-product-search .rps-field label {
  position: absolute !important;
  height: 1px; width: 1px;
  overflow: hidden; clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

/* Selects base */
#raven-product-search select {
  width: 100%;
  height: 56px;
  padding: 0 46px 0 20px;
  font-size: 16px;
  line-height: 56px;
  color: #1f2937;
  background: #fff;
  border: 1px solid #1c1c1c;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
  /* chevron à direita (inline SVG) */
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5' stroke='%2388929c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 20px 20px;
  border-radius: 30px;
}

#raven-product-search select:hover {
  border-color: #a8b0b8;
}

#raven-product-search select:focus {
  border-color: #ff9f1a;
  box-shadow: 0 0 0 3px rgba(255,159,26,.15);
  background-color: #fff;
}

#raven-product-search select:disabled {
  opacity: .6;
  cursor: not-allowed;
}

/* Área do botão */
#raven-product-search .rps-actions {
  display: flex;
  align-items: center;
  justify-content: center;
}

#raven-product-search #rps-reset {
  width: 100%;
  height: 56px;
  border: none;
  cursor: pointer;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .5px;
  color: #111;
  background-color: #d1d1d1;
  transition: transform .08s ease, filter .15s ease, box-shadow .15s ease;
  border-radius: 30px;
}

#raven-product-search #rps-submit {
  width: 100%;
  height: 56px;
  border: none;
  cursor: pointer;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .5px;
  color: #111;
  background-image: linear-gradient(90deg, #f7a601 0%, #ef7d00cc 100%);
  transition: transform .08s ease, filter .15s ease, box-shadow .15s ease;
  border-radius: 30px;
}

#raven-product-search #rps-submit::after {
  content: " →";
  font-weight: 700;
}

#raven-product-search #rps-submit:hover {
  filter: brightness(1.03);
  box-shadow: 0 4px 18px rgba(240, 140, 30, .25);
}

#raven-product-search #rps-submit:active {
  transform: translateY(1px);
}

#raven-product-search #rps-submit:disabled {
  opacity: .5;
  cursor: not-allowed;
  box-shadow: none;
}

/* Responsivo */
@media (max-width: 1024px) {
  #raven-product-search .rps-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  #raven-product-search .rps-grid {
    grid-template-columns: 1fr;
  }
  #raven-product-search select,
  #raven-product-search #rps-submit {
    height: 54px;
    line-height: 54px;
  }
}