- Ctrl+K opens/closes the shell picker (new ToggleShellPicker action, listed
and rebindable in Settings -> Key bindings). It takes over the shell's
kill-line by default.
- The picker is now a card list: a "Recommended" hero card (name, full program
path, Enter chip) plus uniform "All options" cards. PaletteLayout exposes
per-row rects and `row_at`, so hover and click stop lighting up section
captions and the gaps between cards -- both passes and hit-testing read one
geometry instead of dividing by row_h.
- One keycap recipe (display/keycap.rs) shared by the picker's Ctrl+K badge,
the command list's shortcut hints, Settings key rows, confirm dialogs and
the picker footer. Combos split per key; confirm keycaps no longer restack
the button's own fill.
- Light-theme overlays go white-based instead of inheriting a silver fill from
the theme family.
- The palette's right edge measures from a single GUTTER instead of four
different insets; the footer measured from the panel rather than the card
column, which left a ragged margin that drifted with font size.
Session v4 doubles as the workspace file format: tabs persist their full
split tree, per-pane cwds and launch identity (shell/profile/SSH), so both
crash recovery and exported workspaces rebuild real layouts.
Startup now always sizes the window from the config base font at the
standard 116x30 grid: the persisted Ctrl+wheel zoom no longer inflates the
first frame, and the saved window size/maximized state is write-only.