input[type="checkbox"].checkbox {
  appearance: none;
}

.checkbox {
  display: inline-block;
  align-self: center;
  width: var(--checkbox-width);
  height: var(--checkbox-height);
  background: var(--danger-color);
  border: var(--checkbox-border-width) solid var(--danger-border-color);
  border-radius: var(--border-radius-checkbox);
  transition:
    background var(--transition-long-animation-duration) ease,
    border-color var(--transition-long-animation-duration) ease;
}

.checkbox:after {
  content: "";
  font-family: var(--fa-style-family, "Font Awesome 6 Free");
  font-weight: var(--fa-style, 900);
  text-align: center;
  line-height: calc(var(--checkbox-height) - var(--checkbox-border-width) * 2);
  display: block;
  position: relative;
  background: var(--text-color);
  width: calc(var(--checkbox-height) - var(--checkbox-border-width) * 2);
  height: calc(var(--checkbox-height) - var(--checkbox-border-width) * 2);
  border-radius: 100%;
  left: 0;
  transition: left var(--transition-long-animation-duration) ease;
}

.checkbox:checked {
  background: var(--success-color);
  border-color: var(--success-border-color);
  transition:
    background var(--transition-long-animation-duration) ease,
    border-color var(--transition-long-animation-duration) ease;
}

.checkbox:checked:after {
  content: "";
  left: calc(var(--checkbox-width) - var(--checkbox-height));
  transition: left var(--transition-long-animation-duration) ease;
}
