.toggle-switch {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--crotchet);
  border: 1px solid var(--mb);
  padding: var(--quaver);
  border-radius: var(--quaver);
  text-decoration: none;
  background-color: rgb(from var(--mb) r g b / 0.2);

}

.toggle-option {
  flex: 1 1 0px;
  pointer-events: none;
  z-index: 2;
  font-family: var(--font-sans);
  text-align: center;
}

.toggle-slider {
  position: absolute;
  z-index: 1;
  height: 100%;
  width: 50%;
  top: 0;
  left: 0;
  background: var(--bg);
  border-radius: var(--quaver);

  outline: 2px solid var(--mb)
}

/* if selected is before the slider (on the left) */
.toggle-switch:has(.toggle-option:nth-child(1).selected) .toggle-slider {
  transform: translateX(0%);

  &.slide-in {
    animation: slideInRightToLeft 150ms ease forwards;
  }
}

/* if selected is after the slider (on the right) */
.toggle-switch:has(.toggle-option:nth-child(3).selected) .toggle-slider {
  transform: translateX(100%);

  &.slide-in {
    animation: slideInLeftToRight 150ms ease forwards;
  }
}

@keyframes slideInLeftToRight {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(100%);
  }
}


@keyframes slideInRightToLeft {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0%);
  }
}
