import 'package:flutter/material.dart';

/// 从 Pencil 设计变量提取的完整 Token 体系
/// 禁止硬编码颜色/字号/间距，统一通过此类引用
class AppColors {
  AppColors._();

  // ── 品牌色 ──
  static const Color primary = Color(0xFF00ABF3);
  static const Color primaryActive = Color(0xFF0089C4);
  static const Color primaryLight = Color(0xFFE6F7FD);

  // ── 语义色 ──
  static const Color success = Color(0xFF00A870);
  static const Color successBg = Color(0xFFE6F9F2);
  static const Color warning = Color(0xFFE37318);
  static const Color warningBg = Color(0xFFFFF3E8);
  static const Color danger = Color(0xFFD54941);
  static const Color dangerBg = Color(0xFFFFF0EF);

  // ── 金额色 ──
  static const Color amountPrimary = Color(0xFF00A870);

  // ── 文本色 ──
  static const Color textPrimary = Color(0xFF1A1A1A);
  static const Color textSecondary = Color(0xFF666666);
  static const Color textPlaceholder = Color(0xFFBFBFBF);
  static const Color statusGray = Color(0xFF999999);

  // ── 背景色 ──
  static const Color bgPage = Color(0xFFF5F5F5);
  static const Color bgCard = Color(0xFFFFFFFF);

  // ── 边框/分割线 ──
  static const Color border = Color(0xFFE7E7E7);

  // ── 其他状态色 ──
  static const Color revokedText = Color(0xFF5A7D9A);
  static const Color revokedBg = Color(0xFFEEF3F7);
}

/// Pencil 设计字号体系
class AppFontSizes {
  AppFontSizes._();

  static const double caption = 12;
  static const double body = 14;
  static const double subtitle = 16;
  static const double title = 18;
}

/// Pencil 设计间距体系
class AppSpacing {
  AppSpacing._();

  static const double xs = 4;
  static const double sm = 8;
  static const double md = 16;
  static const double lg = 24;
  static const double xl = 32;
}
