/* CAIRN design tokens: the single source for colour, type and timing.
   Mirrored one-for-one in site/js/tokens.js (parity is enforced by tools/lint.mjs).
   Values are IRON SIGHT's; the hue families are mapped onto Irish road-sign families. */

@font-face { font-family: "Overpass"; src: url("../fonts/overpass-var.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Barlow Semi Condensed"; src: url("../fonts/barlow-sc-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Barlow Semi Condensed"; src: url("../fonts/barlow-sc-500.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Barlow Semi Condensed"; src: url("../fonts/barlow-sc-600.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Barlow Semi Condensed"; src: url("../fonts/barlow-sc-700.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Barlow Semi Condensed"; src: url("../fonts/barlow-sc-500i.woff2") format("woff2"); font-weight: 500; font-style: italic; font-display: swap; }
@font-face { font-family: "Share Tech Mono"; src: url("../fonts/share-tech-mono.woff2") format("woff2"); font-weight: 400; font-display: swap; }

:root {
  /* Surfaces: night asphalt */
  --cairn-surface-0: #030306;
  --cairn-surface-1: #0a0a0f;
  --cairn-surface-2: #0d0d14;
  --cairn-surface-3: #14141f;
  --cairn-surface-4: #1a1a2e;

  /* Signal palette (glow / matte / dim) */
  --cairn-cyan: #00f0ff;
  --cairn-cyan-matte: #0a8f9e;
  --cairn-cyan-dim: #0d4f58;
  --cairn-teal: #00d4aa;
  --cairn-teal-matte: #0a8a72;
  --cairn-teal-dim: #064d40;
  --cairn-green: #39ff14;
  --cairn-green-matte: #2da44e;
  --cairn-green-dim: #16532a;
  --cairn-emerald: #00e676;
  --cairn-emerald-matte: #0d9058;
  --cairn-emerald-dim: #065535;
  --cairn-amber: #ffb627;
  --cairn-amber-matte: #b8860b;
  --cairn-amber-dim: #5c4306;
  --cairn-gold: #ffd700;
  --cairn-gold-matte: #a89000;
  --cairn-gold-dim: #544800;
  --cairn-red: #ff4444;
  --cairn-red-matte: #b83232;
  --cairn-red-dim: #5c1a1a;
  --cairn-crimson: #dc2626;
  --cairn-crimson-matte: #991b1b;
  --cairn-crimson-dim: #4c0e0e;
  --cairn-magenta: #ff2d6a;
  --cairn-magenta-matte: #b82050;
  --cairn-magenta-dim: #5c1028;
  --cairn-rose: #f472b6;
  --cairn-rose-matte: #a8507e;
  --cairn-rose-dim: #542a40;
  --cairn-violet: #8957e5;
  --cairn-violet-matte: #6940a8;
  --cairn-violet-dim: #38235c;
  --cairn-indigo: #6366f1;
  --cairn-indigo-matte: #4b4db5;
  --cairn-indigo-dim: #2a2b62;
  --cairn-blue: #388bfd;
  --cairn-blue-matte: #2a68b8;
  --cairn-blue-dim: #183a65;
  --cairn-slate: #94a3b8;
  --cairn-slate-matte: #64748b;
  --cairn-slate-dim: #334155;

  /* Text */
  --cairn-text: #b8b8d0;
  --cairn-text-bright: #e8e8f8;
  --cairn-text-dim: #6a6a8a;
  --cairn-text-muted: #7a7a9a;

  /* Sign families -> accents (service accent registry for the deck's categories) */
  --cairn-cat-regulatory: #dc2626;
  --cairn-cat-warning: #ffd700;
  --cairn-cat-roadworks: #ffb627;
  --cairn-cat-information: #388bfd;
  --cairn-cat-mandatory: #6366f1;
  --cairn-cat-bustram: #00d4aa;
  --cairn-cat-markings: #94a3b8;
  --cairn-cat-qa: #00f0ff;
  --cairn-svc-cairn: #ffd700;

  /* Verdicts */
  --cairn-right: #39ff14;
  --cairn-right-matte: #2da44e;
  --cairn-wrong: #ff4444;
  --cairn-wrong-matte: #b83232;

  /* Glass */
  --cairn-glass: rgba(10, 10, 20, 0.55);
  --cairn-glass-strong: rgba(10, 10, 20, 0.82);
  --cairn-glass-frost: blur(20px) saturate(1.4);
  --cairn-glass-border: rgba(0, 240, 255, 0.08);
  --cairn-glass-border-bright: rgba(0, 240, 255, 0.22);
  --cairn-border-solid: #64748b;
  --cairn-scrim: rgba(3, 3, 6, 0.86);
  --cairn-holo-gradient: linear-gradient(115deg, transparent 30%, rgba(0, 240, 255, 0.07) 45%, rgba(255, 215, 0, 0.05) 55%, transparent 70%);
  --cairn-glow-cyan: 0 0 20px rgba(0, 240, 255, 0.25), 0 0 60px rgba(0, 240, 255, 0.08);
  --cairn-glow-gold: 0 0 20px rgba(255, 215, 0, 0.25), 0 0 60px rgba(255, 215, 0, 0.08);
  --cairn-glow-green: 0 0 20px rgba(57, 255, 20, 0.25), 0 0 60px rgba(57, 255, 20, 0.08);
  --cairn-glow-red: 0 0 20px rgba(255, 68, 68, 0.25), 0 0 60px rgba(255, 68, 68, 0.08);
  --cairn-glow-amber: 0 0 20px rgba(255, 182, 39, 0.25), 0 0 60px rgba(255, 182, 39, 0.08);
  --cairn-shadow-card: 0 18px 40px rgba(0, 0, 0, 0.55);
  --cairn-drop-art: drop-shadow(0 14px 22px rgba(0, 0, 0, 0.6));
  --cairn-drop-tile: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.5));

  /* Road furniture */
  --cairn-asphalt: radial-gradient(ellipse at 50% -20%, #1a1a2e 0%, #0a0a0f 45%, #030306 100%);
  --cairn-lane-dash: repeating-linear-gradient(90deg, #e8e8f8 0 26px, transparent 26px 50px);
  --cairn-edge-dash: repeating-linear-gradient(180deg, #a89000 0 34px, transparent 34px 60px);
  --cairn-plate: #e8e8f8;
  --cairn-plate-ink: #dc2626;
  --cairn-route: #065535;
  --cairn-route-edge: #e8e8f8;
  --cairn-night-tint: rgba(255, 182, 39, 1);

  /* Type: display = drama, ui = flow, mono = truth */
  --cairn-font-display: 'Overpass', 'Segoe UI', system-ui, sans-serif;
  --cairn-font-ui: 'Barlow Semi Condensed', 'Segoe UI', system-ui, sans-serif;
  --cairn-font-mono: 'Share Tech Mono', ui-monospace, Consolas, monospace;
  --cairn-size-micro: 10px;
  --cairn-size-pill: 12px;
  --cairn-size-data: 13px;
  --cairn-size-body: 16px;
  --cairn-size-ui: 18px;
  --cairn-size-display-s: 22px;
  --cairn-size-display-m: 30px;
  --cairn-size-display-l: 46px;

  /* Space and shape */
  --cairn-space-1: 4px;
  --cairn-space-2: 8px;
  --cairn-space-3: 12px;
  --cairn-space-4: 16px;
  --cairn-space-5: 24px;
  --cairn-space-6: 36px;
  --cairn-radius-s: 8px;
  --cairn-radius-m: 14px;
  --cairn-radius-l: 22px;
  --cairn-touch: 44px;

  /* Timing */
  --cairn-dur-micro: 100ms;
  --cairn-dur-short: 200ms;
  --cairn-dur-medium: 400ms;
  --cairn-dur-flip: 700ms;
  --cairn-dur-drift: 1000ms;
  --cairn-dur-pulse-calm: 3s;
  --cairn-dur-pulse-watch: 2s;
  --cairn-dur-pulse-urgent: 1s;
  --cairn-dur-sweep: 8s;
  --cairn-dur-glyph: 12ms;
  --cairn-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --cairn-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  /* Directive defaults (overwritten live by site/js/director.js) */
  --cairn-motion: 1;
  --cairn-brightness: 1;
  --cairn-warmth: 0.2;
  --cairn-confidence: 0;
}
