> The key reason why you (and likely most developers) struggle with CSS, is that you underestimate it.<p>I don't agree with this leading premise at all. The main reason people struggle with CSS is twofold: simple things are hard, and things are inconsistent. In a well designed system, easy things should be easy, hard things should be possible, and most things should be reasonably consistent. CSS is none of the above. For case studies, see centering things vertically, three column layouts, filling remaining space, and so on before flexbox, grid, and the other new kids came around.