/* Map Lords — design tokens « carte de campagne médiévale ».
   Seul endroit où les couleurs, typos, ombres, rayons et durées sont écrits en valeur brute.
   Le reste du CSS et le JavaScript n'utilisent que ces variables.
   Couleurs des Maisons validées pour le daltonisme (deutéranopie, protanopie, tritanopie) avec l'outil validate_palette :
   écart minimal ΔE 10,6 en daltonisme et 16,3 en vision normale, aussi entre Maisons, terres libres et barbares. */
:root{
  /* --- Palette de base --- */
  --parch-50:#f6efdc; --parch-100:#efe4c6; --parch-200:#e8d9b5; --parch-300:#dcc89b; --parch-400:#c9b07c; --parch-500:#a88e5c;
  --ink-900:#2b1d12; --ink-800:#3a2919; --ink-700:#4d3822; --ink-600:#6a5236; --ink-500:#86704f;
  --wood-900:#1e140c; --wood-800:#2c1d11; --wood-700:#3d2816; --wood-600:#53381f; --wood-500:#6e4b2a;
  --gold-300:#f3d27a; --gold-400:#e9bc4e; --gold-500:#d9a531; --gold-600:#b98a1e; --gold-700:#8d6512;
  --blood-300:#e0705f; --blood-400:#c2402e; --blood-500:#9e2a1e; --blood-600:#7c1f15; --blood-700:#5c150d;
  --moss-400:#7fa35a; --moss-500:#5b8a3c; --moss-600:#456b2c;
  --amber-500:#d98a2b;
  --sea-950:#0c2029; --sea-900:#12303d; --sea-800:#173a49; --sea-700:#1f4b5c; --sea-500:#2f6a7d; --sea-300:#6fa5b3;
  --white:#fffaf0; --black:#000000;

  /* --- Maisons (5) + terres libres + barbares --- */
  --house-0:#1f4fd1; --house-1:#d6331f; --house-2:#2fb36a; --house-3:#f4c430; --house-4:#f08ad8;
  --land-free:#efe8d6; --land-barb:#4e3220;
  --house-ink-0:var(--white); --house-ink-1:var(--white); --house-ink-2:var(--ink-900); --house-ink-3:var(--ink-900); --house-ink-4:var(--ink-900);

  /* --- Rôles (à utiliser dans les composants) --- */
  --c-sea:var(--sea-800); --c-sea-deep:var(--sea-950); --c-sea-wave:rgba(111,165,179,.16);
  --c-land-border:var(--ink-900); --c-land-shadow:rgba(8,14,18,.55);
  --c-surface:var(--parch-200); --c-surface-2:var(--parch-100); --c-surface-3:var(--parch-300); --c-surface-sunk:var(--parch-300);
  --c-frame:var(--wood-700); --c-frame-dark:var(--wood-900); --c-frame-light:var(--wood-500);
  --c-bar:var(--wood-800); --c-bar-2:var(--wood-700);
  --c-text:var(--ink-900); --c-text-2:var(--ink-700); --c-text-muted:var(--ink-600);
  --c-text-inv:var(--parch-100); --c-text-inv-muted:var(--parch-400);
  --c-line:rgba(43,29,18,.22); --c-line-strong:rgba(43,29,18,.45); --c-line-inv:rgba(233,188,78,.28);
  --c-accent:var(--gold-500); --c-accent-hi:var(--gold-300); --c-accent-lo:var(--gold-700);
  --c-danger:var(--blood-500); --c-danger-hi:var(--blood-400); --c-danger-lo:var(--blood-700);
  --c-good:var(--moss-500); --c-good-hi:var(--moss-400); --c-warn:var(--amber-500);
  --c-select:var(--white); --c-glow:var(--gold-300);
  --c-scrim:rgba(12,8,4,.45); --c-scrim-strong:rgba(12,8,4,.72);
  --c-tip:rgba(30,20,12,.96);
  --c-shadow-ink:var(--ink-900);

  /* --- Typographie --- */
  --f-logo:"Cinzel Decorative", "Cormorant SC", Georgia, serif;
  --f-display:"Cormorant SC", "Iowan Old Style", Georgia, serif;
  --f-body:"Alegreya Sans", "Gill Sans", "Trebuchet MS", sans-serif;
  --f-num:"Alegreya Sans", "Gill Sans", sans-serif;
  --fs-xs:11px; --fs-sm:13px; --fs-md:15px; --fs-lg:18px; --fs-xl:22px; --fs-2xl:28px;

  /* --- Formes, ombres, durées --- */
  --r-sm:6px; --r-md:10px; --r-lg:14px; --r-pill:999px;
  --sh-1:0 2px 4px rgba(20,12,6,.35);
  --sh-2:0 6px 16px rgba(20,12,6,.45);
  --sh-3:0 14px 34px rgba(10,6,2,.6);
  --sh-inset:inset 0 1px 0 rgba(255,250,240,.35), inset 0 -2px 0 rgba(20,12,6,.25);
  --sh-text:0 1px 0 rgba(0,0,0,.6);
  --t-fast:120ms; --t-med:250ms; --t-slow:400ms; --ease-out:cubic-bezier(.2,.8,.2,1); --ease-pop:cubic-bezier(.2,1.6,.4,1);

  /* --- Dégradés de boutons --- */
  --g-wood:linear-gradient(180deg,var(--wood-500) 0%,var(--wood-600) 55%,var(--wood-700) 100%);
  --g-gold:linear-gradient(180deg,var(--gold-300) 0%,var(--gold-500) 55%,var(--gold-600) 100%);
  --g-blood:linear-gradient(180deg,var(--blood-400) 0%,var(--blood-500) 60%,var(--blood-600) 100%);
  --g-moss:linear-gradient(180deg,var(--moss-400) 0%,var(--moss-500) 60%,var(--moss-600) 100%);
  --g-parch:linear-gradient(180deg,var(--parch-50) 0%,var(--parch-200) 100%);
  --g-bar:linear-gradient(180deg,var(--wood-700) 0%,var(--wood-800) 100%);

  /* --- Textures (images vectorielles générées, CC0) --- */
  --tex-paper:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .17 0 0 0 0 .11 0 0 0 0 .07 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  --tex-waves:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='60'%3E%3Cpath d='M0 30c15-10 30-10 45 0s30 10 45 0 30-10 30-10' fill='none' stroke='%236fa5b3' stroke-opacity='.18' stroke-width='1.6'/%3E%3Cpath d='M-60 55c15-10 30-10 45 0s30 10 45 0 30-10 45 0 30 10 45 0' fill='none' stroke='%236fa5b3' stroke-opacity='.1' stroke-width='1.2'/%3E%3C/svg%3E");
}
