* plan: UI improvements to improve LLM usage via SimpleX
* core, ui: types for chat layout
* core, ui: settings for alternative terminal-like chat layout for managing LLMs or other service bots
* plan: message priority
* fixes
* query plan
* update plans
* remove silent messages plan
* rename migrations
* implement layout
* amend
* fix
* fix
* fix
* improve
* time on the right, sender name in blue
* no avatar in direct chats
* better previews
* update, fixes
* update
* time gap
* changes
* ui: terminal layout line heights, gaps and time placement
* ui: simplify terminal meta layout, correct its docs and tests
* ui: right-to-left emoji edge in terminal rows, time placement tests
* android, desktop: raise Kotlin compiler memory to 4 GB
* ui: terminal captions as follow-up text, classic event separators
* ui: terminal media edge and overlay time, plan decisions
* ui: simplify terminal row separation, correct doc line references
* ui: keep the media time inside terminal rows, restore caption conditions
* ui: terminal heading capitals at large font scales, idle live message time
* ui: rename the classic voice-with-text flag, correct the meta copy docs
* ui: smaller terminal layout diff, sender gap and meta names
* ui: terminal row as tall as the media time
* docs: remove the chat layout section from the bots readme
* docs: shorten the terminal layout section of the chat view
* core: address settings API as on master, /auto_accept reads the stored layout
* ui: smaller terminal headings
* ui: classic sender rows and avatar rule as on master
* ui: classic reply quote text colour as on master
* ios: keep the chat layout setting with other UI settings
* ui: go-to button at the end of terminal rows, no gutter in direct chats
* ui: forwarded arrow on the header line of terminal rows, above the time
* ui: forwarded arrow centred above the time line of terminal rows
* ui: even insets, line heights and exact time space in classic bubbles
* ui: draw the time once in classic decryption errors
* tests: two-line text in the bubble inset test
* ui: exact time space in classic group invitations
* docs: classic bubbles plan: results and open questions
* ui: the time alone moves to the next line in classic bubbles
* ui: file icon on the size-line baseline in classic bubbles
* ui: calls in classic chats as on master
* ui: headings at 1.5625, 1.25 and 1 of the body size in both chat layouts
* ui: 11sp text inset and 14dp sides in classic bubbles
* ui: tail space in classic deleted and error items
* ui: events in classic chats grouped in runs
* ui: group sender name at the bubble edge in classic chats
* docs: classic bubbles plan: results of the 2026-10-26 decisions
* ui: events classified by the sender rule, one file icon size
* tests: no invisible character in the bubble copy test
* docs: classic bubbles plan: the shared sender rule
* docs: product concepts: the renamed meta copy
* ui: inline the copy of the time in decryption errors
* docs: chat view spec: line links after the classic bubbles changes
* ui: group invitation time on the last baseline, joined to the last word
* docs: classic bubbles: tail and time of a message above an event run
* ui: time on the last line of wrapped deleted and error texts
* ui: one layout switch in deleted and error items
* ui: one layout switch in message text padding
* ui: one name for the chat typography flag
* ui: one check whether a chat item tail is drawn
* ui: event run gaps in the chat list, row separation as on master
* ui: chat item previews draw bubbles as the chat does
* docs: classic bubbles: item cards, tail check, previews
* ui: deleted and error items without tails, insets fixed at large fonts
* ui, ci: references of classic bubbles, chat view previews in bubbles
* ci: desktop references of classic bubbles with message text at 95%
* ui: time on the drawn text baseline in desktop bubbles
* ci: desktop references with the time on the drawn text baseline
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>