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

export const botanicalTextbook: StyleOption = {
  id: 'botanical-textbook',
  name: 'Botanical Textbook',
  category: 'Scientific',
  description: 'Vintage science textbook aesthetic. Academic yet organic, like a 19th-century flora guide.',
  vibe: 'Vintage, Scientific, Organic',
  googleFontsImport: 'https://fonts.googleapis.com/css2?family=Alice&family=Gentium+Book+Basic:wght@400;700&display=swap',
  typography: {
    fonts: {
      heading: 'Alice',
      body: 'Gentium Book Basic',
      code: 'Gentium Book Basic'
    },
    colors: {
      text: '1B1B1B',
      textSecondary: '33691E',
      background: 'FFFFFF',
      accent: '827717',
      border: '827717',
      codeBg: 'F9FBE7',
      blockquoteBorder: '827717'
    }
  },
  elements: {
    h1: {
      font: 'heading',
      size: 28,
      color: '33691E',
      bold: false,
      align: 'left',
      spacing: { before: 20, after: 10, line: 1.2 },
      border: { color: '827717', width: 2, style: 'single' }
    },
    h2: {
      font: 'body',
      size: 14,
      color: '558B2F',
      bold: true,
      italic: true,
      align: 'left',
      spacing: { before: 15, after: 7.5, line: 1.2 }
    },
    h3: {
      font: 'body',
      size: 13,
      color: '558B2F',
      bold: true,
      align: 'left',
      spacing: { before: 12, after: 6, line: 1.2 }
    },
    h4: {
      font: 'body',
      size: 12,
      color: '689F38',
      bold: true,
      align: 'left',
      spacing: { before: 10, after: 5, line: 1.2 }
    },
    h5: {
      font: 'body',
      size: 11,
      color: '689F38',
      bold: true,
      italic: true,
      align: 'left',
      spacing: { before: 8, after: 4, line: 1.2 }
    },
    h6: {
      font: 'body',
      size: 11,
      color: '7CB342',
      bold: true,
      align: 'left',
      spacing: { before: 6, after: 3, line: 1.2 }
    },
    p: {
      font: 'body',
      size: 11,
      color: '1B1B1B',
      align: 'both',
      spacing: { before: 0, after: 8, line: 1.7 }
    },
    blockquote: {
      font: 'body',
      size: 10,
      color: '33691E',
      spacing: { before: 10, after: 10, line: 1.5 },
      padding: 16,
      background: 'F9FBE7',
      borderLeft: { color: '827717', width: 4, style: 'solid' }
    },
    code: {
      font: 'code',
      size: 10,
      color: '33691E',
      background: 'F9FBE7'
    },
    pre: {
      font: 'code',
      size: 10,
      color: '33691E',
      background: 'F9FBE7',
      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: 11,
      color: '1B1B1B',
      spacing: { before: 4, after: 4, line: 1.5 }
    },
    strong: {
      bold: true
    },
    em: {
      italic: true
    },
    a: {
      color: '558B2F',
      underline: true
    },
    table: {
      spacing: { before: 12, after: 12, line: 1.4 }
    },
    th: {
      font: 'heading',
      size: 11,
      color: '33691E',
      bold: true,
      background: 'F0F4C3',
      spacing: { before: 6, after: 6, line: 1.4 }
    },
    td: {
      font: 'body',
      size: 11,
      color: '1B1B1B',
      spacing: { before: 6, after: 6, line: 1.4 }
    },
    hr: {
      border: { color: '827717', width: 1, style: 'single' },
      spacing: { before: 12, after: 12, line: 1 }
    },
    img: {
      align: 'center',
      spacing: { before: 12, after: 12, line: 1 }
    }
  }
};
