livetoski wrote:1. How do table styles and css interact?
You make them sound like two different things, and they're not. They're both cascading stylesheets. It's just that when you create a table stylesheet, Flare automatically puts all its styles in a new stylesheet instead of putting them in the main topic stylesheet.
Basically, the style definition that's closest to the content (code-wise) wins. So an inline style in a span tag will override styles defined in its parent paragraph tag, and the style definition for the paragraph tag will override the style definition of its parent tag (e.g., the body tag). Most style definitions are made in stylesheets. Stylesheets are referenced at the top of the topic's page code, and the same rule of precedence applies. Whichever style definitions are in the last stylesheet defined will override the style definitions of the stylesheet declared previously, BUT ONLY if the styles are in conflict. Or to be more precise, the attributes. So if styles2.css is declared (referenced) after styles1.css, and styles2.css has the base paragraph tag set to display text as bold and styles1.css has the base paragraph tag set to display text as italic, then the content in the topic will be bold AND italic, because the font-weight attribute in styles2.css is not in conflict with the font-style attribute in styles1.css, even though both attributes are defined in the base paragraph tag in each stylesheet. If, however, the base paragraph tag in styles1.css was set to have a font-weight set to normal, then the font-weight declaration of bold in styles2.css would prevail, because styles2.css was called after styles1.css.
Likewise, Flare usually lists (declares) table stylesheets after the main topic stylesheet which is listed after the MadCap.css stylesheet that Flare adds when it builds the output. So in your situation, if you were to set your base <td> tag in the main topic stylesheet to display text in a red font but you set the table stylesheet to display content in a blue font, then the tables would appear in a blue font, because the table stylesheet is declared last so its font color value defined on the base <td> tag wins over the font color value you defined for the base <td> tag in the main topic stylesheet.
livetoski wrote:2. Will all tables inherit a table style defined in the css and then have to be individually re-applied?
Not sure what you mean by that. When you create a table, you have the option to let it use the default styles (pulled from the main topic stylesheet) or to use an existing or new table stylesheet.