/* V872 · macOS fallback for OS-style windows.
   macOS may hide native overlay scrollbars regardless of ::-webkit-scrollbar
   styling.  A small fixed rail is therefore painted by JS only on macOS. */
.app-window-mac-scrollbar {
  position: fixed;
  display: none;
  width: 10px;
  min-height: 36px;
  border-radius: 999px;
  background: rgba(236, 239, 243, .96);
  box-shadow: inset 0 0 0 1px rgba(125, 136, 149, .12);
  pointer-events: auto;
  user-select: none;
  touch-action: none;
  z-index: 2147483000;
}
.app-window-mac-scrollbar.is-visible { display: block; }
.app-window-mac-scrollbar__thumb {
  position: absolute;
  left: 1px;
  top: 0;
  width: 8px;
  min-height: 30px;
  border-radius: 999px;
  background: rgba(126, 137, 150, .82);
  box-shadow: 0 1px 2px rgba(20, 28, 38, .12);
  cursor: grab;
  transition: background-color .14s ease, opacity .14s ease;
}
.app-window-mac-scrollbar__thumb:hover { background: rgba(101, 113, 127, .92); }
.app-window-mac-scrollbar__thumb.is-dragging { cursor: grabbing; background: rgba(87, 98, 112, .98); }
html[data-app-theme="dark"] .app-window-mac-scrollbar {
  background: rgba(34, 43, 53, .95);
  box-shadow: inset 0 0 0 1px rgba(177, 188, 201, .10);
}
html[data-app-theme="dark"] .app-window-mac-scrollbar__thumb { background: rgba(112, 126, 141, .88); }

@media (max-width: 780px), (pointer: coarse) {
  .app-window-mac-scrollbar { display: none !important; }
}
