It’s essential to be able to plug into native elements, either by extending them using custom elements or by decorating them with CSS.
“plug into” could mean a lot of things - I guess my position on this depends on what you mean. A number of discussion (steve linked to some of the threads above) seem to have shown that it’s not actually necessary to extend in the programmatic sense in order to create a custom element which uses built in instead of bolt on functionality. In factm Steve showed one such example more or less above which uses composition. Composition is very often preferable to inheritance anyway. So, for example, you could create a custom element which used a native control child as input and that has pretty much all of the same advantages that extending does and maybe some more too in the sense that when you create richer controls that claim to actually be something else, you somewhat break the sense of what precisely is doing the acting as what. So we’re talking about:
<!-- vs --->
Both types of advice are pretty easy to give/describe.
Of course, you can do all of these things today, there are some examples, steve shared one.The problem historically is mostly that they are receipe based or require some very particular library or framework. On the flip side, people have created considerably easier ways to get it wrong.
So, the benefit of custom elements is that it can make it just as easy to do the right thing (as a page author, not a custom element author).
I know this sounds a little like handwaving away because there have been some prominent initial examples of custom elements which failed the accessibility test, but developers really do all want to do the right things - they’ve got other shit to do and it saves them time (and money) to reuse something where someone else has done the hard work. I truly believe that custom elements, without extending, is still a phenomenal game changer in that the community can work together to figure it out and some amount of experimentation is good - failure is an essential ingredient to eventual success.
CSS WG is way over-stretched and, to be entirely honest, it’s harder than you’re imagining to get this right. IMHO, if they took it up, they might likely not get it right and it would very likely take a long time. Conversely, we can work together to build increasingly excellent custom elements in the meantime and provide useful information necessary to help them get it right.