User blog comment:Trollocool/Styling your infoboxes/@comment-26402117-20160911142434/@comment-26575390-20160911152824

(I think I've just reached the maximum comment length, sorry)

) is used when no value is given for the-theme-source parameter. The CSS selector in this case is .pi-theme-bla for the above example. Otherwise, the value from the theme-source parameter is taken as the theme and the corresponding CSS is used. The CSS selector is .pi-theme-blabla if blabla is the value of the theme-source parameter. The CSS in this step should add everything what isn't included by the unspecific selector.

Unfortunately, theme-source themes do not only overwrite the theme themes, but also replace their class in the aside object (basically the infobox container), which means, that you cannot use .portable-infobox as the least specific selector .pi-theme-theme as a less specific selector and .pi-theme-theme-source as a more specific selector at the same time. It would add more room for development, but it doesn't work that way, so you'll have to stick with my stages above.