All Telerik controls support points (1), (2) and (3) in this exact order, simply because browsers take case of this and there is no other way.
However, in some cases setting styles declaratively (e.g. Font-Size) may not have effect, because the style has to be set to another element. If we take RadTabStrip as an example, this will not work:
<telerik:RadTabStrip ID="RadTabStrip1" runat="server" Font-Bold="true" Font-Size="Large"
<telerik:RadTab Text="Tab 1" />
But this will work:
<telerik:RadTabStrip ID="RadTabStrip1" runat="server">
<telerik:RadTab Text="Tab 1" Font-Bold="true" Font-Size="Large"
The TabStrip skins define font styles for items, not for the whole control. The reason for this is to avoid the case in which some global web application styles override the TabStrip skin, which would be very easy if all font styles were defined for the control's wrapping element.
By the way, it is not necessary at all to use a non-embedded skin in order to override some styles. Here is a blog post, which explains how to override embedded skins:
How To Override Styles in a RadControl for ASP.NET AJAX Embedded Skin
You seem quite familiar with the way CSS should work, so I suppose you will have no problems using one or two custom CSS classes and customizing anything you like by using CSS selectors with higher specificity than the ones in our skins.
the Telerik team
Check out Telerik Trainer
, the state of the art learning tool for Telerik products.