@import 'src/styles/variables.scss';

.toggle {
  height: 24px;
  width: 48px;
  flex: 0 0 48px;
  border-radius: 12px;
  background-color: $gray_90;
  display: flex;
  border: none;
  outline: none;
  cursor: pointer;
  position: relative;

  &.white {
    box-shadow: inset white 0 0 0 2px;

    &::after {
      width: 14px;
      height: 14px;
      top: 5px;
      left: 5px;
      background: none;
      box-shadow: inset white 0 0 0 2px;
    }
  }

  &::after {
    content: ' ';
    position: absolute;
    left: 3px;
    top: 3px;
    height: 18px;
    width: 18px;
    border-radius: 11px;
    background-color: $gray_50;
    transform: translate(0, 0);
    transition: transform 0.25s, color 0.25s, background-color;
  }

  &:disabled {
    opacity: 0.5;
  }

  &.active {
    &::after {
      transform: translate(24px, 0);
      background-color: white;
    }

    &.primary {
      background-color: $color_primary;
    }

    &.secondary {
      background-color: $gray_90;
    }

    &.lab {
      background-color: $color_lab;
    }

    &.danger {
      background-color: $color_danger;
    }

    &.monochrome {
      background-color: white;
    }
  }
}
