/* Shared boolean control. Security decisions still come from the backend. */
.toggle-row input[type="checkbox"],
.amosha-switch {
  appearance: none;
  -webkit-appearance: none;
  width: 46px;
  height: 28px;
  border: 0;
  border-radius: 999px;
  background: #b9bec8;
  position: relative;
  flex: 0 0 auto;
  cursor: pointer;
  transition: background .18s ease, box-shadow .18s ease;
  box-shadow: inset 0 0 0 1px rgb(0 0 0 / 6%);
}

.toggle-row input[type="checkbox"]::after,
.amosha-switch::after {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  top: 2px;
  left: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 4px rgb(0 0 0 / 28%);
  transition: transform .18s ease;
}

.toggle-row input[type="checkbox"]:checked,
.amosha-switch:checked {
  background: #5367f8;
}

.toggle-row input[type="checkbox"]:checked::after,
.amosha-switch:checked::after {
  transform: translateX(18px);
}

.toggle-row input[type="checkbox"]:focus-visible,
.amosha-switch:focus-visible {
  outline: 3px solid rgb(83 103 248 / 28%);
  outline-offset: 2px;
}

.toggle-row input[type="checkbox"]:disabled,
.amosha-switch:disabled {
  opacity: .5;
  cursor: not-allowed;
}
