Nothing in the transcript said who was speaking. Each message is now
prefixed with a role marker: person for the user, sparkle for Lam.
Emoji rather than icon images, because Vicinae's markdown renderer is
minimal and there is no reliable way to inline an `icon://` reference
into markdown, whereas plain text always renders.
Also records in the README why the transcript needs both panes, since
that came up: Detail accepts no typed input, so a detail-only chat
command would have nothing to type into, and list rows are a fixed
single line, so full text cannot live in the list. Input needs a List,
full text needs a Detail.
Verified on screen that both markers render.