Activity UI
The uploader exposes a set of stable CSS class names you can use when building activity UIs. They automatically inherit the active theme, color scheme, and design tokens — including dark mode and custom CSS variables.
These classes are only effective inside the uploader’s DOM subtree.
Layout
Modal height
When an activity is shown in the modal, the dialog is sized to your content by default. Write CSS against your own activity element to opt into a different sizing.
Fill the modal (full modal height)
Use this when your activity needs the full available space (image editor, camera preview, scrollable grid). Declare two rules in your activity’s stylesheet:
The :has() selector scopes the full-height rule to dialogs that actually contain your element, so other activities are unaffected.
Self-sized (fixed or viewport-relative height)
Use this when you want a specific height regardless of content:
The dialog’s max-height still caps the visible size on smaller screens.
Content-sized (default)
Do nothing. Your activity element is a normal block/flex element, and the dialog wraps its natural height — suitable for short forms like a URL input.
Buttons
Built-in elements
You can also use the following custom elements directly in your activity markup:
For the Back button, use uploaderApi.historyBack() to navigate to the previous activity. For the Close button, call uploaderApi.setModalState(false).