select,
textarea,
input[type="text"],
input[type=search],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="color"],
.input-group {
  width:100%;
  height:40px;
  padding:10px;
  margin-bottom:10px;
  background:#fff;
  border:1px solid #ccc;
  font-size:14px;
  font-weight:normal;
  -webkit-appearance:none;
  box-sizing:border-box;
}
form { position:relative;}
input[type="radio"],
input[type="checkbox"] {
  display:none;
}
input[type="radio"] + label,
input[type="checkbox"] + label {
  display:block;
  width:100%;
  float:left;
  position:relative;
  text-align:left;
  padding:0 0 0 40px;
  margin:3px 0;
  line-height:2em;
}
input[type="radio"]:not(.toggle) + label:before {
  background-color:#fafafa;
  border:1px solid #cacece;
  border-radius:14px;
  display:block;
  position:absolute;
  top:8px;
  left:15px;
  height:15px;
  width:15px;
  font-size:13px;
  text-align:center;
  line-height:28px;
  content:" ";
}
input[type="radio"]:checked + label:before {
  background-color: #D22526;/*#1eb0e9*/
  -webkit-transition:background-color 150ms;
  transition:background-color 150ms;
}
input[type="checkbox"] + label:before {
  background-color:#fafafa;
  border:1px solid #cacece;
  border-radius:13px;
  display:block;
  position:absolute;
  top:8px;
  left:0px;
  height:28px;
  width:28px;
  font-size:13px;
  text-align:center;
  line-height:28px;
  content:" ";
}
input[type="checkbox"]:checked + label:before {
  content:'\00a0\2714';
  padding:0;
  display:inline-block;
  background-color:#1eb0e9;
  -webkit-transition:background-color 150ms;
  transition:background-color 150ms;
}
input[type="radio"]:after,
input[type="checkbox"]:after {
  visibility:hidden;
  display:block;
  font-size:0;
  content:" ";
  clear:both;
  height:0;
}
input[type="search"] {
  border-radius:20px;
}
label {
  float:left;
  width:24%;
  font-size:14px;
  padding:15px 6px;
  line-height:1em;
}
label + select,
label + input[type="radio"],
label + input[type="checkbox"] label + textarea,
label + input[type="text"],
label + input[type=search],
label + input[type="password"],
label + input[type="datetime"],
label + input[type="datetime-local"],
label + input[type="date"],
label + input[type="month"],
label + input[type="time"],
label + input[type="week"],
label + input[type="number"],
label + input[type="email"],
label + input[type="url"],
label + input[type="tel"],
label + input[type="color"],
label + textarea {
  width:85%;
}
textarea { height:auto;}
.input-group {
  width:auto;
  height:auto;
  padding:12px;
  overflow:hidden;
}
.input-group input:not([type='button']):not([type='submit']),
.input-group textarea,
.input-group select {
  margin-bottom:0;
  background-color:transparent;
  border:0;
  border-bottom:1px solid #ccc;
  border-radius:0;
  box-shadow:none;
}
.input-group input:not([type="submit"]):not([type="button"]):last-child,
.input-group textarea:last-child,.input-group select:last-child {
  border-bottom:0;
}
.input-group input[type=button],
.input-group input[type=submit] {
  margin:5px;
}
input.toggle + label:before,
input.toggle:checked + label:before {
  content:attr(data-on);
  position:absolute;
  color:#fff;
  left:5px;
  width:42px;
  text-align:left;
  z-index:3;
  top:0;
  overflow:hidden;
  background-color:transparent;
  border:0;
  border-radius:0;
  text-transform:uppercase;
  display:none;
  height:30px;
  line-height:29px !important;
}
input.toggle:checked + label:before {
  display:block;
}
input.toggle:checked + label:after {
  display:none;
}
input.toggle:checked + label {
  background:#1eb0e9;
  line-height:-1em;
  -webkit-transition:background 150ms;
  transition:background 150ms;
}
input.toggle:checked + label > span {
  transform:translate3d(37px,0,0);
  -webkit-transform:translate3d(37px,0,0);
}
input.toggle + label:after {
  content:attr(data-off);
  position:absolute;
  color:#505050;
  width:42px;
  text-align:left;
  z-index:1;
  top:0;
  left:30px;
  overflow:hidden;
  background-color:transparent;
  border:0;
  border-radius:0;
  text-transform:uppercase;
  height:30px;
  line-height:29px;
}
input.toggle + label {
  position:relative;
  margin:5px;
  border-radius:50px;
  display:block;
  height:30px;
  width:65px;
  border:1px solid #ccc;
  left:33%;
  float:none;
}
input.toggle + label > span {
  display:block;
  width:29px;
  height:31px;
  background:#ccc;
  border-radius:50px;
  z-index:5;
  top:-2px;
  left:0;
  position:absolute;
  transition:transform 100ms linear;
  transform:translate3d(0,0,0);
  -webkit-transform:translate3d(0,0,0);
  -webkit-transition:-webkit-transform 100ms linear;
}
.formGroupHead {
  font-size:18px;
  font-weight:bold;
  color:inherit;
  margin:16px 0 8px;
}
input[type=button],
input[type=submit],
button {
  font-size:inherit;
  width:100%;
  border:0;
  -webkit-appearance:none;
}
