The notifications panel currently loads all notifications for a user in a single API request, which for power users can be several hundred records. This is causing slow load times and excessive memory usage on the frontend. We should implement cursor-based pagination, loading 20 notifications at a time with a "Load more" button. The backend endpoint will also need rate limiting and caching headers to prevent repeated expensive queries.