import { Button, Paper, Stack, Text } from '@mantine/core'; import type { Icon } from '@tabler/icons-react'; import type { ReactNode } from 'react'; interface EmptyStateProps { /** Kept for API compatibility; the illustration is used as the primary visual. */ icon?: Icon; title: string; description?: string; action?: { label: string; onClick: () => void; icon?: ReactNode }; } export function EmptyState({ title, description, action }: EmptyStateProps) { return ( {title} {description && ( {description} )} {action && ( )} ); } /** Lightweight maritime illustration: a document floating on stylized waves. */ function EmptyIllustration() { const primary = 'var(--mantine-color-emaPrimary-6)'; const primaryLight = 'var(--mantine-color-emaPrimary-2)'; const teal = 'var(--mantine-color-emaTeal-5)'; const surface = 'var(--mantine-color-body)'; return ( {/* document */} {/* waves */} ); }