Number of HTML classes for one element
The use of that many classes is a sign of incorrect CSS usage, but not because of performance.  I doubt eight or ten classes on an element will be a noticeable performance issue.

I've never heard of an explicit limit on the number of classes assigned to an element, but that may due to a common understanding that it is not correct to create a class for every visual attribute.

An important (and possibly the primary) purpose of CSS is to associate rendering characteristics with conceptual (semantic) markup.  Classes should be named for the concepts they represent, not their appearance.  Like this:

.tableofcontents {
    padding-left: 10px;
    padding-top: 5px;
}


If the goal is to avoid duplication (though I honestly don't think duplicating a few lines of declarations in various blocks is harmful), one can assign multiple conceptual classes to a block:

.menu,
.logo,
.heading,
.tableofcontents {
    padding-top: 5px;
}

.menu,
.tableofcontents {
    padding-left: 10px;
}