/**
 * PDF Theme Configuration
 *
 * Shared theme types and defaults for PDF document generation.
 * This file is browser-safe and can be imported in any environment.
 */

/**
 * PDF Theme Interface
 *
 * Defines the styling configuration for PDF documents.
 * Controls colors, typography, and spacing applied to all PDF components.
 */
export interface PDFTheme {
  colors: {
    background: string
    text: string
    textMuted: string
    textSubtle: string
    accent: string
    cardBg: string
    cardBorder: string
    cardAccentBg: string
    cardAccentBorder: string
    cardLightBg: string
    cardLightBorder: string
    textDark: string // Dark text for light backgrounds
  }
  typography: {
    fontFamily: string
    title: { fontSize: number; fontWeight: string }
    subtitle: { fontSize: number; fontWeight: string }
    body: { fontSize: number; lineHeight: number }
    caption: { fontSize: number }
    metric: { fontSize: number; fontWeight: string }
  }
  spacing: {
    page: number
    section: number
    card: number
  }
}

/**
 * Default PDF Theme
 *
 * Modern dark theme inspired by iOS/Apple design language.
 * Features elevated cards, vibrant accents, and refined typography.
 */
export const defaultTheme: PDFTheme = {
  colors: {
    background: '#0c0c0e',
    text: '#f5f5f7',
    textMuted: '#f5f5f7',
    textSubtle: '#f5f5f7',
    accent: '#0a84ff',
    cardBg: '#1c1c1e',
    cardBorder: '#38383a',
    cardAccentBg: '#0d1a26',
    cardAccentBorder: '#0a84ff',
    cardLightBg: '#f5f5f7',
    cardLightBorder: '#d1d1d6',
    textDark: '#1c1c1e'
  },
  typography: {
    fontFamily: 'Helvetica',
    title: { fontSize: 28, fontWeight: 'bold' },
    subtitle: { fontSize: 20, fontWeight: 'bold' },
    body: { fontSize: 11, lineHeight: 1.7 },
    caption: { fontSize: 9 },
    metric: { fontSize: 24, fontWeight: 'bold' }
  },
  spacing: {
    page: 48,
    section: 20,
    card: 12
  }
}
