I\'m a little confused about CSS and the class attribute. I always thought, the order in which I specify multiple classes in the attribute value has a meaning.
The order of classes in the attribute is irrelevant. All the classes in the class attribute are applied equally to the element.
The question is: in what order do the style rules appear in your .css file. In your example, .basic comes after .extra so the .basic rules will take precedence wherever possible.
If you want to provide a third possibility (e.g., that it's .basic but that the .extra rules should still apply), you'll need to invent another class, .basic-extra perhaps, which explicitly provides for that.