:host {
  display: flex;
  width: 100%;
}

  :host * {
    box-sizing: border-box;
  }

.search {
  position: relative;
  display: flex;
  width: 100%;
}

.search--variant-outline .search__input {
    background-color: transparent;
    box-shadow: inset 0 0 0 var(--s-border-width-default) var(--s-border-strong);
  }

.search--variant-ghost .search__input {
    background-color: transparent;
  }

.search--disabled .search__icon {
    color: var(--s-icon-disabled);
  }

.search--disabled .search__input {
    color: var(--s-text-disabled);
  }

.search--disabled .search__input::-moz-placeholder {
      color: var(--s-text-disabled);
    }

.search--disabled .search__input::placeholder {
      color: var(--s-text-disabled);
    }

.search__icon {
  position: absolute;
  top: 50%;
  left: var(--s-space-12);
  display: inline-flex;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--s-icon-default);
  transform: translateY(-50%);
}

@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px) {

.search__icon {
    width: 1.25rem;
    height: 1.25rem
}
  }

.search__input {
  width: 100%;
  height: 2.5rem;
  padding-top: var(--s-space-8);
  padding-right: calc(var(--s-space-12) + 1.5rem + var(--s-space-8));
  padding-bottom: var(--s-space-8);
  padding-left: calc(var(--s-space-12) + 1.5rem + var(--s-space-8));
  border: none;
  border-radius: var(--s-border-radius-base);
  color: var(--s-text-default);
  background-color: var(--s-surface-raised-default);
  font: inherit;
  line-height: var(--s-line-height-base);
  caret-color: var(--s-border-highlight);
}

.search__input:focus:not(:focus-visible) {
    outline: none;
  }

.search__input:focus-visible {
    outline-color: var(--s-focus-default);
  }

.search__input::-moz-placeholder {
    color: var(--s-text-subdued);
  }

.search__input::placeholder {
    color: var(--s-text-subdued);
  }

.search__input::-webkit-search-decoration,
  .search__input::-webkit-search-cancel-button,
  .search__input::-webkit-search-results-button,
  .search__input::-webkit-search-results-decoration {
    -webkit-appearance: none;
            appearance: none;
  }

.search__input:not(:-moz-placeholder-shown) + .search__clear-button {
      display: inline-flex;
    }

.search__input:not(:placeholder-shown) + .search__clear-button {
      display: inline-flex;
    }

@media (min-width: 992px) and (max-width: 1439px) and (hover: hover),(min-width: 1440px) {

.search__input {
    height: 2.25rem;
    padding-left: calc(var(--s-space-8) + 1.5rem + var(--s-space-8));
    font-size: var(--s-font-size-sm);
    line-height: var(--s-line-height-sm)
}
  }

.search__clear-button {
  position: absolute;
  top: 50%;
  right: var(--s-space-12);
  display: none;
  padding: 0;
  border: none;
  color: var(--s-icon-default);
  background-color: transparent;
  cursor: pointer;
  transform: translateY(-50%);
}
