/* public/css/fm/field.css
 *
 * fm-field (DS #2) — campo de formulário rotulado (p/ CTAs/forms inline).
 * Autocontido (skin coexiste): box-sizing, fonte, cor, reset de controles.
 * Consome tokens fm. Foco = borda teal + anel de foco da marca.
 */
.fm-field {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: var(--fm-space-2);
  width: 100%;
  font-family: var(--fm-font-body);
}
.fm-field-label {
  font-family: var(--fm-font-body);
  font-size: var(--fm-text-sm);
  font-weight: 600;
  color: var(--fm-navy);
}
.fm-field-req {
  color: var(--fm-red);
}
.fm-field-input {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  border: 1px solid var(--fm-gray-100);
  border-radius: 10px;
  padding: 11px 14px;
  font-family: var(--fm-font-body);
  font-size: var(--fm-text-md);
  color: var(--fm-navy);
  background: var(--fm-white);
}
.fm-field-input:focus {
  outline: none;
  border-color: var(--fm-teal);
  box-shadow: var(--fm-shadow-focus);
}
.fm-field-input::placeholder {
  color: var(--fm-gray-300);
}
.fm-field-input--area {
  min-height: 7rem;
  resize: vertical;
}
.fm-field-hint {
  font-size: var(--fm-text-sm);
  color: var(--fm-gray-300);
}
