.o-select {
  --select-text-size: var(--o-font_size-text1);
  --select-text-height: var(--o-line_height-text1);

  --select-color: var(--o-color-info1);
  --select-color-hover: var(--o-color-info1);
  --select-color-focus: var(--o-color-info1);
  --select-color-disabled: var(--o-color-info4);

  --select-placeholder: var(--o-color-info4);

  --select-bg-color: var(--o-color-control5-light);
  --select-bg-color-hover: var(--o-color-control5-light);
  --select-bg-color-focus: var(--o-color-control5-light);
  --select-bg-color-disabled: var(--o-color-control4-light);

  --select-icon-color: var(--o-color-info3);
  --select-icon-color-disabled: var(--o-color-info4);

  --select-icon-gap: var(--o-gap-2);
}

.o-select,
.o-select-tag-popover {
  --select-tag-bg-color: var(--o-color-control2-light);
  --select-tag-radius: 24px;

  --select-tag-text-size: var(--o-font_size-tip2);
  --select-tag-text-height: var(--o-line_height-tip2);
  --select-tag-padding: 3px 12px;
  // --select-tag-min-height: var(--o-control_size-s);
  --select-tag-margin: 2px 4px 2px 0;
}

.o-select-tag-popover {
  --popover-min-width: auto;
  --select-tag-popover-max-width: 360px;
}

.o-select-normal {
  &.o-select-outline {
    --select-bd-color: var(--o-color-control1);
    --select-bd-color-hover: var(--o-color-control2);
    --select-bd-color-focus: var(--o-color-primary3);
    --select-bd-color-disabled: var(--o-color-control4);
  }

  &.o-select-solid {
    --select-bd-color: var(--o-color-control1-light);
    --select-bd-color-hover: var(--o-color-control2-light);
    --select-bd-color-disabled: var(--o-color-control4-light);

    --select-bg-color: var(--o-color-control1-light);
    --select-bg-color-hover: var(--o-color-control2-light);
    --select-bg-color-disabled: var(--o-color-control4-light);
  }
}

.o-select-text {
  --select-color: var(--o-color-info1);
  --select-color-hover: var(--o-color-info2);
  --select-color-focus: var(--o-color-info2);
  --select-color-disabled: var(--o-color-info4);
  --select-bg-color: transparent;
  --select-bg-color-hover: transparent;
  --select-bg-color-focus: transparent;
}

.o-select-success {
  &.o-select-text {
    --select-color: var(--o-color-success1);
    --select-color-hover: var(--o-color-success2);
    --select-color-focus: var(--o-color-success3);
    --select-color-disabled: var(--o-color-success4);
  }
  &.o-select-outline {
    --select-bd-color: var(--o-color-success1-light);
    --select-bd-color-hover: var(--o-color-success2-light);
    --select-bd-color-focus: var(--o-color-success3);
    --select-bd-color-disabled: var(--o-color-success4);
  }

  &.o-select-solid {
    --select-bd-color: var(--o-color-success1-light);
    --select-bd-color-hover: var(--o-color-success2-light);
    --select-bd-color-focus: var(--o-color-success3-light);
    --select-bd-color-disabled: var(--o-color-success4-light);

    --select-bg-color: var(--o-color-success1-light);
    --select-bg-color-hover: var(--o-color-success2-light);
    --select-bg-color-disabled: var(--o-color-success4-light);
  }
}

.o-select-warning {
  &.o-select-text {
    --select-color: var(--o-color-warning1);
    --select-color-hover: var(--o-color-warning2);
    --select-color-focus: var(--o-color-warning3);
    --select-color-disabled: var(--o-color-warning4);
  }
  &.o-select-outline {
    --select-bd-color: var(--o-color-warning1-light);
    --select-bd-color-hover: var(--o-color-warning2-light);
    --select-bd-color-focus: var(--o-color-warning3);
    --select-bd-color-disabled: var(--o-color-warning4);
  }
  &.o-select-solid {
    --select-bd-color: var(--o-color-warning1-light);
    --select-bd-color-hover: var(--o-color-warning2-light);
    --select-bd-color-focus: var(--o-color-warning3-light);
    --select-bd-color-disabled: var(--o-color-warning4-light);

    --select-bg-color: var(--o-color-warning1-light);
    --select-bg-color-hover: var(--o-color-warning2-light);
    --select-bg-color-disabled: var(--o-color-warning4-light);
  }
}

.o-select-danger {
  &.o-select-text {
    --select-color: var(--o-color-danger1);
    --select-color-hover: var(--o-color-danger2);
    --select-color-focus: var(--o-color-danger3);
    --select-color-disabled: var(--o-color-danger4);
  }
  &.o-select-outline {
    --select-bd-color: var(--o-color-danger1-light);
    --select-bd-color-hover: var(--o-color-danger2-light);
    --select-bd-color-focus: var(--o-color-danger3);
    --select-bd-color-disabled: var(--o-color-danger4);
  }
  &.o-select-solid {
    --select-bd-color: var(--o-color-danger1-light);
    --select-bd-color-hover: var(--o-color-danger2-light);
    --select-bd-color-focus: var(--o-color-danger3-light);
    --select-bd-color-disabled: var(--o-color-danger4-light);

    --select-bg-color: var(--o-color-danger1-light);
    --select-bg-color-hover: var(--o-color-danger2-light);
    --select-bg-color-disabled: var(--o-color-danger4-light);
  }
}

.o-select-large {
  --select-padding: 0 15px;
  --select-icon-size: var(--o-icon_size_control-m);

  --select-text-size: var(--o-font_size-text1);
  --select-text-height: var(--o-line_height-text1);
  --select-radius: var(--o-radius_control-l);
  --select-height: var(--o-control_size-l);

  --select-multiple-max-height: 64px;
  --select-multiple-padding: 3px 15px 3px 7px;
}
.o-select-medium {
  --select-padding: 0 15px;
  --select-icon-size: var(--o-icon_size_control-xs);

  --select-text-size: var(--o-font_size-tip1);
  --select-text-height: var(--o-line_height-tip1);
  --select-radius: var(--o-radius_control-s);
  --select-height: var(--o-control_size-m);

  --select-multiple-max-height: 64px;

  --select-multiple-padding: 2px 15px 2px 7px;
  --select-tag-padding: 2px 8px;
}
.o-select-small {
  --select-padding: 0 8px;
  --select-height: var(--o-control_size-s);
  --select-text-size: var(--o-font_size-tip2);
  --select-text-height: var(--o-line_height-tip2);
  --select-radius: var(--o-radius_control-xs);
  --select-icon-size: var(--o-icon_size_control-xs);

  --select-tag-padding: 0 8px;

  --select-multiple-max-height: 48px;
  --select-multiple-padding: 1px 8px 1px 5px;
  --select-tag-margin: 1px 2px 1px 0;
}

.o-select-round-pill {
  --select-radius: var(--o-control_size-l);
  overflow: hidden;
}

.o-select-options {
  --select-empty-padding: 16px;
}

.o-select-options-medium {
  & .o-option {
    --option-text-size: var(--o-font_size-tip1);
    --option-text-height: var(--o-line_height-tip1);

    --option-padding: 4px 12px;
  }

  & .o-cascader-option {
    --cascader-option-text-size: var(--o-font_size-tip1);
    --cascader-option-text-height: var(--o-line_height-tip1);

    --cascader-option-padding: 3px 12px;

    --cascader-option-icon-size: var(--o-icon_size-xs);
  }
}

.o-select-dlg {
  --dlg-radius: var(--o-radius_control-s);
  --dlg-body-padding: 16px 24px;
  --option-list-padding: 0;
}
