.x-checkbox-group {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.x-checkbox-group .x-checkbox + .x-checkbox {
  margin-top: 12px;
}
.x-checkbox-group--inline {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.x-checkbox-group--inline .x-checkbox + .x-checkbox {
  margin-top: 0;
  margin-left: 12px;
}

.x-checkbox {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.x-checkbox--disabled {
  cursor: no-drop;
  pointer-events: none;
  opacity: 0.6;
}
.x-checkbox--control {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.x-checkbox--square {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  border: 2px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.3s ease, border-color 0.3s ease;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  will-change: border, background-color;
}
.x-checkbox--svg {
  stroke-dashoffset: -4;
  stroke-dasharray: 0 14;
  stroke-width: 2;
  fill: none;
  stroke: white;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.x-checkbox--svg._check {
  opacity: 1;
  stroke-dashoffset: 0;
  stroke-dasharray: 14 14;
  -webkit-transform: rotate(-45deg) translate(5%, -5%);
          transform: rotate(-45deg) translate(5%, -5%);
}
.x-checkbox--svg._line {
  opacity: 1;
  stroke-dashoffset: -4;
  stroke-dasharray: 10 14;
  -webkit-transform: rotate(0) translateY(-10%);
          transform: rotate(0) translateY(-10%);
}
.x-checkbox--input {
  display: none;
  opacity: 0;
}
.x-checkbox--ripple {
  position: absolute;
  top: -8px;
  left: -8px;
  width: 100%;
  height: 100%;
  padding: 8px;
  border-radius: 50%;
  overflow: hidden;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}