/* ============================================================
   DESIGN TOKENS — single rebrand point.
   Mirrors arewaglobal_app/lib/core/theme/app_colors.dart exactly -
   same hex values as the Flutter app's AppColors class, so the web
   app and the mobile app are visually the same brand, not just
   similarly-blue.
   Edit ONLY this file to retheme the whole web app.
   ============================================================ */
:root {
  /* Brand (AppColors.primary/primaryDark/primaryDeep/accent/accentDark) */
  --color-primary: #00205b;
  --color-primary-dark: #001336;
  --color-primary-light: #000c1f; /* AppColors.primaryDeep - the wallet gradient's 3rd stop */
  --color-accent: #10b981;
  --color-accent-dark: #059669;
  --color-gold: #f5b93d; /* AppColors.gold - the cashback/bonus highlight */

  /* Small badges (avatars, etc.) - both stops stay in the navy family,
     matching WalletCard's own gradient direction, rather than a jarring
     navy-to-green diagonal on a small circular element. */
  --gradient-primary: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  /* WalletCard.walletGradient: [primary, primaryDark, primaryDeep] at
     stops [0, 0.55, 1.0], topLeft->bottomRight - CSS gradients don't
     take a 3-color 135deg shorthand as cleanly as Flutter's Alignment
     pair, so this reproduces the same three stops explicitly. */
  --gradient-dark: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 55%, var(--color-primary-light) 100%);

  /* Surfaces (app_colors.dart: bg/surface/primaryLight/accentLight) */
  --color-background: #f8fafc;
  --color-surface: #ffffff;
  --color-input-fill: #f8fafc;
  --color-icon-bg: #ecfdf5; /* AppColors.accentLight */
  --color-icon-bg-alt: #e8ecf5; /* AppColors.primaryLight */

  /* Text (app_colors.dart: ink/muted) */
  --color-text-primary: #1e293b;
  --color-text-secondary: #64748b;
  --color-text-hint: #94a3b8;
  --color-text-on-primary: #ffffff;

  /* Status (app_colors.dart: accent/warning/danger) */
  --color-success: #10b981;
  --color-warning: #f59e0b;
  --color-error: #ef4444;

  /* Misc */
  --color-divider: #e2e8f0;
  --color-card-shadow: rgba(15, 23, 42, 0.06);

  /* Network brand colors (Airtime.dart / BuyDataPage.dart) */
  --net-mtn: #ffcc00;
  --net-airtel: #e30613;
  --net-glo: #4caf50;
  --net-9mobile: #006600;

  /* Typography */
  --font-family: 'Poppins', 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --fs-xs: 0.6875rem;   /* 11px */
  --fs-sm: 0.75rem;     /* 12px */
  --fs-base: 0.8125rem; /* 13px */
  --fs-md: 0.875rem;    /* 14px */
  --fs-lg: 1rem;        /* 16px */
  --fs-xl: 1.125rem;    /* 18px */
  --fs-2xl: 1.375rem;   /* 22px */
  --fs-3xl: 1.75rem;    /* 28px */

  /* Radii (app_theme.dart: 12/14/16/20) */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 14px;
  --radius-xl: 16px;
  --radius-2xl: 20px;
  --radius-full: 999px;

  /* Spacing scale */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;

  /* Elevation */
  --shadow-sm: 0 2px 6px rgba(15, 23, 42, 0.06);
  --shadow-md: 0 6px 16px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 12px 32px rgba(15, 23, 42, 0.12);

  /* Layout */
  --header-height: 64px;
  --bottom-nav-height: 64px;
  --sidebar-width: 260px;
  --content-max-width: 1200px;

  /* Motion */
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 150ms;
  --dur-base: 250ms;
  --dur-slow: 400ms;

  --z-header: 100;
  --z-nav: 100;
  --z-modal: 1000;
  --z-toast: 1100;
}

/* Dark surfaces reused across gated screens (splash/pin lock) */
:root {
  --color-gate-start: var(--color-primary-dark);
  --color-gate-end: #0a0e27;
}
