/*
 * input[type=radio]
 */

 form.ui_mobile input[type=radio] {
	display:none;
}

form.ui_mobile input[type=radio] + label {
	padding: 0 8px;
	border-radius: 50px;
	display: inline-block;
	position: relative;
	width: 42px;
	height: 33px;
	cursor:pointer;
	cursor:-webkit-grab;
}

form.ui_mobile input[type=radio] + label:after {
	content: ' ';
	position: absolute;
	background:#eee;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 100px;
	box-shadow: inset 0 0 20px rgba(0,0,0,0.2);
}

form.ui_mobile input[type=radio] + label:before {
	content: ' ';
	position: absolute;
	background:#fff;
	top: 2px;
	left: 2px;
	z-index: 8999;
	width: 29px;
	height: 29px;
	border-radius: 100px;
	box-shadow: 0 0 2px rgba(0,0,0,0.5), inset 0 -18px 15px -10px rgba(0,0,0,0.05);
}


form.ui_mobile input[type=radio] + label:active {
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
}

form.ui_mobile input[type=radio]:checked + label:before {
	content: ' ';
	position: absolute;
	left: 27px;
	border-radius: 100px;
}

form.ui_mobile input[type=radio] + label {
	overflow: hidden;
}

form.ui_mobile input[type=radio]:checked + label:after {
	content: ' ';
	font-size: 1.5em;
	position: absolute;
	background: #666;
}

form.ui_mobile input[type=radio] + label:after, form.ui_mobile input[type=radio] + label:before, form.ui_mobile input[type=radio] label {
	-webkit-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
}

/*
 * input[type=checkbox]
 */

form.ui_mobile input[type=checkbox] {
	display:none;
}

form.ui_mobile input[type=checkbox] + label {
	padding: 0 8px;
	border-radius: 50px;
	display: inline-block;
	position: relative;
	width: 42px;
	height: 33px;
	cursor:pointer;
	cursor:-webkit-grab;
}

form.ui_mobile input[type=checkbox] + label:after {
	content: ' ';
	position: absolute;
	background:#eee;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 100px;
	box-shadow: inset 0 0 20px rgba(0,0,0,0.2);
}

form.ui_mobile input[type=checkbox] + label:before {
	content: ' ';
	position: absolute;
	background:#fff;
	top: 2px;
	left: 2px;
	z-index: 8999;
	width: 29px;
	height: 29px;
	border-radius: 100px;
	box-shadow: 0 0 2px rgba(0,0,0,0.5), inset 0 -18px 15px -10px rgba(0,0,0,0.05);
}


form.ui_mobile input[type=checkbox] + label:active {
	box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
}

form.ui_mobile input[type=checkbox]:checked + label:before {
	content: ' ';
	position: absolute;
	left: 27px;
	border-radius: 100px;
}

form.ui_mobile input[type=checkbox] + label {
	overflow: hidden;
}

form.ui_mobile input[type=checkbox]:checked + label:after {
	content: ' ';
	font-size: 1.5em;
	position: absolute;
	background: #666;
}

form.ui_mobile input[type=checkbox] + label:after, form.ui_mobile input[type=checkbox] + label:before, form.ui_mobile input[type=checkbox] label {
	-webkit-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;
}

/*
 * input[type=range]
 */

/*
form.ui_mobile input[type=range]:before,
form.ui_mobile input[type=range]:after {
	display:inline-block;
	text-align:right;
}
form.ui_mobile input[type=range]:before {
	content:attr(data-min) "\0000a0";
}
form.ui_mobile input[type=range]:after {
	content:"\0000a0" attr(data-max);
}
*/

form.ui_mobile input[type=range]:focus {
  outline: none;
}
form.ui_mobile input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height:10px;
  cursor:pointer;
  animate:0.2s;
  box-shadow:0px 0px 0px #000000;
  background:#47a;
  border-radius:4px;
  border:0px solid #000000;
}
form.ui_mobile input[type=range]::-webkit-slider-thumb {
  box-shadow:0px 0px 0px #FFF;
  border:2px solid #FFF;
  height:24px;
  width:18px;
  border-radius:25px;
  background:#369;
  cursor:pointer;
  -webkit-appearance:none;
  margin-top:-7.5px;
}
form.ui_mobile input[type=range]:focus::-webkit-slider-runnable-track {
  background:#47a;
}
form.ui_mobile input[type=range]::-moz-range-track {
  width:100%;
  height:10px;
  cursor:pointer;
  animate:0.2s;
  box-shadow:0px 0px 0px #000000;
  background:#47a;
  border-radius:4px;
  border:0px solid #000000;
}
form.ui_mobile input[type=range]::-moz-range-thumb {
  box-shadow:0px 0px 0px #FFF;
  border:2px solid #FFF;
  height:24px;
  width:18px;
  border-radius:25px;
  background:#369;
  cursor:pointer;
}
form.ui_mobile input[type=range]::-ms-track {
  width:100%;
  height:10px;
  cursor:pointer;
  animate:0.2s;
  background:transparent;
  border-color:transparent;
  color:transparent;
}
form.ui_mobile input[type=range]::-ms-fill-lower {
  background:#47a;
  border:0px solid #000000;
  border-radius:8px;
  box-shadow:0px 0px 0px #000000;
}
form.ui_mobile input[type=range]::-ms-fill-upper {
  background:#47a;
  border:0px solid #000000;
  border-radius:8px;
  box-shadow:0px 0px 0px #000000;
}
form.ui_mobile input[type=range]::-ms-thumb {
  box-shadow:0px 0px 0px #FFF;
  border:2px solid #FFF;
  height:24px;
  width:18px;
  border-radius:25px;
  background:#369;
  cursor:pointer;
}
form.ui_mobile input[type=range]:focus::-ms-fill-lower {
  background:#47a;
}
form.ui_mobile input[type=range]:focus::-ms-fill-upper {
  background:#47a;
}
