if you take my advice, you only need two selectors:
tw-link, .enchantment-link, .visited { color: red; } .enchantment-link:hover, tw-link:hover, .visited:hover { color: green; }
(or format them however you want)
Without that last .visited on the first selector, you wind up getting a different colour for your links to already-visited passages, if those are [[target]] links which don't share a page with (click:) links (the conditions may vary from this, but these conditions are sufficient). That's a specific & weird enough situation I gave up the first time I tried to solve it!
(the reason for this is that Twine default CSS has a selector for .visited, and this is considered more specific than tw-link so it overrides you)