In my opinion it goes like this :
- Make a sketch of the design, form positioning or interface you want for a certain page.
- Try to translate this design to a more comprehensible form for your interpreter (I mean writing CSS lines).
- Long cycle of try and error, reading stackoverflow, testing, reading snippets.
Practice this for a certain amount of time (be patient!) you will find yourself a world class CSS "writer". The main basis is moving from a sketch to CSS script.