Veamos, una etiqueta class es un atributo, es decir, que tú lo asignas a los elementos HTML. Esto significa que tú le asignas una clase a un elemento html y no css, con lo que puedes poner el nombre que quieras en una clase y será perfectamente válida ya que es el valor de un atributo.
Realmente no hace falta definir una clase en tu hoja de estilos, por que no se interpreta como si fueran por ejemplo variables en php, que tienen que estar predefinidas para que sea correcto. En este caso como esa etiqueta se puede utilizar no solamente para dar estilos, no es necesario declararla en la hoja de estilos (lo que estás haciendo tú que la utilizas para javascript).
Como lo único que haces es indicar al código que quieres aplicar esos estilos mediante esa etiqueta, al interpretarse, si existen se aplican, y sino simplemente no pasa nada, lo que hace que sea código perfectamente válido. No te preocupes por el w3c que no tienes ningún error de código si es lo que te interesa.
Espero te haya ayudado, un saludo.