@darrylyeo
Agreed, better to define just enough colors to meet minimum semantic/accessibility needs – a different hue for every distinct meaning (default/accented/success/error) multiplied by one shade variant for each interactive state (default/hover/active) multiplied by the number of themes you want to support (light/dark).