@charset "UTF-8";
/*
  @component form
  @display Form
  @chinese 表单
  @family data-entry
*/
:root {
  /*
    @desc bg-color
    @namespace style/common
    @semantic 背景色
  */
  --form-bg-color: var(--color-white);
  /*
    @desc label-size-small
    @namespace size/label
    @semantic 标签字体大小(小号)
  */
  --form-label-small-font-size: var(--p-caption-font-size);
  /*
    @desc label-size-medium
    @namespace size/label
    @semantic 标签字体大小(中号)
  */
  --form-label-medium-font-size: var(--p-caption-font-size);
  /*
    @desc label-size-large
    @semantic 标签字体大小(大号)
    @namespace size/label
  */
  --form-label-large-font-size: var(--p-body-1-font-size);
  /*
    @desc label-small-margin-bottom
    @semantic 标签底部外边距(小号)
    @namespace size/label
  */
  --form-label-small-margin-bottom: var(--s-zero);
  /*
    @desc label-medium-margin-bottom
    @semantic 标签底部外边距(中号)
    @namespace size/label
  */
  --form-label-medium-margin-bottom: var(--s-1);
  /*
    @desc label-large-margin-bottom
    @semantic 标签底部外边距(大号)
    @namespace size/label
  */
  --form-label-large-margin-bottom: var(--s-2);
  /*
    @desc small-preview-form-size
    @semantic 预览字体大小(小号)
    @namespace size/preview-form
  */
  --form-preview-small-font-size: var(--p-body-1-font-size);
  /*
    @desc medium-preview-form-size
    @semantic 预览字号(中号)
    @namespace size/preview-form
  */
  --form-preview-medium-font-size: var(--p-body-2-font-size);
  /*
    @desc large-preview-form-size
    @semantic 预览字体大小(大号)
    @namespace size/preview-form
  */
  --form-preview-large-font-size: var(--p-subhead-font-size);
  /*
    @desc inset-small-label-size
    @semantic 内嵌标签字体大小(小号)
    @namespace size/label
  */
  --form-label-inset-small-font-size: var(--p-body-1-font-size);
  /*
    @desc inset-medium-label-size
    @namespace size/label
    @semantic 内嵌标签字体大小(中号)
  */
  --form-label-inset-medium-font-size: var(--p-body-2-font-size);
  /*
    @desc inset-large-label-size
    @namespace size/label
    @semantic 内嵌标签字体大小(大号)
  */
  --form-label-inset-large-font-size: var(--p-subhead-font-size);
  /*
    @desc small-help-font-size
    @namespace size/help
    @semantic 辅助文案字体大小(小号)
  */
  --form-help-small-font-size: var(--p-caption-font-size);
  /*
    @desc medium-help-font-size
    @namespace size/help
    @semantic 辅助文案字体大小(中号)
  */
  --form-help-medium-font-size: var(--p-caption-font-size);
  /*
    @desc large-help-font-size
    @namespace size/help
    @semantic 辅助文案字体大小(大号)
  */
  --form-help-large-font-size: var(--p-body-1-font-size);
  /*
    @desc inset-label-margin-right
    @namespace size/label
    @semantic 内嵌标签右边距
  */
  --form-label-inset-margin-right: var(--s-3);
  /*
    @desc label-color
    @namespace style/label
    @semantic 标签颜色
  */
  --form-label-color: var(--color-text1-4);
  /*
    @desc help-color
    @namespace style/help
    @semantic 帮助态提示颜色
  */
  --form-help-color: var(--color-text1-2);
  /*
    @desc error-color
    @namespace style/help
    @semantic 错误态提示颜色
  */
  --form-error-color: var(--color-error-3);
  /*
    @desc border-color
    @namespace style/common
    @semantic 分割线颜色
  */
  --form-border-color: var(--color-line1-3);
  /*
    @desc inset-required-font-size
    @namespace size/required
    @semantic 内嵌模式必填项提示字体大小
  */
  --form-required-inset-font-size: var(--s-1);
  /*
    @desc required-font-size
    @namespace size/required
    @semantic 必填项提示字体大小
  */
  --form-required-font-size: var(--s-2);
  /*
    @desc required-color
    @namespace style/common
    @semantic 必填项提示颜色
  */
  --form-required-color: var(--color-error-3);
  /*
    @desc padding(l,r)
    @namespace size/bounding
    @semantic 左右内边距
  */
  --form-item-padding-lr: var(--s-4);
  /*
    @desc padding(t,b)
    @namespace size/bounding
    @semantic 上下内边距
  */
  --form-item-padding-tb: var(--s-2);
  /*
    @desc inset-padding(t,b)
    @namespace size/bounding
    @semantic 内嵌模式上下内边距
  */
  --form-item-inset-padding-tb: var(--s-4);
  --form-highlighted-border-color: var(--color-brand-3);
  --form-highlighted-shadow: 0 0 0 0.5333333333333333vw var(--color-brand-1);
  --form-inverse-highlighted-border-color: var(--color-brand-1);
  --form-inverse-highlighted-shadow: 0 0 0 0.5333333333333333vw var(--color-brand-3);
}

.mt-form-item-input--preview-small {
  font-size: var(--form-preview-small-font-size);
  line-height: 1.5;
}
.mt-form-item-input--preview-medium {
  font-size: var(--form-preview-medium-font-size);
  line-height: 1.5;
}
.mt-form-item-input--preview-large {
  font-size: var(--form-preview-large-font-size);
  line-height: 1.5;
}

/*
  @component radio
  @display Radio
  @chinese 单选框
  @family data-entry
*/
:root {
  /**
   @desc motion-time
   @namespace motion
   @semantic 动画时长
   @unconfigurable
   */
  --radio-motion-time: var(--motion-time-1);
  /**
    @desc motion-type
    @namespace base/motion
    @semantic 动画类型
    @unconfigurable
  */
  --radio-motion-type: var(--motion-type-ease);
  /*
    @desc padding(t,b)
    @namespace size/common
    @semantic 内边距(小号)
  */
  --radio-small-padding: var(--box-small-spacing);
  /*
    @desc small-border-width
    @namespace size/circle
    @semantic 边框粗细(小号)
  */
  --radio-circle-border-small-width: var(--box-small-border-width);
  /*
    @desc spacing
    @namespace size/font
    @semantic 文本左间距(小号)
  */
  --radio-text-left-small-margin: var(--box-small-spacing);
  /*
    @desc padding(t,b)
    @namespace size/common
    @semantic 内边距(中号)
  */
  --radio-medium-padding: var(--box-medium-spacing);
  /*
    @desc medium-border-width
    @namespace size/circle
    @semantic 边框粗细(中号)
  */
  --radio-circle-border-medium-width: var(--box-medium-border-width);
  /*
    @desc spacing
    @namespace size/font
    @semantic 文本左间距(中号)
  */
  --radio-text-left-medium-margin: var(--box-medium-spacing);
  /*
    @desc padding(t,b)
    @namespace size/common
    @semantic 内边距(大号)
  */
  --radio-large-padding: var(--box-large-spacing);
  /*
    @desc large-border-width
    @namespace size/circle
    @semantic 边框粗细(大号)
  */
  --radio-circle-border-large-width: var(--box-large-border-width);
  /*
    @desc spacing
    @namespace size/font
    @semantic 文本左间距(大号)
  */
  --radio-text-left-large-margin: var(--box-large-spacing);
  /*
    @desc small-circle-size
    @namespace size/circle
    @semantic 外圈尺寸(小号)
  */
  --radio-small-circle-size: var(--s-4);
  /*
    @desc medium-circle-size
    @namespace size/circle
    @semantic 外圈尺寸(中号)
  */
  --radio-medium-circle-size: var(--s-5);
  /*
    @desc large-circle-size
    @namespace size/circle
    @semantic 外圈尺寸(大号)
  */
  --radio-large-circle-size: var(--s-6);
  /*
    @desc small-point-size
    @namespace size/circle
    @semantic 内圈尺寸(小号)
  */
  --radio-small-point-size: var(--s-4);
  /*
    @desc medium-point-size
    @namespace size/circle
    @semantic 内圈尺寸(中号)
  */
  --radio-medium-point-size: var(--s-5);
  /*
    @desc large-point-size
    @namespace size/circle
    @semantic 内圈尺寸(大号)
  */
  --radio-large-point-size: var(--s-6);
  /*
    @desc circle-corner
    @namespace size/circle
    @semantic 圆角尺寸
  */
  --radio-circle-corner: var(--corner-semicircle);
  /*
    @desc circle-border-color
    @namespace style/circle
    @semantic 外圈边框色
  */
  --radio-circle-border-color: var(--color-line1-3);
  /*
    @desc circle-bg-color
    @namespace style/circle
    @semantic 外圈背景色
  */
  --radio-circle-bg-color: var(--color-white);
  /*
    @desc selected-circle-border-color
    @namespace style/circle
    @semantic 外圈边框色(选中)
  */
  --radio-circle-selected-border-color: var(--box-primary-solid-background-color);
  /*
    @desc disabled-circle-border-color
    @namespace style/circle
    @semantic 外圈边框色(禁用)
  */
  --radio-circle-disabled-border-color: var(--color-fill1-4);
  /*
    @desc disabled-circle-border-color
    @namespace style/circle
    @semantic 外圈边框色(选中-禁用)
  */
  --radio-circle-selected-disabled-border-color: var(--color-brand-1);
  /*
    @desc disabled-circle-bg-color
    @namespace style/circle
    @semantic 外圈背景色(禁用)
  */
  --radio-circle-disabled-bg-color: var(--color-fill1-1);
  /*
    @desc selected-circle-bg-color
    @namespace style/circle
    @semantic 外圈背景色(选中)
  */
  --radio-circle-selected-bg-color: var(--box-primary-solid-background-color);
  /*
    @desc selected-disabled-circle-bg-color
    @namespace style/circle
    @semantic 外圈背景色(选中-禁用)
  */
  --radio-circle-selected-disabled-bg-color: var(--color-brand-1);
  /*
    @desc selected-point-bg-color
    @namespace style/point
    @semantic 图标背景色(选中)
  */
  --radio-point-selected-bg-color: var(--box-primary-solid-icon-color);
  /*
    @desc selected-disabled-point-bg-color
    @namespace style/point
    @semantic 图标背景色(选中-禁用)
  */
  --radio-point-selected-disabled-bg-color: var(--box-primary-solid-icon-color);
  /*
    @desc small-text-size
    @namespace size/font
    @semantic 字体大小(小号)
  */
  --radio-small-font-size: var(--p-body-1-font-size);
  /*
    @desc medium-text-size
    @namespace size/font
    @semantic 字体大小(中号)
  */
  --radio-medium-font-size: var(--p-body-2-font-size);
  /*
    @desc large-text-size
    @namespace size/font
    @semantic 字体大小(大号)
  */
  --radio-large-font-size: var(--p-subhead-font-size);
  /*
    @desc text-color
    @namespace style/font
    @semantic 字体色
  */
  --radio-text-color: var(--color-text1-4);
  /*
    @desc selected-text-color
    @namespace style/font
    @semantic 字体色(选中)
  */
  --radio-text-selected-color: var(--color-text1-4);
  /*
    @desc disabled-text-color
    @namespace style/font
    @semantic 字体色(禁用)
  */
  --radio-text-disbled-color: var(--color-text1-1);
}

@keyframes mt-radio-dot-blink {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
.mt-radio {
  /* 中心圆 */
  /* 文本 */
}
.mt-radio-group--hoz {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  width: 100%;
}
.mt-radio-group--top-small {
  margin-bottom: calc(-1 * var(--radio-small-padding));
}
.mt-radio-group--inset-small {
  margin-top: calc(-1 * var(--radio-small-padding));
  margin-bottom: calc(-1 * var(--radio-small-padding));
}
.mt-radio-group--top-medium {
  margin-bottom: calc(-1 * var(--radio-medium-padding));
}
.mt-radio-group--inset-medium {
  margin-top: calc(-1 * var(--radio-medium-padding));
  margin-bottom: calc(-1 * var(--radio-medium-padding));
}
.mt-radio-group--top-large {
  margin-bottom: calc(-1 * var(--radio-large-padding));
}
.mt-radio-group--inset-large {
  margin-top: calc(-1 * var(--radio-large-padding));
  margin-bottom: calc(-1 * var(--radio-large-padding));
}
.mt-radio-container {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
}
.mt-radio-circle {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border-radius: var(--radio-circle-corner);
  border-color: var(--radio-circle-border-color);
  border-style: solid;
  background-color: var(--radio-circle-bg-color);
  text-align: center;
  box-sizing: border-box;
  transition: width var(--radio-motion-time) var(--radio-motion-type), height var(--radio-motion-time) var(--radio-motion-type), border-width var(--radio-motion-time) var(--radio-motion-type), border-color var(--radio-motion-time) var(--radio-motion-type);
}
.mt-radio-circle--selected {
  border-color: var(--radio-circle-selected-border-color);
  background-color: var(--radio-circle-selected-bg-color);
}
.mt-radio-circle--unselected-disabled {
  border-color: var(--radio-circle-disabled-border-color);
  background-color: var(--radio-circle-disabled-bg-color);
}
.mt-radio-circle--selected-disabled {
  border-color: var(--radio-circle-selected-disabled-border-color);
  background-color: var(--radio-circle-selected-disabled-bg-color);
}
.mt-radio-point {
  transition: width var(--radio-motion-time) var(--radio-motion-type), height var(--radio-motion-time) var(--radio-motion-type);
}
.mt-radio-point--selected {
  background-color: var(--radio-point-selected-bg-color);
  animation: mt-radio-dot-blink var(--radio-motion-time) var(--radio-motion-type);
}
.mt-radio-point--selected-disabled {
  background-color: var(--radio-point-selected-disabled-bg-color);
}
.mt-radio-point--unselected {
  width: 0;
  height: 0;
}
.mt-radio-text {
  flex: 1;
  color: var(--radio-text-color);
  line-height: 1.5;
}
.mt-radio-text--selected {
  color: var(--radio-text-selected-color);
}
.mt-radio-text--unselected-disabled {
  color: var(--radio-text-disbled-color);
}
.mt-radio-text--selected-disabled {
  color: var(--radio-text-disbled-color);
}
.mt-radio-container--small {
  padding: var(--radio-small-padding) 0;
}
.mt-radio-item--hoz-small {
  margin-right: 4.266666666666667vw;
}
.mt-radio-circle--small {
  height: var(--radio-small-circle-size);
  width: var(--radio-small-circle-size);
  border-width: var(--radio-circle-border-small-width);
  margin-top: calc(var(--radio-small-font-size) * 0.75 - var(--radio-small-circle-size) / 2);
}
.mt-radio-point--small {
  height: calc(var(--radio-small-point-size) * 0.382);
  width: calc(var(--radio-small-point-size) * 0.382);
  border-radius: var(--corner-semicircle);
}
.mt-radio-text--small {
  font-size: var(--radio-small-font-size);
  margin-left: var(--radio-text-left-small-margin);
}
.mt-radio-container--medium {
  padding: var(--radio-medium-padding) 0;
}
.mt-radio-item--hoz-medium {
  margin-right: 5.333333333333333vw;
}
.mt-radio-circle--medium {
  height: var(--radio-medium-circle-size);
  width: var(--radio-medium-circle-size);
  border-width: var(--radio-circle-border-medium-width);
  margin-top: calc(var(--radio-medium-font-size) * 0.75 - var(--radio-medium-circle-size) / 2);
}
.mt-radio-point--medium {
  height: calc(var(--radio-medium-point-size) * 0.382);
  width: calc(var(--radio-medium-point-size) * 0.382);
  border-radius: var(--corner-semicircle);
}
.mt-radio-text--medium {
  font-size: var(--radio-medium-font-size);
  margin-left: var(--radio-text-left-medium-margin);
}
.mt-radio-container--large {
  padding: var(--radio-large-padding) 0;
}
.mt-radio-item--hoz-large {
  margin-right: 6.4vw;
}
.mt-radio-circle--large {
  height: var(--radio-large-circle-size);
  width: var(--radio-large-circle-size);
  border-width: var(--radio-circle-border-large-width);
  margin-top: calc(var(--radio-large-font-size) * 0.75 - var(--radio-large-circle-size) / 2);
}
.mt-radio-point--large {
  height: calc(var(--radio-large-point-size) * 0.382);
  width: calc(var(--radio-large-point-size) * 0.382);
  border-radius: var(--corner-semicircle);
}
.mt-radio-text--large {
  font-size: var(--radio-large-font-size);
  margin-left: var(--radio-text-left-large-margin);
}