diff --git a/components/graph-coverage.tsx b/components/graph-coverage.tsx index a21b5a9..e49e5b9 100644 --- a/components/graph-coverage.tsx +++ b/components/graph-coverage.tsx @@ -102,7 +102,7 @@ export function GraphCoverageControl({ refreshKey = 0 }: { refreshKey?: number } title="Extraction coverage — what the knowledge graph has covered" aria-expanded={open} onClick={() => setOpen((o) => !o)} - className={`flex size-11 items-center justify-center rounded-xl border bg-card/85 shadow-lg backdrop-blur transition-colors hover:bg-accent ${ + className={`flex size-9 items-center justify-center rounded-xl border bg-card/85 shadow-lg backdrop-blur transition-colors hover:bg-accent ${ open ? "text-foreground" : "text-muted-foreground hover:text-foreground" }`} > diff --git a/components/graph-view.tsx b/components/graph-view.tsx index 2aa6609..e75faa1 100644 --- a/components/graph-view.tsx +++ b/components/graph-view.tsx @@ -361,7 +361,7 @@ function GraphSettingsControl({ title="Rendering settings" aria-expanded={open} onClick={() => setOpen((o) => !o)} - className={`flex size-11 items-center justify-center rounded-xl border bg-card/85 shadow-lg backdrop-blur transition-colors hover:bg-accent ${ + className={`flex size-9 items-center justify-center rounded-xl border bg-card/85 shadow-lg backdrop-blur transition-colors hover:bg-accent ${ open ? "text-foreground" : "text-muted-foreground hover:text-foreground" }`} > @@ -1134,24 +1134,35 @@ export function GraphView() { coverage, import, gear — coverage sits between search and import; the gear keeps the corner. items-start (not center) so the search container's no-match note can grow downward - without shifting its siblings — every button is 44px tall, - top alignment pins the row. Coverage renders even when the - graph is EMPTY — an empty graph with unextracted sessions is - exactly when it matters (extract → the graph gains nodes). + without shifting its siblings — every control is 36px tall + (header band, 2026-09-20), top alignment pins the row. + Coverage renders even when the graph is EMPTY — an empty + graph with unextracted sessions is exactly when it matters + (extract → the graph gains nodes). lh-no-drag (2026-09-17): home.tsx's floating drag strip underlays this row — Electron's drag mask ignores z-index, so without an explicit carve-out the controls were - unclickable in the desktop app (owner report). max-w + flex-wrap - (narrow-window wave, 2026-09-17): below the sidebar auto-close - threshold the row wraps to a second line instead of overflowing - left over the header toggle cluster (92px gutter + 36px button); - 9rem keeps one clear column of air alongside it. */} -