{
  "name": "Brûleurs de Loups",
  "version": 1,
  "meta": { "source": "Charte graphique BDL (PDF, 14 p.) + bruleursdeloups.fr (thème Elementor, oct. 2026) + logos fournis par le club" },
  "color": {
    "themes": [
      { "id": "nuit", "name": "Nuit (défaut)" },
      { "id": "glace", "name": "Glace (clair)" }
    ],
    "tokens": [
      { "name": "bleu-bdl", "value": "#16223a", "usage": "Bleu officiel de la charte (#16223A). Fonds de sections, cartouches, texte sur fond blanc. Couleur n°1 du club." },
      { "name": "rouge-bdl", "value": "#e1081e", "usage": "Rouge officiel de la charte (#E1081E). CTA principal, cartouche numéroté, bande rouge, badge Live. Texte blanc dessus (4.94:1). En texte sur fond nuit, utiliser accent-text." },
      { "name": "blanc", "value": "#ffffff", "usage": "Blanc officiel de la charte. Texte sur bleu, nuit et rouge ; fond des pages en thème Glace." },
      { "name": "nuit", "value": "#0c1b30", "usage": "Fond de page du site actuel (theme-color). Ground par défaut du thème Nuit." },
      { "name": "abysse", "value": "#061222", "usage": "Bleu le plus profond du site. Footer, barre N0, zones encaissées, overlays photo." },
      { "name": "fumee", "value": "#0f192c", "usage": "Teinte des formes « fumée » de la charte (fonds camouflage ton sur ton sur le bleu). Uniquement pour le motif bdl-fumee." },
      { "name": "glace-bdl", "value": "#7dbbf0", "usage": "Bleu glace prélevé sur la moitié « glace » du loup. Accent froid : focus, filets actifs, data, moitié gauche de la fracture Glace/Feu. Texte bleu nuit dessus (7.73:1)." },
      { "name": "flamme", "value": "#faa31c", "usage": "Orange flamme de la torche (logo signature). Moitié « feu » de la fracture, badges promo / édition limitée. Texte bleu-bdl dessus (7.79:1), jamais blanc." },
      { "name": "braise", "value": "#f04206", "usage": "Orange braise des flammes du loup. Uniquement dans les dégradés feu et l'élément Fracture, jamais en aplat de texte." },
      { "name": "or-business", "value": "#c6ac7b", "usage": "Or du logo BDL Business Club. Réservé à l'univers partenaires / hospitalités / Business Club." },
      { "name": "rouge-profond", "value": "#b5061a", "usage": "Rouge pressé : état hover/active du CTA rouge (blanc dessus 6.99:1)." },
      { "name": "rouge-site-historique", "value": "#db3833", "usage": "Rouge du site actuel (Elementor #DB3833), plus chaud que la charte. Ne plus utiliser : conservé pour la transition, remplacer par rouge-bdl." },

      { "name": "surface-page", "value": { "nuit": "#0c1b30", "glace": "#f2f5f9" }, "usage": "Fond de page (body)." },
      { "name": "surface-section", "value": { "nuit": "#16223a", "glace": "#ffffff" }, "usage": "Section alternée, bandeau, header au scroll." },
      { "name": "surface-card", "value": { "nuit": "#1c2b47", "glace": "#ffffff" }, "usage": "Cartes (actu, produit, match), champs de formulaire, menus." },
      { "name": "surface-sunken", "value": { "nuit": "#061222", "glace": "#e6ebf2" }, "usage": "Zones encaissées : footer, barre N0, pistes de skeleton, fond de tableaux." },
      { "name": "surface-inverse", "value": { "nuit": "#ffffff", "glace": "#16223a" }, "usage": "Bloc contrasté qui inverse le thème (bouton secondaire, encart newsletter)." },
      { "name": "ink", "value": { "nuit": "#ffffff", "glace": "#16223a" }, "usage": "Texte principal sur surface-page, surface-section et surface-card." },
      { "name": "ink-muted", "value": { "nuit": "#a9b4c7", "glace": "#4a5670" }, "usage": "Texte secondaire (dates, méta, légendes) sur surface-page, surface-section et surface-card (≥ 6.7:1)." },
      { "name": "ink-inverse", "value": { "nuit": "#16223a", "glace": "#ffffff" }, "usage": "Texte posé sur surface-inverse." },
      { "name": "line", "value": { "nuit": "#2a3a58", "glace": "#d3dae5" }, "usage": "Filets décoratifs, séparateurs de liste, bordure de carte. Non porteur de sens." },
      { "name": "line-strong", "value": { "nuit": "#6b7c9a", "glace": "#7a869c" }, "usage": "Bordure de contrôle (champ, case, bouton ghost) : ≥ 3:1 sur surface-card et surface-page." },
      { "name": "accent", "value": "{rouge-bdl}", "usage": "Action principale : fond du CTA, cartouche, indicateur actif, badge Live." },
      { "name": "accent-hover", "value": "{rouge-profond}", "usage": "Survol / pression des éléments accent." },
      { "name": "on-accent", "value": "#ffffff", "usage": "Texte et icônes sur accent / accent-hover." },
      { "name": "accent-text", "value": { "nuit": "#ff5a66", "glace": "#c8071b" }, "usage": "Rouge utilisé comme TEXTE (liens, prix soldé, erreurs) sur surface-page / section / card. Le rouge-bdl pur ne fait que 3.5:1 sur nuit." },
      { "name": "glace-text", "value": { "nuit": "#7dbbf0", "glace": "#1e5c99" }, "usage": "Bleu glace en texte : kicker data, liens secondaires, statut « à venir »." },
      { "name": "focus", "value": { "nuit": "#7dbbf0", "glace": "#1e5c99" }, "usage": "Anneau de focus 2px + offset 2px sur tous les éléments interactifs (≥ 6:1 sur toutes les surfaces)." },
      { "name": "success", "value": { "nuit": "#2dbe7a", "glace": "#1a7f4e" }, "usage": "Victoire, en stock, ajout panier réussi. Toujours accompagné d'un mot ou d'une icône." },
      { "name": "warning", "value": { "nuit": "#faa31c", "glace": "#9a5b00" }, "usage": "Stock faible, prolongation, avertissement. Toujours accompagné d'un mot ou d'une icône." },
      { "name": "danger", "value": "{accent-text}", "usage": "Erreur de formulaire, défaite, rupture. Même valeur que accent-text, toujours avec un libellé." },
      { "name": "overlay", "value": { "nuit": "rgba(6, 18, 34, 0.72)", "glace": "rgba(6, 18, 34, 0.6)" }, "usage": "Voile sur photo pour poser du texte blanc (≥ 4.5:1 garanti sur photo claire)." },
      { "name": "glass", "value": { "nuit": "rgba(22, 34, 58, 0.62)", "glace": "rgba(255, 255, 255, 0.72)" }, "usage": "Panneau verre dépoli (header au scroll, cartouches sur photo) avec backdrop-filter: blur(14px)." }
    ]
  },
  "type": {
    "fonts": [],
    "families": {
      "display": "\"Koba\", \"Barlow Condensed\", \"Arial Narrow\", sans-serif",
      "body": "\"Futura PT\", \"Jost\", \"Century Gothic\", sans-serif",
      "accent": "\"Montserrat\", \"Helvetica Neue\", sans-serif"
    },
    "groups": [
      {
        "name": "Display — Koba",
        "family": "display",
        "styles": [
          { "name": "display-xl", "fontSize": "120px", "lineHeight": 0.88, "fontWeight": 800, "fontStyle": "italic", "letterSpacing": "-0.01em", "sample": "ENTREZ DANS LA LÉGENDE", "usage": "Hero d'accueil, une seule fois par page. Toujours en capitales. Mobile : 64px." },
          { "name": "display-l", "fontSize": "80px", "lineHeight": 0.9, "fontWeight": 800, "fontStyle": "italic", "sample": "PROCHAIN MATCH", "usage": "Titre de page / bannière de collection. Capitales. Mobile : 48px." },
          { "name": "h1", "fontSize": "56px", "lineHeight": 0.95, "fontWeight": 800, "fontStyle": "italic", "sample": "LES BDL S'ENVOLENT", "usage": "Titre H1 éditorial et fiches produit. Capitales. Mobile : 40px." },
          { "name": "h2", "fontSize": "40px", "lineHeight": 1, "fontWeight": 800, "fontStyle": "italic", "sample": "RÉSULTATS", "usage": "Titres de section (dans le cartouche numéroté). Capitales. Mobile : 32px." },
          { "name": "h3", "fontSize": "26px", "lineHeight": 1.05, "fontWeight": 700, "fontStyle": "italic", "sample": "DUEL CHEZ LES CHAMPIONS DE FRANCE", "usage": "Titres de cartes actu, noms de joueurs. Capitales." },
          { "name": "score", "fontSize": "72px", "lineHeight": 1, "fontWeight": 800, "fontStyle": "italic", "sample": "7 – 1", "usage": "Scores, compte à rebours, chiffres clés. Chiffres tabulaires (font-variant-numeric: tabular-nums)." },
          { "name": "numero", "fontSize": "160px", "lineHeight": 0.8, "fontWeight": 800, "fontStyle": "italic", "sample": "27", "usage": "Numéro de maillot en filigrane sur les fiches joueur et le bloc flocage." }
        ]
      },
      {
        "name": "Éditorial — Futura PT",
        "family": "body",
        "styles": [
          { "name": "edito-xl", "fontSize": "88px", "lineHeight": 0.92, "fontWeight": 300, "fontStyle": "italic", "letterSpacing": "-0.01em", "sample": "CHARTE GRAPHIQUE", "usage": "Grand titre « couverture » light italique de la charte : pages club, histoire, Business Club. Capitales. Ne jamais mélanger avec display-xl dans le même bloc." },
          { "name": "edito-m", "fontSize": "40px", "lineHeight": 1, "fontWeight": 300, "fontStyle": "italic", "sample": "LOGOS — COULEURS — FONDS", "usage": "Sous-titres de pages éditoriales, chapitres. Capitales." },
          { "name": "eyebrow", "fontSize": "15px", "lineHeight": "20px", "fontWeight": 600, "fontStyle": "italic", "letterSpacing": "0.02em", "sample": "LES BRÛLEURS DE LOUPS", "usage": "Signature en haut de bloc (comme l'en-tête de la charte), souligné d'un filet blanc 2px de 100px. Capitales." }
        ]
      },
      {
        "name": "Texte — Futura PT",
        "family": "body",
        "styles": [
          { "name": "body-l", "fontSize": "19px", "lineHeight": "30px", "fontWeight": 400, "sample": "La boutique en ligne des BDL est idéale pour afficher votre soutien au club.", "usage": "Chapô, intro de section, descriptions produit." },
          { "name": "body", "fontSize": "16px", "lineHeight": "26px", "fontWeight": 400, "sample": "Restez informés des actualités BDL.", "usage": "Texte courant." },
          { "name": "body-s", "fontSize": "14px", "lineHeight": "21px", "fontWeight": 400, "sample": "25 octobre, 18:00 — Patinoire Polesud", "usage": "Méta, légendes, textes d'aide de formulaire." },
          { "name": "label", "fontSize": "13px", "lineHeight": "16px", "fontWeight": 600, "letterSpacing": "0.08em", "sample": "SYNERGLACE LIGUE MAGNUS", "usage": "Badges, onglets, en-têtes de tableau, catégories d'actu. Capitales." },
          { "name": "button", "fontSize": "15px", "lineHeight": "18px", "fontWeight": 600, "letterSpacing": "0.06em", "sample": "JE PRENDS MES BILLETS", "usage": "Libellés de boutons. Capitales (comme le site actuel)." },
          { "name": "caption", "fontSize": "12px", "lineHeight": "16px", "fontWeight": 500, "letterSpacing": "0.04em", "sample": "Photo © BDL", "usage": "Crédits photo, mentions légales, compteurs." }
        ]
      },
      {
        "name": "Accent — Montserrat",
        "family": "accent",
        "styles": [
          { "name": "citation", "fontSize": "22px", "lineHeight": "32px", "fontWeight": 400, "fontStyle": "italic", "sample": "« On ne lâche rien, jusqu'à la sirène. »", "usage": "Citations de joueurs / coach, témoignages partenaires. Toujours en italique (comme la planche Montserrat de la charte)." },
          { "name": "data", "fontSize": "14px", "lineHeight": "20px", "fontWeight": 600, "sample": "J10 · 16/10/2026 · 20:00", "usage": "Données de match en ligne (journée, date, heure), tableaux de classement, stats joueur." }
        ]
      }
    ]
  },
  "spacing": {
    "tokens": [
      { "name": "space-1", "value": "4px", "usage": "Écart icône / texte serré, padding de badge vertical." },
      { "name": "space-2", "value": "8px", "usage": "Gap interne de badge, entre méta." },
      { "name": "space-3", "value": "12px", "usage": "Padding vertical de bouton S, gap de liste." },
      { "name": "space-4", "value": "16px", "usage": "Gouttière mobile, padding de carte compacte, gap de grille produit mobile." },
      { "name": "space-5", "value": "20px", "usage": "Padding de carte, marge latérale mobile." },
      { "name": "space-6", "value": "24px", "usage": "Gouttière desktop, gap de grille produit." },
      { "name": "space-8", "value": "32px", "usage": "Marge latérale desktop, padding de bloc." },
      { "name": "space-10", "value": "40px", "usage": "Écart titre de section / contenu." },
      { "name": "space-12", "value": "48px", "usage": "Padding de bandeau." },
      { "name": "space-16", "value": "64px", "usage": "Padding vertical de section mobile." },
      { "name": "space-24", "value": "96px", "usage": "Padding vertical de section desktop." },
      { "name": "space-32", "value": "128px", "usage": "Respiration hero / avant footer." }
    ]
  },
  "radius": {
    "tokens": [
      { "name": "radius-0", "value": "0", "usage": "PAR DÉFAUT. Boutons, cartes, champs, images : la marque est taillée à angles vifs (site actuel et charte)." },
      { "name": "radius-xs", "value": "2px", "usage": "Seule douceur tolérée : cases à cocher, pastilles de couleur produit carrées." },
      { "name": "radius-full", "value": "999px", "usage": "Points de statut (Live), avatars joueurs, compteur de panier." }
    ]
  },
  "shadow": {
    "note": "Ombres sombres et froides : la profondeur vient du bleu, pas du gris.",
    "tokens": [
      { "name": "shadow-card", "value": "0 1px 0 rgba(255, 255, 255, 0.04), 0 8px 24px rgba(6, 18, 34, 0.35)", "usage": "Carte au repos sur surface-page." },
      { "name": "shadow-lift", "value": "0 18px 40px rgba(6, 18, 34, 0.55)", "usage": "Carte survolée, tiroir panier, menu ouvert." },
      { "name": "glow-feu", "value": "0 0 0 1px rgba(225, 8, 30, 0.6), 0 10px 30px rgba(225, 8, 30, 0.35)", "usage": "Halo rouge du CTA principal au survol et du badge Live." },
      { "name": "glow-glace", "value": "0 0 0 1px rgba(125, 187, 240, 0.5), 0 10px 30px rgba(125, 187, 240, 0.22)", "usage": "Halo glace des cartes match « à venir » et de la sélection de variante." }
    ]
  },
  "angle": {
    "note": "Le biseau vient de l'italique de Koba et de Futura : tout ce qui « avance » penche du même angle.",
    "tokens": [
      { "name": "biseau", "value": "-12deg", "usage": "Inclinaison des boutons biseautés, cartouches, bandes de score (transform: skewX)." },
      { "name": "biseau-coupe", "value": "14px", "usage": "Largeur de la coupe en biais des clip-path (coin coupé des cartes et boutons)." }
    ]
  },
  "duration": {
    "tokens": [
      { "name": "t-fast", "value": "140ms", "usage": "Hover couleur, focus." },
      { "name": "t-base", "value": "240ms", "usage": "Déplacement de flèche, apparition de badge, zoom image carte." },
      { "name": "t-slow", "value": "420ms", "usage": "Tiroir panier, menu plein écran." },
      { "name": "t-scene", "value": "900ms", "usage": "Entrée du hero, révélation de la fracture Glace/Feu. Coupé sous prefers-reduced-motion." }
    ]
  },
  "easing": {
    "tokens": [
      { "name": "ease-glisse", "value": "cubic-bezier(0.2, 0.8, 0.2, 1)", "usage": "Courbe « glisse sur la glace » : toutes les entrées et déplacements." },
      { "name": "ease-impact", "value": "cubic-bezier(0.7, 0, 0.3, 1)", "usage": "Changements d'état brusques : ouverture de tiroir, mise en échec visuelle (score qui change)." }
    ]
  },
  "layout": {
    "tokens": [
      { "name": "container", "value": "1320px", "usage": "Largeur max du contenu (12 colonnes)." },
      { "name": "container-text", "value": "720px", "usage": "Largeur max d'un article." },
      { "name": "gutter", "value": "24px", "usage": "Gouttière de grille desktop (16px mobile)." },
      { "name": "header-h", "value": "88px", "usage": "Hauteur du header N1 desktop (64px mobile)." },
      { "name": "topbar-h", "value": "36px", "usage": "Hauteur de la barre N0 (ligue + annonces)." },
      { "name": "bp-sm", "value": "640px", "usage": "Breakpoint : grand mobile." },
      { "name": "bp-md", "value": "960px", "usage": "Breakpoint : tablette, passage au menu desktop." },
      { "name": "bp-lg", "value": "1280px", "usage": "Breakpoint : desktop." }
    ]
  },
  "zIndex": {
    "tokens": [
      { "name": "z-header", "value": "50", "usage": "Header collant." },
      { "name": "z-drawer", "value": "80", "usage": "Tiroir panier, menu mobile." },
      { "name": "z-toast", "value": "100", "usage": "Notification ajout panier." }
    ]
  }
}
