.field {
  margin-bottom: var(--space-3);
}
.field__label {
  display: block;
  font-family: var(--font-mono);
  font-size: var(--fs-label);
  letter-spacing: var(--label-spacing);
  text-transform: uppercase;
  color: var(--text-muted);
  margin: 0 0 6px 2px;
}
.field__control {
  position: relative;
}
.field__input {
  width: 100%;
  font-family: var(--font-body);
  font-size: 15px;
  padding: 13px 14px;
  border: var(--border-w) solid var(--border);
  border-radius: var(--radius-md);
  background: var(--surface-raised);
  color: var(--text);
}
.field__input::placeholder {
  color: var(--text-muted);
}
.field__input:focus {
  outline: var(--border-w) solid var(--primary);
  outline-offset: 1px;
}
.field__control--has-toggle .field__input {
  padding-right: 52px;
}
.field__toggle {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: transparent;
  cursor: pointer;
  font-family: var(--font-mono);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: var(--label-spacing);
  color: var(--text-muted);
  padding: 6px 8px;
}
.field__error {
  font-family: var(--font-body);
  font-size: var(--fs-body-s);
  color: var(--danger);
  margin: 6px 0 0 2px;
}
.field__control .field_with_errors {
  display: contents;
}
.field__control .field_with_errors .field__input {
  border-color: var(--danger);
}
