If you check your store's CSS code using some tool like Firebug, you may notice, that all Ecwid CSS rules from the theme, have prefixes like
html#ecwid_store body#ecwid_store even if you don't use such prefixes in your CSS theme.
Let me explain why they appear.
Old Ecwid versions had some issues, when the site's CSS styles affected Ecwid's appearance and the store didn't look good. Since v4.0 Ecwid's CSS theme always has a higher priority than the site's general CSS. It's a good thing, now Ecwid looks as it should on any site. When Ecwid includes your CSS theme, it adds a special prefix to all Ecwid's CSS classes.
So if you have this code:
div.some_ecwid_class {
}
The following code will be included:
html#ecwid_html body#ecwid_html div.some_ecwid_class {
}
Because of this prefix this rule gets higher priority than any site's usual CSS style. So the site's CSS doesn't affect Ecwid anymore.
If you want to disable this behavior for some reason, add this line of code before any Ecwid integration code:
<script>var ecwid_nocssrewrite = true;</script>