/* Westmarches Journal — shared theme tokens + base resets.
   Loaded by every *.dc.html helmet. File-specific @keyframes stay per-file. */
/* Tangerine = the Style Editor's "Script" family. It lives HERE rather than in the editor's own
   helmet because a class stamped Script has to render wherever the class is applied — the sheet and
   every tab file — not only inside the editor that defined it. */
@import url('https://fonts.googleapis.com/css2?family=Tangerine:wght@400;700&display=swap');
:root{
  --bg:#12100c; --panel:#1b1711; --panel2:#221d15; --sunk:#0e0c09;
  --field:#efe6d0; --fieldInk:#241d12; --ink:#ece0c8; --dim:#a99a7f;
  /* Field DIM 1-5 (2026-09-02 Geoff): aged parchment / old paper shades for field fills */
  --field-dim-1:#e7dabd; --field-dim-2:#ddcda6; --field-dim-3:#d2bf92; --field-dim-4:#c5b07e; --field-dim-5:#b7a06c; --field-dim-6:#a8905e; --field-dim-7:#987e50; --field-dim-8:#866c44; --field-dim-9:#735a38; --field-dim-10:#5f482c;
  --field-dim:var(--field-dim-1); /* MASTER — the Style Editor's Field DIM roller points this at 1-5 */
  --rule:#3a3125; --gold:#d8b45c; --goldSoft:#8c7333; --red:#c0503f; --teal:#5fa39a;
  --tex:rgba(255,255,255,.014);
  /* Kebab-case aliases + the two values the live file lacked. The Style Editor writes class
     definitions as var(--gold-soft) / var(--ink-on-gold) / var(--panel-2) (the design-system
     spelling); without these the property is invalid and the element silently inherits — which
     is why a stamped .button came out gold-filled with WHITE text instead of near-black. */
  --panel-2:#221d15; --panel-3:#2e271d; --gold-soft: #8c7333; --blue: #00c8ff; --blue-soft: rgba(0,200,255,.10); --ink-on-gold:#17130c;
  /* LINK — its own token, NOT `--blue` (2026-09-03). `--blue` is #00c8ff, the admin-tooling cyan, and
     Loreweave links live mostly on `--field` parchment where it measures 1.58:1 — unreadable. Links appear
     on parchment AND on dark panel in the same theme, and no single colour clears 4.5:1 on both (the two
     requirements are arithmetically exclusive). The old value #2f6fd8 was the honest compromise between
     them: 3.9:1 on parchment, 3.7:1 on panel. `--blue` is untouched and still means admin tooling.
     ⚠ 2026-09-15 Geoff, overriding that compromise: "the blue links are dark blue. They need to be
     electric blue. Blue Links everywhere need to be electric blue." Now #1e9dff — the same value his
     `.hyperlink` registry class already carried as `var(--rarity-rare)`, so the token and his class
     finally agree instead of the templates overriding him.
     MEASURED consequence, his call to make: on dark panel it IMPROVES to 5.9:1, and on `--field`
     parchment it DROPS to 2.3:1 (from 3.9:1). The parchment memo fields are the surface that loses —
     told to him rather than quietly traded away. */
  --link:#1e9dff; --link-hover:#5b93ee;
  /* MARK — a fresh, uncanonised clue (2026-09-06 Geoff: "Electric green. Override. This is different.").
     Its own token like --link so every surface reads one value. Night only is load-bearing: parchment fields
     were retired 2026-09-07 ("eliminating the field parchment color scheme"). Measured 2026-09-06: 10.4:1 on
     --panel-3, and it is a signal colour so it carries into day unchanged. */
  --mark:#39ff14;
  /* RARITY — magic-item tiers, keyed to the item's plus. Intentionally IDENTICAL in both themes:
     these are signal colours, so a +4 must read as Epic on night and day alike rather than
     shifting with the surface. Kept out of the accent-discipline rule (gold/red/teal) because they
     never carry structure or state — only an item's tier. */
  --rarity-uncommon:#1eff00; --rarity-rare:#1e9dff; --rarity-epic:#c46bff;
  --rarity-legendary:#ff8000; --rarity-artifact:#FFD700;
  /* camelCase aliases: the .dc.html files spell tokens --panel2/--panel3, the design-system
     spelling is --panel-2/--panel-3. Both must exist or a var() silently invalidates. */
  --panel3:#2e271d;
}
/* Scoped skin (2026-09-01, Geoff): [data-skin="day"] lets ONE region (the Wayfinder's Scriptorium
   aside) wear the parchment palette while the sheet stays night. Same values, second selector only. */
:root[data-theme="day"], [data-skin="day"]{
  --bg:#ddd0b2; --panel:#f4ebd5; --panel2:#eadfc2; --sunk:#e3d7ba;
  --field:#fffaf0; --fieldInk:#2a2216; --ink:#2c2417; --dim:#6f6048;
  --field-dim-1:#f3e9cf; --field-dim-2:#eaddb9; --field-dim-3:#dfcfa2; --field-dim-4:#d2bf8c; --field-dim-5:#c3ac75; --field-dim-6:#b39a63; --field-dim-7:#a28853; --field-dim-8:#8f7645; --field-dim-9:#7a6238; --field-dim-10:#644e2b;
  --field-dim:var(--field-dim-1);
  --rule:#cdbb96; --gold:#8a6a1f; --goldSoft:#b79b52; --red:#9c3524; --teal:#35706a;
  --tex:rgba(0,0,0,.02);
  --panel-2:#eadfc2; --panel-3:#dbceac; --gold-soft: #b79b52; --blue: #00c8ff; --blue-soft: rgba(0,200,255,.10); --ink-on-gold:#2a2216;
  /* day has no dark surface, so the link can be the darker blue throughout and clear 4.5:1 comfortably */
  --link:#1d4ed8; --link-hover:#12379e;
  --mark:#39ff14;
  /* RARITY — magic-item tiers, keyed to the item's plus. Intentionally IDENTICAL in both themes:
     these are signal colours, so a +4 must read as Epic on night and day alike rather than
     shifting with the surface. Kept out of the accent-discipline rule (gold/red/teal) because they
     never carry structure or state — only an item's tier. */
  --rarity-uncommon:#1eff00; --rarity-rare:#1e9dff; --rarity-epic:#c46bff;
  --rarity-legendary:#ff8000; --rarity-artifact:#FFD700;
  --panel3:#dbceac;
}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'EB Garamond',Georgia,serif;-webkit-font-smoothing:antialiased;}
a{color:var(--gold);text-decoration:none;}
a:hover{color:var(--ink);}
input,select,button{font-family:inherit;}
div,span,h1,h2,h3,h4,p,label,button{-webkit-user-drag:none;}
[draggable="true"]{-webkit-user-drag:element;user-select:none;}
input:focus,select:focus{outline:2px solid var(--gold);outline-offset:1px;}
::placeholder{color:#5c5341;opacity:1;}
@keyframes popStat{0%{transform:scale(1)}35%{transform:scale(1.14)}100%{transform:scale(1)}}
