﻿.checkbox {
	padding-left: 20px;
	margin-bottom: 14px;
}

.checkbox label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 5px;
}

.checkbox label::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 17px;
	height: 17px;
	left: 0;
	margin-left: -20px;
	/*border: 1px solid #cbcbcb;*/
	border-radius: 3px;
	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: 16px;
	height: 16px;
	left: 0;
	top: 0;
	margin-left: -20px;
	padding-left: 3px;
	padding-top: 1px;
	font-size: 11px;
	color: #5d5d5d;
}

.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: #e5e5e5;
	cursor: not-allowed;
}

.checkbox.checkbox-circle label::before {
	border-radius: 50%;
}

.checkbox.checkbox-inline {
	margin-top: 0;
}

.checkbox-primary input[type="checkbox"]:checked + label::before, .checkbox-primary input[type="radio"]:checked + label::before {
	background-color: #0081bc;
	border-color: #0081bc;
}

.checkbox-primary input[type="checkbox"]:checked + label::after, .checkbox-primary input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-danger input[type="checkbox"]:checked + label::before, .checkbox-danger input[type="radio"]:checked + label::before {
	background-color: #d51229;
	border-color: #d51229;
}

.checkbox-danger input[type="checkbox"]:checked + label::after, .checkbox-danger input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-info input[type="checkbox"]:checked + label::before, .checkbox-info input[type="radio"]:checked + label::before {
	background-color: #a9cbda;
	border-color: #a9cbda;
}

.checkbox-info input[type="checkbox"]:checked + label::after, .checkbox-info input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-warning input[type="checkbox"]:checked + label::before, .checkbox-warning input[type="radio"]:checked + label::before {
	background-color: #efc766;
	border-color: #efc766;
}

.checkbox-warning input[type="checkbox"]:checked + label::after, .checkbox-warning input[type="radio"]:checked + label::after {
	color: #fff;
}

.checkbox-success input[type="checkbox"]:checked + label::before, .checkbox-success input[type="radio"]:checked + label::before {
	background-color: #62a536;
	border-color: #62a536;
}

.checkbox-success input[type="checkbox"]:checked + label::after, .checkbox-success input[type="radio"]:checked + label::after {
	color: #fff;
}

.radio {
	padding-left: 20px;
	margin-bottom: 14px;
}

.radio label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 5px;
}

.radio label::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 17px;
	height: 17px;
	left: 0;
	margin-left: -20px;
	border: 1px solid #cbcbcb;
	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: 11px;
	height: 11px;
	left: 3px;
	top: 3px;
	margin-left: -20px;
	border-radius: 50%;
	background-color: #a4a4a4;
	-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;
	outline: 0;
}

.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;
}

.radio-primary input[type="radio"] + label::after {
	background-color: #0081bc;
}

.radio-primary input[type="radio"]:checked + label::before {
	border-color: #0081bc;
}

.radio-primary input[type="radio"]:checked + label::after {
	background-color: #0081bc;
}

.radio-danger input[type="radio"] + label::after {
	background-color: #d51229;
}

.radio-danger input[type="radio"]:checked + label::before {
	border-color: #d51229;
}

.radio-danger input[type="radio"]:checked + label::after {
	background-color: #d51229;
}

.radio-info input[type="radio"] + label::after {
	background-color: #a9cbda;
}

.radio-info input[type="radio"]:checked + label::before {
	border-color: #a9cbda;
}

.radio-info input[type="radio"]:checked + label::after {
	background-color: #a9cbda;
}

.radio-warning input[type="radio"] + label::after {
	background-color: #efc766;
}

.radio-warning input[type="radio"]:checked + label::before {
	border-color: #efc766;
}

.radio-warning input[type="radio"]:checked + label::after {
	background-color: #efc766;
}

.radio-success input[type="radio"] + label::after {
	background-color: #62a536;
}

.radio-success input[type="radio"]:checked + label::before {
	border-color: #62a536;
}

.radio-success input[type="radio"]:checked + label::after {
	background-color: #62a536;
}

input[type="checkbox"].styled:checked + label:after, input[type="radio"].styled:checked + label:after {
	font-family: 'FontAwesome';
	content: "\f00c";
}

input[type="checkbox"] .styled:checked + label::before, input[type="radio"] .styled:checked + label::before {
	color: #fff;
}

input[type="checkbox"] .styled:checked + label::after, input[type="radio"] .styled:checked + label::after {
	color: #fff;
}


.radio, .checkbox {
	margin-bottom: 20px;
}

.checkbox-custom, .radio-custom {
	display: inline-block;
	position: relative;
	padding-left: 30px !important;
	-webkit-transition: color linear .2s;
	-moz-transition: color linear .2s;
	-o-transition: color linear .2s;
	transition: color linear .2s;
	color: #5d5d5d;
}

.checkbox-custom .ctrl-overlay, .radio-custom .ctrl-overlay {
	position: absolute;
	left: 0;
	top: -4px;
	width: 24px;
	height: 24px;
	line-height: 19px;
	border: 2px solid #cbcbcb;
	background-color: #fff;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	font-size: 1.3111em;
	color: #fff;
	text-align: center;
	-webkit-transition: background-color linear 0.2s;
	-moz-transition: background-color linear 0.2s;
	-o-transition: background-color linear 0.2s;
	transition: background-color linear 0.2s;
}

.checkbox-custom.focused {
	color: #0081bc;
	-webkit-transition: color linear .2s;
	-moz-transition: color linear .2s;
	-o-transition: color linear .2s;
	transition: color linear .2s;
}

.checkbox-custom.focused .ctrl-overlay {
	border-color: #0081bc;
}

.checkbox-custom.checked {
	font-weight: bold;
}

.checkbox-custom.checked .glyphicon:before {
	margin-left: -2px;
}

.checkbox-custom.checked .ctrl-overlay, .radio-custom.checked .ctrl-overlay {
	border-color: #0081bc;
	background-color: #0081bc;
	-webkit-transition: background-color linear 0.2s;
	-moz-transition: background-color linear 0.2s;
	-o-transition: background-color linear 0.2s;
	transition: background-color linear 0.2s;
}

.checkbox-custom.disabled .ctrl-overlay, .radio-custom.disabled .ctrl-overlay {
	background-color: #f3f3f3;
}

.checkbox-custom:hover, .radio-custom:hover {
	color: #0081bc;
	-webkit-transition: color linear .2s;
	-moz-transition: color linear .2s;
	-o-transition: color linear .2s;
	transition: color linear .2s;
}

.checkbox-custom input[type="checkbox"], .radio-custom input[type="checkbox"], .checkbox-custom input[type="radio"], .radio-custom input[type="radio"] {
	opacity: 0;
	filter: alpha(opacity=0);
	outline: none !important;
}

.radio-custom .ctrl-overlay {
	-webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	border-radius: 100px;
}
