# Phone action bar

Kit v2: the page's one primary in thumb reach, sticky above the tab bar. Selecting rows swaps it to a selection bar ("3 selected" + bulk action).

- **Group:** Navigation and shell · **family:** `page-primitives` · **shadcn:** composed
- **Build:** Custom component.
- **In apps/admin today:** Not in apps/admin.
- **Client component:** yes. 

## Content rules

- Same label as the desktop primary.

## Do

- Keep it to two buttons at most.

## Don't

- Duplicate the primary in the page body.

## Accessibility

- **Keyboard:** —
- **ARIA:** Selection count in `aria-live="polite"`.
- **Focus:** Bar never covers the focused field (scroll padding = bar height).

## Tokens

`--tabbar-h` `--z-sticky` `--s-2` `--s-3` `--s-4` `--background` `--actbar-blur` `--border` `--control-h-m-lg` `--text-btn-lg` `--w-semibold` `--text-card` `--font-voice`

## Files

`action-bar.html` live specimen · `action-bar.css` kit rules · `action-bar.d.ts` props · full page: `docs/components/action-bar/` (phone: `m/`).
