@charset "utf-8";

.checkbox {padding-left: 20px; }
	.checkbox label {
		display: inline-block;
		vertical-align: middle;
		position: relative;
		padding-left: 5px; }
	.checkbox label::before {
		content: "";
		display: inline-block;
		position: absolute;
		width: 20px;
		height: 20px;
		left: 0;
		margin-left: -20px;
		border: 1px solid #cccccc;
		border-radius: 0;
		background-color: #fff;
		-webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
		-o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
		transition: border 0.15s ease-in-out, color 0.15s ease-in-out; }
	.checkbox label::after {
		display: inline-block;
		position: absolute;
		width: 20px;
		height: 20px;
		left: 0;
		top: 0;
		margin-left: -19px;
		padding-left: 3px;
		padding-top: 1px;
		font-size: 13px;
		color: #222; }
	.checkbox input[type="checkbox"],
	.checkbox input[type="radio"] {
		opacity: 0;
		z-index: 1; }
    .checkbox input[type="checkbox"]:focus + label::before,
	.checkbox input[type="radio"]:focus + label::before {
		outline: thin dotted;
		outline: 5px auto -webkit-focus-ring-color;
		outline-offset: -2px; }
    .checkbox input[type="checkbox"]:checked + label::after,
    .checkbox input[type="radio"]:checked + label::after {
		font-family: "FontAwesome";
		content: "\f00c"; }
    .checkbox input[type="checkbox"]:disabled + label,
    .checkbox input[type="radio"]:disabled + label { opacity: 0.65; }
	.checkbox input[type="checkbox"]:disabled + label::before,
		.checkbox input[type="radio"]:disabled + label::before {
		background-color: #eeeeee;
		cursor: not-allowed; }
	.checkbox.checkbox-circle label::before {border-radius: 50%; }
	.checkbox.checkbox-inline { margin-top: 0; }

.radio {
	padding-left: 20px; margin-top: 7px;margin-bottom: 6px;}
	.radio label {
		display: inline-block;
		vertical-align: middle;
		position: relative;
		padding-left: 5px;padding-right:30px;}
	.radio label::before {
		content: "";
		display: inline-block;
		position: absolute;
		width: 17px;
		height: 17px;
		left: 0;
		margin-left: -20px;
		border: 1px solid #cccccc;
		border-radius: 50%;
		background-color: #fff;
		-webkit-transition: border 0.15s ease-in-out;
		-o-transition: border 0.15s ease-in-out;
		transition: border 0.15s ease-in-out; }
	.radio label::after {
		display: inline-block;
		position: absolute;
		content: " ";
		width: 9px;
		height: 9px;
		left: 4px;
		top: 4px;
		margin-left: -20px;
		border-radius: 50%;
		background-color: #222;
		-webkit-transform: scale(0, 0);
		-ms-transform: scale(0, 0);
		-o-transform: scale(0, 0);
		transform: scale(0, 0);
		-webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
		-moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
		-o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
		transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33); }
	.radio input[type="radio"] {opacity: 0;z-index: 1; }
    .radio input[type="radio"]:focus + label::before {
		outline: thin dotted;
		outline: 5px auto -webkit-focus-ring-color;
		outline-offset: -2px; }
    .radio input[type="radio"]:checked + label::after {
		-webkit-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-o-transform: scale(1, 1);
		transform: scale(1, 1); }
    .radio input[type="radio"]:disabled + label {opacity: 0.65; }
	.radio input[type="radio"]:disabled + label::before {cursor: not-allowed; }
	.radio.radio-inline {margin-top: 0; }