/* Application overrides live outside the refreshable upstream stylesheet. */
.ts-hidden-accessible {
  height: 1px !important;
  left: 0 !important;
  max-width: 1px !important;
  min-width: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

select.tomselected {
  max-width: 1px !important;
  min-width: 1px !important;
  width: 1px !important;
}

/* RSP dropdown presentation */
.ts-dropdown {
  z-index: 80;
  margin-top: 0.25rem;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 0.5rem;
  background: #fff;
  color: #334155;
  box-shadow:
    0 18px 45px rgba(15, 23, 42, 0.14),
    0 6px 18px rgba(15, 23, 42, 0.08),
    0 0 0 1px rgba(15, 23, 42, 0.04);
}

.ts-dropdown-content {
  max-height: min(17.5rem, 52vh);
  overflow-y: auto;
  padding: 0.25rem;
  scroll-behavior: smooth;
}

.ts-dropdown .option,
.ts-dropdown .optgroup-header,
.ts-dropdown .no-results,
.ts-dropdown .create {
  min-height: 2rem;
  padding: 0.4375rem 0.625rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  line-height: 1rem;
}

.ts-dropdown .option {
  display: flex;
  align-items: center;
  color: #334155;
}

.ts-dropdown [data-selectable].option {
  transition-property: background-color, color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}

.ts-dropdown .active {
  background: #eef2ff;
  color: #3730a3;
}

.ts-dropdown .selected {
  background: #f8fafc;
  color: #0f172a;
  font-weight: 600;
}

.ts-dropdown .active.selected {
  background: #e0e7ff;
  color: #312e81;
}

.ts-dropdown [data-disabled],
.ts-dropdown [data-disabled] [data-selectable].option {
  color: #94a3b8;
  opacity: 1;
}

.ts-dropdown .no-results,
.ts-dropdown .create {
  color: #64748b;
}

.ts-dropdown [data-selectable] .highlight {
  border-radius: 0.25rem;
  background: #fef3c7;
  color: #92400e;
}

.ts-dropdown .optgroup-header {
  min-height: auto;
  padding: 0.375rem 0.625rem 0.25rem;
  background: transparent;
  color: #64748b;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
