/* Typesense autocomplete minibar (progressive enhancement over the plain search form). */
.tsmb-form {
  position: relative;
}

.tsmb-form input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.tsmb-listbox {
  background: #fff;
  border: 1px solid var(--ec-border-strong-color);
  border-radius: var(--ec-radius-lg);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
  box-sizing: border-box;
  list-style: none;
  margin: 0.25rem 0 0;
  max-height: min(24rem, 60vh);
  max-width: calc(100vw - 2rem);
  overflow-y: auto;
  padding: 0.5rem;
  z-index: 1050;
}

.tsmb-listbox .tsmb-group {
  color: var(--color-slate-500);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 0.5rem 0.75rem 0.25rem;
  text-transform: uppercase;
  white-space: normal;
}

.tsmb-listbox .tsmb-hit a {
  border-radius: var(--ec-radius);
  color: var(--ec-body-color);
  display: block;
  line-height: 1.45;
  overflow-wrap: break-word;
  padding: 0.5rem 0.75rem;
  text-decoration: none;
  white-space: normal;
  -webkit-tap-highlight-color: transparent;
}

.tsmb-listbox .dropdown-item:is(:hover, :focus, :active, .active),
.tsmb-listbox .tsmb-hit a:hover,
.tsmb-listbox .tsmb-hit[aria-selected=true] a {
  background: var(--color-slate-100);
  color: var(--ec-body-color);
  text-decoration: none;
}

.tsmb-listbox .tsmb-foot {
  border-top: 1px solid var(--color-slate-100);
  margin-top: 0.25rem;
  padding-top: 0.25rem;
}

.tsmb-listbox .tsmb-foot a {
  color: var(--color-slate-500);
  display: block;
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
  white-space: normal;
}

.tsmb-listbox .tsmb-empty {
  color: var(--color-slate-500);
  padding: 0.75rem;
  white-space: normal;
}

.tsmb-icon-close {
  cursor: pointer;
  position: absolute;
  right: 6.5rem;
  stroke: currentcolor;
  stroke-width: 1.5;
  top: 50%;
  transform: translateY(-50%);
}

@media (pointer: coarse) {
  .tsmb-hit a {
    padding-bottom: 0.65rem;
    padding-top: 0.65rem;
  }
}
@media (width < 40rem) {
  .tsmb-listbox {
    border-radius: var(--ec-radius);
    max-height: min(20rem, 50vh);
    padding: 0.375rem;
  }
  .tsmb-listbox .tsmb-hit a {
    font-size: 0.95rem;
  }
  .tsmb-icon-close {
    right: 1rem;
    top: 1.95rem;
  }
}
