.custom-radio{
    width: 16px;
    height: 16px;
    display: inline-block;
    position: relative;
    z-index: 1;
    top: 3px;
    background: url("../images/checkboxes/checkbox_notchecked_bck.png") no-repeat;
}

.custom-radio.selected { background: url("../images/checkboxes/checkbox_checked_bck.png") no-repeat; }
.custom-radio input[type="checkbox"], .custom-radio input[type="radio"]{
    margin: 1px;
    position: absolute;
    z-index: 2;            
    cursor: pointer;
    outline: none;
    opacity: 0;
    /* CSS hacks for older browsers */
    _noFocusLine: expression(this.hideFocus=true); 
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -khtml-opacity: 0;
    -moz-opacity: 0;
}


/*
input[type=checkbox]:checked+.lbl::before,
input[type=radio]:checked+.lbl::before { display:inline-block; background: url('../images/checkboxes/checkbox_checked_bck.png') no-repeat; }

input[type=checkbox]:hover+.lbl::before,
input[type=radio]:hover+.lbl::before,
input[type=checkbox]+.lbl:hover::before,
input[type=radio]+.lbl:hover::before { }

input[type=checkbox]:active+.lbl::before,
input[type=radio]:active+.lbl::before,
input[type=checkbox]:checked:active+.lbl::before,
input[type=radio]:checked:active+.lbl::before {  }

input[type=checkbox]:disabled+.lbl::before,
input[type=radio]:disabled+.lbl::before,
input[type=checkbox][disabled]+.lbl::before,
input[type=radio][disabled]+.lbl::before,
input[type=checkbox].disabled+.lbl::before,
input[type=radio].disabled+.lbl::before {  }

input[type=radio]+.lbl::before { }
input[type=radio]:checked+.lbl::before{ background: url('../images/checkboxes/checkbox_notchecked_bck.png') no-repeat; }
*/