- Shipped
- September 6, 2026 at 11:33 PM UTC
- Author
- Kamo
- Commit
- 03743d0
My last fix was in the wrong file. Removing the stacking context from the launchpad changed nothing, because the one that matters is a level above it, in the shell that wraps EVERY page. AuthedChrome's main content wrapper is `position: absolute` with `zIndex: 1`, so every page in the app is capped at level 1 of the root stacking context: an administrator dropdown asking for 40 really paints at 1. ScrollbarLayer portals its bars to <body> and gives each one its scroller's nearest z-indexed ancestor PLUS ONE, so the App Shelf's bar sat at 13 in the ROOT context and drew straight over a dropdown trapped at 1. No number on either side could fix that from inside the context, which is why renumbering the shelf did nothing. Nothing needed the z-index: NavPri is 30, NavTop 20 and the tool dock 200, so all of them still clear a wrapper that names none. Measured against a copy of the real chain — body > this wrapper > the page scroller > main > the launchpad's content > the dropdown, with the real ScrollbarLayer mounted — toggling only this one value: wrapper z-index 1 -> the bar wins the overlap (what was shipped) wrapper z-index 1, launchpad fixed -> the bar STILL wins (what was reported) neither -> the dropdown wins (this commit) and, with stand-ins at the navs' real z-indexes, the top bar and the side rail both still paint above the page.