Justoverclock personally I do prefer using css class names for customization. What happens if I also want to change font size or say, letter spacing? Will you keep adding new input fields for every property out there? On the other hand, the background fields could make sense if you allow users to set different colors for different badges.