Settings layout
SettingsPage, SettingsPageHeader, SettingsSection, SettingsRows and SettingsRow from packages/ui — the register both dashboards' settings pages are built from, including the widths where its two columns stop fitting side by side.
A composed page
One h1 from SettingsPageHeader, then one h2 per section. The register's rules come from SettingsRows, so a section with a single row still reads as part of the same table.
Page header
The action is a sibling of the h1, never a child — nesting a control in a heading folds its label into the heading's accessible name.
What a row's content cell holds
The same register carries a read-only value, a copyable ID and a multi-field form. A row that holds a form is the case that breaks a naive two-column grid, because the label must stay top-aligned with the form's first field rather than centred against the whole thing.
Where the columns collapse
SettingsRows is a @container and SettingsRow queries it at @2xl, so the label stacks on top of the content when the register itself is narrow — not when the viewport is. A row inside a side panel collapses while the same row on a full page does not.