/** @type {import('tailwindcss').Config} */
export default {
  content: [
    './index.html',
    './src/**/*.{js,ts,jsx,tsx}',
  ],
  theme: {
    extend: {},
  },
  plugins: [],
  safelist: [
    // Colors
    {
      pattern: /^(bg|text|border|hover:bg|hover:text)-(blue|gray|green|red|purple|teal|orange|indigo)-(50|100|200|300|400|500|600|700|800|900)/,
    },
    // Spacing
    {
      pattern: /^(p|px|py|m|mx|my|mt|mb|ml|mr)-[0-9]+/,
    },
    // Sizing
    {
      pattern: /^(w|h)-[0-9]+/,
    },
    // Layout
    {
      pattern: /^(min-h|max-w|aspect)-/,
    },
    // Grid
    {
      pattern: /^(grid-cols|gap)-/,
    },
    // Flexbox
    {
      pattern: /^(flex|items|justify|space|rounded|shadow)/,
    },
    // Transitions
    'transform',
    'transition-colors',
    'transition-transform',
    'duration-300',
    'hover:scale-105',
    // Interactivity
    'cursor-pointer',
    'cursor-not-allowed',
    'disabled:opacity-50',
    'disabled:hover:text-gray-600',
    // Typography
    'font-semibold',
    'font-bold',
    'text-center',
    'text-left',
    // Position
    'relative',
    'absolute',
    'fixed',
    'inset-0',
    // Display
    'object-cover',
    'overflow-hidden',
    'drop-shadow-lg',
    // Animation
    'animate-spin',
    // Focus
    'focus:ring',
    'focus:ring-blue-500',
    'focus:border-blue-500',
    'focus:ring-opacity-50',
    'focus:outline-none',
    // Forms
    'form-input',
    'form-select',
    'form-textarea'
  ]
};