/* Desktop: each workbench column owns its vertical gesture. Mobile resets to page scroll. */
html { height: 100%; }

.dashboard-body .workbench-sidebar,
.dashboard-body .workbench-main,
.dashboard-body .status-rail--terminal,
.dashboard-body .watchlist-overview__list,
.dashboard-body .provider-list,
.dashboard-body .health-stack,
.dashboard-body .alert-list,
.dashboard-body .upcoming-list {
  overscroll-behavior: contain;
}

@media (min-width: 981px) {
  body.dashboard-body { height: 100%; overflow: hidden; }
  .dashboard-body .page { height: auto; min-height: 0; overflow: visible; padding-bottom: 24px; }
  .dashboard-body .workbench-shell { height: auto; min-height: 0; align-items: stretch; }
  .dashboard-body .workbench-sidebar,
  .dashboard-body .workbench-main,
  .dashboard-body .status-rail--terminal {
    position: static;
    align-self: stretch;
    min-height: 0;
    height: calc(100dvh - 96px);
    max-height: calc(100dvh - 96px);
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
  }
  .dashboard-body .workbench-main {
    display: block;
    overflow-y: scroll;
  }
  .dashboard-body .watchlist-overview__list {
    max-height: none;
    overflow: visible;
  }
  .dashboard-body .workbench-sidebar,
  .dashboard-body .workbench-main,
  .dashboard-body .status-rail--terminal {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .dashboard-body .workbench-sidebar::-webkit-scrollbar,
  .dashboard-body .workbench-main::-webkit-scrollbar,
  .dashboard-body .status-rail--terminal::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
  }
}

@media (max-width: 980px) {
  body.dashboard-body { height: auto; overflow-x: hidden; overflow-y: auto; }
  .dashboard-body .page, .dashboard-body .workbench-shell { height: auto; min-height: 0; overflow: visible; }
  .dashboard-body .workbench-sidebar,
  .dashboard-body .workbench-main,
  .dashboard-body .status-rail--terminal,
  .dashboard-body .watchlist-overview__list {
    position: static;
    max-height: none;
    height: auto;
    overflow: visible;
    overscroll-behavior: auto;
    scrollbar-gutter: auto;
  }
  .dashboard-body .status-rail--terminal { display: block; }
  .dashboard-body .status-rail--terminal .rail-panel { position: static; }
}
