/**
 * 256Bank Design Tokens — CSS Custom Properties
 * Generated from tokens/*.json
 *
 * Usage:
 *   import './tokens.css';
 *
 * All tokens are exposed as CSS custom properties.
 * Theme-specific tokens (--t-*) are defined in themes.css.
 */

:root {
  /* ============ COLOR: NAVY ============ */
  --navy-50:  #F4F7FA;
  --navy-100: #E1E8F0;
  --navy-200: #BECDDD;
  --navy-300: #8AA4C2;
  --navy-400: #5878A0;
  --navy-500: #3D5A7F;
  --navy-600: #2A4565;
  --navy-700: #1A2F47;
  --navy-800: #102236;
  --navy-900: #0A1828;
  --navy-950: #050B14;

  /* ============ COLOR: PURPLE ============ */
  --purple-50:  #F8F4FE;
  --purple-100: #EEE7FB;
  --purple-200: #DDD2F7;
  --purple-300: #C4B5FD;
  --purple-400: #A78BFA;
  --purple-500: #7B5EA7;
  --purple-600: #6B47B5;
  --purple-700: #523594;
  --purple-800: #3E2278;
  --purple-900: #2A1565;
  --purple-950: #1A0F2E;

  /* ============ COLOR: COPPER ============ */
  --copper-300: #D89863;
  --copper-400: #C97C40;
  --copper-500: #B86527;
  --copper-600: #A0531C;
  --copper-700: #8B4513;

  /* ============ COLOR: SEMANTIC ============ */
  --success: #2D6A4F;
  --warning: #B8862D;
  --error:   #9B2C2C;
  --info:    var(--purple-500);

  /* ============ COLOR: NEUTRAL (default doc surfaces) ============ */
  --ink:      #0A1828;
  --ink-mid:  #4C4F5C;
  --ink-soft: #8A8E99;
  --bg:       #FAFAFC;
  --surface:  #FFFFFF;
  --border:   #E6E7ED;

  /* ============ GRADIENTS ============ */
  --grad-platform:        linear-gradient(135deg, #2a1565 0%, #1c1f5c 50%, #0e2a66 100%);
  --grad-platform-copper: linear-gradient(135deg, #5a2a0d 0%, #3d1a08 50%, #0a1828 100%);
  --grad-mark-purple-dark:  linear-gradient(135deg, #c4b5fd 0%, #a78bfa 55%, #3b82f6 100%);
  --grad-mark-purple-light: linear-gradient(135deg, #7B5EA7 0%, #6B47B5 55%, #523594 100%);
  --grad-mark-copper:       linear-gradient(135deg, #F0D2B5 0%, #D89863 55%, #B86527 100%);

  /* ============ FONT FAMILIES ============ */
  --font-app-sans:      'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
  --font-document-sans: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --font-mono:          'IBM Plex Mono', 'JetBrains Mono', 'SF Mono', Monaco, Consolas, monospace;

  /* ============ FONT WEIGHTS ============ */
  --fw-light:    300;
  --fw-regular:  400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;

  /* ============ FONT SIZES ============ */
  --fs-10: 10px;
  --fs-11: 11px;
  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-17: 17px;
  --fs-18: 18px;
  --fs-20: 20px;
  --fs-22: 22px;
  --fs-24: 24px;
  --fs-26: 26px;
  --fs-28: 28px;
  --fs-32: 32px;
  --fs-36: 36px;
  --fs-40: 40px;
  --fs-48: 48px;
  --fs-56: 56px;
  --fs-64: 64px;

  /* ============ LETTER SPACING ============ */
  --ls-tight:    -0.03em;
  --ls-snug:     -0.025em;
  --ls-compact:  -0.02em;
  --ls-default:  -0.01em;
  --ls-minimal:  -0.005em;
  --ls-neutral:  0;
  --ls-wide:     0.05em;
  --ls-label:    0.18em;
  --ls-extreme:  0.22em;

  /* ============ LINE HEIGHT ============ */
  --lh-tight:   1.05;
  --lh-snug:    1.15;
  --lh-normal:  1.5;
  --lh-relaxed: 1.6;

  /* ============ SPACING ============ */
  --s-0:  0px;
  --s-1:  4px;
  --s-2:  8px;
  --s-3:  12px;
  --s-4:  16px;
  --s-5:  20px;
  --s-6:  24px;
  --s-7:  32px;
  --s-8:  40px;
  --s-9:  48px;
  --s-10: 56px;
  --s-11: 64px;
  --s-12: 80px;
  --s-13: 96px;
  --s-14: 128px;

  /* ============ BORDER RADIUS ============ */
  --r-sm:    6px;
  --r-md:    10px;
  --r-lg:    14px;
  --r-xl:    18px;
  --r-2xl:   24px;
  --r-pill:  999px;
  --r-phone: 44px;

  /* ============ DURATION ============ */
  --d-instant:    0ms;
  --d-fast:       150ms;
  --d-normal:     300ms;
  --d-theme:      400ms;
  --d-moderate:   500ms;
  --d-slow:       800ms;
  --d-deliberate: 1500ms;

  /* ============ EASING ============ */
  --e-linear:   linear;
  --e-out:      cubic-bezier(0, 0, 0.2, 1);
  --e-in:       cubic-bezier(0.4, 0, 1, 1);
  --e-smooth:   cubic-bezier(0.16, 1, 0.3, 1);
  --e-swift:    cubic-bezier(0.4, 0, 0.2, 1);

  /* ============ GESTURE ============ */
  --gesture-standard:    800ms;
  --gesture-high-value:  1500ms;
  --gesture-stagger:     100ms;
  --gesture-reset:       300ms;
}
