.#{$radio-prefix-cls},
.#{$checkbox-prefix-cls} {
  position: relative;
  display: inline-block;

  .#{$radio-prefix-cls}__input[type='radio'] {
    position: absolute;
    z-index: 2;
    width: $radio-size;
    height: $radio-size;
    overflow: hidden;
    opacity: 0;
    &:checked,
    &[checked] {
      & + .#{$radio-prefix-cls}__inner {
        &::before {
          display: none;
        }
        &::after {
          position: absolute;
          top: 50%;
          left: 0;
          width: $radio-size;
          height: $radio-size;
          font-size: .39rem;
          color: $brand-primary;
          line-height: $radio-size;
          text-align: center;
          @extend %aid-icon;
          content: '\F697';
          border-radius: 50%;
          transition: all 0.125s;
          transform: translate(0, -50%);
          border: none;
          display: flex;
          justify-content: center;
        }
      }
    }
  }

  .#{$checkbox-prefix-cls}__input[type='checkbox'] {
    position: absolute;
    z-index: 2;
    width: $radio-size;
    height: $radio-size;
    overflow: hidden;
    opacity: 0;

    &:checked,
    &[checked] {
      & + .#{$checkbox-prefix-cls}__inner {
        &::before {
          display: none;
        }
        &::after {
          position: absolute;
          top: 50%;
          left: 0;
          width: $radio-size;
          height: $radio-size;
          font-size: .39rem;
          color: $brand-primary;
          font-weight: 700;
          line-height: $radio-size;
          text-align: center;
          @extend %aid-icon;
          content: '\F283';
          transition: all 0.125s;
          transform: translate(0, -50%);
          border: none;
          display: flex;
          justify-content: center;
        }
      }
    }
  }

  &__inner {
    position: relative;
    padding-left: $radio-size;
    margin-top: 0;
    
    &::before {
      position: absolute;
      top: 50%;
      left: 0;
      width: $radio-size;
      height: $radio-size;
      text-align: center;
      content: '';
      background: $white;
      border: 0.02rem solid $gray-8;
      border-radius: 50%;
      transition: all 0.125s;
      transform: translate(0, -50%);
    }
  }

  &__label {
    display: inline-block;
    margin-left: $radio-margin-x;
    font-size: $radio-item-font-size;
    word-break: break-all;
  }
}

// radio
//
//
.#{$radio-prefix-cls} {
  //disabled
  @include status-disabled;
}

// checkbox
//
//
.#{$checkbox-prefix-cls} {
  &__inner {
    &::before,
    &::after {
      border-radius: $border-radius;
    }
  }

  //disabled
  @include status-disabled;
}

// radio-check list mode
// .#{$list-prefix-cls} {
  // &__item--#{$radio-prefix-cls},
  // &__item--#{$checkbox-prefix-cls} {
  //   .#{$radio-prefix-cls},
  //   .#{$checkbox-prefix-cls} {
  //     // 与list 文本对齐
  //     line-height: $list-arrow-font-size;
  //   }

  //   .#{$radio-prefix-cls} {
  //     padding-top: $list-item-padding-y;
  //   }

  //   .#{$radio-prefix-cls}__inner,
  //   .#{$checkbox-prefix-cls}__inner {
  //     padding-left: $radio-item-font-size + $radio-margin-x;

  //     &::before {
  //       display: none;
  //     }
  //   }

  //   .#{$radio-prefix-cls}__input[type='radio'],
  //   .#{$checkbox-prefix-cls}__input[type='checkbox'] {
  //     &:checked,
  //     &[checked] {
  //       & + .#{$radio-prefix-cls}__inner,
  //       & + .#{$checkbox-prefix-cls}__inner {
  //         &::after {
  //           font-size: $radio-item-font-size;
  //           color: $brand-primary;
  //           background: #FFF;
  //         }
  //       }
  //     }
  //   }
  // }
// }

.#{$checkbox-prefix-cls}-group.list-block,
.#{$radio-prefix-cls}-group.list-block {
  label {
    display: block;

    .#{$checkbox-prefix-cls}__inner,
    .#{$radio-prefix-cls}__inner {
      word-break: break-all;
      display: block;
    }
    .#{$checkbox-prefix-cls}__inner::after, 
    .#{$checkbox-prefix-cls}__inner::before, 
    .#{$radio-prefix-cls}__inner::after, 
    .#{$radio-prefix-cls}__inner::before {
      top: 0 !important;
      transform: none !important;
    }
  }
}