/* ============================================================
   Eburon · Guède — la feuille commune de la tribu
   Carte RugWatch, la Mine, l'accueil et les jeux la partagent.
   Règles : guède = agir · ocre = la tribu · braise = danger seulement.
   L'onciale reste rare : un titre ou un emblème par écran.
   ============================================================ */
/* polices : chargées par un <link> dans chaque page (plus rapide qu'un @import) */

:root {
  --t-night: #10162b;   /* fond */
  --t-night2: #18213d;  /* panneaux, pastilles */
  --t-night3: #131b33;  /* bandeaux */
  --t-rim: #2a3558;     /* bordures */
  --t-woad: #2f5fd0;    /* guède : action */
  --t-woad-l: #a9bfff;
  --t-ochre: #d9a441;   /* ocre : la tribu, les gardiens */
  --t-ochre-l: #ecc06a;
  --t-chalk: #ece6d8;   /* texte */
  --t-chalk2: #d6d0c2;
  --t-mist: #9fa8c4;    /* texte secondaire */
  --t-ember: #e2553a;   /* braise : danger */
  --t-ember-l: #f08a74;
  --t-moss: #6fbf73;
  --t-display: 'Uncial Antiqua', Georgia, serif;
  --t-body: 'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --t-num: 'Archivo Narrow', 'Archivo', system-ui, sans-serif;
  --t-radius: 999px;
}

/* ---------- pièces communes (toutes les pages) ---------- */
.t-title { font-family: var(--t-display); font-weight: 400; letter-spacing: 0; }
.t-num { font-family: var(--t-num); font-variant-numeric: tabular-nums; }
.t-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: var(--t-radius);
  background: var(--t-woad); color: var(--t-chalk); border: 0; font: 600 15px var(--t-body); text-decoration: none; cursor: pointer; }
.t-btn:hover { background: #3a6ce0; }
.t-btn.ochre { background: transparent; color: var(--t-ochre); border: 1.5px solid var(--t-ochre); }
.t-btn.ochre:hover { background: #d9a4411a; }
.t-emblem { width: 34px; height: 34px; display: inline-block; vertical-align: middle; }
:where(a, button, input, select, [tabindex]):focus-visible { outline: 2px solid var(--t-ochre-l); outline-offset: 2px; }

/* ============================================================
   Carte RugWatch (body.rw) : on rebranche ses variables sur la tribu
   ============================================================ */
body.rw {
  --bg: var(--t-night); --panel: var(--t-night2); --line: var(--t-rim); --text: var(--t-chalk); --muted: var(--t-mist);
  --low: var(--t-moss); --mid: var(--t-ochre); --high: var(--t-ember); --gold: var(--t-ochre); --accent: var(--t-ochre);
}
body.rw, body.rw button, body.rw input, body.rw select { font-family: var(--t-body); }
body.rw { font-size: 14.5px; }

/* en-tête */
body.rw header { padding: 12px 20px; gap: 10px 20px; background: var(--t-night); }
body.rw .brand { display: inline-flex; align-items: center; gap: 10px; font-family: var(--t-display); font-weight: 400; font-size: 24px; letter-spacing: 0; color: var(--t-chalk); }
body.rw .brand span { color: var(--t-chalk); }
body.rw .brand img { width: 36px; height: 36px; }
body.rw .stat, body.rw .tally, body.rw .fwstat { font-family: var(--t-num); font-size: 14.5px; }
body.rw .stat b, body.rw .tally b, body.rw .fwstat b { font-size: 16px; }
body.rw .fwstat { background: var(--t-night2); border-color: var(--t-rim); }
body.rw .fwstat:hover { border-color: var(--t-ember); }

/* pastilles et boutons */
body.rw .chip { background: var(--t-night2); border-color: var(--t-rim); min-height: 34px; padding: 5px 13px; font-size: 13.5px; transition: border-color .15s, background .15s; }
body.rw .chip:hover { border-color: var(--t-woad); }
body.rw .chip[aria-pressed="false"] { opacity: .5; }
body.rw .win { border-color: var(--t-rim); background: var(--t-night2); }
body.rw .win .chip { background: transparent; }
body.rw .win .chip[aria-pressed="true"] { background: var(--t-woad); color: var(--t-chalk); }
body.rw .btn { border-radius: var(--t-radius); background: var(--t-night2); border-color: var(--t-rim); }
body.rw .btn:hover { border-color: var(--t-woad); }

/* les trois lignes : Éclosoir, Éclair, Boost */
body.rw #nursery, body.rw #flashRow, body.rw #boostRow { padding: 2px 0; }
body.rw #nursery .nlab, body.rw #flashRow .nlab, body.rw #boostRow .nlab { font-family: var(--t-num); font-weight: 600; letter-spacing: 0; text-transform: none; font-size: 14.5px; }
body.rw #nursery .nlab:first-child { color: var(--t-ochre-l); }
body.rw #flashRow .nlab { color: var(--t-woad-l); }
body.rw #themeLab { color: #c9d8ff !important; }
body.rw #boostRow .nlab { color: var(--t-ember-l); }
body.rw .egg, body.rw .bst, body.rw .fl { background: var(--t-night2); border-color: var(--t-rim); box-shadow: none; }
body.rw .egg .sol { color: var(--t-moss); font-family: var(--t-num); }
body.rw .egg.holy { border-color: var(--t-ochre); box-shadow: 0 0 10px #d9a44155; }
body.rw .fl { border-color: var(--t-woad); background: #2f5fd01f; }
body.rw .bst { border-color: var(--t-ember); }
body.rw .bst.end { border-color: var(--t-rim); }
body.rw .bbar { background: var(--t-rim); }
body.rw .bbar i { background: linear-gradient(90deg, var(--t-ochre), var(--t-ember)); }
body.rw .th { border-color: #5d7fd9; color: #c9d8ff; }

/* la carte : zones, chaîne, geôle, cimetière */
body.rw .zone { font-family: var(--t-num); font-weight: 600; text-transform: none; letter-spacing: 0; font-size: 14px; opacity: .9; fill: var(--t-chalk2); }
body.rw .zonesub { font-family: var(--t-num); fill: var(--t-mist); }
body.rw .zbg-low { fill: #6fbf7308; } body.rw .zbg-mid { fill: #d9a44108; } body.rw .zbg-high { fill: #e2553a0a; }
body.rw .zbg-grad { fill: #2f5fd014; stroke: #2f5fd055; }
body.rw .holybg { fill: #d9a4410d; stroke: #d9a44144; }
body.rw .beltbg { fill: #131b33; stroke: var(--t-rim); }
body.rw .beltrail { stroke: #d9a44166; }
body.rw .jailbg { fill: #e2553a0d; }
body.rw .jailbg.hot { fill: #e2553a29; }
body.rw .gravebg { fill: #9fa8c40d; stroke: #9fa8c433; }
/* bulles-boucliers : un liseré ocre, plus de néon */
body.rw .node text { font-family: var(--t-num); font-weight: 700; }
body.rw .node.sel circle { stroke: var(--t-chalk); }
body.rw .node.crowd circle { stroke: #2f5fd0; stroke-width: 4px; }

/* panneaux : fiche, infobulle, légende, manettes */
body.rw #tip { background: var(--t-night2); border-color: var(--t-rim); border-radius: 10px; font-size: 13.5px; }
body.rw #panel { background: var(--t-night2); border-color: var(--t-rim); }
body.rw .tname { font-family: var(--t-display); font-size: 22px; }
body.rw .drop { background: #18213dd9; border-color: var(--t-rim); border-radius: 18px; }

/* fenêtres : on garde le clin d'œil Windows, aux couleurs de la tribu */
body.rw .xp { background: var(--t-chalk); }
body.rw .xp.good .tb { background: var(--t-woad); }
body.rw .xp.bad .tb { background: #a8321f; }
body.rw .xp.boost .tb { background: #b06a12; }

@media (prefers-reduced-motion: reduce) {
  body.rw .beltrail { animation: none; }
}

/* 🪶 mode léger : aucune animation CSS, aucun effet */
body.rw.lite *, body.rw.lite *::before, body.rw.lite *::after { animation: none !important; transition: none !important; }
body.rw.lite .node circle, body.rw.lite .node image { filter: none !important; }
