
.mcui-checkbox,
.mcui-radio {
  display: flex;
  align-items: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  padding: 0.6em 0;
  box-sizing: border-box;
}
.mcui-checkbox input[type=checkbox],
.mcui-checkbox input[type=radio],
.mcui-radio input[type=checkbox],
.mcui-radio input[type=radio] {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.mcui-checkbox input[type=checkbox] + div, .mcui-checkbox input[type=radio] + div, .mcui-radio input[type=checkbox] + div, .mcui-radio input[type=radio] + div {
  border: 2px solid rgb(255, 255, 255);
  height: 2.5em;
  width: 2.5em;
  box-sizing: border-box;
  border-radius: 2px;
  position: relative;
}
.mcui-checkbox input[type=checkbox] ~ div:last-child,
.mcui-checkbox input[type=radio] ~ div:last-child,
.mcui-radio input[type=checkbox] ~ div:last-child,
.mcui-radio input[type=radio] ~ div:last-child {
  padding-left: 0.5em;
}
.mcui-checkbox input[type=radio] + div,
.mcui-radio input[type=radio] + div {
  border-radius: 50%;
}
.mcui-checkbox input[type=radio] + div::after,
.mcui-radio input[type=radio] + div::after {
  content: "";
  position: absolute;
  left: 25%;
  top: 25%;
  width: 50%;
  height: 50%;
  border-radius: 50%;
  transform: scale(0.5);
  opacity: 0;
  background: black;
  transition: all 107ms cubic-bezier(0.65, 0.25, 0.56, 0.96);
}
.mcui-checkbox input[type=checkbox]:focus + div,
.mcui-checkbox input[type=radio]:focus + div,
.mcui-checkbox input[type=checkbox]:active + div,
.mcui-checkbox input[type=radio]:active + div,
.mcui-radio input[type=checkbox]:focus + div,
.mcui-radio input[type=radio]:focus + div,
.mcui-radio input[type=checkbox]:active + div,
.mcui-radio input[type=radio]:active + div {
  outline: 2px dashed #8d9aa9;
  outline-offset: 1px;
}
.mcui-checkbox input[type=checkbox]:checked + div,
.mcui-radio input[type=checkbox]:checked + div {
  border-color: #fff;
  transition: border-color 107ms cubic-bezier(0.65, 0.25, 0.56, 0.96);
}
.mcui-checkbox input[type=checkbox]:checked + div .mcui-check,
.mcui-radio input[type=checkbox]:checked + div .mcui-check {
  opacity: 1;
  transition: opacity 107ms cubic-bezier(0.65, 0.25, 0.56, 0.96);
}
.mcui-checkbox input[type=checkbox]:checked + div .mcui-check polyline,
.mcui-radio input[type=checkbox]:checked + div .mcui-check polyline {
  -webkit-animation: dash-check 107ms cubic-bezier(0.65, 0.25, 0.56, 0.96) forwards;
          animation: dash-check 107ms cubic-bezier(0.65, 0.25, 0.56, 0.96) forwards;
}
.mcui-checkbox input[type=radio]:checked + div,
.mcui-radio input[type=radio]:checked + div {
  border-color: black;
}
.mcui-checkbox input[type=radio]:checked + div::after,
.mcui-radio input[type=radio]:checked + div::after {
  opacity: 1;
  transform: scale(1);
}
.mcui-checkbox input[type=checkbox]:indeterminate + div::after,
.mcui-radio input[type=checkbox]:indeterminate + div::after {
  content: "";
  height: 4px;
  width: 60%;
  left: 20%;
  top: calc(50% - 2px);
  position: absolute;
  background: #8d9aa9;
  border-radius: 1px;
}
.mcui-checkbox input[type=checkbox]:disabled ~ div,
.mcui-checkbox input[type=radio]:disabled ~ div,
.mcui-radio input[type=checkbox]:disabled ~ div,
.mcui-radio input[type=radio]:disabled ~ div {
  color: #8d9aa9;
  cursor: not-allowed;
}
.mcui-checkbox input[type=checkbox]:enabled ~ div,
.mcui-checkbox input[type=radio]:enabled ~ div,
.mcui-radio input[type=checkbox]:enabled ~ div,
.mcui-radio input[type=radio]:enabled ~ div {
  cursor: default;
}

.mcui-check {
  height: 100%;
  width: 100%;
  transform: scale(1);
  color: #eb5c2e;
  opacity: 0;
}
.mcui-check polyline {
  fill: none;
  transform-origin: 50% 50%;
  stroke-width: 5px;
  stroke-dasharray: 22.7713679002;
  stroke: currentcolor;
}

@supports (display: grid) {
  .mcui-check polyline {
    stroke-dashoffset: 22.7713679002;
  }
}
@-webkit-keyframes dash-check {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes dash-check {
  to {
    stroke-dashoffset: 0;
  }
}