
.nut-checkbox {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  &--reverse {
    flex-direction: row-reverse;

    .nut-checkbox__label {
      margin-right: $radio-label-margin-left !important;
      margin-left: 0 !important;
    }
  }

  &__button {
    display: inline-flex;
    align-items: center;
    padding: $radio-button-padding;
    font-size: $radio-button-font-size;
    line-height: $radio-button-font-line-height;
    background: $radio-button-background;
    border-radius: $radio-button-border-radius;
    color: $radio-label-font-color;
    box-sizing: border-box;
    border: 1px solid $radio-button-background;

    &--active {
      background: $radio-label-button-background;
      color: $radio-label-font-active-color;
      border: 1px solid $radio-label-button-border-color;
    }

    &--disabled {
      background: $radio-button-disabled-background;
      color: $radio-label-disable-color;
      border: 1px solid $radio-button-disabled-background;
    }
  }
  .nut-checkbox__button--active.nut-checkbox__button--disabled {
    background: $radio-button-disabled-active-background;
    color: $radio-button-disabled-active-color;
    border: 1px solid $radio-button-disabled-active-border-color;
  }

  &__label {
    margin-left: $radio-label-margin-left;
    font-size: $radio-label-font-size;
    color: $radio-label-font-color;

    &--disabled {
      color: $radio-label-disable-color;
    }
  }

  &__icon {
    color: $primary-color;
    font-size: $radio-icon-font-size;
    transition-duration: 0.3s;
    transition-property: color, border-color, background-color;
  }

  &__icon--unchecked {
    color: $radio-icon-unchecked-color;
    font-size: $radio-icon-font-size;
  }

  &__icon--indeterminate {
    color: $primary-color;
    font-size: $radio-icon-font-size;
  }

  &__icon--disable {
    color: $radio-icon-disable-color;
    font-size: $radio-icon-font-size;
  }
  &--small {
    .nut-checkbox__label {
      font-size: $radio-label-font-size-small;
      line-height: $radio-label-font-line-height-small;
    }
    .nut-checkbox__button {
      padding: $radio-button-padding-small;
      font-size: $radio-button-font-size-small;
      line-height: $radio-button-font-line-height-small;
      border-radius: $radio-button-border-radius;
    }
  }
}
