I think the key point here is to not be so fanatical about it and realize that tables are ok in certain situations. tables for the main part of a website? not so good. tables for a contact form? OK.
Hm, very interesting discussion going on here.
The thing is, tables being used for layout of website elements were “OK” back in the 90ies, when there simply was no other possibility to create a layout or grid but tables being “misused” for this are just an ugly hack being dragged from one decade to another.
Tables have a semantic meaning, as every other element in an XHTML code nowadays, and that is: tabular data. Tables should not be used for design or laying out elements, not for forms, not even for forums because today you can all do it with CSS, and that’s what CSS is for, isn’t it?
There are tons of articles about this on the web, especially about the meaning of semantics and why tables are harmful when used as a design element.
For the CSS: For me, it’s mostly one stylesheet for screen media being divided by nice and big, 80 chars. long CSS comments to create the visual feeling of structure in the css file. Remember: as long as you don’t use some kind of a combining script (or other creative ways of achieving this) for “gluing” css files , every css file is a server request.