diff --git a/public/style.css b/public/style.css index 9c519a7..2933ae2 100644 --- a/public/style.css +++ b/public/style.css @@ -357,6 +357,18 @@ body { border-radius: var(--radius); background: var(--bg); } +/* Keep the last terminal row clear of the cell border/focus ring in a grid. + * Root cause (measured): the base .term-pane is box-sizing:border-box, so + * getComputedStyle(pane).height — which xterm's FitAddon reads to compute rows — + * returns the PADDING-box height and double-counts the pane's own padding, packing + * one extra row that overruns into the border (overflow +6px). content-box makes + * that height report the CONTENT box, so FitAddon drops the phantom row and the 6px + * padding becomes real clearance. (Single mode keeps padding 0 so the terminal + * still fills to the key-bar.) */ +#term.grid .term-pane { + box-sizing: content-box; + padding-bottom: 6px; +} /* Maximized quadrant fills the whole grid as an ABSOLUTE overlay (taken out of * grid flow so the siblings keep their placement — spanning grid tracks instead * would shove auto-placed siblings into implicit rows, resizing their live PTYs).