import type { Config } from 'tailwindcss';

const config: Config = {
  content: [
    "./templates/**/*.{templ,html}",
    "./web/static/**/*.{html,js}"
  ],
  safelist: [
    'theme-tokyo-night',
    'theme-dracula',
    'theme-nord',
    'theme-solarized-dark',
    'theme-monokai',
    'theme-one-dark-pro',
    'theme-material-dark',
    'theme-catppuccin-mocha',
    'theme-catppuccin-macchiato',
    'theme-catppuccin-frappe',
    'theme-catppuccin-latte',
    'theme-wood-light',
    'theme-wood-dark',
    'theme-wood-mahogany',
  ],
  theme: {
    extend: {
      colors: {
        primary: {
          DEFAULT: '#7aa2f7',
          50: '#f0f9ff',
          100: '#e0f2fe',
          200: '#bae6fd',
          300: '#7dd3fc',
          400: '#38bdf8',
          500: '#0ea5e9',
          600: '#0284c7',
          700: '#0369a1',
          800: '#075985',
          900: '#0c4a6e',
        },
        'bg-primary': 'var(--bg-primary)',
        'bg-secondary': 'var(--bg-secondary)',
        'text-primary': 'var(--text-primary)',
        'text-secondary': 'var(--text-secondary)',
        'accent': 'var(--accent)',
        'border': 'var(--border)',
      },
      typography: ({ theme }) => ({
        invert: {
          css: {
            '--tw-prose-pre-bg': 'var(--bg-secondary)',
            code: {
              backgroundColor: 'var(--bg-primary)',
              color: 'var(--text-primary)',
              fontWeight: '400',
            },
            'code::before': {
              content: '""',
            },
            'code::after': {
              content: '""',
            },
            'pre code': {
              backgroundColor: 'transparent',
              color: 'inherit',
            },
            pre: {
              backgroundColor: 'var(--bg-secondary)',
              color: 'var(--text-primary)',
            },
          },
        },
      }),
    }
  },
  plugins: [
    require('@tailwindcss/forms'),
    require('@tailwindcss/typography'),
  ],
};

export default config;
