a.sm2_button {
    position: relative;
    display: inline-block;
    /* If you worry about old browser bugs, Firefox 2 might not like this and may need -moz-inline-box instead. :D */
    width: 45px;
    height: 54px;
    background: url(../images/sound.png) top left no-repeat;
}

.nsound_button {
    position: relative;
    display: inline-block;
    /* If you worry about old browser bugs, Firefox 2 might not like this and may need -moz-inline-box instead. :D */
    width: 45px;
    height: 54px;
    background: url(../images/no-sound.png) top left no-repeat;
}


a.sm2_button:focus {
    outline: none;
    /* maybe evil, but don't show the slight border outline on focus. */
    text-decoration: none;
}

a.sm2_button,
a.sm2_button.sm2_paused:hover {
    background: url(../images/sound.png) top left no-repeat;
    background-repeat: no-repeat;
    text-decoration: none;
}

a.sm2_button:hover,
a.sm2_button.sm2_playing,
a.sm2_button.sm2_playing:hover {
    background: url(../images/play.png) top left no-repeat;
    background-repeat: no-repeat;
    text-decoration: none;
}

a.sm2_button.sm2_playing,
a.sm2_button.sm2_playing:hover {
    background: url(../images/pause.png) top left no-repeat;
    text-decoration: none;

}

a.sm2_button.sm2_paused,
a.sm2_button.sm2_paused:hover {
    background: url(../images/play.png) top left no-repeat;
    background-repeat: no-repeat;
    text-decoration: none;
}
