## Context
React admin dashboard (Vite), /src/pages/Dashboard.tsx. Renders 6 widgets; the Orders table pulls the full history on mount. LCP ~4s on a mid‑tier laptop.
## Task
Cut Dashboard time‑to‑interactive to under 1.5s.
## Constraints
No new dependencies. Keep the existing component API. Don’t touch the design.
## Done when
- LCP < 1.5s on the reference profile
- Orders table paginates (25/page) instead of loading all rows
- No regression in the other 5 widgets
## Out of scope
Backend/API changes. Redesign. Caching layer. Auth.
## Pointers
Mirror the pagination in /src/pages/Users.tsx. Profiler: /docs/perf.md.