> ## Documentation Index
> Fetch the complete documentation index at: https://docs.divorce.law/llms.txt
> Use this file to discover all available pages before exploring further.

# Activity & Notifications

> Real-time activity tracking, client presence monitoring, and configurable notifications for divorce law practices

## Overview

Victoria's **Activity & Notification System** keeps your firm informed about what's happening across all cases in real-time. Know instantly when clients log in, track their progress through the portal, receive alerts for important events, and maintain a complete activity timeline for every case.

<Note>
  **Version 1.0** includes real-time client presence tracking, in-app notifications with bell icon, dedicated Activity Center, and per-case activity timelines. Email notifications are configurable per firm.
</Note>

***

## Key Benefits

<CardGroup cols={2}>
  <Card title="Real-Time Client Visibility" icon="eye">
    See which clients are online and what they're working on at any moment
  </Card>

  <Card title="Never Miss Important Events" icon="bell">
    Instant notifications for document uploads, FA submissions, and client activity
  </Card>

  <Card title="Complete Activity Timeline" icon="clock-rotate-left">
    Every case maintains a detailed audit trail of all client and attorney actions
  </Card>

  <Card title="Configurable Alerts" icon="sliders">
    Firm-level control over email notifications - enable only what you need
  </Card>
</CardGroup>

### Why Activity Tracking Matters

| Scenario                      | Without Activity Tracking              | With Victoria Activity Tracking      |
| ----------------------------- | -------------------------------------- | ------------------------------------ |
| Client uploads financial docs | Discover days later during case review | Instant notification + badge alert   |
| Client completes FA draft     | Manually check portal periodically     | Real-time alert to review            |
| Client having difficulty      | Don't know until they call frustrated  | See "stuck" on same page for 20+ min |
| Opposing counsel deadline     | Track manually in calendar             | Auto-extracted + case activity log   |
| Client portal engagement      | No visibility into usage               | Full timeline of every action        |

***

## Getting Started

### For Firm Users

The Activity & Notification System is automatically enabled for all firm users. Here's how to access it:

<Steps>
  <Step title="Notification Bell">
    Look for the **bell icon** in the top navigation bar (right side, next to your profile).

    * Badge shows unread notification count
    * Click to see recent notifications
    * "View all activity" link opens Activity Center
  </Step>

  <Step title="Activity Center">
    Navigate to `/activity` or click "View all activity" from the notification dropdown.

    * **Active Clients Panel**: See who's online right now
    * **Notifications Tab**: Your personal notification inbox
    * **All Activity Tab**: Firm-wide activity feed across all cases
  </Step>

  <Step title="Case Activity Tab">
    Open any case workspace and click the **Activity** tab.

    * Client presence indicator (if currently online)
    * Complete timeline for that specific case
    * Filter by activity type
    * Real-time updates as events occur
  </Step>
</Steps>

### Notification Preferences (Firm Admin)

Firm administrators can configure email notifications:

1. Navigate to **Settings → Notifications** (coming soon)
2. Toggle email notifications globally on/off
3. Enable/disable specific notification types:
   * Client logins
   * Document uploads
   * Financial Affidavit submissions
   * Task completions
   * Client messages

<Tip>
  **Recommendation**: Start with email notifications off, then selectively enable based on firm workflow. Many firms prefer in-app notifications only to avoid inbox overload.
</Tip>

***

## Core Features

### Real-Time Client Presence

Victoria tracks when clients are actively using the portal and what they're doing.

<AccordionGroup>
  <Accordion title="Active Client Sessions" icon="users">
    **What You See:**

    * Client name
    * Current page (Dashboard, Documents, Financial Affidavit, etc.)
    * Current action (Viewing, Uploading, Completing, etc.)
    * Time since last activity

    **Where It Appears:**

    * Activity Center → Active Clients panel (green highlight)
    * Case Activity Tab → Top banner when client is online
    * Notification badge animation

    **How It Works:**

    * Client portal sends heartbeat every 30 seconds
    * Session considered "active" if heartbeat within 5 minutes
    * Automatic detection when client leaves or goes idle
  </Accordion>

  <Accordion title="Presence Status Examples" icon="signal">
    | Status                         | What Client is Doing              |
    | ------------------------------ | --------------------------------- |
    | Viewing Dashboard              | Browsing case overview            |
    | Viewing Documents              | Looking at uploaded files         |
    | Completing Financial Affidavit | Filling out FA form               |
    | Uploading Document             | Actively uploading files          |
    | Reviewing Tasks                | Checking their task list          |
    | Viewing Parenting Plan         | Working on custody details        |
    | Reading Messages               | Reviewing attorney communications |

    **Use Case**: If you see a client "stuck" on Financial Affidavit for 30+ minutes, consider reaching out to offer help.
  </Accordion>
</AccordionGroup>

### Notification Bell

The notification bell provides instant access to important alerts.

<AccordionGroup>
  <Accordion title="Notification Types" icon="list">
    | Type                 | Icon          | Priority | Description                   |
    | -------------------- | ------------- | -------- | ----------------------------- |
    | Client Login         | LogIn         | Low      | Client accessed the portal    |
    | Document Uploaded    | Upload        | Normal   | New document added to case    |
    | FA Submitted         | FileCheck     | High     | Financial Affidavit completed |
    | FA Approved          | CheckCircle   | Normal   | FA reviewed and approved      |
    | Task Completed       | CheckSquare   | Normal   | Client finished assigned task |
    | Message Sent         | MessageSquare | Normal   | New message from client       |
    | Disclosure Progress  | ListChecks    | Normal   | Discovery milestone reached   |
    | Onboarding Completed | UserCheck     | Normal   | New client finished setup     |
  </Accordion>

  <Accordion title="Notification Actions" icon="hand-pointer">
    **From the dropdown:**

    * **Click notification**: Mark as read + navigate to related case/page
    * **X button**: Dismiss notification (remove from list)
    * **Mark all read**: Clear unread count
    * **View all activity**: Open full Activity Center

    **Notification Lifecycle:**

    1. Created → Unread (blue highlight, counted in badge)
    2. Clicked/Viewed → Read (no highlight, removed from count)
    3. Dismissed → Removed from dropdown (still in database for audit)
  </Accordion>

  <Accordion title="Priority Levels" icon="gauge-high">
    Notifications are color-coded by priority:

    * **Urgent** (red dot): Requires immediate attention
    * **High** (orange dot): Important, review soon
    * **Normal** (blue dot): Standard notification
    * **Low** (gray): Informational only

    **Priority Examples:**

    * Urgent: Client message marked "Emergency"
    * High: Financial Affidavit submitted for review
    * Normal: Document uploaded, task completed
    * Low: Client login, routine activity
  </Accordion>
</AccordionGroup>

### Activity Center

The Activity Center (`/activity`) provides a comprehensive view of firm-wide activity.

<Tabs>
  <Tab title="Active Clients Panel">
    **Green-highlighted section showing all clients currently online:**

    * Animated green dot indicates live presence
    * Shows client name, current page, and activity
    * Click to navigate directly to their case
    * Updates every 30 seconds automatically

    **Example:**

    ```
    🟢 Sarah Johnson
       Viewing Financial Affidavit
       Active 2 minutes ago
       [Click to view case]
    ```
  </Tab>

  <Tab title="Notifications Tab">
    **Your personal notification inbox:**

    * All notifications sent to you
    * Filter by type (client logins, uploads, etc.)
    * Search by client name or content
    * Mark as read individually or in bulk
    * Dismiss to remove from list

    **Columns:**

    * Icon + Priority indicator
    * Title and message
    * Timestamp (relative: "2 hours ago")
    * Source (who triggered it)
  </Tab>

  <Tab title="All Activity Tab">
    **Firm-wide activity feed across all cases:**

    * Every logged event from all cases
    * Filter by activity type
    * Search by client name or description
    * Click to navigate to relevant case
    * Chronological order (newest first)

    **Includes:**

    * Client actions (logins, uploads, submissions)
    * Victoria AI actions (analysis, generation)
    * Attorney actions (approvals, assignments)
    * System events (reminders, deadlines)
  </Tab>
</Tabs>

### Case Activity Tab

Each case workspace includes a dedicated **Activity** tab showing the complete timeline.

<AccordionGroup>
  <Accordion title="Activity Timeline" icon="timeline">
    **Visual timeline of all case events:**

    * Vertical line connecting events
    * Icons representing activity types
    * Actor badges (Client, Attorney, Victoria, System)
    * Timestamps with full date/time
    * Descriptions of what happened

    **Timeline Entry Format:**

    ```
    [Icon] [Activity Type Badge] [Actor Badge]

    Description of the activity...

    Nov 15, 2024 2:34 PM    by Sarah Johnson
    ```
  </Accordion>

  <Accordion title="Actor Types" icon="user-group">
    | Actor    | Badge Color | Examples                        |
    | -------- | ----------- | ------------------------------- |
    | Client   | Green       | Uploaded document, submitted FA |
    | Attorney | Blue        | Approved FA, assigned task      |
    | Staff    | Purple      | Filed document, sent message    |
    | System   | Gray        | Deadline reminder, auto-archive |
    | Victoria | Indigo      | Generated document, analyzed FA |

    **Client Activity Highlight:**
    Activities performed by clients are specially marked with a green "Client Activity" label for easy identification.
  </Accordion>

  <Accordion title="Real-Time Updates" icon="rotate">
    **Supabase Realtime subscription:**

    * New activities appear instantly (no refresh needed)
    * Client presence updates automatically
    * Smooth animation when new items appear

    **How It Works:**

    1. Activity logged to database
    2. Postgres triggers realtime broadcast
    3. Frontend receives via WebSocket
    4. UI updates with animation
  </Accordion>
</AccordionGroup>

***

## Activity Types Reference

### Client-Triggered Activities

<AccordionGroup>
  <Accordion title="client_login" icon="right-to-bracket">
    **Triggered:** When client accesses the portal

    **Logged Details:**

    * Session start time
    * Initial page visited
    * Device/browser info

    **Notification:** Low priority (if enabled)

    **Use Case:** Track client engagement patterns, follow up with inactive clients
  </Accordion>

  <Accordion title="document_uploaded" icon="upload">
    **Triggered:** When client uploads a file to the case

    **Logged Details:**

    * Document name and type
    * File size
    * Upload location (which folder)

    **Notification:** Normal priority

    **Use Case:** Immediately review uploaded financials, discovery documents
  </Accordion>

  <Accordion title="fa_submitted" icon="file-signature">
    **Triggered:** When client completes and submits Financial Affidavit

    **Logged Details:**

    * Submission timestamp
    * FA version/draft number
    * Completion percentage

    **Notification:** High priority

    **Use Case:** Review and approve FA before court deadline
  </Accordion>

  <Accordion title="task_completed" icon="circle-check">
    **Triggered:** When client marks an assigned task as done

    **Logged Details:**

    * Task title
    * Time to complete (from assignment)
    * Any notes added

    **Notification:** Normal priority

    **Use Case:** Track client progress, assign next steps
  </Accordion>

  <Accordion title="message_sent" icon="comment">
    **Triggered:** When client sends a message to attorney

    **Logged Details:**

    * Message preview
    * Thread context
    * Urgency flag (if set)

    **Notification:** Normal priority (High if marked urgent)

    **Use Case:** Respond to client inquiries promptly
  </Accordion>
</AccordionGroup>

### System-Generated Activities

<AccordionGroup>
  <Accordion title="case_created" icon="folder-plus">
    **Triggered:** When a new case is created

    **Logged Details:**

    * Case name and type
    * Assigned attorney
    * Jurisdiction
  </Accordion>

  <Accordion title="disclosure_progress" icon="bars-progress">
    **Triggered:** When discovery milestones are reached

    **Logged Details:**

    * Milestone name
    * Completion percentage
    * Items remaining
  </Accordion>

  <Accordion title="onboarding_completed" icon="user-check">
    **Triggered:** When new client finishes initial setup

    **Logged Details:**

    * Onboarding duration
    * Sections completed
    * Initial documents uploaded
  </Accordion>
</AccordionGroup>

***

## Email Notifications

### Configuration Options

Email notifications are controlled at the firm level by administrators.

<Warning>
  **Email notifications are optional.** Many firms prefer in-app only notifications to reduce inbox clutter. Enable selectively based on your workflow.
</Warning>

**Available Email Toggles:**

| Setting                      | Default | Description                               |
| ---------------------------- | ------- | ----------------------------------------- |
| `email_enabled`              | Off     | Master toggle for all email notifications |
| `email_client_login`         | Off     | Notify when clients log in                |
| `email_document_upload`      | On      | Notify on new document uploads            |
| `email_fa_submitted`         | On      | Notify when FA is submitted               |
| `email_fa_approved`          | Off     | Notify client when FA approved            |
| `email_task_completed`       | Off     | Notify when tasks are done                |
| `email_client_message`       | On      | Notify on new client messages             |
| `email_onboarding_completed` | Off     | Notify when client completes onboarding   |

### Email Format

When enabled, emails are sent via Resend with professional formatting:

```
From: Victoria AI <support@updates.divorce.law>
Subject: [HIGH] Financial Affidavit Submitted - Johnson v. Johnson

────────────────────────────────────────

Financial Affidavit Submitted

Sarah Johnson completed and submitted their Financial Affidavit
for review. This requires attorney review before the court deadline.

[View Details Button]

────────────────────────────────────────

This notification was sent from your Divorce.law portal
resolute.divorce.law
```

***

## Client Portal Integration

### How Client Presence Works

The client portal automatically tracks presence without any action needed from clients.

<Steps>
  <Step title="Login Detected">
    When a client logs into the portal, a new session is created and the `client_login` activity is logged.
  </Step>

  <Step title="Heartbeat Starts">
    The portal sends a "heartbeat" signal every 30 seconds containing:

    * Current page (Dashboard, Documents, FA, etc.)
    * Current action (Viewing, Uploading, etc.)
    * Client name
  </Step>

  <Step title="Page Changes Tracked">
    When client navigates to a different page, an immediate heartbeat is sent with the new location.
  </Step>

  <Step title="Session Ends">
    When client closes browser or goes idle for 5+ minutes:

    * Session marked as ended
    * No longer shown in "Active Clients"
    * Total session duration logged
  </Step>
</Steps>

### Privacy Considerations

<Note>
  **Client Privacy:** Presence tracking is designed for firm visibility only. Clients do not see when attorneys are viewing their case, and presence data is not shared with opposing parties.
</Note>

* Presence data is firm-isolated (multi-tenant RLS)
* Clients cannot see their own presence history
* No location tracking beyond page visited
* Data retained for audit purposes per firm retention policy

***

## Technical Architecture

### Database Schema

<Tabs>
  <Tab title="notifications">
    **Stores all notifications for users:**

    ```sql theme={null}
    notifications (
      id UUID PRIMARY KEY,
      firm_id UUID NOT NULL,
      user_id UUID NOT NULL,
      case_id UUID,
      title TEXT NOT NULL,
      message TEXT NOT NULL,
      notification_type TEXT NOT NULL,
      priority TEXT DEFAULT 'normal',
      source_type TEXT,
      source_user_id TEXT,
      source_name TEXT,
      metadata JSONB,
      action_url TEXT,
      icon TEXT,
      read_at TIMESTAMPTZ,
      dismissed_at TIMESTAMPTZ,
      email_sent_at TIMESTAMPTZ,
      created_at TIMESTAMPTZ DEFAULT now()
    )
    ```

    **Indexes:**

    * `idx_notifications_user_unread` - Fast lookup of unread
    * `idx_notifications_user_created` - Chronological feed
    * `idx_notifications_case` - Case-specific notifications
    * `idx_notifications_firm_created` - Firm-wide feed
  </Tab>

  <Tab title="client_sessions">
    **Tracks active client presence:**

    ```sql theme={null}
    client_sessions (
      id UUID PRIMARY KEY,
      client_user_id TEXT NOT NULL,
      case_id UUID NOT NULL,
      firm_id UUID NOT NULL,
      started_at TIMESTAMPTZ,
      last_activity_at TIMESTAMPTZ,
      ended_at TIMESTAMPTZ,
      current_page TEXT,
      current_action TEXT,
      user_agent TEXT,
      ip_address INET,
      client_name TEXT
    )
    ```

    **Indexes:**

    * `idx_client_sessions_active` - Active sessions query
    * `idx_client_sessions_client` - Per-client history
  </Tab>

  <Tab title="notification_preferences">
    **Per-firm email configuration:**

    ```sql theme={null}
    notification_preferences (
      id UUID PRIMARY KEY,
      firm_id UUID UNIQUE NOT NULL,
      email_enabled BOOLEAN DEFAULT false,
      email_client_login BOOLEAN DEFAULT false,
      email_document_upload BOOLEAN DEFAULT true,
      email_fa_submitted BOOLEAN DEFAULT true,
      email_fa_approved BOOLEAN DEFAULT false,
      email_task_completed BOOLEAN DEFAULT false,
      email_task_assigned BOOLEAN DEFAULT true,
      email_disclosure_progress BOOLEAN DEFAULT false,
      email_client_message BOOLEAN DEFAULT true,
      email_onboarding_completed BOOLEAN DEFAULT false,
      email_digest_enabled BOOLEAN DEFAULT false,
      email_digest_frequency TEXT DEFAULT 'daily',
      created_at TIMESTAMPTZ,
      updated_at TIMESTAMPTZ
    )
    ```
  </Tab>

  <Tab title="case_activities">
    **Enhanced with activity tracking fields:**

    ```sql theme={null}
    -- New columns added to existing table:
    actor_type TEXT,        -- 'client', 'attorney', 'staff', 'system', 'victoria'
    actor_name TEXT,        -- Human-readable name
    icon TEXT,              -- Lucide icon name
    is_client_visible BOOL  -- Show in client portal?
    ```
  </Tab>
</Tabs>

### Row Level Security

All activity data is protected by RLS policies:

<AccordionGroup>
  <Accordion title="notifications RLS" icon="lock">
    ```sql theme={null}
    -- Users can only view their own notifications
    CREATE POLICY "Users can view their own notifications"
    ON notifications FOR SELECT
    USING (
      user_id = (
        SELECT id FROM user_profiles
        WHERE clerk_user_id = auth.jwt() ->> 'sub'
      )
    );

    -- Users can update (mark read/dismiss) their own
    CREATE POLICY "Users can update their own notifications"
    ON notifications FOR UPDATE
    USING (
      user_id = (
        SELECT id FROM user_profiles
        WHERE clerk_user_id = auth.jwt() ->> 'sub'
      )
    );
    ```
  </Accordion>

  <Accordion title="client_sessions RLS" icon="lock">
    ```sql theme={null}
    -- Firm members can view sessions for their firm
    CREATE POLICY "Firm members can view sessions"
    ON client_sessions FOR SELECT
    USING (
      firm_id IN (
        SELECT firm_id FROM user_profiles
        WHERE clerk_user_id = auth.jwt() ->> 'sub'
      )
    );

    -- Clients can manage their own sessions
    CREATE POLICY "Clients can manage own sessions"
    ON client_sessions FOR ALL
    USING (client_user_id = auth.jwt() ->> 'sub');
    ```
  </Accordion>
</AccordionGroup>

### Real-Time Subscriptions

Victoria uses Supabase Realtime for instant updates:

```typescript theme={null}
// Frontend subscription example
supabase
  .channel('notifications-changes')
  .on(
    'postgres_changes',
    {
      event: 'INSERT',
      schema: 'public',
      table: 'notifications',
      filter: `user_id=eq.${userId}`,
    },
    (payload) => {
      // New notification received instantly
      addNotification(payload.new);
      incrementUnreadCount();
    }
  )
  .subscribe();
```

***

## Best Practices

<AccordionGroup>
  <Accordion title="Client Engagement" icon="handshake">
    **Use presence tracking proactively:**

    1. **Follow up with stuck clients** - If you see someone on the FA page for 30+ minutes, send a quick message offering help

    2. **Time your communications** - Send important messages when you see the client is online for immediate visibility

    3. **Track engagement patterns** - Clients who haven't logged in for 7+ days may need a check-in call

    4. **Celebrate completions** - When you see a client complete their FA, send an encouraging message
  </Accordion>

  <Accordion title="Notification Management" icon="inbox">
    **Keep notifications actionable:**

    1. **Process daily** - Don't let notifications pile up; review and dismiss daily

    2. **Use filters** - Focus on high-priority items (FA submissions, urgent messages)

    3. **Mark as read** - Click notifications you've handled to keep the count accurate

    4. **Dismiss old items** - Remove notifications you've already addressed
  </Accordion>

  <Accordion title="Email Configuration" icon="envelope">
    **Configure emails strategically:**

    1. **Start with in-app only** - Enable emails selectively based on need

    2. **Essential emails** - FA submissions and urgent client messages are good candidates

    3. **Avoid overload** - Don't enable client login emails unless you have very few clients

    4. **Daily digest option** - Consider enabling digest mode for non-urgent activity (coming soon)
  </Accordion>

  <Accordion title="Case Timeline Review" icon="clock-rotate-left">
    **Leverage case activity for better outcomes:**

    1. **Pre-meeting review** - Check recent activity before client calls

    2. **Document client participation** - Activity timeline proves client engagement for fee disputes

    3. **Identify bottlenecks** - See where cases are stalling based on activity gaps

    4. **Audit trail** - Complete record for malpractice defense if ever needed
  </Accordion>
</AccordionGroup>

***

## Troubleshooting

<AccordionGroup>
  <Accordion title="Notifications Not Appearing" icon="bell-slash">
    **Possible causes:**

    1. **Not logged in** - Notifications require authentication
    2. **Wrong user** - Notifications are user-specific; check you're logged into correct account
    3. **All dismissed** - You may have dismissed all notifications
    4. **No new activity** - Check Activity Center for overall firm activity

    **Fix:**

    * Click notification bell to refresh
    * Check Activity Center → All Activity tab
    * Contact support if issue persists
  </Accordion>

  <Accordion title="Client Presence Not Showing" icon="user-slash">
    **Possible causes:**

    1. **Client not active** - Sessions expire after 5 minutes of inactivity
    2. **Heartbeat failure** - Network issues on client's device
    3. **Different firm** - Multi-tenant isolation (correct behavior)

    **How to verify:**

    * Check Activity Center → Active Clients panel
    * Review Case Activity tab for recent "client\_login" events
    * Confirm client is actively using the portal
  </Accordion>

  <Accordion title="Email Notifications Not Sending" icon="envelope-open">
    **Possible causes:**

    1. **Email disabled** - Check notification preferences
    2. **Specific type disabled** - Each type has its own toggle
    3. **Spam filter** - Check client's spam folder
    4. **Invalid email** - Verify email address in user profile

    **Fix:**

    * Settings → Notifications → Enable email\_enabled
    * Enable specific notification type toggle
    * Check Resend dashboard for delivery status
  </Accordion>

  <Accordion title="Activity Tab Empty" icon="rectangle-list">
    **Possible causes:**

    1. **New case** - No activity logged yet
    2. **RLS restriction** - May not have access to this case
    3. **Loading issue** - Click refresh button

    **Fix:**

    * Perform an action on the case (add note, upload doc)
    * Check you have access to this case
    * Click the refresh icon in the Activity tab
  </Accordion>
</AccordionGroup>

***

## Security & Compliance

### Data Protection

<Note>
  All activity data is protected by Row Level Security (RLS) and multi-tenant isolation. Activity from one firm is never visible to another firm.
</Note>

**Security Measures:**

* **RLS Policies**: Database-level access control
* **Firm Isolation**: Activity data partitioned by firm\_id
* **JWT Authentication**: All API calls require valid Clerk token
* **Audit Trail**: Complete history preserved for compliance
* **Encryption**: Data encrypted at rest and in transit

### Retention & Compliance

| Data Type       | Retention               | Purpose                          |
| --------------- | ----------------------- | -------------------------------- |
| Notifications   | 90 days                 | User experience                  |
| Client Sessions | 1 year                  | Engagement analytics             |
| Case Activities | Case lifetime + 7 years | Audit trail, malpractice defense |

**Compliance Alignment:**

* **Bar Ethics**: Complete documentation of client interactions
* **SOC 2**: Audit logging requirements satisfied
* **GDPR**: Activity data included in data export requests

***

## FAQs

<AccordionGroup>
  <Accordion title="Can clients see their own activity history?" icon="eye">
    **No.** Activity tracking is designed for firm visibility only. Clients can see their own uploaded documents and submitted forms, but not the detailed activity timeline or presence tracking data.
  </Accordion>

  <Accordion title="How long does presence stay 'active'?" icon="clock">
    **5 minutes** from the last heartbeat. If a client closes their browser or goes idle, they'll be removed from the "Active Clients" list after 5 minutes.
  </Accordion>

  <Accordion title="Can I turn off all notifications?" icon="power-off">
    **Yes.** You can dismiss all notifications and they won't return. However, new activities will continue to generate new notifications. To truly disable, contact support about disabling notifications for your account.
  </Accordion>

  <Accordion title="Do notifications work on mobile?" icon="mobile">
    **Yes.** The notification bell and Activity Center work on mobile browsers. Native push notifications are planned for a future release.
  </Accordion>

  <Accordion title="Can I get notifications for specific cases only?" icon="filter">
    **Not yet.** Currently, notifications are generated for all cases you have access to. Case-specific notification preferences are on the roadmap.
  </Accordion>

  <Accordion title="What happens to dismissed notifications?" icon="trash">
    **They're soft-deleted.** Dismissed notifications are marked with a `dismissed_at` timestamp and hidden from the UI, but retained in the database for audit purposes.
  </Accordion>

  <Accordion title="Can opposing counsel see my client's activity?" icon="shield">
    **Absolutely not.** Activity data is strictly isolated by firm. There is no way for one firm to see another firm's activity, even if they share a case.
  </Accordion>
</AccordionGroup>

***

## Roadmap

**Coming Soon:**

* **Notification Preferences UI** - Self-service configuration in Settings
* **Daily/Weekly Email Digests** - Summary emails instead of individual alerts
* **Case-Specific Subscriptions** - Watch/unwatch individual cases
* **Mobile Push Notifications** - Native alerts on iOS/Android
* **Activity Analytics** - Client engagement reports and insights
* **Custom Alert Rules** - Create your own notification triggers
* **Slack/Teams Integration** - Forward notifications to team chat

***

## Support

Need help with Activity & Notifications? We're here:

* **Email:** [support@divorce.law](mailto:support@divorce.law)
* **Live Chat:** Click support icon in bottom right
* **Office Hours:** Monday-Friday, 9am-5pm PT
* **Response Time:** Less than 2 hours during business hours

**Common Requests:**

* Configure email notification preferences
* Troubleshoot missing notifications
* Export activity data for compliance
* Custom notification rules setup
