Choose the surface from its interaction policy.
| Need | Use | Primary contract |
|---|---|---|
| Optional information where it appears | Disclosure | Native details stays in document flow. |
| A short description of an existing control | Tooltip | The anchor receives focus; the description is not interactive. |
| A supporting panel or interactive preview | Popover or Hovercard | Visibility, dismissal, and focus transfer are explicit. |
| A task that must be resolved or cancelled | Dialog | Native lifecycle, close request, and accepted action are distinct. |
The Dialog archive confirmation is the maintained worked example. It shows how dismissing a dialog differs from completing the action inside it. Consult NativeDialog, NativePopover, or NativeDetails only when application-owned markup needs their low-level state bridges.