https://RTCode.io is built on Shoelace 2 today.
Just hover over that middle divider between the input>|<output panels to get a feeling of how customizable it is.
Also our menus do not follow their keyboard navigation logic at all and adds support for disabled, hidden, inert elements, as well as selection by typing the first letter of menu items.
All of these are possible because the author knows what NOT to do with HTML custom elements.