input[type=checkbox], input[type=radio] {
    opacity: 0;
    position: absolute;
}


input[type=checkbox], input[type=checkbox] + label, input[type=radio], input[type=radio] + label {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
}


input[type=checkbox] + label:before, input[type=radio] + label:before {
	font-family: 'FontAwesome';
	background-color: #fff;
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	margin-right: 10px;
	text-align: center;
	font-size: 12px;
	padding: 2px;
	color: #fff;
	transition: color .4s;
	border: 1px solid #9BA0B6;
}


input[type=checkbox] + label:before {
    content: '\f00c';
    border-radius: 2px;
}


input[type=radio] + label:before {
	content: '\f00c';
    border-radius: 2px;
}


input:checked + label:before {
    background: #9B004E;
    color: #FFF;
}


input[type=checkbox][disabled] + label:before, input[type=radio][disabled] + label:before {
    color: #d0d0d0;
    background: #bfbfbf;
    border: 1px solid #656b64;
}


.checkbox { font-weight:bold; }