.field {
  display: grid;
  gap: var(--space-2);
}
.label {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-2);
  font-weight: 700;
}
.required {
  color: var(--status-error-text);
}
.optional {
  color: var(--text-secondary);
  font-size: var(--type-caption-size);
  font-weight: 500;
}
.help,
.error {
  margin: 0;
  font-size: var(--type-label-size);
}
.help {
  color: var(--text-secondary);
}
.error {
  color: var(--status-error-text);
  font-weight: 650;
}
.invalid .label {
  color: var(--status-error-text);
}
.fieldset {
  display: grid;
  gap: var(--space-4);
  min-inline-size: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.legend {
  margin-block-end: var(--space-3);
  padding: 0;
  font-weight: 750;
}
