:root {
    color-scheme: dark;

    /* Quatre identités modernes du Jeu de Cartes à Collectionner Pokémon. */
    --color-tcg-grass: #64b95b;
    --color-tcg-fire: #e75b3c;
    --color-tcg-water: #4f92cf;
    --color-tcg-lightning: #f2ce3e;

    /* Marque et surfaces */
    --color-bg: #050b14;
    --color-bg-soft: #081321;
    --color-surface: #101d30;
    --color-surface-raised: #172944;
    --color-surface-glass: rgba(16, 29, 48, 0.78);
    --color-text: #f6f9ff;
    --color-text-muted: #a7b6ca;
    --color-border: #2b425f;
    --color-border-soft: rgba(170, 204, 240, 0.14);
    --color-brand: #75d8ff;
    --color-brand-strong: #32b5ef;
    --color-accent: #aa8cff;
    --color-positive: #62e6a6;
    --color-danger: #ffd6db;
    --color-danger-bg: #5d2432;

    /* Plateau et cartes */
    --color-table-start: #123c65;
    --color-table-end: #08182d;
    --color-card-face: #f7f9fc;
    --color-card-face-muted: #dfe7f1;
    --color-card-text: #142238;
    --color-card-edge: #07101e;
    --color-card-shade: rgba(20, 42, 70, 0.1);
    --color-focus-ring: #8ddfff;
    --color-turn-active: #62e6a6;

    /* Échelle d'espacement */
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 24px;
    --space-6: 32px;
    --space-7: 48px;
    --space-8: 64px;

    /* Typographie système, rapide et stable */
    --font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-size-xs: 0.75rem;
    --font-size-sm: 0.875rem;
    --font-size-base: 1rem;
    --font-size-lg: 1.25rem;
    --font-size-xl: 1.875rem;

    /* Rayons, ombres et mouvement */
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 22px;
    --radius-xl: 30px;
    --shadow-soft: 0 16px 45px rgba(0, 0, 0, 0.24);
    --shadow-raised: 0 28px 70px rgba(0, 0, 0, 0.42);
    --shadow-card-3d: 0 9px 0 var(--color-card-edge), 0 22px 30px rgba(0, 0, 0, 0.38);
    --shadow-card-3d-hover: 0 13px 0 var(--color-card-edge), 0 32px 42px rgba(0, 0, 0, 0.52);
    --transition-fast: 130ms ease-out;
    --transition-base: 220ms cubic-bezier(0.2, 0.75, 0.25, 1);
}
