I am so very late to this party. I will not probably have a chance to dig deep into the dev default theme for some time. I like the functionality of adding a light/dark toggle.
Having had to deal with uikit less and pw less and other things... hmm there is still a little bit of technical debt from Reno that occasionally appears. I've had to put in a number of overrides to manage different aspects for different plugins - core and wire.
Not many have probably tried Chroma, but much of the complexity I felt necessary came from a lot of concerns I have read here - monochrome vs duotone, different text color globals. But Chroma is particularly opinionated - like dark mode, it's not for everyone.
I have found this gets more complex with uikit because they recognized the need to preserve contrast across dynamic elements or transparent elements where a variety of images can make text color choice a challenge. But their inverse mode doesn't really accommodate for a true dark mode either - so I needed to work out my own method for overriding their style choices to get a functional dark mode.
Color selection for most end-users is a nightmare to deal with. This was why I tried to implement very simple controls with opinionated math on the back to generate the palette necessary for uikit globals.
While functionality and directing intent is paramount in the new design, if users can't read text or lack element cues that allow them to intuitively interact with the application the costs to handle user requests outweigh the feature. I appreciate the A/B tests folks are using, and sometimes just a little guidance from end-users goes a long way. I don't like working in isolation as a developer away from test users or non-technical people, but that's just my preference.
As you work with color, remember you have a uikit kit style layer, then a pw style layer, and I guess there is now a dynamic css variable layer.
I'm not against that design choice, as it makes a number of toggles possible to bring into the dynamic - but this also shifts the weight around a bit when it comes to bringing definitions client-side.
When I get a chance to play with the mode and work it into Chroma, any overrides or variable splits I've had to build in terms of style will be available there.
Thanks @diogo and @jploch for engaging this process. I look forward to seeing where it goes.