/*
@-moz-keyframes borderscale{
	50%{
		box-shadow:0 0 0 2px #999;
	}
}
@-webkit-keyframes borderscale{
	50%{
		box-shadow:0 0 0 2px #999;
	}
}
@keyframes borderscale{
	50%{
		box-shadow:0 0 0 2px #999;
	}
}
*/

input[type="checkbox"],
input[type="radio"]{
	border:0;
	clip:rect(0 0 0 0);
	height:1px;
	margin:-1px;
	overflow:hidden;
	padding:0;
	position:absolute;
	width:1px;
}

input[type="radio"]:disabled + label:before,
input[type="checkbox"]:disabled + label:before{
	border-color:#ccc !important;
	background:#fff !important;
}

input[type="radio"]:disabled + label:after,
input[type="checkbox"]:disabled + label:after{
	border-color:#ccc !important;
	background:#ccc !important;
}
input[type="checkbox"]:hover + label:before,
input[type="radio"]:hover + label:before{
	border-color:#286090;
}
input[type="checkbox"]:active + label:before,
input[type="radio"]:active + label:before{
	transition-duration:0;
	filter:brightness(0.2);
}
input[type="checkbox"] + label,
input[type="radio"] + label{
	position:relative;
	padding-left:26px;
	font-weight:normal;
	cursor:pointer;
}
input[type="checkbox"] + label{
	padding-top:6px;
}
input[type="checkbox"] + .empty-label,
input[type="radio"] + .empty-label{
	position:relative;
	padding-left:0;
	font-weight:normal;
	cursor:pointer;
	width:18px;
}
input[type="checkbox"] + label:before,
input[type="checkbox"] + label:after,
input[type="radio"] + label:before,
input[type="radio"] + label:after{
	box-sizing:content-box;
	position:absolute;
	content:'';
	display:block;
	left:0;
}
input[type="checkbox"] + label:before{
	top:50%;
	width:14px;
	height:14px;
	margin-top:-7px;
	border:2px solid #d9d9d9;
	text-align:center;
	cursor:pointer;
}

input[type="radio"] + label:before{
	top:50%;
	width:14px;
	height:14px;
	margin-top:-10px;
	border:2px solid #d9d9d9;
	text-align:center;
	cursor:pointer;
}

input[type="checkbox"] + label:after{
	background-color:#fff;
	top:50%;
	left:6px;
	width:8px;
	height:8px;
	margin-top:-4px;
	transform:scale(0);
	transform-origin:50%;
	cursor:pointer;
}

input[type="radio"] + label:after{
	background-color:#fff;
	top:50%;
	left:5px;
	width:8px;
	height:8px;
	margin-top:-5px;
	transform:scale(0);
	transform-origin:50%;
	cursor:pointer;
}

input[type="radio"]:checked + label:before{
	background-color:#286090;
	border-color:#286090;
}

input[type="radio"]:checked + label:after{
	transform:scale(1);
}

input[type="radio"] + label:before, input[type="radio"] + label:after{
	border-radius:50%;
}

input[type="checkbox"] + label:after{
	background-color:transparent;
	top:50%;
	left:4px;
	width:7px;
	height:4px;
	margin-top:-3px;
	border-style:solid;
	border-color:#286090;
	border-width:0 0 3px 3px;
	-moz-transform:rotate(-45deg) scale(0);
	-ms-transform:rotate(-45deg) scale(0);
	-webkit-transform:rotate(-45deg) scale(0);
	transform:rotate(-45deg) scale(0);
	-moz-transition:none;
	-o-transition:none;
	-webkit-transition:none;
	transition:none;
}

input[type="checkbox"]:checked + label:before{
	background-color:#286090;
	border-color:#286090;
}

input[type="checkbox"]:checked + label:after{
	content:'';
	border-color:#fff;
	-moz-transform:rotate(-45deg) scale(1);
	-ms-transform:rotate(-45deg) scale(1);
	-webkit-transform:rotate(-45deg) scale(1);
	transform:rotate(-45deg) scale(1);
	/*
	-moz-transition:-moz-transform 200ms ease-out;
	-o-transition:-o-transform 200ms ease-out;
	-webkit-transition:-webkit-transform 200ms ease-out;
	transition:transform 200ms ease-out;
	*/
}

/* IE 10/11+ - This hides native dropdown button arrow so it will have the custom appearance, IE 9 and earlier get a native select - targeting media query hack via http://browserhacks.com/#hack-28f493d247a12ab654f6c3637f6978d5 - looking for better ways to achieve this targeting */
@media screen and (-ms-high-contrast:active), (-ms-high-contrast:none){
	select::-ms-expand{
		display:none;
	}

	select:focus::-ms-value{
		background:transparent;
		color:grey;
	}
}