# Plan: Replace Mobile Banner with Inline Overview Section ## Status Key - [ ] Not started - [~] In progress - [x] Complete --- ## Part 1: Create `MobileOverviewHeader.tsx` **Status:** [ ] Not started **File:** `src/components/MobileOverviewHeader.tsx` (NEW) ### Props ```tsx interface MobileOverviewHeaderProps { onSearchClick: () => void } ``` ### Imports needed ```tsx import { useState } from 'react' import { Download, Github, Linkedin, Search, Send } from 'lucide-react' import { CvmisLogo } from './CvmisLogo' import { PhoneCaptcha } from './PhoneCaptcha' import { ReferralFormModal } from './ReferralFormModal' import { patient } from '@/data/patient' import { tags } from '@/data/tags' import { getSidebarCopy } from '@/lib/profile-content' import type { Tag } from '@/types/pmr' ``` Note: `useIsMobileNav` is NOT needed inside this component — DashboardLayout already conditionally renders it only when `isMobileNav` is true. ### Component structure (top to bottom) **Outer container:** ```tsx
``` **1. Logo + Search row** (copy from MobileBottomNav drawer lines 273–297) - `
` - `` - Search button: full-width, `minHeight: 44px`, border `1px solid var(--border)`, `var(--radius-sm)`, `var(--surface)` bg. Calls `onSearchClick` prop. Shows `` icon + `sidebarCopy.searchLabel` text. No `setDrawerOpen` call (drawer no longer exists). **2. Patient info section** (copy from MobileBottomNav drawer lines 300–357) - `
` - Avatar row: 44px circle with gradient + "AC" + name + role title (lines 301–327) - Data rows grid: GPhC (mono), Education, Location, Registered as mapped array (lines 329–342) - Phone row with `` (lines 343–346) - Email row with mailto link (lines 347–356) **3. Tags section** (copy from MobileBottomNav drawer lines 360–369) - Section title: `sidebarCopy.tagsTitle` with same header style - Tag pills in flex-wrap container - Need local `TagPill` component — copy from MobileBottomNav lines 35–69 (identical to Sidebar's TagPill) **4. Action buttons** (replaces alerts section; button styles from MobilePatientBanner lines 228–323) - Container: `
` - **Download CV** — full-width `` link: - `href="/References/CV_v4.md"`, `target="_blank"`, `rel="noopener noreferrer"` - `aria-label="Download CV"` - Style: `minHeight: 40px`, flex center, `gap: 8px`, `border: 1px solid var(--accent-border)`, `background: var(--surface)`, `color: var(--accent)`, `borderRadius: var(--radius-sm)`, `fontSize: 13px`, `fontWeight: 600`, `letterSpacing: 0.03em`, `textDecoration: none` - Content: `` + "Download CV" - **Three icon-only buttons** in `
`: - **Contact**: `