
.next-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  top: 0;
  margin: -1px;
}

.next-radio-button-large[dir=rtl] > label:first-child {
  margin-left: -1px;
  border-top-right-radius: 3px;
  border-top-right-radius: var(--radio-button-corner-large, 3px);
  border-bottom-right-radius: 3px;
  border-bottom-right-radius: var(--radio-button-corner-large, 3px);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.next-radio-button-large[dir=rtl] > label:last-child {
  margin-left: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 3px;
  border-top-left-radius: var(--radio-button-corner-large, 3px);
  border-bottom-left-radius: 3px;
  border-bottom-left-radius: var(--radio-button-corner-large, 3px);
}
.next-radio-button-large[dir=rtl] .next-radio-label {
  height: 38px;
  height: calc(var(--radio-button-height-large, 40px) - 2px);
  line-height: 38px;
  line-height: calc(var(--radio-button-height-large, 40px) - 2px);
  font-size: 16px;
  font-size: var(--radio-button-font-size-large, 16px);
}

.next-radio-button-medium[dir=rtl] > label:first-child {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 3px;
  border-top-right-radius: var(--radio-button-corner-medium, 3px);
  border-bottom-right-radius: 3px;
  border-bottom-right-radius: var(--radio-button-corner-medium, 3px);
}
.next-radio-button-medium[dir=rtl] > label:last-child {
  margin-left: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 3px;
  border-top-left-radius: var(--radio-button-corner-medium, 3px);
  border-bottom-left-radius: 3px;
  border-bottom-left-radius: var(--radio-button-corner-medium, 3px);
}

.next-radio-button-small[dir=rtl] > label:first-child {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 3px;
  border-top-right-radius: var(--radio-button-corner-small, 3px);
  border-bottom-right-radius: 3px;
  border-bottom-right-radius: var(--radio-button-corner-small, 3px);
}
.next-radio-button-small[dir=rtl] > label:last-child {
  margin-left: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: 3px;
  border-top-left-radius: var(--radio-button-corner-small, 3px);
  border-bottom-left-radius: 3px;
  border-bottom-left-radius: var(--radio-button-corner-small, 3px);
}

.next-radio-wrapper[dir=rtl] .next-radio-label {
  margin-left: 0;
  margin-right: 4px;
}

.next-radio-group[dir=rtl] .next-radio-label {
  margin-right: 4px;
  margin-left: 16px;
}

.next-radio-button[dir=rtl] > label .next-radio-label {
  margin: 0;
}

.next-radio-wrapper {
  outline: 0;
  display: inline-block;
}
.next-radio-wrapper .next-radio {
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  line-height: 1;
}
.next-radio-wrapper .next-radio *,
.next-radio-wrapper .next-radio *:before,
.next-radio-wrapper .next-radio *:after {
  box-sizing: border-box;
}
.next-radio-wrapper .next-radio input[type=radio] {
  opacity: 0;
  position: absolute;
  vertical-align: middle;
  top: 0;
  left: 0;
  width: 16px;
  width: var(--radio-width, 16px);
  height: 16px;
  height: var(--radio-width, 16px);
  margin: 0;
  cursor: pointer;
}
.next-radio-wrapper .next-radio-inner {
  /* 动画待定 */
  /* &.mouseDown { */
  /*     transform: scale3d(.7, .7, .7); */
  /*     transition: transform .2s linear; */
  /* } */
  /* &.mouseUp { */
  /*     transform: scale3d(1, 1, 1); */
  /*     transition: transform .2s linear; */
  /* } */
  display: block;
  width: 16px;
  width: var(--radio-width, 16px);
  height: 16px;
  height: var(--radio-width, 16px);
  background: #FFFFFF;
  background: var(--radio-bg-color, #FFFFFF);
  border-radius: 50%;
  border-radius: var(--radio-radius-size, 50%);
  border: 1px solid #C4C6CF;
  border: var(--radio-circle-border-width, 1px) solid var(--radio-border-color, #C4C6CF);
  transition: all 100ms linear;
  transition: all var(--motion-duration-immediately, 100ms) var(--motion-linear, linear);
  box-shadow: none;
  box-shadow: var(--radio-shadow, none);
}
.next-radio-wrapper .next-radio-inner:after {
  transform: scale(0);
  position: absolute;
  border-radius: 50%;
  border-radius: var(--radio-radius-size, 50%);
  top: 50%;
  margin-top: -2px;
  margin-top: calc(0px - var(--radio-circle-size, 4px)/2);
  left: 50%;
  margin-left: -2px;
  margin-left: calc(0px - var(--radio-circle-size, 4px)/2);
  background: #FFFFFF;
  content: "";
  transition: all 100ms linear;
  transition: all var(--motion-duration-immediately, 100ms) var(--motion-linear, linear);
}
.next-radio-wrapper.checked .next-radio-inner {
  border-color: #5584FF;
  border-color: var(--radio-checked-border-color, #5584FF);
  background: #5584FF;
  background: var(--radio-checked-bg-color, #5584FF);
}
.next-radio-wrapper.checked .next-radio-inner:after {
  width: 4px;
  width: var(--radio-circle-size, 4px);
  height: 4px;
  height: var(--radio-circle-size, 4px);
  font-weight: bold;
  background: #FFFFFF;
  background: var(--radio-checked-circle-color, #FFFFFF);
  transform: scale(1);
}
.next-radio-wrapper.checked:hover .next-radio-inner, .next-radio-wrapper.checked.hovered .next-radio-inner {
  border-color: transparent;
  border-color: var(--radio-checked-hovered-border-color, transparent);
}
.next-radio-wrapper.disabled input[type=radio] {
  cursor: not-allowed;
}
.next-radio-wrapper.disabled .next-radio-inner {
  border-color: #E6E7EB;
  border-color: var(--radio-disabled-border-color, #E6E7EB);
  background: #F7F8FA;
  background: var(--radio-disabled-bg-color, #F7F8FA);
}
.next-radio-wrapper.disabled .next-radio-inner:after {
  background: #CCCCCC;
  background: var(--radio-disabled-circle-color, #CCCCCC);
}
.next-radio-wrapper.disabled .next-radio-inner:hover, .next-radio-wrapper.disabled .next-radio-inner.hovered {
  border-color: #E6E7EB;
  border-color: var(--radio-disabled-border-color, #E6E7EB);
}
.next-radio-wrapper.disabled.checked .next-radio-inner {
  border-color: #E6E7EB;
  border-color: var(--radio-checked-disabled-border-color, #E6E7EB);
  background: #F7F8FA;
  background: var(--radio-checked-disabled-bg-color, #F7F8FA);
}
.next-radio-wrapper.disabled.checked .next-radio-inner:after {
  background: #CCCCCC;
  background: var(--radio-checked-disabled-circle-color, #CCCCCC);
}
.next-radio-wrapper.disabled .next-radio-label {
  color: #CCCCCC;
  color: var(--radio-normal-font-color-disabled, #CCCCCC);
}
.next-radio-wrapper:not(.disabled):hover .next-radio-inner, .next-radio-wrapper:not(.disabled).hovered .next-radio-inner {
  border-color: #5584FF;
  border-color: var(--radio-hovered-border-color, #5584FF);
  background-color: #DEE8FF;
  background-color: var(--radio-hovered-bg-color, #DEE8FF);
}
.next-radio-wrapper:not(.disabled):hover .next-radio-label, .next-radio-wrapper:not(.disabled).hovered .next-radio-label {
  cursor: pointer;
}
.next-radio-wrapper.checked:not(.disabled):hover .next-radio-inner, .next-radio-wrapper.checked:not(.disabled).hovered .next-radio-inner {
  border-color: transparent;
  border-color: var(--radio-checked-hovered-border-color, transparent);
  background: #3E71F7;
  background: var(--radio-checked-hovered-bg-color, #3E71F7);
}
.next-radio-wrapper.checked:not(.disabled):hover .next-radio-inner:after, .next-radio-wrapper.checked:not(.disabled).hovered .next-radio-inner:after {
  background: #FFFFFF;
  background: var(--radio-checked-hovered-circle-color, #FFFFFF);
}

.next-radio-button .next-radio {
  width: 0;
  height: 0;
}
.next-radio-button input[type=radio] {
  width: 0;
  height: 0;
}
.next-radio-button > label {
  display: inline-block;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  margin: 0 0 0 -1px;
  border: 1px solid #C4C6CF;
  border: 1px solid var(--radio-button-border-color, #C4C6CF);
  background-color: #FFFFFF;
  background-color: var(--radio-button-bg-color, #FFFFFF);
  transition: all 100ms linear;
  transition: all var(--motion-duration-immediately, 100ms) var(--motion-linear, linear);
  vertical-align: middle;
}
.next-radio-button > label .next-radio-label {
  display: block;
  color: #333333;
  color: var(--radio-button-font-color, #333333);
  margin: 0;
  transition: all 100ms linear;
  transition: all var(--motion-duration-immediately, 100ms) var(--motion-linear, linear);
}
.next-radio-button > label:hover, .next-radio-button > label.hovered {
  z-index: 10;
  border-color: #A0A2AD;
  border-color: var(--radio-button-border-color-hovered, #A0A2AD);
  background-color: #F2F3F7;
  background-color: var(--radio-button-bg-color-hovered, #F2F3F7);
}
.next-radio-button > label:hover .next-radio-label, .next-radio-button > label.hovered .next-radio-label {
  color: #333333;
  color: var(--radio-button-font-color-hovered, #333333);
}
.next-radio-button > label.checked {
  z-index: 11;
  border-color: #5584FF;
  border-color: var(--radio-button-border-color-checked, #5584FF);
  background-color: #FFFFFF;
  background-color: var(--radio-button-bg-color-checked, #FFFFFF);
}
.next-radio-button > label.checked .next-radio-label {
  color: #5584FF;
  color: var(--radio-button-font-color-checked, #5584FF);
}
.next-radio-button > label.disabled {
  z-index: 0;
  cursor: not-allowed;
  border-color: #E6E7EB;
  border-color: var(--radio-button-border-color-disabled, #E6E7EB);
  background-color: #F7F8FA;
  background-color: var(--radio-button-bg-color-disabled, #F7F8FA);
}
.next-radio-button > label.disabled .next-radio-label {
  color: #CCCCCC;
  color: var(--radio-button-font-color-disabled, #CCCCCC);
}
.next-radio-button > label.checked.disabled {
  z-index: 0;
  border-color: #E6E7EB;
  border-color: var(--radio-button-border-color-checked-disabled, #E6E7EB);
  background-color: #F2F3F7;
  background-color: var(--radio-button-bg-color-checked-disabled, #F2F3F7);
}
.next-radio-button > label.checked.disabled .next-radio-label {
  color: #CCCCCC;
  color: var(--radio-button-font-color-checked-disabled, #CCCCCC);
}
.next-radio-button-large > label {
  padding: 0 8px;
  padding: 0 var(--radio-button-padding-large, 8px);
  height: 40px;
  height: var(--radio-button-height-large, 40px);
  line-height: 40px;
  line-height: var(--radio-button-height-large, 40px);
}
.next-radio-button-large > label:first-child {
  margin-left: 0;
  border-top-left-radius: 3px;
  border-top-left-radius: var(--radio-button-corner-large, 3px);
  border-bottom-left-radius: 3px;
  border-bottom-left-radius: var(--radio-button-corner-large, 3px);
}
.next-radio-button-large > label:last-child {
  border-top-right-radius: 3px;
  border-top-right-radius: var(--radio-button-corner-large, 3px);
  border-bottom-right-radius: 3px;
  border-bottom-right-radius: var(--radio-button-corner-large, 3px);
}
.next-radio-button-large .next-radio-label {
  height: 38px;
  height: calc(var(--radio-button-height-large, 40px) - 2px);
  line-height: 38px;
  line-height: calc(var(--radio-button-height-large, 40px) - 2px);
  font-size: 16px;
  font-size: var(--radio-button-font-size-large, 16px);
}
.next-radio-button-medium > label {
  padding: 0 8px;
  padding: 0 var(--radio-button-padding-medium, 8px);
  height: 28px;
  height: var(--radio-button-height-medium, 28px);
  line-height: 28px;
  line-height: var(--radio-button-height-medium, 28px);
}
.next-radio-button-medium > label:first-child {
  margin-left: 0;
  border-top-left-radius: 3px;
  border-top-left-radius: var(--radio-button-corner-medium, 3px);
  border-bottom-left-radius: 3px;
  border-bottom-left-radius: var(--radio-button-corner-medium, 3px);
}
.next-radio-button-medium > label:last-child {
  border-top-right-radius: 3px;
  border-top-right-radius: var(--radio-button-corner-medium, 3px);
  border-bottom-right-radius: 3px;
  border-bottom-right-radius: var(--radio-button-corner-medium, 3px);
}
.next-radio-button-medium .next-radio-label {
  height: 26px;
  height: calc(var(--radio-button-height-medium, 28px) - 2px);
  line-height: 26px;
  line-height: calc(var(--radio-button-height-medium, 28px) - 2px);
  font-size: 12px;
  font-size: var(--radio-button-font-size-medium, 12px);
}
.next-radio-button-small > label {
  padding: 0 8px;
  padding: 0 var(--radio-button-padding-small, 8px);
  height: 20px;
  height: var(--radio-button-height-small, 20px);
  line-height: 20px;
  line-height: var(--radio-button-height-small, 20px);
}
.next-radio-button-small > label:first-child {
  margin-left: 0;
  border-top-left-radius: 3px;
  border-top-left-radius: var(--radio-button-corner-small, 3px);
  border-bottom-left-radius: 3px;
  border-bottom-left-radius: var(--radio-button-corner-small, 3px);
}
.next-radio-button-small > label:last-child {
  border-top-right-radius: 3px;
  border-top-right-radius: var(--radio-button-corner-small, 3px);
  border-bottom-right-radius: 3px;
  border-bottom-right-radius: var(--radio-button-corner-small, 3px);
}
.next-radio-button-small .next-radio-label {
  height: 18px;
  height: calc(var(--radio-button-height-small, 20px) - 2px);
  line-height: 18px;
  line-height: calc(var(--radio-button-height-small, 20px) - 2px);
  font-size: 12px;
  font-size: var(--radio-button-font-size-small, 12px);
}
.next-radio-single-input input[type=radio] {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
}
.next-radio-group {
  display: inline-block;
}
.next-radio-group .next-radio-wrapper {
  /* 表现为radio整体之间多一份间隔，checkbox表现一致 */
  margin-right: 12px;
}
.next-radio-group .next-radio-wrapper:last-child {
  margin-right: 0;
}
.next-radio-group .next-radio-label {
  color: #333333;
  color: var(--radio-normal-font-color, #333333);
}
.next-radio-group.disabled .next-radio-label {
  color: #CCCCCC;
  color: var(--radio-normal-font-color-disabled, #CCCCCC);
}
.next-radio-group.next-radio-button .next-radio-wrapper {
  margin-right: 0;
}
.next-radio-group-ver .next-radio-wrapper {
  display: block;
  margin-bottom: 8px;
}

.next-radio-label {
  margin: 0;
  margin-left: 4px;
  margin-left: var(--radio-font-margin-left, 4px);
  /* 使用已有变量$radio-font-margin-left，配左即两边都有间隔 */
  margin-right: 4px;
  margin-right: var(--radio-font-margin-left, 4px);
  font-size: 12px;
  font-size: var(--radio-font-size, 12px);
  vertical-align: middle;
  line-height: 1;
  color: #333333;
  color: var(--radio-normal-font-color, #333333);
}

@-moz-document url-prefix() {
  .next-radio {
    margin-top: -1px;
  }
  @supports (animation: calc(0s)) {
    /* firefox 57+ */
    .next-radio {
      margin-top: -3px;
    }
  }
}