/* ---------------------------------------------------------------------------
   form-controls.css — text inputs, textareas, selects, USD prefix wrapper.
--------------------------------------------------------------------------- */

input[type='text'],
input[type='email'],
input[type='number'] {
  width: 100%;
  border: 1.5px solid var(--triage-border);
  border-radius: 14px;
  padding: 10px 13px;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  color: var(--refi-ink);
  background: #fff;
  outline: none;
  transition: border-color 0.2s ease;
}

input:focus {
  border-color: var(--triage-moss-l);
}

textarea {
  width: 100%;
  border: 1.5px solid var(--triage-border);
  border-radius: 14px;
  padding: 11px 13px;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  color: var(--refi-ink);
  background: #fff;
  resize: vertical;
  outline: none;
  transition: border-color 0.2s ease;
  line-height: 1.6;
}

textarea:focus {
  border-color: var(--triage-moss-l);
}

select {
  width: 100%;
  border: 1.5px solid var(--triage-border);
  border-radius: 14px;
  padding: 10px 13px;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  color: var(--refi-ink);
  background: #fff;
  outline: none;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b6454' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 13px center;
}

/* Required-field validation error (set/cleared by the page script on submit) */
input.field-error,
textarea.field-error,
select.field-error {
  border-color: #c0392b;
  background: #fdecea;
}

/* USD prefix wrapper for monetary inputs */
.usd-w {
  position: relative;
}

.usd-p {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 13px;
  font-weight: 500;
  color: var(--triage-muted);
}

.usd-w input {
  padding-left: 34px;
}
