/* ──────────────────────────────────────────────
   Search component  –  .rep-search
   Global shared component loaded by the App Shell.
   ────────────────────────────────────────────── */

.rep-search {
  position: relative;
  display: flex;
  align-items: center;
}

.rep-search__icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px !important;
  line-height: 1 !important;
  width: 18px !important;
  height: 18px !important;
  overflow: hidden;
  color: var(--rep-text-muted);
  pointer-events: none;
  z-index: 2;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 20;
}

.rep-search__input {
  width: 100%;
  height: 40px;
  padding: 0 12px 0 36px !important;
  background: var(--rep-bg-surface) !important;
  color: var(--rep-text-primary);
  border: 1px solid var(--rep-border-default);
  border-radius: 8px;
  font-size: var(--rep-font-size-sm);
  font-family: var(--rep-font-family-base);
  outline: none;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  transition: box-shadow var(--rep-transition-normal), border-color var(--rep-transition-normal);
  box-sizing: border-box;
}

/* Remove ALL browser-native search decorations */
.rep-search__input::-webkit-search-decoration,
.rep-search__input::-webkit-search-cancel-button,
.rep-search__input::-webkit-search-results-button,
.rep-search__input::-webkit-search-results-decoration,
input.rep-search__input::-webkit-search-decoration,
input.rep-search__input::-webkit-search-cancel-button {
  -webkit-appearance: none !important;
  display: none !important;
}

.rep-search__input::placeholder {
  color: var(--rep-text-muted);
}

.rep-search__input:focus {
  border-color: var(--rep-color-primary-base);
  box-shadow: 0 0 0 1px var(--rep-color-primary-base);
}
