/* Keep one explicit, keyboard-accessible scroll viewport for the whole portal. */
html,
body {
  width: 100%;
  height: 100%;
  min-height: 0;
  margin: 0;
  overflow: hidden;
}

#root {
  width: 100%;
  height: 100%;
  height: 100dvh;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: scroll;
  overscroll-behavior-y: auto;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

#root::-webkit-scrollbar {
  width: 12px;
}

#root::-webkit-scrollbar-track {
  background: #f2ecec;
}

#root::-webkit-scrollbar-thumb {
  background: #ad7c84;
  border: 3px solid #f2ecec;
  border-radius: 12px;
  min-height: 44px;
}

#root::-webkit-scrollbar-thumb:hover {
  background: #9b3545;
}

#root:focus-visible {
  outline: 2px solid #b82f3a;
  outline-offset: -2px;
}
