Esc/chars keystroke sequences (e.g. Shift+Enter → ESC+CR for Claude
Code multiline) are not clipboard pastes. paste() gates on \r/\n and
would open the multi-line confirm modal; paste_now writes them through.
The top bar and left sidebar were two separate rounded panels with a
12px gap between them; the user wants them to read as one continuous
shell with a larger outer radius.
- Add per-corner radii to the UI quad pipeline (UiQuad::with_corners,
a new vertex attribute at location 6, and a per-quadrant radius select
in the fragment shader's sdRoundedBox). Existing call sites default to
the uniform radius, so nothing else changes.
- Close the 12px gap: the sidebar now abuts the top bar's bottom edge
and runs to the window's bottom margin, sharing the left edge. The
join corners are squared while the outer corners take a new, larger
UI_SHELL_RADIUS_LOGICAL (14) so the whole chrome reads as one card.
- Smoothly close the join corner as the sidebar slides in, instead of
popping from round to square when the panel becomes visible.
- Seal the seam: the sidebar (same color, drawn on top) extends up a
couple physical px under the top bar so the two translucent edges'
antialiasing can't leak the dark background as a hairline "black edge".
The silver light theme's panel/tab/edge tokens leaned on Tailwind's
blue-tinted gray ramp and a blue active-tab halo. Swap them for a
true-neutral gray ramp and a soft neutral shadow so the light chrome
reads as a pure-white pill lifting off a flat gray gutter — keeping the
shell neutral so the theme's own accent stays the only saturated voice.