Well, regarding the :where, it threw problems at me. Specifically, notifications stopped working on my other website because I have an extra class that uses the .notifs base, and it just shows that the standard isn't really ready for automation.
.notifs .mimenu { opacity: 0 }
.otherclass .open, .notifs .open { opacity: 1 } // This will work
:is(.otherclass, .notifs) .open { opacity: 1 } // This will work
:where(.otherclass, .notifs) .open { opacity: 1 } // This will NOT work!
I could modify my .mimenu declaration to not be 'final', so that .otherclass also reuses it, and then it'd probably work. Or I could specifically prevent that class that being converted into a :where() or whatver. But this just proves to me that there is currently no sure way to make it work at execution time. So I'm disabling it temporarily. Feel free to tell me if you can figure out a way! I loved :where(), but as it is, I'd rather have it work and waste a few bytes in my gzipped file. (Really, it's just that-- a few bytes. Doesn't matter as much in 2021 as it did in the early 2010's when I worked on this feature...)