I spent a lot of time creating a theme system (not launched yet but on GitHub) so that users could edit any color on the site. But now that I think about it, it seems pretty bad. It bloats the codebase, cookies, the session store and the database. I think I'm going to scrap it.
Instead each theme will be a separate css file. There will be original (light mode) and dark mode to begin with.