.can-toggle {
  position: relative;
  border: 1px solid yellow;
  padding: 0;
}
.can-toggle *, .can-toggle *:before, .can-toggle *:after {
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.can-toggle input[type="checkbox"] {
  top: 0;
  left: 0;
  opacity: 0;
  position: absolute;
}
.can-toggle input[type="checkbox"][disabled] ~ label {
  pointer-events: none;
}
.can-toggle input[type="checkbox"][disabled] ~ label .can-toggle__switch {
  opacity: 0.4;
}
.can-toggle input[type="checkbox"]:checked ~ label .can-toggle__switch:before {
  left: 0;
  content: attr(data-unchecked);
}
.can-toggle input[type="checkbox"]:checked ~ label .can-toggle__switch:after {
  content: attr(data-checked);
}
.can-toggle label {
  display: flex;
  user-select: none;
  position: relative;
  align-items: center;
}
.can-toggle label .can-toggle__label-text {
  /* not visible */
  flex: 1;
  padding-left: 32px;
}

.can-toggle label .can-toggle__switch {
  position: relative;
}

.can-toggle label .can-toggle__switch:before {
  top: 0px;
  text-align: center;
  position: absolute;
  content: attr(data-checked);
  text-transform: uppercase;
  background-color: blue;
}
.can-toggle label .can-toggle__switch:after {
  z-index: 5;
  text-align: center;
  position: absolute;
  background: #485a6b;
  text-transform: uppercase;
  content: attr(data-unchecked);
  transform: translate3d(0, 0, 0);
}

.can-toggle label .can-toggle__label-text {
  flex: 1;
}
.can-toggle label .can-toggle__switch {
  transition: background-color 0.3s cubic-bezier(0, 1, 0.5, 1);
  background: rgba(0, 0, 0, 0.5); /* bg color */
}
.can-toggle label .can-toggle__switch:before {
  color: rgb(160, 160, 160); /* text color on the back */
}
.can-toggle label .can-toggle__switch:after {
  transition: transform 0.3s cubic-bezier(0, 1, 0.5, 1);
  color: rgb(255, 255, 255); /* text color on the sliding button */
}
.can-toggle input[type="checkbox"]:focus ~ label .can-toggle__switch:after, .can-toggle input[type="checkbox"]:hover ~ label .can-toggle__switch:after {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}
.can-toggle input[type="checkbox"]:checked ~ label .can-toggle__switch:after {
  transform: translate3d(80px, 0, 0); /*65px*/
  /*margin-left: 80px; */
}
/*
.can-toggle input[type="checkbox"]:checked:focus ~ label .can-toggle__switch:after, .can-toggle input[type="checkbox"]:checked:hover ~ label .can-toggle__switch:after {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}
*/
.can-toggle label {
  /* font-size: 14px; */
}
.can-toggle label .can-toggle__switch {
  flex: 1 0;
  /* background-color: hotpink; */
  /*height: 4em; 36px; */
  border-radius: 4px;
}
.can-toggle label .can-toggle__switch:before {
  /* non-active one */
  left: max(67px, 50%); /*67px*/
  font-size: 0.7em; /*12px;*/
  line-height: 1;
  width: max(67px, 50%); /* 67px; */
  /* background-color: red; */
  padding: 0 0.2em; /*12px*/
}

.can-toggle label .can-toggle__switch:after {
  /* active one */
  top: 0px;
  left: 0px;
  border-radius: 2px;
  width: max(67px, 50%); /* 67px; */
  line-height: 1;
  font-size: 0.7em; /*12px;*/
  /* background-color: greenyellow; */

}

.can-toggle label .can-toggle__switch:hover:after {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.4);
}

