import { StyleOption } from '../../../types';

export const scientificJournal: StyleOption = {
  id: 'scientific-journal',
  name: 'Scientific Journal',
  category: 'Academic',
  description: 'Precise design for scientific publications. Clear hierarchy optimized for data-heavy content and citations.',
  vibe: 'Scientific, Precise, Academic',
  googleFontsImport: 'https://fonts.googleapis.com/css2?family=Literata:wght@400;500;700&family=Fira+Sans:wght@400;500;600&display=swap',
  typography: {
    fonts: {
      heading: 'Literata',
      body: 'Literata',
      code: 'Fira Sans'
    },
    colors: {
      text: '262626',
      textSecondary: '4A4A4A',
      background: 'FFFFFF',
      accent: '0066CC',
      border: '0066CC',
      codeBg: 'F5F5F5',
      blockquoteBorder: '0066CC'
    }
  },
  elements: {
    h1: {
      font: 'heading',
      size: 18,
      color: '1A1A1A',
      bold: true,
      align: 'left',
      spacing: { before: 18, after: 10, line: 1.3 }
    },
    h2: {
      font: 'code',
      size: 12,
      color: '1A1A1A',
      bold: true,
      align: 'left',
      spacing: { before: 14, after: 6, line: 1.2 }
    },
    h3: {
      font: 'code',
      size: 11,
      color: '262626',
      bold: true,
      align: 'left',
      spacing: { before: 12, after: 6, line: 1.2 }
    },
    h4: {
      font: 'code',
      size: 10,
      color: '333333',
      bold: true,
      align: 'left',
      spacing: { before: 10, after: 5, line: 1.2 }
    },
    h5: {
      font: 'code',
      size: 10,
      color: '424242',
      bold: true,
      align: 'left',
      spacing: { before: 8, after: 4, line: 1.2 }
    },
    h6: {
      font: 'code',
      size: 9,
      color: '4A4A4A',
      bold: true,
      align: 'left',
      spacing: { before: 6, after: 3, line: 1.2 }
    },
    p: {
      font: 'body',
      size: 10,
      color: '262626',
      align: 'both',
      spacing: { before: 0, after: 7, line: 1.6 }
    },
    blockquote: {
      font: 'body',
      size: 9,
      color: '4A4A4A',
      spacing: { before: 8, after: 8, line: 1.4 },
      padding: 10,
      borderLeft: { color: '0066CC', width: 2, style: 'solid' }
    },
    code: {
      font: 'code',
      size: 9,
      color: '0066CC',
      background: 'F5F5F5'
    },
    pre: {
      font: 'code',
      size: 9,
      color: '0066CC',
      background: 'F5F5F5',
      spacing: { before: 12, after: 12, line: 1.4 },
      padding: 12
    },
    ul: {
      spacing: { before: 8, after: 8, line: 1.5 }
    },
    ol: {
      spacing: { before: 8, after: 8, line: 1.5 }
    },
    li: {
      font: 'body',
      size: 10,
      color: '262626',
      spacing: { before: 4, after: 4, line: 1.5 }
    },
    strong: {
      bold: true
    },
    em: {
      italic: true
    },
    a: {
      color: '0066CC',
      underline: true
    },
    table: {
      spacing: { before: 12, after: 12, line: 1.4 }
    },
    th: {
      font: 'heading',
      size: 10,
      color: '1A1A1A',
      bold: true,
      background: 'F5F5F5',
      spacing: { before: 6, after: 6, line: 1.4 }
    },
    td: {
      font: 'body',
      size: 10,
      color: '262626',
      spacing: { before: 6, after: 6, line: 1.4 }
    },
    hr: {
      border: { color: '0066CC', width: 1, style: 'single' },
      spacing: { before: 12, after: 12, line: 1 }
    },
    img: {
      align: 'center',
      spacing: { before: 12, after: 12, line: 1 }
    }
  }
};
