﻿/*
	checkbox default styling
*/
label[for] {
	cursor: pointer;
}
/* Base for label styling */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
	position: absolute;
	/*right: -99999px;*/
	right: 15px;
	opacity: 0;
}

	[type="checkbox"]:not(:checked) + label,
	[type="checkbox"]:checked + label {
		position: relative;
		padding-right: 20px;
		cursor: pointer;
	}

		/* checkbox aspect */
		[type="checkbox"]:not(:checked) + label:before {
			content: '';
			position: absolute;
			right: 0;
			top: 2px;
			width: 17px;
			height: 17px;
			border: 1px solid #bec2c4;
			background: white;
			border-radius: 0;
		}

		[type="checkbox"]:checked + label:before {
			content: '';
			position: absolute;
			right: 0;
			top: 2px;
			width: 17px;
			height: 17px;
			border: 1px solid #17467d;
			background: #17467d;
			border-radius: 0;
			/*box-shadow: inset 0 1px 3px rgba(0,0,0,.3)*/
		}
		/* checked mark aspect */
		[type="checkbox"]:not(:checked) + label:after,
		[type="checkbox"]:checked + label:after {
			content: '✓';
			font-weight: 0;
			position: absolute;
			top: 5px;
			right: 3px;
			font-size: 14px;
			line-height: 0.8;
			color: white;
			transition: all .2s;
		}
		/* checked mark aspect changes */
		[type="checkbox"]:not(:checked) + label:after {
			opacity: 0;
			transform: scale(0);
		}

		[type="checkbox"]:checked + label:after {
			opacity: 1;
			transform: scale(1);
		}
/* disabled checkbox */
[type="checkbox"]:disabled:not(:checked) + label:before,
[type="checkbox"]:disabled:checked + label:before {
	box-shadow: none;
	border-color: #bec2c4;
	background-color: #f1f1f1;
}

[type="checkbox"]:disabled:checked + label:after {
	color: #556975;
}

[type="checkbox"]:disabled + label:before {
	color: #f1f1f1;
	border: 1px solid #556975;
}
/* accessibility */
[type="checkbox"]:checked:focus + label:before,
[type="checkbox"]:not(:checked):focus + label:before {
	border: 1px dotted #9bca47 !important;
}

/* hover style just for information */
[type="checkbox"] + label:hover:before {
	border: 1px solid #ced2d4;
}

[type="checkbox"].error:checked + label:before,
[type="checkbox"].error:not(:checked) + label:before,
[type="checkbox"].error:checked:focus + label:before,
[type="checkbox"].error:not(:checked):focus + label:before {
	border: 1px solid red;
}


/*
	checkbox default styling END
*/


.btn input[type="checkbox"]:not(:checked) + label,
.btn input[type="checkbox"]:checked + label,
.btn input[type="checkbox"] + label,
.btn input[type="checkbox"]:not(:checked) + label:after,
.btn input[type="checkbox"]:checked + label:before,
.btn input[type="checkbox"] + label:after,
.btn input[type="checkbox"] + label:before {
	content: none !important;
	padding-right: 0 !important;
}


/*
	radio button default styling
*/


input[type="radio"] {
	position: absolute;
	/*right: -99999px;*/
	opacity: 0;
	left: -15px;
	float: left;
	pointer-events: none;
}

.btn input[type="radio"] {
	left: 0;
}

	input[type="radio"]:checked + label,
	input[type="radio"]:not(:checked) + label {
		position: relative;
		padding-right: 23px;
		cursor: pointer;
		line-height: 20px;
		display: inline-block;
		color: #666;
		width: 60px;
	}

		input[type="radio"]:not(:checked) + label:before,
		input[type="radio"]:checked + label:before {
			content: '';
			position: absolute;
			right: 0;
			top: 0;
			width: 18px;
			height: 18px;
			border: 2px solid #9bca47;
			border-radius: 100%;
			background: #fff;
		}

		input[type="radio"]:not(:checked) + label:before {
			border-color: #bec2c4;
		}

		input[type="radio"]:checked + label:after,
		input[type="radio"]:not(:checked) + label:after {
			content: '';
			width: 10px;
			height: 10px;
			background: #9bca47;
			position: absolute;
			top: 4px;
			right: 4px;
			border-radius: 100%;
			-webkit-transition: all 0.2s ease;
			transition: all 0.2s ease;
		}

		input[type="radio"]:not(:checked) + label:after {
			opacity: 0;
			-webkit-transform: scale(0);
			transform: scale(0);
		}

		input[type="radio"]:checked + label:after {
			opacity: 1;
			-webkit-transform: scale(1);
			transform: scale(1);
		}

	input[type="radio"] + label:focus:before,
	input[type="radio"]:not(:disabled) + label:hover:before {
		background-color: #f1f1f1;
		transition: all .2s;
	}

	input[type="radio"].error:checked + label:before,
	input[type="radio"].error:not(:checked) + label:before {
		border: 2px solid #c82027;
	}

	input[type="radio"]:disabled + label {
		cursor: auto;
	}

	input[type="radio"]:disabled:checked + label:before {
		border-color: #bec2c4;
		background: #f1f1f1;
	}

	input[type="radio"]:disabled:checked + label:after {
		background: #bec2c4;
	}

/*
	radio button default styling END
*/

.btn input[type="radio"]:not(:checked) + label,
.btn input[type="radio"]:checked + label,
.btn input[type="radio"] + label,
.btn input[type="radio"]:not(:checked) + label:after,
.btn input[type="radio"]:checked + label:before,
.btn input[type="radio"] + label:after,
.btn input[type="radio"] + label:before {
	content: none !important;
	padding-right: 0 !important;
}



/*
	checkbox switch start

	html demo:
	<div class="switch">
	  <input id="aaa" class="toggle" type="checkbox">
	  <label for="aaa"></label>
	</div>
*/

.switch {
	display: inline-block;
}

	.switch > input.toggle {
		position: absolute;
		right: -99999px;
	}

	.switch > .toggle + label {
		display: block;
		position: relative;
		cursor: pointer;
		outline: none;
		user-select: none;
	}

	.switch > input.toggle + label {
		padding: 2px;
		width: 45px;
		height: 30px;
		border: 1px solid #e0e0e0;
		border-radius: 40px;
		transition: all 0.2s;
		background-color: #f1f1f1;
	}

		.switch > input.toggle + label:before,
		.switch > input.toggle + label:after {
			display: block;
			position: absolute;
			content: "";
		}

	.switch > input.toggle:disabled + label {
		opacity: 0.5;
		cursor: auto;
		background-color: #e0e0e0;
	}

	.switch > input.toggle + label:after {
		top: 2px;
		right: 2px;
		bottom: 2px;
		width: 25px;
		background-color: white;
		border-radius: 50%;
		box-shadow: 0px 0px 5px #4d5152;
		transition: all 0.2s;
		opacity: 1;
		transform: scale(1);
	}

	.switch > input.toggle:checked + label {
		background-color: #17467d;
	}

	.switch > input.toggle:focus + label {
		border: 1px solid #abc;
	}

		.switch > input.toggle:focus + label:before,
		.switch > input.toggle:focus:not(:checked) + label:before,
		.switch > input.toggle:focus:checked + label:before,
		.switch > input.toggle + label:before,
		.switch > input.toggle:not(:checked) + label:before,
		.switch > input.toggle:checked + label:before {
			border: none !important;
			background: transparent;
		}

	.switch > input.toggle:checked + label:after {
		margin-right: 15px;
		background-color: white;
		opacity: 1;
		transform: scale(1);
	}
/*
	checkbox switch end
*/

.inputGroup {
	border-right: 1.5px solid #c6cbcd;
	margin-bottom: 10px;
	margin-top: 15px;
}

@media(min-width: 992px)
{
	.inputInGroup {
		margin-top: 7px !important;
	}
}