Cached widget height in terminal rows for scroll position estimation.
When _hydrate_messages_above inserts widgets above the viewport it needs
to adjust the scroll offset so the user's view doesn't jump. Currently this
uses a fixed estimate (5 rows per message). Caching the actual rendered
height here after first mount would make that estimate accurate, especially
for tall messages like diffs or long assistant responses.
Not yet populated — see _hydrate_messages_above in app.py.
height_hint: int | None = None