import React from 'react'; import { YStack, XStack } from '@tamagui/stacks'; import { SizableText as Text } from '@tamagui/text'; import { Pressable } from '@tamagui/react-native-web-lite'; import { useTranslation } from 'react-i18next'; import { useTheme } from '@tamagui/core'; type SheetProps = { open: boolean; title: string; onClose: () => void; children: React.ReactNode; footer?: React.ReactNode; /** Optional bottom offset so content sits above the bottom nav/safe-area. */ bottomOffsetPx?: number; }; export function MobileSheet({ open, title, onClose, children, footer, bottomOffsetPx = 88 }: SheetProps) { const { t } = useTranslation('mobile'); const theme = useTheme(); const surface = String(theme.surface?.val ?? '#111827'); const text = String(theme.color12?.val ?? theme.color?.val ?? '#f8fafc'); const muted = String(theme.gray11?.val ?? theme.gray?.val ?? '#cbd5e1'); const overlay = String(theme.gray12?.val ?? 'rgba(0,0,0,0.6)'); if (!open) return null; return (