'use client'; import { useEffect, useRef, type ReactNode } from 'react'; import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; import { Badge } from '@/components/ui/badge'; export interface ResponsiveTab { id: string; label: string; content: ReactNode; badge?: string | number; } interface ResponsiveTabsProps { tabs: ResponsiveTab[]; value: string; onValueChange: (value: string) => void; } /** * Tab strip that scrolls horizontally on narrow viewports. The active tab is * automatically scrolled into view so users can tell at a glance that more * tabs exist beyond the visible edge. * * Previously this collapsed to a