All of those individual Published values on each theme is a massive amount of overkill and will generate a ton of extra code. You don't need to know when an individual font or color is changed, you just need to know when the theme is changed.
Especially since, as shown, each one is set once anyway.
See the following gist for a better example:
https://gist.github.com/hmlongco/c8e7b1fb1d1d4de7e7b550895868e499
Note how using environmentObjects also makes theme management simpler.
Finally, hard coding hex colors is a bad idea. While they might make some sense when creating your styles you're probably going to want to use color assets. Especially since named color assets make dealing with light mode/dark mode much, much easier.