(As suggested by Nova support, I’m posting this bug report here.)
Finding a good background color for selected text in dark mode is tricky, other applications like iTerm therefore disable foreground coloring in such cases:
According to the Nova docs, the “meta.text.selected” supports both “color” and “background-color”, so it should be possible to overrule syntax coloring by setting a “color” there.
Unfortunately, that doesn’t work. Either there’s a bug somewhere or the syntax colors have precedence (which renders the “color” setting there obsolete).
Maybe support for a CSS-like “!important” might help?