41bae99ab3
On a comfortable terminal (height >= 40) the input panel shows two rows: the single logical command soft-wraps across them — the first row stops 6 columns short for the ADR-0027 validity indicator, the second uses the full width — so a medium command is fully visible without horizontal scrolling. A line longer than both rows still scrolls (DA3-style, one column each side reserved for < / > markers) to keep the cursor visible. hint_rows generalises to panel_heights(area) -> (input_rows, hint_rows): compact (<40) stays input 1 / hint 2; comfortable becomes input 2, degrading hint-then-input on tiny terminals to protect the output Min(5). render_input_panel splits into render_input_one_row (the existing DA3 path, unchanged) and render_input_two_rows, with a new expand_runs_to_cells helper placing styled cells across the rows. Tests: panel_heights geometry, two-row wrap, overflow-scroll, the indicator-stays-on-the-first-row case, and a two-row layout snapshot. Compact one-row snapshots are byte-identical (that path is untouched).