I suggest using underlines instead of dashes. For consistency, it is better to keep the dash. But it is still the same number of properties, whether you view them as a hierarchy or not. Styles for labels, insertions, etc. may be different from each other, so more structure is needed there, too. I can write something up about my implementation and e-mail it.
Explicit assignments are easier.
To make labels and insertions more powerful, we could allow the generated text to insert HTML elements. It will be a W3C working draft. E.g., tinting does. I also want to take the colors out and then retint the gray scale. There are hundreds of possible operations.