ContextMenu / Label · Separator - none: a 312 × 28 heading and a 1px rule in an 8px board
Using the Context Menu
Why does Radio have no icon?
Because Radio reuses the Show Icon axis for its tick instead of for a leading glyph. A radio row is text, then a check, then a fixed 20px spacer, so a chosen and an unchosen option keep the same right edge. It is the one place in the component where an axis name does not describe what it draws.
Why does Destructive stop at Hover?
A destructive row is either offered or it is not there. The file draws it at rest, in red on the menu surface, and hovered, where the whole row fills with base.destructive and the label goes white. Disabling it rather than removing it would leave a red row nobody can press, which reads as a fault.
What is Hover (Translucent) for?
The hover fill on a row inside a translucent menu, at 70% rather than solid so the surface behind it still shows. It is base.muted carrying the alpha, which is why the row lightens without hiding what the menu is floating over.
How does the submenu trigger differ from a row?
It is 312 wide rather than 300 and ends in a chevron. Its Active state gives it exactly what Hover gives an ordinary item, a base.muted fill and base.secondary-foreground ink, so an open submenu and a pointed-at row look the same. That is deliberate: both mean the same thing to the reader.