fix(classifier): By-tracking columns no longer reserve width for hover-only buttons

Each merged-cell column was sized to fit the per-node action buttons (+ ✎ 🗑),
even though they're invisible until you hover the cell. The buttons sat in flow
inside the sticky .tcell__inner. Float them absolutely over the right of the cell
instead (revealed on hover, pointer-events gated), so a column now sizes to its
value alone. Classifier suites 69 green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
ZDDC 2026-06-15 15:19:05 -05:00
parent c718334d25
commit e58347d476

View file

@ -707,7 +707,15 @@ input.tfile__name:focus { border-color: var(--primary); background: var(--bg); o
.trev__inner .tcell__name { color: var(--primary); }
.tcell__preview { text-decoration: none; cursor: pointer; }
.tcell__preview:hover { text-decoration: underline; }
.ttable__cell:hover .tnode__actions, .ttable__rev:hover .tnode__actions { opacity: 1; }
/* The hover-only node controls must NOT reserve column width (they're invisible
normally). Float them over the right of the cell instead of leaving them in
flow .tcell__inner is sticky, so it's the positioning context so each
column sizes to its value alone. */
.ttable .tnode__actions {
position: absolute; right: 0.25rem; top: 50%; transform: translateY(-50%);
margin-left: 0; padding-left: 0.25rem; background: var(--bg); pointer-events: none;
}
.ttable__cell:hover .tnode__actions, .ttable__rev:hover .tnode__actions { opacity: 1; pointer-events: auto; }
.ttable .drop-hover { outline: 2px solid var(--primary); outline-offset: -2px; }
.ttable__file { padding: 0.1rem 0.4rem; }
.ttable__drop { color: var(--text-muted); font-style: italic; font-size: 0.75rem; }