## 1. Core component

- [x] 1.1 Create `src/components/common/CapsuleSafeArea.vue` to compute and expose capsule safe width.
- [x] 1.2 Modify `src/components/common/TopBar.vue` to wrap the right slot with `CapsuleSafeArea`.

## 2. Page header fixes

- [x] 2.1 Update `src/components/home/DispatchHome.vue`, `SalesHome.vue`, `ConstructionHome.vue` to place the notification bell inside `TopBar` right slot.
- [x] 2.2 Update `src/components/task/TaskListView.vue` to place the add/publish button inside `TopBar` right slot.
- [x] 2.3 Update `src/components/dispatch/ScheduleView.vue` to place "今天" and "新增排班" buttons inside `TopBar` right slot.

## 3. Validation

- [x] 3.1 Run `npm run type-check` and fix any TypeScript errors.
- [x] 3.2 Run `npm run build:mp-weixin` and confirm the build succeeds.
- [x] 3.3 Commit each completed task with a clear message.
