/* ============================================================
   HashGraph Design System Tokens
   ============================================================ */

:root {
  --color-brand:        #0ea5e9;
  --color-brand-light:  #e0f2fe;
  --color-brand-dark:   #0c4a6e;
  --color-hashkey:      #10B981;
  --color-hashkey-soft: rgba(16, 185, 129, 0.12);

  --color-surface:      #FFFFFF;
  --color-surface-alt:  #FAFAFA;
  --color-surface-raised: #FFFFFF;
  --color-surface-inset:  #F4F4F5;

  --color-text-primary:   #171717;
  --color-text-secondary: #52525B;
  --color-text-muted:     #A1A1AA;
  --color-text-inverse:   #FAFAFA;

  --color-border:       #E4E4E7;
  --color-border-light: #F4F4F5;
  --color-border-dark:  #D4D4D8;

  --color-success:      #22C55E;
  --color-warning:      #F59E0B;
  --color-error:        #EF4444;
  --color-info:         #3B82F6;

  --color-code-bg:      #0A0A0A;
  --color-code-border:  #27272A;
  --color-code-text:    #D4D4D8;

  --glass-bg:           rgba(255, 255, 255, 0.8);
  --glass-border:       rgba(0, 0, 0, 0.05);
  --glass-nav-bg:       rgba(255, 255, 255, 0.95);

  --font-sans:  'Inter', system-ui, -apple-system, sans-serif;
  --font-serif: 'Newsreader', 'Georgia', serif;
  --font-mono:  'JetBrains Mono', 'Fira Code', monospace;

  --space-xs:   0.25rem;
  --space-sm:   0.5rem;
  --space-md:   1rem;
  --space-lg:   1.5rem;
  --space-xl:   2rem;
  --space-2xl:  3rem;
  --space-3xl:  4rem;

  --radius-sm:   0.375rem;
  --radius-md:   0.75rem;
  --radius-lg:   1rem;
  --radius-xl:   1.5rem;
  --radius-full: 9999px;

  --shadow-sm:  0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md:  0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
  --shadow-lg:  0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -4px rgba(0, 0, 0, 0.04);
  --shadow-xl:  0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.04);

  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

html.dark {
  --color-surface:        #0A0A0A;
  --color-surface-alt:    #0F0F0F;
  --color-surface-raised: #18181B;
  --color-surface-inset:  #1C1C1E;

  --color-text-primary:   #F4F4F5;
  --color-text-secondary: #A1A1AA;
  --color-text-muted:     #71717A;
  --color-text-inverse:   #171717;

  --color-border:       #27272A;
  --color-border-light: #1E1E21;
  --color-border-dark:  #3F3F46;

  --glass-bg:           rgba(24, 24, 27, 0.85);
  --glass-border:       rgba(255, 255, 255, 0.06);
  --glass-nav-bg:       rgba(10, 10, 10, 0.92);

  --shadow-sm:  0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md:  0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.3);
  --shadow-lg:  0 10px 15px -3px rgba(0, 0, 0, 0.5), 0 4px 6px -4px rgba(0, 0, 0, 0.3);
  --shadow-xl:  0 20px 25px -5px rgba(0, 0, 0, 0.5), 0 8px 10px -6px rgba(0, 0, 0, 0.3);
}

html {
  transition: background-color var(--transition-base), color var(--transition-base);
}

html.dark body {
  background-color: var(--color-surface-alt);
  color: var(--color-text-primary);
}
