a) Don't worry about compiler-generated mangled names (unless your compiler is seriously dysfunctional and imposes an unreasonable limit on them). They have no effect on the source code, which is what coding guidelines are concerned with.
b) Use classes and namespaces sensibly. Make each name short, stating its purpose in the context of its surrounding scope, and the fully-qualified name will document its purpose in the grand scheme of things.
c) Remember it's a guideline not a rule, and in some circumstances it might be necessary to use your brain. I suggest that a limit of "2 or 3 words" would make more sense than an arbitrary number of characters.