/* Every tool dropdown keeps its own bounded, visible scrolling surface. */
.ninja-tool-dropdown__body {
  grid-auto-rows: max-content;
  align-content: start;
  overflow-x: hidden;
}
.ninja-tool-dropdown__body,
.word-parts-options__body {
  max-height: min(330px, 45dvh);
  overflow-y: scroll;
  overscroll-behavior: contain;
}
/* Keep the scroll affordance visible even when the OS hides overlay scrollbars. */
.ninja-tool-dropdown__body,
.ninja-tool-select-options,
.word-parts-options__body {
  scrollbar-gutter: stable;
  scrollbar-width: auto;
  scrollbar-color: #905d95 #f1edf3;
  touch-action: pan-y;
}
.ninja-tool-dropdown__body::-webkit-scrollbar,
.ninja-tool-select-options::-webkit-scrollbar,
.word-parts-options__body::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 10px;
}
.ninja-tool-dropdown__body::-webkit-scrollbar-track,
.ninja-tool-select-options::-webkit-scrollbar-track,
.word-parts-options__body::-webkit-scrollbar-track {
  background: #f1edf3;
  border-radius: 10px;
}
.ninja-tool-dropdown__body::-webkit-scrollbar-thumb,
.ninja-tool-select-options::-webkit-scrollbar-thumb,
.word-parts-options__body::-webkit-scrollbar-thumb {
  background: #905d95;
  border: 2px solid #f1edf3;
  border-radius: 10px;
}
.ninja-tool-select-options {
  max-height: min(300px, 45dvh) !important;
  overflow-y: scroll;
  overscroll-behavior: contain;
}
/* Native scrollbar colours override WebKit's persistent custom track on macOS. */
@supports selector(::-webkit-scrollbar) {
  .ninja-tool-dropdown__body,
  .ninja-tool-select-options,
  .word-parts-options__body {
    scrollbar-color: auto;
  }
}
