.toggle {
    cursor: pointer;
    display: inline-block;
  }
  
  .toggle-switch {
    display: inline-block;
    border: 4px solid;
    border-color: #fff;
    width: 4em;
    height: 2em;
    border-radius: 2em;
    position: relative;
    vertical-align: middle;
    transition: background 0.25s;
    padding: 2px;
    box-sizing: border-box;
    transition-duration: 200ms;
  }
  .toggle-switch:before {
    content: "";
    display: block;
    background-color: #fff;
    border-radius: 1em;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);
    width: 50%;
    height: 100%;
    position: relative;
    transition-duration: 200ms;
    left: 0;
  }
  .toggle-checkbox:checked + .toggle-switch {
    border-color: var(--accent);
  }
  .toggle-checkbox:checked + .toggle-switch:before {
    left: 50%;
    background-color: var(--accent);
  }
  
  .toggle-checkbox {
    position: absolute;
    visibility: hidden;
  }
  
  .toggle-label {
    margin-left: 5px;
    position: relative;
    top: 2px;
  }