.searchlist-container {
    width: 100%;
    border: 1px solid #ced4da;
    background-color: #ffff !important;
    padding: 0.15em;
    color: #495057;
    padding-left: 10px;
}

.searchlist-container {
  position: relative;
  display: inline-flex;
  cursor: default;
}
.searchlist-container:focus-visible {
    outline: none;
}
.searchlist-container span {
  align-self: center;
}

.searchlist-container .searchlist-display {
  flex-grow: 1;
}
.searchlist-container .searchlist-expand {
  box-sizing: border-box;
  padding: 0;
  position: absolute;
  z-index: 110;
  left: 0px;
  right: 0px;
  width: auto;
  font-size: inherit;
}
.searchlist-container .searchlist-expand .searchlist-search {
  width: 100%;
  box-sizing: border-box;
  padding: inherit;
  border: 0;
  margin: 0;
  /*color: inherit;*/
  font: inherit;
  background: inherit;
  border-bottom: 3px solid transparent;
}
.searchlist-container .searchlist-expand .searchlist-list {
  border-top-width: 2px;
  border-top-style: solid;
  display: block;
  width: 100%;
  box-sizing: border-box;
  height: 100px;
  overflow-x: hidden;
  overflow-y: scroll;
  resize: both;
  padding: 0;
  font-size: inherit;
}
.searchlist-container .searchlist-expand .searchlist-list div {
  user-select: none;
  -moz-user-select: none;
  white-space: nowrap;
}
.searchlist-container .searchlist-expand .searchlist-list div .searchlist-description {
  font-size: 0.9em;
  /*color: gray;*/
}
.searchlist-container .searchlist-expand .searchlist-list div[selected] {
  background-color: #2c87f0;
  /*color: white;*/
}
.searchlist-container .searchlist-expand .searchlist-list div[selected] .searchlist-description {
 /* color: lightgray;*/
}
.searchlist-container .searchlist-expand .searchlist-list option {
  padding: inherit;
  background: inherit;
  font-size: inherit;
}
.searchlist-container.singleline .searchlist-displaycontainer {
  overflow: hidden;
}
.searchlist-container.singleline .searchlist-displaycontainer .searchlist-display {
  align-self: flex-start;
}
.searchlist-container .searchlist-working-container {
  box-sizing: border-box;
  height:0;
  margin-top: -3px;
  position: relative;
  width: 100%;
}
.searchlist-container .searchlist-working-bar {
  height: 3px;
  background: linear-gradient(to left, transparent, white);
  animation: working-bar-pulse 1s infinite alternate;
  width: 0px;
}
.searchlist-container .searchlist-working-bar.on {
  width: 100%;
  transition: width 5s cubic-bezier(0, 0, 0.15, 1);
}

@keyframes working-bar-pulse {
  from {
    background-color: blue;
  }
  to {
    background-color: lightblue;
  }
}