/**
 * Rubricor design tokens — canonical palette (RedGear dark + red + coin gold).
 */
:root {
  /* Surfaces: page -> panels -> raised/hover states */
  --gs-bg: #0c0e14;
  --gs-bg-elevated: #12151d;
  --gs-surface: #181c26;
  --gs-surface-hover: #1e2330;
  --gs-surface-raised: #1a1f2b;

  /* Borders: default, subtle containers, high-emphasis focus/active */
  --gs-border: #2b3344;
  --gs-border-soft: #222833;
  --gs-border-strong: #3a4558;

  /* Text: primary content, secondary labels, muted metadata, disabled */
  --gs-text: #f0f3fa;
  --gs-text-secondary: #a8b0c2;
  --gs-text-muted: #6d778c;
  --gs-text-disabled: #565f72;
  --gs-text-on-primary: #ffffff;
  --gs-text-on-coin: #0c0e14;
  --gs-white: #ffffff;

  /* Brand: RedGear primary action/accent */
  --gs-accent: #e63946;
  --gs-accent-soft: rgba(230, 57, 70, 0.14);
  --gs-accent-subtle: rgba(230, 57, 70, 0.06);
  --gs-accent-border: rgba(230, 57, 70, 0.35);
  --gs-accent-hover: #cf3040;
  --gs-primary: var(--gs-accent);
  --gs-primary-hover: var(--gs-accent-hover);
  --gs-secondary: var(--gs-text-secondary);

  /* Economy: Cog Coins, vouchers, discounts, reward highlights */
  --gs-coin: #ffd166;
  --gs-coin-bright: #ffcc00;
  --gs-coin-soft: rgba(255, 204, 0, 0.1);
  --gs-coin-subtle: rgba(255, 204, 0, 0.08);
  --gs-coin-border: rgba(255, 204, 0, 0.35);
  --gs-highlight: var(--gs-coin);
  --gs-voucher: #f56614;
  --gs-voucher-soft: rgba(245, 102, 20, 0.12);
  --gs-discount: #00a2ea;
  --gs-discount-soft: rgba(0, 162, 234, 0.12);
  --gs-reward-accent: var(--gs-coin-bright);
  --gs-beam-color: var(--gs-coin-bright);

  /* Semantic: success, warning, danger, informational states */
  --gs-ok: #2ecc87;
  --gs-ok-soft: rgba(46, 204, 135, 0.12);
  --gs-ok-border: rgba(46, 204, 135, 0.35);
  --gs-ok-text: #9ef0c8;
  --gs-warn: #f5a623;
  --gs-warn-soft: rgba(245, 166, 35, 0.12);
  --gs-warn-border: rgba(245, 166, 35, 0.35);
  --gs-danger: #ff5c6a;
  --gs-danger-soft: rgba(255, 92, 106, 0.12);
  --gs-danger-border: rgba(255, 92, 106, 0.35);
  --gs-danger-text: #ffb3bb;
  --gs-info: #5b9dff;
  --gs-info-soft: rgba(91, 157, 255, 0.12);
  --gs-info-border: rgba(91, 157, 255, 0.35);

  /* Overlays & hairlines */
  --gs-page-chrome: rgba(8, 10, 15, 0.92);
  --gs-overlay: rgba(12, 14, 20, 0.88);
  --gs-glass: rgba(255, 255, 255, 0.04);
  --gs-glass-hover: rgba(255, 255, 255, 0.06);
  --gs-glass-strong: rgba(255, 255, 255, 0.12);
  --gs-hairline: rgba(255, 255, 255, 0.04);
  --gs-hairline-strong: rgba(255, 255, 255, 0.08);
  --gs-scrim: rgba(0, 0, 0, 0.35);
  --gs-scrim-soft: rgba(0, 0, 0, 0.18);

  /* Platform colors */
  --gs-platform-discord: #5865f2;
  --gs-platform-twitch: #9146ff;
  --gs-platform-google: #4285f4;
  --gs-platform-youtube: #eb0028;

  /* Layout */
  --gs-radius: 12px;
  --gs-radius-sm: 8px;
  --gs-radius-lg: 18px;
  --gs-radius-pill: 999px;
  --gs-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
  --gs-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.22);
  --gs-shadow-lift: 0 14px 40px rgba(0, 0, 0, 0.38);
  --gs-shadow-glow-coin: 0 0 24px rgba(255, 204, 0, 0.22);
  --gs-shadow-glow-accent: 0 0 28px rgba(230, 57, 70, 0.2);

  /* Typography */
  --gs-font: "Fredoka", "Segoe UI", system-ui, sans-serif;
  --gs-font-headline: var(--gs-font);
  --gs-tracking: 0.02em;
  --gs-tracking-strong: 0.035em;
  --gs-sub-xs: 11px;
  --gs-sub-sm: 13px;
  --gs-sub-md: 13px;
  --gs-mono: "Cascadia Code", "Consolas", monospace;

  /* Shell */
  --gs-sidebar-w: 196px;
  --gs-results-w: 320px;
  --gs-viewer-max: 1080px;
  --gs-mobile-nav-h: 64px;

  /* Focus & disabled */
  --gs-focus-ring: 0 0 0 3px var(--gs-accent-soft);
  --gs-disabled-opacity: 0.55;

  /* Activity kill feed */
  --gs-feed-bg: var(--gs-bg-elevated);
  --gs-feed-row-hover: var(--gs-surface-hover);
  --gs-feed-accent: var(--gs-coin);

  /* Motion */
  --gs-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --gs-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --gs-ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --gs-duration-fast: 140ms;
  --gs-duration: 220ms;
  --gs-duration-slow: 380ms;
  --gs-stagger-step: 45ms;
}
