.form-switch {
  position: relative;
  display: inline-block;
  width: 35px;
  height: 21px;

  /* Hide default HTML checkbox */
  input {
    opacity: 0;
    width: 0;
    height: 0;
  }

  /* The slider */
  .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--app-color-medium-tint);
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: 20px;

    &:before {
      position: absolute;
      content: "";
      height: 15px;
      width: 15px;
      left: 3px;
      bottom: 3px;
      background-color: var(--app-color-medium-contrast);
      -webkit-transition: .4s;
      transition: .4s;
      border-radius: 50%;
    }
  }
  
  input:checked + .slider {
    background-color: var(--app-color-foreground-tint);
  }
  
  input:checked + .slider:before {
    -webkit-transform: translateX(15px);
    -ms-transform: translateX(15px);
    transform: translateX(15px);
    background-color: var(--app-color-foreground-contrast);
  }
}