@use '../colors';

switch {
  background: transparentize(colors.$foreground-color, 0.8);
  border-radius: 20px;
  color: transparent;
  min-width: 40px;
  border: 5px solid transparent;
  background-clip: padding-box;

  slider {
    background: colors.$foreground-color;
    border-radius: 100%;
    min-width: 5px;
    min-height: 5px;
    background-clip: padding-box;
    margin: -4px -2px;
  }

  &:checked {
    background: transparentize(colors.$primary-accent, 0.7);
    background-clip: content-box;
    slider {
      background: colors.$primary-accent;
    }
  }

  &:disabled { opacity: 0.3; }

  &:hover {
    slider {
      box-shadow: 0 0 0 8px rgba(255,255,255,0.05);
    }

    &:checked slider {
      box-shadow: 0 0 0 8px transparentize(colors.$accent-7, 0.9);
    }
  }
}
