@charset "UTF-8";
/*
  @component input
  @display Input
  @chinese 文本输入框
  @family data-entry
*/
:root {
  /*
    @desc  corner
    @namespace  size/common
    @semantic  圆角(小号)
  */
  --input-small-corner: var(--box-small-border-radius);
  /*
    @desc  spacing
    @namespace  size/icon
    @semantic  图标间距(小号)
  */
  --input-small-spacing: var(--box-small-spacing);
  /*
    @desc  border-width
    @namespace  size/common
    @semantic  边框宽度(小号)
  */
  --input-small-border-width: 0.4vw;
  /*
    @desc  corner
    @namespace  size/common
    @semantic  圆角(中号)
  */
  --input-medium-corner: var(--box-medium-border-radius);
  /*
    @desc  spacing
    @namespace  size/icon
    @semantic  图标间距(中号)
  */
  --input-medium-spacing: var(--box-medium-spacing);
  /*
    @desc  border-width
    @namespace  size/common
    @semantic  边框宽度(中号)
  */
  --input-medium-border-width: 0.4vw;
  /*
    @desc  corner
    @namespace  size/common
    @semantic  圆角(大号)
  */
  --input-large-corner: var(--box-large-border-radius);
  /*
    @desc  spacing
    @namespace  size/icon
    @semantic  图标间距(大号)
  */
  --input-large-spacing: var(--box-large-spacing);
  /*
    @desc  border-width
    @namespace  size/common
    @semantic  边框宽度(大号)
  */
  --input-large-border-width: 0.4vw;
  /*
    @desc  padding(l,r)
    @namespace  size/common
    @semantic  左右内边距
  */
  --input-padding-lr: var(--s-3);
  /*
    @desc  padding(t,b)
    @namespace  size/common
    @semantic  上下内边距(小号)
  */
  --input-small-padding-tb: var(--s-1);
  /*
    @desc  padding(t,b)
    @namespace  size/common
    @semantic  上下内边距(中号)
  */
  --input-medium-padding-tb: var(--s-2);
  /*
    @desc  padding(t,b)
    @namespace  size/common
    @semantic  上下内边距(大号)
  */
  --input-large-padding-tb: var(--s-3);
  /*
    @desc  icon-size
    @namespace  size/icon
    @semantic  icon 尺寸(小号)
  */
  --input-small-icon-size: var(--s-3);
  /*
    @desc  icon-size
    @namespace  size/icon
    @semantic  icon 尺寸(中号)
  */
  --input-medium-icon-size: var(--s-4);
  /*
    @desc  icon-size
    @namespace  size/icon
    @semantic  icon 尺寸(大号)
  */
  --input-large-icon-size: var(--s-5);
  /*
    @desc  font-size
    @namespace  size/font
    @semantic  字体大小(小号)
  */
  --input-small-font-size: var(--p-body-1-font-size);
  /*
    @desc  font-size
    @namespace  size/font
    @semantic  字体大小(中号)
  */
  --input-medium-font-size: var(--p-body-2-font-size);
  /*
    @desc  font-size
    @namespace  size/font
    @semantic  字体大小(大号)
  */
  --input-large-font-size: var(--p-subhead-font-size);
  /*
    @desc  loading-icon-color
    @namespace  style/icon
    @semantic  loading 图标颜色
  */
  --input-loading-icon-color: var(--color-brand-3);
  /*
    @desc  clear-icon-color
    @namespace  style/icon
    @semantic  清空图标颜色
  */
  --input-clear-icon-color: var(--color-text1-2);
  /*
    @desc  normal-bg-color
    @namespace  style/common
    @semantic  常规背景颜色
  */
  --input-normal-bg-color: var(--color-fill1-1);
  /*
    @desc  normal-border-color
    @namespace  style/common
    @semantic  常规边框颜色
  */
  --input-normal-border-color: var(--color-transparent);
  /*
    @desc  normal-text-color
    @namespace  style/font
    @semantic  常规文字颜色
  */
  --input-normal-text-color: var(--color-text1-4);
  /*
    @desc  normal-placeholder-color
    @namespace  style/font
    @semantic  占位文字颜色
  */
  --input-normal-placeholder-color: var(--color-text1-2);
  /*
    @desc  normal-disabled-text-color
    @namespace  style/font
    @semantic  常规文字颜色(禁用)
  */
  --input-normal-text-color-disabled: var(--color-text1-1);
  /*
    @desc  normal-limit-hint-color
    @namespace  style/font
    @semantic  提示文字颜色
  */
  --input-normal-limit-hint-color: var(--color-text1-2);
  /*
    @desc  loading-icon-color
    @namespace  style/common
    @semantic  反色 loading 图标颜色
  */
  --input-inverse-bg-color: var(--color-fill2-1);
  /*
    @desc  border-color
    @namespace  style/common
    @semantic  反色边框颜色
  */
  --input-inverse-border-color: var(--color-transparent);
  /*
    @desc  text-color
    @namespace  style/font
    @semantic  反色文字颜色
  */
  --input-inverse-text-color: var(--color-white);
  /*
    @desc  placeholder-color
    @namespace  style/font
    @semantic  反色提示文字颜色
  */
  --input-inverse-placeholder-color: var(--color-text2-2);
  /*
    @desc  disabled-text-color
    @namespace  style/font
    @semantic  反色文字颜色(禁用)
  */
  --input-inverse-text-color-disabled: var(--color-text2-1);
  /*
    @desc  limit-hint-color
    @namespace  style/font
    @semantic  反色提示文字颜色
  */
  --input-inverse-limit-hint-color: var(--color-text2-2);
}

/*
  @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-input {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  box-sizing: border-box;
  border-style: solid;
  overflow: hidden;
  transition: border var(--motion-time-1), box-shadow var(--motion-time-3);
}
.mt-input .mt-input-placeholder {
  margin-left: -3px;
}
.mt-input-items {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}
.mt-input-icon-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  height: 100%;
}
.mt-input-icon--loading {
  color: var(--input-loading-icon-color);
}
.mt-input-icon--success {
  color: var(--color-success-2);
}
.mt-input-icon--warning {
  color: var(--color-warning-2);
}
.mt-input-icon--error {
  color: var(--color-error-3);
}
.mt-input-icon--clear {
  color: var(--input-clear-icon-color);
}
.mt-input-limit-hint {
  margin-left: var(--box-medium-spacing);
  font-size: var(--p-body-1-font-size);
  align-items: flex-end;
  line-height: 1.4;
  vertical-align: middle;
  display: inline-block;
}
.mt-input-textinput-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex: 1;
  height: auto;
  padding-left: 0;
  font-family: var(--font-family);
}
.mt-input-textinput-wrapper--multiline {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
}
.mt-input-textinput {
  flex: 1;
  width: 100%;
  outline: none;
  padding-left: 0;
  caret-color: var(--color-brand-4);
  font-family: var(--font-family);
  resize: none;
}
.mt-input-textinput--right {
  text-align: right;
}
.mt-input-textinput--hasIcon {
  margin-right: var(--s-2);
}
.mt-input-textinput--wechat {
  text-indent: 0.2em;
}
.mt-input-textinput--not-bw {
  height: auto;
}
.mt-input--hasIcon {
  padding-right: 0;
}
.mt-input--small {
  border-radius: var(--input-small-corner);
  padding: var(--input-small-padding-tb) var(--input-padding-lr);
  border-width: var(--input-small-border-width);
}
.mt-input-textinput--small {
  font-size: var(--input-small-font-size);
  line-height: 1.5;
}
.mt-input-textinput--small-multiline {
  min-height: calc(var(--input-small-font-size) * 3 * 1.5);
}
.mt-input-icon--small {
  font-size: var(--input-small-icon-size);
  margin-left: var(--input-small-spacing);
}
.mt-input-items--small {
  height: calc(var(--input-small-font-size) * 1.4);
}
.mt-input-limit-hint--small {
  line-height: calc(var(--input-small-font-size) * 1.4);
  height: calc(var(--input-small-font-size) * 1.4);
}
.mt-input-addon-before--small {
  margin-right: var(--input-small-spacing);
}
.mt-input-addon-after--small {
  margin-left: var(--input-small-spacing);
}
.mt-input--medium {
  border-radius: var(--input-medium-corner);
  padding: var(--input-medium-padding-tb) var(--input-padding-lr);
  border-width: var(--input-medium-border-width);
}
.mt-input-textinput--medium {
  font-size: var(--input-medium-font-size);
  line-height: 1.5;
}
.mt-input-textinput--medium-multiline {
  min-height: calc(var(--input-medium-font-size) * 3 * 1.5);
}
.mt-input-icon--medium {
  font-size: var(--input-medium-icon-size);
  margin-left: var(--input-medium-spacing);
}
.mt-input-items--medium {
  height: calc(var(--input-medium-font-size) * 1.4);
}
.mt-input-limit-hint--medium {
  line-height: calc(var(--input-medium-font-size) * 1.4);
  height: calc(var(--input-medium-font-size) * 1.4);
}
.mt-input-addon-before--medium {
  margin-right: var(--input-medium-spacing);
}
.mt-input-addon-after--medium {
  margin-left: var(--input-medium-spacing);
}
.mt-input--large {
  border-radius: var(--input-large-corner);
  padding: var(--input-large-padding-tb) var(--input-padding-lr);
  border-width: var(--input-large-border-width);
}
.mt-input-textinput--large {
  font-size: var(--input-large-font-size);
  line-height: 1.5;
}
.mt-input-textinput--large-multiline {
  min-height: calc(var(--input-large-font-size) * 3 * 1.5);
}
.mt-input-icon--large {
  font-size: var(--input-large-icon-size);
  margin-left: var(--input-large-spacing);
}
.mt-input-items--large {
  height: calc(var(--input-large-font-size) * 1.4);
}
.mt-input-limit-hint--large {
  line-height: calc(var(--input-large-font-size) * 1.4);
  height: calc(var(--input-large-font-size) * 1.4);
}
.mt-input-addon-before--large {
  margin-right: var(--input-large-spacing);
}
.mt-input-addon-after--large {
  margin-left: var(--input-large-spacing);
}
.mt-input--normal {
  background-color: var(--input-normal-bg-color);
  border-color: var(--input-normal-border-color);
}
.mt-input-textinput--normal {
  color: var(--input-normal-text-color);
}
.mt-input-textinput--normal-placeholder,
.mt-input-textinput--normal .mt-input-placeholder, .mt-input-textinput--normal::placeholder {
  color: var(--input-normal-placeholder-color);
}
.mt-input-textinput--normal-disabled {
  color: var(--input-normal-text-color-disabled);
  -webkit-text-fill-color: var(--input-normal-text-color-disabled);
  opacity: 1;
}
.mt-input-textinput--normal-disabled .mt-input-placeholder, .mt-input-textinput--normal-disabled::placeholder {
  color: var(--input-normal-text-color-disabled);
}
.mt-input-textinput--normal-readonly {
  overflow: auto;
}
.mt-input-textinput--normal-readonly::-webkit-scrollbar {
  display: none;
}
.mt-input-limit-hint--normal {
  color: var(--input-normal-limit-hint-color);
}
.mt-input--inverse {
  background-color: var(--input-inverse-bg-color);
  border-color: var(--input-inverse-border-color);
}
.mt-input-textinput--inverse {
  color: var(--input-inverse-text-color);
}
.mt-input-textinput--inverse-placeholder,
.mt-input-textinput--inverse .mt-input-placeholder, .mt-input-textinput--inverse::placeholder {
  color: var(--input-inverse-placeholder-color);
}
.mt-input-textinput--inverse-disabled {
  color: var(--input-inverse-text-color-disabled);
  -webkit-text-fill-color: var(--input-inverse-text-color-disabled);
  opacity: 1;
}
.mt-input-textinput--inverse-disabled .mt-input-placeholder, .mt-input-textinput--inverse-disabled::placeholder {
  color: var(--input-inverse-text-color-disabled);
}
.mt-input-textinput--inverse-readonly {
  overflow: auto;
}
.mt-input-textinput--inverse-readonly::-webkit-scrollbar {
  display: none;
}
.mt-input-limit-hint--inverse {
  color: var(--input-inverse-limit-hint-color);
}
.mt-input--normal-highlighted {
  border-color: var(--form-highlighted-border-color);
  box-shadow: var(--form-highlighted-shadow);
}
.mt-input--inverse-highlighted {
  border-color: var(--form-inverse-highlighted-border-color);
  box-shadow: var(--form-inverse-highlighted-shadow);
}