.switch {
  background: #fff;
  border: 1px solid #dfdfdf;
  position: relative;
  display: inline-block;  
  overflow: visible;
  width: 50px;
  height: 22px;
  padding: 0px;
  margin: 0;
  border-radius: 20px;
  cursor: pointer;
  box-shadow: rgb(223, 223, 223) 0px 0px 0px 0px inset;
  transition: 0.3s ease-out all;
  -webkit-transition: 0.3s ease-out all;
  vertical-align:middle;
}
/*adding a wide width for larger switch text*/
.switch.wide {
  width:80px;
}
.switch small {
  background: #fff;
  border-radius: 100%;
  box-shadow: 0 1px 3px rgba(0,0,0,0.4);
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0px;
  left: 0px;
  transition: 0.3s ease-out all;
  -webkit-transition: 0.3s ease-out all;
}
.switch.checked {
  background: #3498db;
  border-color: #3498db;
}
.switch.checked small {
  left: 30px;
}
/*wider switch text moves small further to the right*/
.switch.wide.checked small {
  left:52px;
}
/*styles for switch-text*/
.switch .switch-text {
  font-family:Arial, Helvetica, sans-serif;
  font-size:13px;
}

.switch .off {
  display:block;
  position: absolute;
  right: 10%;
  z-index: 0;
  color:#A9A9A9;
  transition: 0.5s ease-out all;
  -webkit-transition: 0.3s ease-out all;
}

.switch .on {
  display:none;
   z-index: 0;
  color:#fff;
  position: absolute;
  left: 10%;
  transition: 0.5s ease-out all;
  -webkit-transition: 0.3s ease-out all;
}

.switch.checked .off {
  display:none;
}

.switch.checked .on {
  display:block;
}

.switch.disabled {
  opacity: .50;
  cursor: not-allowed;
}
