You cannot directly style checkboxes or radio buttons in most browsers. It is acceptable to leave them in their default style, which will be displayed differently based on the browser environment.
What you can do, is hide the actual checkbox or radio button with visibility: hidden;, and then use the :before pseudoclass to add a CSS alternative.
See CSS source code and comments for details.