* {
  box-sizing: var(--air-box-sizing, border-box);
}

:host {
  display: var(--air-select-host-display, inline-flex);
}

.select-wrapper {
  position: relative;
  width: var(--air-select-width, var(--air-form-element-width, 576px));
  --air-dropdown-base-width: var(--air-select-width, var(--air-form-element-width, 576px));
  --air-dropdown-base-min-width: var(--air-select-min-width, var(--air-form-element-min-width, 260px));
  --air-dropdown-base-max-width: var(--air-select-max-width, var(--air-form-element-max-width, 100%));
  --air-dropdown-base-border: var(--air-select-content-border-width, 1px) var(--air-select-content-border-style, solid) var(--air-select-content-border-color, var(--air-select-hover-border-color, var(--air-form-element-hover-color, var(--air-color-eclipse, #3a3a3a))));
  --air-dropdown-base-border-radius: var(--air-select-border-radius, var(--air-form-element-border-radius, var(--air-border-radius, 4px)));
  --air-dropdown-base-padding-top: var(--air-select-content-padding-top, 0);
  --air-dropdown-base-padding-right: var(--air-select-content-padding-right, 0);
  --air-dropdown-base-padding-bottom: var(--air-select-content-padding-bottom, 0);
  --air-dropdown-base-padding-left: var(--air-select-content-padding-left, 0);
  --air-dropdown-base-margin-top: var(--air-select-content-margin-top, var(--air-spacing-01, 0.25rem));
  --air-dropdown-base-margin-right: var(--air-select-content-margin-right, 0);
  --air-dropdown-base-margin-bottom: var(--air-select-content-margin-bottom, 0);
  --air-dropdown-base-margin-left: var(--air-select-content-margin-left, 0);
  --air-dropdown-base-max-height: var(--air-select-content-max-height, 250px);
}
.select-wrapper.error .select-element {
  color: var(--air-select-error-color);
  border-color: var(--air-select-error-border-color, var(--air-color-error, var(--air-color-valencia, #e55451)));
}
.select-wrapper.error .select-label {
  color: var(--air-select-error-label-color, var(--air-color-error, var(--air-color-valencia, #e55451)));
}
.select-wrapper.error .status-text {
  color: var(--air-select-error-label-color, var(--air-color-error, var(--air-color-valencia, #e55451)));
}
.select-wrapper.success .select-element {
  color: var(--air-select-success-color);
  border-color: var(--air-select-success-border-color, var(--air-color-success, var(--air-color-fern, #5ec075)));
}
.select-wrapper.success .select-label {
  color: var(--air-select-success-label-color, var(--air-color-success, var(--air-color-fern, #5ec075)));
}
.select-wrapper.success .status-text {
  color: var(--air-select-success-label-color, var(--air-color-success, var(--air-color-fern, #5ec075)));
}
.select-wrapper:not(.with-status).opened .select-element:not(.disabled):not(.readonly), .select-wrapper:not(.with-status):hover .select-element:not(.disabled):not(.readonly) {
  color: var(--air-select-hover-color, var(--air-form-element-hover-color, var(--air-color-eclipse, #3a3a3a)));
  border-color: var(--air-select-hover-border-color, var(--air-form-element-hover-color, var(--air-color-eclipse, #3a3a3a)));
  background-color: var(--air-select-hover-background-color, var(--air-form-element-hover-background-color, rgba(58, 58, 58, 0.05)));
}
.select-wrapper .required-mark {
  color: var(--air-select-mark-required-color, var(--air-color-error, var(--air-color-valencia, #e55451)));
}
.select-wrapper .select-label {
  display: block;
  font-family: var(--air-select-font-family, var(--air-body-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"));
  margin-top: var(--air-select-label-margin-top, 0);
  margin-right: var(--air-select-label-margin-right, 0);
  margin-bottom: var(--air-select-label-margin-bottom, var(--air-spacing-03, 1rem));
  margin-left: var(--air-select-label-margin-left, 0);
}
.select-wrapper .status-text {
  display: block;
  font-family: var(--air-select-font-family, var(--air-body-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"));
  margin-top: var(--air-select-status-text-margin-top, var(--air-spacing-02, 0.5rem));
  margin-right: var(--air-select-status-text-margin-right, 0);
  margin-bottom: var(--air-select-status-text-margin-bottom, 0);
  margin-left: var(--air-select-status-text-margin-left, 0);
}

.opened .indicator {
  transform: rotate(180deg);
}

.select-element-wrapper {
  position: relative;
}

.select-element {
  display: var(--air-select-display, block);
  width: var(--air-select-width, var(--air-form-element-width, 576px));
  min-width: var(--air-select-min-width, var(--air-form-element-min-width, 260px));
  max-width: var(--air-select-max-width, var(--air-form-element-max-width, 100%));
  margin-top: var(--air-select-margin-top, 0);
  margin-left: var(--air-select-margin-left, 0);
  margin-bottom: var(--air-select-margin-bottom, 0);
  margin-right: var(--air-select-margin-right, 0);
  padding-top: var(--air-select-padding-top, var(--air-spacing-03, 1rem));
  padding-left: var(--air-select-padding-left, var(--air-spacing-03, 1rem));
  padding-bottom: var(--air-select-padding-bottom, var(--air-spacing-03, 1rem));
  padding-right: var(--air-select-padding-right, var(--air-spacing-03, 1rem));
  border-radius: var(--air-select-border-radius, var(--air-form-element-border-radius, var(--air-border-radius, 4px)));
  border: var(--air-select-border-width, var(--air-form-element-border-width, 1px)) var(--air-select-border-style, var(--air-form-element-border-style, solid)) var(--air-select-border-color, var(--air-form-element-border-color, var(--air-color-gray, #b7b7b7)));
  outline: none;
  background-color: var(--air-select-background-color, var(--air-color-white, #ffffff));
}
.select-element:focus:not(.disabled), .select-element:focus-within:not(.disabled) {
  box-shadow: 0 0 0 var(--air-select-focus-outline-width, var(--air-focus-outline-width, 2px)) var(--air-select-focus-outline-color, var(--air-focus-outline-color, var(--air-color-primary-outline, var(--air-color-denim, #2e71bd))));
}
.select-element.disabled {
  background-color: var(--air-select-disabled-background-color, var(--air-form-element-disabled-background-color, var(--air-color-gainsboro, #d8d8d8)));
  color: var(--air-select-disabled-color, var(--air-form-element-disabled-color, var(--air-color-eclipse, #3a3a3a)));
  border-color: var(--air-select-disabled-border-color, var(--air-form-element-disabled-color, var(--air-color-eclipse, #3a3a3a)));
}
.select-element.disabled .chevron {
  color: var(--air-select-disabled-color, var(--air-form-element-disabled-color, var(--air-color-eclipse, #3a3a3a)));
}
.select-element input {
  color: var(--air-select-color, var(--air-body-color, var(--air-color-eclipse, #3a3a3a)));
  font-family: var(--air-select-font-family, var(--air-body-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"));
  font-size: var(--air-select-font-size, var(--air-body-font-size, 1rem));
  font-weight: var(--air-select-font-weight, var(--air-body-font-weight, 400));
}
.select-element.readonly {
  background-color: var(--air-select-readonly-background-color, var(--air-form-element-readonly-background-color, transparent));
  color: var(--air-select-readonly-color, var(--air-form-element-readonly-color, var(--air-color-dim-grey, #717171)));
  border-color: var(--air-select-readonly-border-color, var(--air-form-element-readonly-border-color, var(--air-color-gray, #b7b7b7)));
}
.select-element.readonly .chevron {
  color: var(--air-select-readonly-color, var(--air-form-element-readonly-color, var(--air-color-dim-grey, #717171)));
}

.trigger {
  cursor: pointer;
  position: relative;
}

.trigger-wrapper {
  display: flex;
}

air-select-option {
  width: 100%;
}

.selected-name {
  width: 100%;
  overflow: hidden;
  position: relative;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: none;
  padding: 0;
  background-color: transparent;
}
.selected-name:focus {
  outline: none;
}
.selected-name::placeholder {
  color: var(--air-select-placeholder-color, var(--air-form-element-placeholder-color, var(--air-color-gray, #b7b7b7)));
}

.no-results {
  color: var(--air-select-no-results-color, var(--air-caption-color, var(--air-color-eclipse, #3a3a3a)));
  font-size: var(--air-select-no-results-font-size, var(--air-caption-font-size, 0.875rem));
  font-family: var(--air-select-no-results-font-family, var(--air-caption-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"));
  font-weight: var(--air-select-no-results-font-weight, var(--air-caption-font-weight, 400));
  line-height: var(--air-select-no-results-line-height, var(--air-caption-line-height, 1.5));
  text-align: var(--air-select-no-results-text-align, center);
}

.footer-button {
  width: var(--air-select-footer-width, 100%);
  color: var(--air-select-footer-button-color, var(--air-body-bold-color, var(--air-color-eclipse, #3a3a3a)));
  font-size: var(--air-select-footer-button-font-size, var(--air-body-bold-font-size, 1rem));
  font-family: var(--air-select-footer-button-font-family, var(--air-body-bold-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"));
  font-weight: var(--air-select-footer-button-font-weight, var(--air-body-bold-font-weight, 600));
  line-height: var(--air-select-footer-button-line-height, var(--air-body-bold-line-height, 1.5));
  margin-top: var(--air-select-footer-button-margin-top, 0);
  margin-right: var(--air-select-footer-button-margin-right, 0);
  margin-bottom: var(--air-select-footer-button-margin-bottom, 0);
  margin-left: var(--air-select-footer-button-margin-left, 0);
  padding-top: var(--air-select-footer-button-padding-top, var(--air-spacing-02, 0.5rem));
  padding-right: var(--air-select-footer-button-padding-right, var(--air-spacing-02, 0.5rem));
  padding-bottom: var(--air-select-footer-button-padding-bottom, var(--air-spacing-02, 0.5rem));
  padding-left: var(--air-select-footer-button-padding-left, var(--air-spacing-02, 0.5rem));
  cursor: pointer;
  border-top: var(--air-select-footer-button-border-top, 1px solid var(--air-color-gray, #b7b7b7));
  border-right: var(--air-select-footer-button-border-right, none);
  border-bottom: var(--air-select-footer-button-border-bottom, none);
  border-left: var(--air-select-footer-button-border-left, none);
  background-color: var(--air-select-footer-button-background-color, var(--air-color-white, #ffffff));
}
.footer-button:hover {
  background-color: var(--air-select-footer-button-hover-background-color, var(--air-color-gainsboro, #d8d8d8));
}
.footer-button:focus {
  outline: none;
}

@media (max-width: 992px) {
  :host {
    width: var(--air-mobile-select-width, var(--air-mobile-form-element-width, 100%));
  }
  .select-wrapper {
    --air-select-width: var(--air-mobile-select-width, var(--air-mobile-form-element-width, 100%));
  }
}