Is there a good tutorial / help file to create HUD elements with flexible sizing like CSS3 can?

Basically the whole widget UI is completely flexible unless you start specifying widths and heights. (What you are noticing is probably because those parameters are specified).

unfortunately by default most components are pre-set to arbitrary values that need clearing before being untethered to the screen size and location.
Particularly the sizing/position options and the default anchor point matter a lot for this.

Pitfalls that are part of the system have to do with that actually. If you want a grid to always have a 1pixel spacing between cells you are SOOL. The automated system that manages the scaling takes over and 1pixel is not a unit it knows. Essentially. You can go with 1 unit, but this may result in 10 pixels at 4k and 1 at 800.
Despite the fact the fields may be labeled as pixels

The implementation of the box model is poor - in fact let’s just say nonexistent. Instead of assuming it works the same just play with the spacing parameters to figure out / learn how the widget interface uses them. And again, remember that pixels aren’t pixels but work much closer to percentages.

Also, a tip before you go nuts later.
you don’t add 1000 different buttons.
you create a widget, set it up to be a button, and then call it in as a custom widget on the menu interface you created.
This is true for almost any type of input or even images really.

Why? because at some point you are going to want to control something about it that you will have to custom script. The only way to do so is to have a master widget of sort where you can make such customization.

as far as fonts go.
The system actually comes in with built in scaling that alters the font size if you set it up correctly. However this can be (and definitely has been) an issue.
Assume that it is better to have a fixed font size then a liquid one.
Or create a “label” widget, and add custom code to change the font size based on screen percentage.
Be mindful, you want to calculate the percentage based on both X and Y and not just X like for websites css media queries - since the game will have any possible size but never actually resize like a webpage, you can assume that the aspect ratio will remain the same and use that to power the math behind the size choiches.