.ui-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
}

.ui-toggle__text {
  margin: 0;
  color: #fff;
  font-size: 0.9rem;
  cursor: pointer;
}

.ui-toggle__btn {
  aspect-ratio: 2 / 1;
  height: 1.5rem;
  border-radius: 5rem;
  padding: 0.15rem;
  border: 1px solid #545a6c;
  cursor: pointer;
  flex: 0 0 auto;
}

.ui-toggle__btn input[type="checkbox"] {
  display: none;
}

.ui-toggle__knob {
  aspect-ratio: 1;
  height: 100%;
  display: block;
  background-color: #545a6c;
  border-radius: 5rem;
  transition: all 0.25s ease;
}

.ui-toggle__btn input:checked + .ui-toggle__knob {
  transform: translateX(125%);
  background-color: #2287ed;
}
