:root{
}

input[type="checkbox"]{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  background-color:white;
  margin:0;

  font:inherit;
  color:black;
  width:1.875rem;
  height:1.875rem;
  border:2px solid #000000;
  border-radius:0.15em;
  -webkit-transform:translateY(-0.075em);
  -ms-transform:translateY(-0.075em);
  transform:translateY(-0.075em);
  display:-ms-grid;
  display:grid;
  place-content:center;
}

input[type="checkbox"]::before{
    content:"";
    border:none;
    width:1em;
    height:1em;
    -webkit-clip-path:polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    clip-path:polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    -webkit-transform:scale(0);
    -ms-transform:scale(0);
    transform:scale(0);
    -webkit-transform-origin:bottom left;
    -ms-transform-origin:bottom left;
    transform-origin:bottom left;
    -webkit-transition:120ms -webkit-transform ease-in-out;
    transition:120ms -webkit-transform ease-in-out;
    transition:120ms transform ease-in-out;
    transition:120ms transform ease-in-out, 120ms -webkit-transform ease-in-out;
    -webkit-box-shadow:inset 1em 1em #3d92c4;
    box-shadow:inset 1em 1em #3d92c4;
    background-color:CanvasText;
  }

input[type="checkbox"].error{
    outline:max(2px, 0.15em) solid #e33f1e;
  }

input[type="checkbox"]:checked::before{
    -webkit-transform:scale(1);
    -ms-transform:scale(1);
    transform:scale(1);
  }

input[type="checkbox"]:checked.js-ajax-working-active{
      background-image:url(../../icons/throbber.gif);
      background-size:cover;
    }

input[type="checkbox"]:checked.js-ajax-working-active::before{
        -webkit-transform:scale(0);
        -ms-transform:scale(0);
        transform:scale(0);
      }

input[type="checkbox"]:focus{
    outline:max(2px, 0.15em) solid #0d77b5;
    outline-offset:max(2px, 0.15em);
  }

input[type="checkbox"]:disabled{
    --form-control-color:var(--disabled);
    border-color:#5d7585;
    color:#5d7585;
    cursor:not-allowed;
    background-color:#d7e1e8;
  }
