/**
 * OPTIONS DE COULEURS MODERNES - PAS DE DÉGRADÉS
 * =================================================
 *
 * Alternatives au bleu traditionnel pour un design contemporain
 */

// =============================================================================
// OPTION 1: GRIS-BLEU (SLATE) - RECOMMANDÉE ✅
// =============================================================================
/**
 * Gris-bleu moderne et professionnel
 * Inspiré par Linear, Vercel, GitHub
 * Très élégant, discret et apaisant pour les yeux
 */
export const SLATE_THEME = {
  name: 'Gris-Bleu (Slate)',
  description: 'Moderne, professionnel et apaisant - comme Linear/Vercel',
  
  light: {
    // Backgrounds
    background: 'oklch(0.985 0.003 230)',      // Blanc grisâtre très léger
    card: 'oklch(1 0 0)',                        // Blanc pur
    sidebar: 'oklch(0.97 0.004 230)',           // Gris-bleu très pâle
    input: 'oklch(0.98 0.003 230)',             // Gris-bleu pâle

    // Textes
    foreground: 'oklch(0.2 0.02 230)',          // Gris-bleu foncé
    'foreground-secondary': 'oklch(0.45 0.015 230)', // Gris-bleu moyen
    'foreground-muted': 'oklch(0.6 0.01 230)',       // Gris-bleu clair

    // Primary (le point coloré de l'interface)
    primary: 'oklch(0.45 0.08 230)',         // Gris-bleu doux
    'primary-hover': 'oklch(0.4 0.09 230)',      // Gris-bleu plus foncé
    'primary-foreground': 'oklch(0.99 0 0)',     // Blanc

    // Accents
    accent: 'oklch(0.94 0.005 230)',          // Gris-bleu très pâle
    'accent-foreground': 'oklch(0.2 0.02 230)',

    // Borders
    border: 'oklch(0.9 0.008 230)',           // Gris-bleu très clair
    'border-hover': 'oklch(0.82 0.01 230)',

    // Functional
    success: 'oklch(0.65 0.15 145)',        // Vert emerald
    warning: 'oklch(0.75 0.12 70)',         // Jaune/orange
    destructive: 'oklch(0.6 0.18 25)',       // Rouge
  },

  dark: {
    // Backgrounds
    background: 'oklch(0.14 0.005 230)',     // Noir grisâtre léger
    card: 'oklch(0.18 0.006 230)',         // Gris-bleu foncé
    sidebar: 'oklch(0.12 0.005 230)',        // Noir grisâtre
    input: 'oklch(0.2 0.006 230)',

    // Textes
    foreground: 'oklch(0.97 0.003 230)',    // Blanc grisâtre
    'foreground-secondary': 'oklch(0.75 0.008 230)',
    'foreground-muted': 'oklch(0.55 0.01 230)',

    // Primary
    primary: 'oklch(0.55 0.08 230)',         // Gris-bleu plus clair
    'primary-hover': 'oklch(0.6 0.09 230)',
    'primary-foreground': 'oklch(0.1 0 0)',

    // Accents
    accent: 'oklch(0.24 0.006 230)',
    'accent-foreground': 'oklch(0.97 0.003 230)',

    // Borders
    border: 'oklch(0.28 0.01 230)',
    'border-hover': 'oklch(0.38 0.012 230)',

    // Functional
    success: 'oklch(0.7 0.15 145)',
    warning: 'oklch(0.8 0.12 70)',
    destructive: 'oklch(0.65 0.18 25)',
  },
} as const;

// =============================================================================
// OPTION 2: MONOCHROME GRIS (MINIMALISTE)
// =============================================================================
/**
 * Noir et blanc avec subtilités de gris
 * Style minimaliste ultra-moderne (Linear, Stripe, Apple)
 * Absolument pas de couleur sauf pour les fonctionnalités
 */
export const MONOCHROME_THEME = {
  name: 'Monochrome Gris',
  description: 'Minimaliste et élégant - style Linear/Apple',

  light: {
    background: 'oklch(0.99 0 0)',           // Blanc pur
    card: 'oklch(1 0 0)',                    // Blanc pur
    sidebar: 'oklch(0.96 0 0)',             // Gris très pâle
    input: 'oklch(0.98 0 0)',

    foreground: 'oklch(0.15 0 0)',           // Noir pur
    'foreground-secondary': 'oklch(0.45 0 0)',   // Gris moyen
    'foreground-muted': 'oklch(0.6 0 0)',     // Gris clair

    primary: 'oklch(0.2 0 0)',              // Gris foncé
    'primary-hover': 'oklch(0.15 0 0)',       // Noir
    'primary-foreground': 'oklch(1 0 0)',     // Blanc

    accent: 'oklch(0.95 0 0)',              // Gris très pâle
    'accent-foreground': 'oklch(0.2 0 0)',

    border: 'oklch(0.89 0 0)',             // Gris très clair
    'border-hover': 'oklch(0.75 0 0)',

    success: 'oklch(0.6 0.15 145)',         // Vert subtil
    warning: 'oklch(0.7 0.12 70)',          // Jaune subtil
    destructive: 'oklch(0.55 0.18 25)',     // Rouge subtil
  },

  dark: {
    background: 'oklch(0.1 0 0)',            // Noir pur
    card: 'oklch(0.14 0 0)',                // Gris très foncé
    sidebar: 'oklch(0.08 0 0)',             // Noir pur
    input: 'oklch(0.16 0 0)',

    foreground: 'oklch(0.98 0 0)',           // Blanc pur
    'foreground-secondary': 'oklch(0.7 0 0)',   // Gris moyen
    'foreground-muted': 'oklch(0.5 0 0)',     // Gris foncé

    primary: 'oklch(0.85 0 0)',             // Gris clair
    'primary-hover': 'oklch(0.9 0 0)',        // Blanc
    'primary-foreground': 'oklch(0.1 0 0)',   // Noir

    accent: 'oklch(0.2 0 0)',               // Gris foncé
    'accent-foreground': 'oklch(0.98 0 0)',

    border: 'oklch(0.25 0 0)',             // Gris foncé
    'border-hover': 'oklch(0.35 0 0)',

    success: 'oklch(0.65 0.15 145)',
    warning: 'oklch(0.75 0.12 70)',
    destructive: 'oklch(0.6 0.18 25)',
  },
} as const;

// =============================================================================
// OPTION 3: VIOLET PROFOND (INDIGO)
// =============================================================================
/**
 * Violet profond élégant et moderne
 * Entre le bleu et le violet
 * Très professionnel (Discord, Notion, Figma)
 */
export const INDIGO_THEME = {
  name: 'Violet Profond',
  description: 'Élégant et moderne - style Discord/Notion',

  light: {
    background: 'oklch(0.99 0.005 260)',      // Blanc légèrement violacé
    card: 'oklch(1 0 0)',
    sidebar: 'oklch(0.96 0.006 260)',
    input: 'oklch(0.97 0.005 260)',

    foreground: 'oklch(0.2 0.015 260)',          // Gris-violet foncé
    'foreground-secondary': 'oklch(0.45 0.012 260)',
    'foreground-muted': 'oklch(0.6 0.008 260)',

    primary: 'oklch(0.55 0.18 260)',          // Violet profond
    'primary-hover': 'oklch(0.5 0.2 260)',       // Violet plus foncé
    'primary-foreground': 'oklch(0.99 0 0)',

    accent: 'oklch(0.94 0.008 260)',
    'accent-foreground': 'oklch(0.2 0.015 260)',

    border: 'oklch(0.9 0.01 260)',
    'border-hover': 'oklch(0.82 0.012 260)',

    success: 'oklch(0.65 0.15 145)',
    warning: 'oklch(0.75 0.12 70)',
    destructive: 'oklch(0.6 0.18 25)',
  },

  dark: {
    background: 'oklch(0.14 0.008 260)',     // Noir légèrement violacé
    card: 'oklch(0.18 0.01 260)',         // Gris-violet foncé
    sidebar: 'oklch(0.12 0.008 260)',
    input: 'oklch(0.2 0.01 260)',

    foreground: 'oklch(0.97 0.005 260)',    // Blanc légèrement violacé
    'foreground-secondary': 'oklch(0.75 0.008 260)',
    'foreground-muted': 'oklch(0.55 0.01 260)',

    primary: 'oklch(0.65 0.18 260)',          // Violet plus clair
    'primary-hover': 'oklch(0.7 0.2 260)',
    'primary-foreground': 'oklch(0.1 0 0)',

    accent: 'oklch(0.24 0.01 260)',
    'accent-foreground': 'oklch(0.97 0.005 260)',

    border: 'oklch(0.28 0.012 260)',
    'border-hover': 'oklch(0.38 0.015 260)',

    success: 'oklch(0.7 0.15 145)',
    warning: 'oklch(0.8 0.12 70)',
    destructive: 'oklch(0.65 0.18 25)',
  },
} as const;

// =============================================================================
// OPTION 4: TEAL (TURQUOISE)
// =============================================================================
/**
 * Turquoise/teal moderne et rafraîchissante
 * Entre le bleu et le vert
 * Très appréciée dans le design moderne (Linear, Atlassian)
 */
export const TEAL_THEME = {
  name: 'Teal (Turquoise)',
  description: 'Moderne et rafraîchissant - style Atlassian/Linear',

  light: {
    background: 'oklch(0.99 0.003 195)',      // Blanc légèrement teinté
    card: 'oklch(1 0 0)',
    sidebar: 'oklch(0.96 0.004 195)',
    input: 'oklch(0.97 0.003 195)',

    foreground: 'oklch(0.2 0.015 195)',          // Gris-teal foncé
    'foreground-secondary': 'oklch(0.45 0.012 195)',
    'foreground-muted': 'oklch(0.6 0.008 195)',

    primary: 'oklch(0.55 0.14 195)',          // Teal moderne
    'primary-hover': 'oklch(0.5 0.16 195)',       // Teal plus foncé
    'primary-foreground': 'oklch(0.99 0 0)',

    accent: 'oklch(0.94 0.005 195)',
    'accent-foreground': 'oklch(0.2 0.015 195)',

    border: 'oklch(0.9 0.008 195)',
    'border-hover': 'oklch(0.82 0.01 195)',

    success: 'oklch(0.65 0.15 145)',
    warning: 'oklch(0.75 0.12 70)',
    destructive: 'oklch(0.6 0.18 25)',
  },

  dark: {
    background: 'oklch(0.14 0.005 195)',     // Noir légèrement teinté
    card: 'oklch(0.18 0.006 195)',         // Gris-teal foncé
    sidebar: 'oklch(0.12 0.005 195)',
    input: 'oklch(0.2 0.006 195)',

    foreground: 'oklch(0.97 0.003 195)',    // Blanc légèrement teinté
    'foreground-secondary': 'oklch(0.75 0.006 195)',
    'foreground-muted': 'oklch(0.55 0.008 195)',

    primary: 'oklch(0.65 0.14 195)',          // Teal plus clair
    'primary-hover': 'oklch(0.7 0.16 195)',
    'primary-foreground': 'oklch(0.1 0 0)',

    accent: 'oklch(0.24 0.006 195)',
    'accent-foreground': 'oklch(0.97 0.003 195)',

    border: 'oklch(0.28 0.01 195)',
    'border-hover': 'oklch(0.38 0.012 195)',

    success: 'oklch(0.7 0.15 145)',
    warning: 'oklch(0.8 0.12 70)',
    destructive: 'oklch(0.65 0.18 25)',
  },
} as const;

// =============================================================================
// RÉSUMÉ DES OPTIONS
// =============================================================================

/**
 * Comparaison des options :
 *
 * | Option | Modernité | Professionnalisme | Fatigue oculaire | Unicité |
 * |--------|-----------|-------------------|------------------|----------|
 * | Slate (Gris-Bleu) | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
 * | Monochrome | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
 * | Indigo | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
 * | Teal | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
 *
 * Recommandation : Slate (Gris-Bleu)
 * - Le plus professionnel
 * - Fatigue oculaire minimale
 * - Très moderne et tendance
 * - Différent du bleu traditionnel
 * - Cohérent avec votre suggestion
 */

export type ThemeOption = 'slate' | 'monochrome' | 'indigo' | 'teal';

/**
 * Pour choisir le thème :
 *
 * function getTheme(option: ThemeOption) {
 *   switch(option) {
 *     case 'slate': return SLATE_THEME;
 *     case 'monochrome': return MONOCHROME_THEME;
 *     case 'indigo': return INDIGO_THEME;
 *     case 'teal': return TEAL_THEME;
 *   }
 * }
 */
