import type { ComponentType } from 'react'; import { cn } from '@/lib/utils'; const DOT_TONES: Record = { green: 'bg-emerald-500', amber: 'bg-amber-500', red: 'bg-rose-500', gray: 'bg-muted-foreground/40', }; export interface DataNavSection { id: string; label: string; description?: string; icon?: ComponentType<{ className?: string }>; dot?: string; badge?: number | null; } interface DataNavProps { sections: DataNavSection[]; active: string; onSelect: (id: string) => void; } /** * Goal-oriented navigation for the Data page. Desktop (≥ lg): a sticky vertical * list. Mobile: a horizontally-scrollable segmented control. One