/**
 * CityTrust Design Tokens
 * 公开站设计变量 — modern · high · young
 * 仅作变量定义,不含样式规则
 */

:root {
  /* ==================== Color · 配色 ==================== */
  /* 底层 (午夜蓝) */
  --ct-bg: #0B1020;
  --ct-bg-deep: #070B16;
  --ct-bg-elev: #131A2E;
  --ct-bg-elev-2: #1A2238;

  /* Surface (半透浮层) */
  --ct-surface: rgba(255, 255, 255, 0.025);
  --ct-surface-hover: rgba(255, 255, 255, 0.05);
  --ct-surface-active: rgba(255, 255, 255, 0.08);

  /* Border */
  --ct-border: rgba(255, 255, 255, 0.06);
  --ct-border-strong: rgba(255, 255, 255, 0.12);
  --ct-border-gold: rgba(201, 160, 92, 0.38);

  /* Brand · 暖金 (校准至 logo: 暗卡其 → 硬木 → 亮卡其) */
  --ct-gold: #C9A05C;            /* 主品牌色 (硬木金,接近 logo 中部) */
  --ct-gold-hover: #DDB572;
  --ct-gold-deep: #8B6F38;       /* 暗卡其 */
  --ct-gold-light: #E0C285;      /* 亮卡其 */
  --ct-gold-soft: rgba(201, 160, 92, 0.12);
  --ct-gold-glow: rgba(201, 160, 92, 0.22);
  --ct-gold-glow-strong: rgba(201, 160, 92, 0.5);
  /* Logo 渐变(可直接给装饰元素用) */
  --ct-gold-gradient: linear-gradient(180deg, #E0C285 0%, #C9A05C 50%, #8B6F38 100%);

  /* Accent · 暖琥珀(替代偏冷的薄荷青,与暖金更协调,<5% 用量) */
  --ct-accent: #E8B872;
  --ct-accent-soft: rgba(232, 184, 114, 0.12);
  --ct-accent-glow: rgba(232, 184, 114, 0.25);
  /* 旧 mint 别名保留,渐进迁移 */
  --ct-mint: #E8B872;
  --ct-mint-soft: rgba(232, 184, 114, 0.12);
  --ct-mint-glow: rgba(232, 184, 114, 0.25);

  /* Text · 烟灰白(暖调) */
  --ct-text: rgba(238, 232, 218, 0.92);
  --ct-text-soft: rgba(238, 232, 218, 0.65);
  --ct-text-mute: rgba(238, 232, 218, 0.42);
  --ct-text-on-gold: #1A1408;

  /* Functional */
  --ct-success: #4ADE80;
  --ct-danger: #F87171;
  --ct-warning: #FCD34D;

  /* ==================== Type · 字体 ==================== */
  --ct-font-display: 'Fraunces', 'Noto Serif TC', 'Noto Serif SC', Georgia, 'Times New Roman', serif;
  --ct-font-ui: 'Inter', -apple-system, BlinkMacSystemFont, 'PingFang TC', 'PingFang SC', 'HarmonyOS Sans', 'Segoe UI', Roboto, sans-serif;
  --ct-font-mono: 'JetBrains Mono', 'SF Mono', 'Courier New', monospace;

  /* 字号阶梯 */
  --ct-fs-hero: clamp(56px, 8vw, 96px);
  --ct-fs-h1: clamp(40px, 5vw, 64px);
  --ct-fs-h2: clamp(32px, 4vw, 56px);
  --ct-fs-h3: 24px;
  --ct-fs-h4: 20px;
  --ct-fs-body-lg: 18px;
  --ct-fs-body: 16px;
  --ct-fs-sm: 14px;
  --ct-fs-xs: 12px;

  /* 大数字 */
  --ct-fs-stat: clamp(48px, 7vw, 80px);

  /* ==================== Space · 间距 ==================== */
  --ct-space-1: 4px;
  --ct-space-2: 8px;
  --ct-space-3: 12px;
  --ct-space-4: 16px;
  --ct-space-5: 24px;
  --ct-space-6: 32px;
  --ct-space-7: 48px;
  --ct-space-8: 64px;
  --ct-space-9: 96px;
  --ct-space-10: 128px;
  --ct-space-11: 160px;

  /* Section 上下 padding */
  --ct-section-py: clamp(80px, 12vw, 160px);
  --ct-section-py-sm: clamp(64px, 8vw, 96px);

  /* ==================== Radius ==================== */
  --ct-radius-sm: 6px;
  --ct-radius-md: 12px;
  --ct-radius-lg: 16px;
  --ct-radius-xl: 24px;
  --ct-radius-2xl: 32px;
  --ct-radius-pill: 999px;
  --ct-radius-full: 50%;

  /* ==================== Motion ==================== */
  --ct-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ct-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ct-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  --ct-dur-fast: 200ms;
  --ct-dur: 400ms;
  --ct-dur-slow: 800ms;
  --ct-dur-x-slow: 1200ms;

  /* ==================== Shadow ==================== */
  --ct-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --ct-shadow-md: 0 8px 24px rgba(0, 0, 0, 0.35);
  --ct-shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.5);
  --ct-shadow-gold: 0 8px 32px var(--ct-gold-glow);
  --ct-shadow-gold-strong: 0 12px 48px var(--ct-gold-glow-strong);

  /* ==================== Layout ==================== */
  --ct-container: 1280px;
  --ct-container-narrow: 1024px;
  --ct-header-h: 72px;
  --ct-header-h-scrolled: 56px;
  --ct-header-z: 100;

  /* ==================== Z-Index ==================== */
  --ct-z-cursor: 9999;
  --ct-z-header: 100;
  --ct-z-overlay: 200;
}

/* ==================== Reduced Motion ==================== */
@media (prefers-reduced-motion: reduce) {
  :root {
    --ct-dur-fast: 0ms;
    --ct-dur: 0ms;
    --ct-dur-slow: 0ms;
    --ct-dur-x-slow: 0ms;
  }
}
