$checkboxSize: 18px;

.#{$CLASS_PREFIX}-checkbox-con {
  display: inline-flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  outline: none;
  user-select: none;
  border-radius: 2px;
  vertical-align: top;

  input {
    position: absolute;
    left: 0;
    opacity: 0;
    outline: none;
    z-index: -1;

    &:checked ~ .#{$CLASS_PREFIX}-checkbox {
      // NOT_PALLETE
      background: #142f8f;
    }
    &:focus ~ .#{$CLASS_PREFIX}-checkbox {
      border-color: #142f8f;
    }
    &:indeterminate ~ .#{$CLASS_PREFIX}-checkbox {
      &:after {
        content: "";
        width: 50%;
        height: 50%;
        position: absolute;
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0;
        background: #142f8f;
      }
    }
  }

  &:hover input ~ .#{$CLASS_PREFIX}-checkbox {
    border-color: #142f8f;
  }
}

.#{$CLASS_PREFIX}-checkbox {
  height: $checkboxSize;
  width: $checkboxSize;
  box-sizing: border-box;
  border-width: 1px;
  border-style: solid;
  border-color: colorUsage("gray", "main-light");
  border-radius: 2px;

  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  flex-shrink: 0;

  .#{$CLASS_PREFIX}-icon {
    width: 100%;
    height: 100%;
  }
}

.#{$CLASS_PREFIX}-checkbox__label {
  padding-left: 5px;
}
