﻿/**
 * Design Tokens - 缁熶竴璁捐绯荤粺鍙橀噺
 * 鐢ㄤ簬 PC 绔拰绉诲姩绔殑涓€鑷存€ц璁? * 浣滆€? UI 浼樺寲鍥㈤槦
 * 鏃ユ湡: 2025-10-17
 */

:root {
  /* ==================== 棰滆壊绯荤粺 ==================== */

  /* 主品牌色 - 深蓝 */
  --color-primary: #1d4ed8;
  --color-primary-light: #3b82f6;
  --color-primary-dark: #1e40af;
  --color-primary-hover: #1e40af;

  /* 辅助色 - 金属/科技感 */
  --color-secondary: #64748b;
  --color-accent-gold: #c8a45a;
  --color-accent-cyan: #06b6d4;
  --color-accent-steel: #94a3b8;

  /* 中性色 - 冷灰色调 */
  --color-white: #FFFFFF;
  --color-black: #0a0f1a;
  --color-text-primary: #1e293b;
  --color-text-secondary: #475569;
  --color-text-tertiary: #94a3b8;
  --color-text-disabled: #cbd5e1;

  /* 背景色 - 冷色调 */
  --color-bg-page: #f1f5f9;
  --color-bg-container: #FFFFFF;
  --color-bg-light: #f1f5f9;
  --color-bg-lighter: #f8fafc;
  --color-bg-lightest: #f8fafc;

  /* 边框色 - 冷灰 */
  --color-border-base: #e2e8f0;
  --color-border-light: #e2e8f0;
  --color-border-lighter: #f1f5f9;
  --color-border-lightest: #f8fafc;

  /* 鍔熻兘鑹?*/
  --color-success: #52C41A;
  --color-warning: #FAAD14;
  --color-error: #FF5B53;
  --color-info: #1d4ed8;

  /* VIP & 鐗规畩鑹?*/
  --color-vip: #E3BA85;
  --color-premium: #FFD700;
  --color-featured: #FF9000;

  /* ==================== 瀛椾綋绯荤粺 ==================== */

  /* 瀛椾綋瀹舵棌 */
  --font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue",
                       "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei",
                       "Droid Sans Fallback", Arial, sans-serif;
  --font-family-code: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono",
                      Consolas, "Courier New", monospace;

  /* 瀛椾綋澶у皬 - PC 绔?*/
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-base: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-2xl: 24px;
  --font-size-3xl: 28px;
  --font-size-4xl: 32px;

  /* 瀛楅噸 */
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* 琛岄珮 */
  --line-height-tight: 1.2;
  --line-height-base: 1.5;
  --line-height-relaxed: 1.75;
  --line-height-loose: 2;

  /* ==================== 闂磋窛绯荤粺锛?px 鏍呮爮锛?==================== */

  /* 鍩虹闂磋窛 */
  --spacing-0: 0;
  --spacing-1: 4px;
  --spacing-2: 8px;
  --spacing-3: 12px;
  --spacing-4: 16px;
  --spacing-5: 20px;
  --spacing-6: 24px;
  --spacing-7: 28px;
  --spacing-8: 32px;
  --spacing-10: 40px;
  --spacing-12: 48px;
  --spacing-14: 56px;
  --spacing-16: 64px;
  --spacing-20: 80px;

  /* ==================== 鍦嗚绯荤粺 ==================== */

  --radius-none: 0;
  --radius-sm: 2px;
  --radius-base: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 12px;
  --radius-2xl: 16px;
  --radius-3xl: 24px;
  --radius-full: 50%;
  --radius-circle: 9999px;

  /* ==================== 闃村奖绯荤粺 ==================== */

  --shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
  --shadow-base: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);

  /* 椤圭洰鐗瑰畾闃村奖 */
  --shadow-header: 0px 1px 27px 0px rgba(91, 94, 96, 0.44);
  --shadow-card: 0px 3px 27px 0px rgba(91, 94, 96, 0.21);
  --shadow-card-hover: 0px 6px 35px 0px rgba(91, 94, 96, 0.3);

  /* ==================== 甯冨眬绯荤粺 ==================== */

  /* 瀹瑰櫒瀹藉害 */
  --container-xs: 640px;
  --container-sm: 768px;
  --container-md: 1024px;
  --container-lg: 1280px;
  --container-xl: 1480px;
  --container-2xl: 1680px;

  /* 澶撮儴楂樺害 */
  --header-height-pc: 70px;
  --header-height-mobile: 88px;

  /* 搴曢儴瀵艰埅楂樺害 */
  --footer-nav-height: 50px;

  /* Z-index 灞傜骇 */
  --z-index-dropdown: 1000;
  --z-index-sticky: 1020;
  --z-index-fixed: 1030;
  --z-index-modal-backdrop: 1040;
  --z-index-modal: 1050;
  --z-index-popover: 1060;
  --z-index-tooltip: 1070;

  /* ==================== 杩囨浮鍔ㄧ敾 ==================== */

  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slower: 500ms cubic-bezier(0.4, 0, 0.2, 1);

  /* ==================== 鏂偣绯荤粺 ==================== */

  /* 鍝嶅簲寮忔柇鐐癸紙鐢ㄤ簬 JS 鍒ゆ柇锛?*/
  --breakpoint-xs: 375px;
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1536px;

  /* ==================== 鎸夐挳绯荤粺 ==================== */

  /* 鎸夐挳楂樺害 */
  --btn-height-sm: 32px;
  --btn-height-base: 40px;
  --btn-height-lg: 48px;

  /* 鎸夐挳鍐呰竟璺?*/
  --btn-padding-sm: 0 12px;
  --btn-padding-base: 0 16px;
  --btn-padding-lg: 0 24px;

  /* ==================== 琛ㄥ崟绯荤粺 ==================== */

  /* 杈撳叆妗嗛珮搴?*/
  --input-height-sm: 32px;
  --input-height-base: 40px;
  --input-height-lg: 48px;

  /* 杈撳叆妗嗗唴杈硅窛 */
  --input-padding-horizontal: 12px;
  --input-padding-vertical: 8px;

  /* ==================== 鍗＄墖绯荤粺 ==================== */

  /* 鍗＄墖鍐呰竟璺?*/
  --card-padding-sm: 12px;
  --card-padding-base: 16px;
  --card-padding-lg: 24px;

  /* 鍗＄墖鍦嗚 */
  --card-radius: var(--radius-lg);
}

/* ==================== 绉诲姩绔彉閲忚鐩?==================== */
/* 鍩轰簬 750px 璁捐绋匡紝1rem = 10px */

@media (max-width: 768px) {
  :root {
    /* 绉诲姩绔瓧浣撳ぇ灏忎娇鐢?rem 鍗曚綅 */
    --font-size-xs: 0.24rem;
    --font-size-sm: 0.28rem;
    --font-size-base: 0.3rem;
    --font-size-lg: 0.34rem;
    --font-size-xl: 0.36rem;
    --font-size-2xl: 0.4rem;

    /* 绉诲姩绔棿璺?*/
    --spacing-1: 0.05rem;
    --spacing-2: 0.1rem;
    --spacing-3: 0.15rem;
    --spacing-4: 0.2rem;
    --spacing-5: 0.25rem;
    --spacing-6: 0.3rem;
    --spacing-8: 0.4rem;
    --spacing-10: 0.5rem;

    /* 绉诲姩绔渾瑙?*/
    --radius-base: 0.08rem;
    --radius-md: 0.1rem;
    --radius-lg: 0.15rem;
    --radius-xl: 0.2rem;
    --radius-2xl: 0.3rem;

    /* 绉诲姩绔槾褰?*/
    --shadow-card: 0px 0px 35px 0px rgba(221, 221, 221, 0.69);
    --shadow-card-hover: 0px 0px 40px 0px rgba(221, 221, 221, 0.8);

    /* 绉诲姩绔ご閮ㄩ珮搴?*/
    --header-height-mobile: 0.88rem;

    /* 绉诲姩绔寜閽珮搴?*/
    --btn-height-sm: 0.6rem;
    --btn-height-base: 0.7rem;
    --btn-height-lg: 0.8rem;

    /* 绉诲姩绔緭鍏ユ楂樺害 */
    --input-height-sm: 0.6rem;
    --input-height-base: 0.7rem;
    --input-height-lg: 0.8rem;
  }
}

/* ==================== 娣辫壊妯″紡鏀寔锛堥鐣欙級 ==================== */

@media (prefers-color-scheme: dark) {
  :root {
    /* 娣辫壊妯″紡涓嬬殑棰滆壊鍙互鍦ㄨ繖閲屽畾涔?*/
    /* --color-bg-page: #1a1a1a; */
    /* --color-text-primary: #ffffff; */
  }
}

