sijad choose dark mode in front-end, save that settings, regenerate css, etc.
Regenerating css is not necessary. Because then you're assuming css is related to a user, it would require compilation of the same amount of css as you have users. @Felli has a point here, you'd have to ensure the Less compiler is spitting out a light and dark variant and save the state of the user selection (dark, light). Nothing more I think?
Never mind you were thinking the same: flarum/core865#issuecomment-348709128