Custom Dark Mode?

I am essentially trying to implement a custom dark and light mode setting that changes the appearance of all buttons on all screens depending on which is enabled.

I have a general understanding of how this can be accomplished but I want to know if anyone has input on what would be the most practical method.

You can use the LVGL subjects with bind style to apply a theme based on the subject’s value, see this example

https://docs.lvgl.io/master/main-modules/observer/observer_examples.html#modular-style-update-on-theme-change