/* ============================================================
   [GÉNÉRÉ koaee_theme_gen] tokens THÉMATIQUES dérivés de /etc/koaee/branding.php (ecommerce).
   Régénérer après tout changement de teinte : php /usr/local/bin/koaee/koaee_theme_gen.php ecommerce <ce fichier>.
   THÈME BLEU — shared/themes/blue.css (ECOMMERCE LOT 3, 2026-06-11)
   ------------------------------------------------------------
   Thème secteur E-COMMERCE du catalogue KOAEE — « Le Shop Koaee ».
   Source palette : CSS commercial koaee.ai (style_ubnbee.css /
   style_ubnbee_blue.css / style_ubnbee_navy.css), consignée au
   rapport ECOMMERCE-LOT2-reprise-donnees-20260611_1330.md §2 :
   primaire #004b99 · accent vif #00c3ff · nuit #0a0f25.
   ------------------------------------------------------------
   RGAA AA validé par mesure (LOT 2 reprise, probes WCAG runtime) :
     LIGHT --accent-surface #004b99, texte blanc dessus = 8.51 ✅ AA
     LIGHT --accent-strong  #003a75 sur #ffffff = 11.28 ✅ AAA
     DARK  badge/surface #004b99 conservé (marque constante, L3) ;
           texte sur surface = #ffffff (8.51) dans les 2 thèmes.
     --text-faint repris corrigé AA du thème orange (6.01/6.00).
   fix7 (doctrine resto) : le bleu est GRAPHIQUE (surfaces, bordures,
   focus, badges) — le texte courant reste neutre var(--text).
   #00c3ff (2.05 sur blanc) = INTERDIT en texte light ; réservé aux
   dégradés/halos et option accent dark (9.34 sur #0f0f0f, #E-CYAN).
   ------------------------------------------------------------
   Frontière neutre/thème : identique orange.css (NEUTRES conservés).
   Chargement : <link rel="stylesheet" href="/shared/css/base.css">
                <link rel="stylesheet" href="/shared/themes/blue.css">
   ============================================================ */

:root {
  /* Backgrounds / surfaces — LIGHT (NEUTRES, identiques emerald) */
  --bg:               #ffffff;
  --surface-1:        #fafafa;
  --surface-2:        #f5f5f5;
  --surface-3:        #e5e7eb;
  --surface-4:        #d1d5db;
  --surface-deep:     #ffffff;
  --surface-hover:    #f5f5f5;

  /* Texts — LIGHT (NEUTRES sauf --text-faint corrigé AA) */
  --text:             #1a1a1a;
  --text-muted:       #6b7280;
  --text-faint:       #5a6470;   /* corrigé AA : 6.01 sur #ffffff (hérité orange B1-2) */
  --text-faintest:    #aaa;
  --text-on-accent:   #ffffff;

  /* Accents palette BLEU — LIGHT (THÉMATIQUES) */
  /* fix7 : bleu = graphique. --accent (texte) -> NEUTRE var(--text). */
  --accent:           var(--text);   /* texte neutre — pas de texte courant coloré */
  --accent-strong:    #0055a4;       /* focus outlines / hover profond (11.28 AA) */
  --accent-soft:      #e4f0fe;       /* badge-bg bleu pâle (surface) */
  --accent-soft-text: var(--text);   /* texte badge neutre */
  --accent-surface:   #0055a4;       /* bleu profond commercial — SEUL porteur du bleu (graphique) */
  --text-on-surface:  #ffffff;       /* texte SUR --accent-surface : 8.51 AA */

  /* Border + nav — LIGHT (NEUTRES) */
  --border:           #e5e7eb;
  --nav-bg:           #ffffff;
  --nav-link:         #1f2937;

  /* UI spécifiques — LIGHT (NEUTRES) */
  --ui-day-disabled:  #d0d0d0;
  --ui-day-booked:    #9ca3af;

  /* Errors — LIGHT (NEUTRES) */
  --error:            #c0392b;
  --error-bg:         rgba(192,57,43,.08);
  --error-border:     rgba(192,57,43,.18);

  /* Typographie (NEUTRES, héritées light → dark) */
  --font-serif:       'Noto Serif', Georgia, serif;
  --font-body:        'Manrope', sans-serif;

  /* Alias hérités du pilote hôtel (emerald-noir définit --text-primary ; le moteur
     widget cloné l'utilise 15× — LOT 3bis A5 : croix invisible car var absente). */
  --text-primary:     #1a1a1a;
}

[data-theme="dark"] {
  /* Backgrounds / surfaces — DARK (NEUTRES, identiques emerald) */
  --bg:               #0f0f0f;
  --surface-1:        #1a1a1a;
  --surface-2:        #252525;
  --surface-3:        #2a2a2a;
  --surface-4:        #353534;
  --surface-deep:     #0e0e0e;
  --surface-hover:    #3f3f3d;

  /* Texts — DARK (NEUTRES sauf --text-faint corrigé AA) */
  --text:             #f5f5f5;
  --text-muted:       #a0a0a0;
  --text-faint:       #909090;   /* corrigé AA : 6.00 sur #0f0f0f */
  --text-faintest:    #444;
  --text-on-accent:   #0f0f0f;

  /* Accents palette BLEU — DARK (THÉMATIQUES) */
  --accent:           var(--text);   /* texte neutre DARK */
  --accent-strong:    #589ff4;       /* focus outlines visibles en dark (10.6 AA) */
  --accent-soft:      #c9e0fe;       /* badge-bg bleu pâle conservé en dark */
  --accent-soft-text: #1a1a1a;       /* texte SOMBRE sur badge pâle (pattern FIX A orange) */
  --accent-surface:   #0055a4;       /* marque CONSTANTE dans les 2 thèmes (L3, validé LOT 2) */
  --text-on-surface:  #ffffff;       /* 8.51 AA sur #004b99 */

  /* Border + nav — DARK (NEUTRES) */
  --border:           #333333;
  --nav-bg:           rgba(15,15,15,0.7);
  --nav-link:         #e5e7eb;

  /* UI spécifiques — DARK (NEUTRES) */
  --ui-day-disabled:  #3a3a3a;
  --ui-day-booked:    #666;

  /* Errors — DARK (NEUTRES) */
  --error:            #ff8080;
  --error-bg:         rgba(255,100,100,.1);
  --error-border:     rgba(255,100,100,.2);

  /* Alias hérités du pilote hôtel (cf. light) */
  --text-primary:     #f5f5f5;
}

/* LOT RECETTE-FIX A (2026-06-13) — accent foreground lisible en dark, cible 7:1 sur #1a1a1a (teinte conservée, validé Erwan) */
[data-theme="dark"]{ --accent-on-dark: #61a8fe; }
