.ads-switch {
  position: relative;
  display: inline-block;
  flex-shrink: 0;
  width: 46px;
  height: 27px;
}

.ads-switch input {
  position: absolute;
  inset: 0;
  opacity: 0;
  margin: 0;
  cursor: pointer;
  min-width: 0;
}

.ads-switch__track {
  position: absolute;
  inset: 0;
  background: var(--tile-2);
  border: 1px solid var(--line);
  border-radius: var(--r-pill);
  transition: background .18s;
  pointer-events: none;
}

.ads-switch__track::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 1px;
  width: 23px;
  height: 23px;
  background: #fff;
  border-radius: 50%;
  transition: transform .18s;
}

.ads-switch input:checked + .ads-switch__track {
  background: var(--red);
  border-color: var(--red);
}

.ads-switch input:checked + .ads-switch__track::before {
  transform: translateX(19px);
}

.ads-switch input:disabled + .ads-switch__track {
  opacity: .4;
}
