The subtle menu item highlight (bg.emphasized/60) is near-invisible on
dark surfaces, same issue the select dropdowns had. New v2MenuRecipe
overrides it to gray.200 / whiteAlpha.300, so right-click, user and
settings menus share the select-option hover treatment.
The summary sheet was driven by onMouseOver/onMouseOut both wired to
bare onToggle. Those events bubble, so moving between the image, title
and status text (or the sheet sliding in under the cursor) fired
unbalanced toggles - parity flipped and the sheet stuck open or showed
inverted. This predates the v3 migration.
- ContextMenu card Box now owns the hover zone with non-bubbling
onMouseEnter={onOpen} / onMouseLeave={onClose} from useDisclosure,
covering the whole card including the rating row instead of just the
inner link
- Drop the onToggle prop from GameThumbnail and the over/out handlers
on its Link
- Give the right-click Menu.Content p={4} for breathing room
- Replace extendTheme/ColorModeScript with createSystem Provider +
Toaster shims (components/ui, provider, color-mode) and next-themes;
index.tsx renders Provider, App reads useColorMode from the shim and
clears both chakra and legacy theme storage keys on preference change
- theme.tsx restores the v2 identity on v3 primitives: v2 gray/blue/
green/red scales, v2 solid/contrast fills, v2 text-per-size for
button/input/native-select/tag, v2 input heights, v2 heading scale
(xl->4xl etc), v2 switch track/thumb, brighter link underlines
(currentColor/60), +1px tag top padding, 17px body base font
- Default new-user theme light -> dark to match the established dark UI
- App.test rewritten around Provider + MemoryRouter + Home (old CRA
'learn react' assertion no longer applies)