/* Riverlamp brand tokens v2. Sphere identity, Titanium palette, Geist type.
   Rule: Signal orange marks something live, at most once per screen. Everything else is metal. */
:root {
  /* Fixed brand colours */
  --rl-bone: #F3F4F6;
  --rl-titanium: #C9CCD1;
  --rl-steel: #8E939B;
  --rl-graphite: #1C1D20;
  --rl-night: #0E0F11;
  --rl-signal: #FF7A1A;

  /* Light theme */
  --rl-bg: var(--rl-bone);
  --rl-surface: #FFFFFF;
  --rl-surface-2: #EBECEF;
  --rl-line: #DCDEE2;
  --rl-text: var(--rl-graphite);
  --rl-text-muted: #61666E;
  --rl-primary: var(--rl-graphite);     /* main buttons: graphite with white text */
  --rl-on-primary: #FFFFFF;
  --rl-live: var(--rl-signal);          /* the one live thing */
  --rl-on-live: #1C1D20;
  --rl-live-soft: #FFE6D3;
  --rl-data-1: var(--rl-graphite);      /* your numbers */
  --rl-data-2: var(--rl-steel);         /* comparison, last period */
  --rl-data-track: #E3E5E8;             /* bar tracks, empty rings */
  --rl-good: #17824A;
  --rl-warn: #946500;
  --rl-bad: #D93B3B;
  --rl-chat: #E7F6EA;

  /* Type */
  --rl-font: 'Geist', -apple-system, 'SF Pro Text', 'Helvetica Neue', Arial, sans-serif;
  --rl-font-mono: 'Geist Mono', ui-monospace, 'SF Mono', Menlo, monospace;
  --rl-track-tight: -0.035em;           /* wordmark, big numbers, headlines */
  --rl-track-head: -0.025em;

  /* Shape, depth, motion */
  --rl-radius-sm: 10px;
  --rl-radius: 18px;
  --rl-radius-lg: 28px;
  --rl-radius-pill: 999px;
  --rl-shadow: 0 1px 2px rgba(14, 15, 17, .06), 0 8px 28px rgba(14, 15, 17, .08);
  --rl-metal: linear-gradient(135deg, #F3F4F6 0%, #C9CCD1 48%, #E6E7EA 100%);
  --rl-ease: cubic-bezier(.22, 1, .36, 1);
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --rl-bg: var(--rl-night); --rl-surface: #1C1D20; --rl-surface-2: #26282C; --rl-line: #2E3035;
    --rl-text: var(--rl-bone); --rl-text-muted: #9A9FA7;
    --rl-primary: var(--rl-bone); --rl-on-primary: var(--rl-graphite);
    --rl-live: #FF8A33; --rl-on-live: #0E0F11; --rl-live-soft: #3A2414;
    --rl-data-1: var(--rl-bone); --rl-data-2: var(--rl-steel); --rl-data-track: #2A2C30;
    --rl-good: #3DD68C; --rl-warn: #F5B841; --rl-bad: #FF6B6B; --rl-chat: #1D2F22;
    --rl-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 28px rgba(0, 0, 0, .45);
    --rl-metal: linear-gradient(135deg, #3A3C41 0%, #232529 50%, #303236 100%);
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --rl-bg: var(--rl-night); --rl-surface: #1C1D20; --rl-surface-2: #26282C; --rl-line: #2E3035;
  --rl-text: var(--rl-bone); --rl-text-muted: #9A9FA7;
  --rl-primary: var(--rl-bone); --rl-on-primary: var(--rl-graphite);
  --rl-live: #FF8A33; --rl-on-live: #0E0F11; --rl-live-soft: #3A2414;
  --rl-data-1: var(--rl-bone); --rl-data-2: var(--rl-steel); --rl-data-track: #2A2C30;
  --rl-good: #3DD68C; --rl-warn: #F5B841; --rl-bad: #FF6B6B; --rl-chat: #1D2F22;
  --rl-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 28px rgba(0, 0, 0, .45);
  --rl-metal: linear-gradient(135deg, #3A3C41 0%, #232529 50%, #303236 100%);
  color-scheme: dark;
}
.rl-num { font-variant-numeric: tabular-nums; letter-spacing: var(--rl-track-tight); }

/* Names used by site.css from v1, mapped onto v2 */
:root { --rl-font-display: var(--rl-font); --rl-font-ui: var(--rl-font); --rl-font-data: var(--rl-font-mono); --rl-light: var(--rl-live); --rl-data-soft: var(--rl-data-track); }
