.rg-search-select {
  position:relative;
  display:block;
  width:100%;
  min-width:0;
}
.rg-search-select__native {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-width:0!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.rg-search-select__trigger {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  width:100%;
  min-width:0;
  min-height:var(--rg-select-height,42px);
  padding:.62rem .8rem;
  border:1px solid var(--rg-select-border,#cbd8e8);
  border-radius:var(--rg-select-radius,9px);
  background:var(--rg-select-background,#fff);
  color:var(--rg-select-color,#233b5a);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.rg-search-select__trigger:hover { border-color:#9eb7d9; }
.rg-search-select__trigger:focus-visible {
  outline:3px solid rgba(37,99,235,.22);
  outline-offset:2px;
  border-color:#2563eb;
}
.rg-search-select__trigger[aria-invalid="true"] { border-color:#c2413b; }
.rg-search-select__value { display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rg-search-select__chevron { width:18px; height:18px; flex:0 0 18px; color:#586b84; transition:transform .16s ease; }
.rg-search-select__trigger[aria-expanded="true"] .rg-search-select__chevron { transform:rotate(180deg); }
.rg-search-select__trigger:disabled { opacity:.58; cursor:not-allowed; background:#f3f6fa; }
.rg-search-select__panel[hidden] { display:none!important; }
.rg-search-select__panel {
  position:fixed;
  z-index:5000;
  display:flex;
  flex-direction:column;
  gap:.5rem;
  box-sizing:border-box;
  max-height:min(24rem,calc(100vh - 2rem));
  padding:.6rem;
  overflow:hidden;
  border:1px solid #d9e3f1;
  border-radius:12px;
  background:#fff;
  box-shadow:0 16px 42px rgba(20,42,76,.2),0 3px 10px rgba(20,42,76,.08);
}
.rg-search-select__search {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:40px;
  padding:.55rem .7rem .55rem 2.15rem;
  border:1px solid #d2dbe8;
  border-radius:8px;
  outline:0;
  background:#fff;
  color:#1b2f4c;
  font:inherit;
  font-size:.88rem;
  box-shadow:none;
}
.rg-search-select__search:focus { border-color:#4d82da; box-shadow:0 0 0 3px rgba(37,99,235,.12); }
.rg-search-select__panel:before {
  position:absolute;
  top:1.34rem;
  left:1.32rem;
  width:11px;
  height:11px;
  border:1.6px solid #7f91a8;
  border-radius:50%;
  content:"";
  pointer-events:none;
}
.rg-search-select__panel:after {
  position:absolute;
  top:2.05rem;
  left:2.03rem;
  width:6px;
  height:1.6px;
  border-radius:2px;
  background:#7f91a8;
  content:"";
  transform:rotate(45deg);
  transform-origin:left center;
  pointer-events:none;
}
.rg-search-select__list { display:block; max-height:min(18rem,calc(100vh - 7rem)); overflow:auto; overscroll-behavior:contain; }
.rg-search-select__option {
  display:block;
  padding:.58rem .7rem;
  border-radius:7px;
  color:#263a55;
  font-size:.88rem;
  line-height:1.35;
  overflow-wrap:anywhere;
  cursor:pointer;
}
.rg-search-select__option:hover,.rg-search-select__option.is-active { background:#eff4fb; color:#153d78; }
.rg-search-select__option[aria-selected="true"] { background:#eaf2ff; color:#164da0; font-weight:700; }
.rg-search-select__option[aria-selected="true"].is-active { background:#e4efff; }
.rg-search-select__option.is-disabled { color:#9aa7b7; cursor:not-allowed; }
.rg-search-select__group { display:block; padding:.6rem .7rem .28rem; color:#718198; font-size:.68rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.rg-search-select__empty { display:block; padding:.8rem .7rem; color:#687b94; font-size:.84rem; }
@media(max-width:560px) {
  .rg-search-select__panel { padding:.5rem; border-radius:11px; }
  .rg-search-select__option { min-height:42px; padding:.68rem .72rem; }
}
@media(prefers-reduced-motion:reduce) {
  .rg-search-select__trigger,.rg-search-select__chevron { transition:none; }
}
