# Core/Label - Design

Label text and optional required indicator for form fields, aligned with Capra field layouts.

:::warning

Prefer Capra field components—such as `TextField`, `NumberField`, `PasswordField`, `TextArea`, `DatePicker`, `DateRangePicker`, or `AutocompleteField`—which
wire labels, inputs, and helper text together with consistent layout and accessibility. Use standalone `Label` only when you are composing a custom field or integrating with primitives that do not ship a built-in label.

:::

## Accessibility

### Association

<p>
  Pair `Label` with its control using `htmlFor` on the label and a matching `id` on
  the input (or equivalent association pattern for custom widgets). Every form control should have an accessible name;
  a visible `Label` is one straightforward way to provide it.
</p>

### Required fields

<p>
  The visual asterisk for <code>required</code> is marked <code>aria-hidden</code> so it is not double-announced; the
  required state is also conveyed with visually hidden text for screen readers.
</p>