## metadata_list (`poetry_metadata_list`)

A key-value list for labeled attributes on detail pages.

Class: Poetry::Ui::MetadataList::Component - BEM block `poetry-ui-metadata_list`.
Slot REQUIRED: with_item (at least one item (label: plus the value block)) - a call without it raises.
- `columns:` (symbol) - one of one|two|three, default "one" - How many columns the facts spread across on wide viewports.
- `orientation:` (symbol) - one of vertical|horizontal, default "vertical" - Label placement - above the value, or beside it for the classic key/value sheet.
Slots: items (The facts. Each takes label: (the fact's name, the <dt>) and the value as its block (the <dd>).; many; with_item yields NOTHING to the block - no |param|, write content directly).
- PART `metadata-list` - The <dl> root - the record's fact sheet | states: data-orientation=vertical|horizontal (always - label placement); data-columns=one|two|three (always - the column count word)
- PART `metadata-list-item` - One fact group (a <div> holding its <dt>/<dd> pair)
- PART `metadata-list-label` - The fact's name (<dt>) - muted, small
- PART `metadata-list-value` - The fact's value (<dd>) - composes text, badges, links
- RULE: Record facts on a detail page belong in a MetadataList - never a hand-rolled grid of label/value divs (this is the <dl> the page owes its readers).
- RULE: Each with_item takes label: and the value as its block - values compose freely (text, a Badge, a Link, a Timestamp).
- RULE: columns: :two / :three spread the facts on wide viewports; orientation: :horizontal puts labels beside values (the classic key/value sheet) - pick one per surface.
- RULE: For editable facts pair each value with its edit affordance inside the item block; the list itself stays read-only vocabulary.
