Add function SetThemeType to have a flexible method of managing theme.
You have to
add attribute that defines theme type for the object (maybe a "data-Euterpe_Theme_Type")
create a function to change this attribute (SetThemeType or something like)
change AutoApplyClass to support this attribute
In this way you can use several object with same Euterpe_Type but different appearance (in particular button)
Add function SetThemeType to have a flexible method of managing theme. You have to