input[type="radio"], input[type="checkbox"] {
	vertical-align: middle;
	margin: 0;
}

input[type=radio].switch {
	display:none;
}

input[type=radio].switch + label {
	display:inline-block;
	margin:-2px;
	padding: 4px 12px;
	margin-bottom: 0;
	line-height: 20px;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-color: #f5f5f5;
	background-image: -moz-linear-gradient(top,#fff,#e6e6e6);
	background-image: -webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));
	background-image: -webkit-linear-gradient(top,#fff,#e6e6e6);
	background-image: -o-linear-gradient(top,#fff,#e6e6e6);
	background-image: linear-gradient(to bottom,#fff,#e6e6e6);
	background-repeat: repeat-x;
	border: 1px solid #dadada;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);
	-moz-box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);
}

input[type=radio].switch:checked + label {
	background-image: none;
	outline: 0;
	-webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);
	-moz-box-shadow: inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);
	box-shadow: inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);
	background-color: #e0e0e0;
}

input[value="1"].switch:checked + label {
	background-color: #428bca;
	color: #eee;
}

input[type="checkbox"].switch {
	position: absolute;
	opacity: 0;
}

input[type="checkbox"].switch + div {
	display: inline-block;
	vertical-align: middle;
	width: 3.5em;
	height: 1.69em;
	border-radius: 999px;
	background: #b9b9b9;
	padding-left: 1px;
	padding-top: 1px;
	overflow: hidden;
	transition-duration: .1s;
	transition-property: padding, width, background-position, text-indent;
	/* font-size: 150%; */
	text-align: left;
	font-size: 0.9em;
	font-weight: 100;
	line-height: 1.6em;
	cursor: pointer;
}

input[type="checkbox"].switch:checked + div {
	padding-left: 1.86em;
	background-position: 0 0;
	background: #167ac6;
	color: #fff;
}

input[type="checkbox"].switch:disabled + div {
	background-color: #eaefef;
}
input[type="checkbox"].switch:checked:disabled + div {
	background-color: #81a0b7;
}

input[type="checkbox"].switch + div:before {
	content: '';
	position: absolute;
	width: 1.55em;
	height: 1.515em;
	border-radius: inherit;
	background: #fbfbfb;
}

input[type="checkbox"].switch:active + div:before {
	background-color: #eee;
}

input[type="checkbox"].switch + div:after {
	content: '';
	left: calc(100% - 1px);
	transform: translateX(-100%);
}
