Fiddling with the Mozilla user interface
I wanted to change the font in the message list window of the Mozilla mailer (it's the top right window). This turned out to be something of an exciting journey into the world of and friends. It's unlikely that I'll want to go back there any time soon.
Anyway, I discovered that one magic incantation that works for me is to create a userChrome.css in my Mozilla profile directory, and add the following:
treechildren:-moz-tree-cell-text(unread),treechildren:-moz-tree-cell-text(read) { font-size: 10pt !important; }
This changes only the message lists as far as I can tell. It's much easier to change all of the fonts (replace the 'treechildren...' stuff with '*'). Figuring out the correct widget (or whatever) to which the style should be applied was something of a trial and error experience.
The Mozilla source is just huge. It's complex, includes a variety of languages and lots of the source files don't even have comments explaining what part of the overall picture they implement, never mind comments explaining how they work and interact. Perhaps it becomes clear once you dive in with some gusto, but to the casual wanderer it's quite frightening.