/* Keep app panels at their scroll boundaries without elastic overscroll or chaining. */
html:has(> body.product-body),
body.product-body,
.product-body .phone {
  overscroll-behavior: none;
}

/* Target real scroll owners; overflow-hidden cards must still pass drags to their list. */
.product-body .phone :is(
  .route-panel,
  .r87-center-scroll,
  .sheet-body,
  .r87-poster-stage,
  .r87-order-sheet,
  .studio-landing-scroll,
  .studio-landing-sidebar,
  .picfans-gallery-panel,
  .picfans-control-body,
  .picfans-task-controls,
  .picfans-result-body,
  .picfans-workbench-list,
  .drama-player-sheet-body
),
.product-body dialog.material-picker > .material-library,
.product-body .route-panel textarea {
  overscroll-behavior-y: none;
}
