Takeover
The full-bleed posture. Unlike Dialog and Drawer there is no panel — content fills the viewport and scrolls edge to edge, with the close affordance floating over it. Use it when the overlay is the destination rather than something shown alongside the page. Source: src/components/ds/ui/Takeover.tsx.
Scrims
The two scrims the overlay audit asked for, after finding seven hand-picked values. `standard` dims the page with the shared --color-scrim. `glass` dissolves it behind a heavy blur, for takeovers that should feel like a new surface rather than a layer over the old one.
Leading action
`leading` floats an action opposite the close button. The libraries overlay uses it for a mobile-only Back control, since on small screens the takeover replaces a menu the user was already inside.
Notes
What the takeover owns, and what it deliberately leaves to the caller.
- No panel and no header bar. TakeoverTitle / TakeoverDescription go wherever the content wants them — visible or sr-only.
- The content element is the scroll container, so a takeover never nests a second scrollbar.
- Clicking the content’s own empty space dismisses. It routes through the same close button rather than a second dismissal path that could drift from it.
- onInteractOutside is forwarded, for content that portals menus of its own and must not close when they are clicked.
- The surface fades rather than slides: nothing is arriving from an edge, the whole surface is being replaced.