tokens.css 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. /* ============================================================
  2. * lib/theme/tokens.css · 混沌AI院设计系统 token 唯一来源
  3. * 双主题:暗色(混沌AI院) / 浅色(未来飞马 VI)
  4. * 任何文件不得新写色值/字体/圆角常量,一律引用本文件 var(--...)。
  5. * 切换方式:<html data-theme="dark" | "light">(由 theme.js 管理)
  6. * ============================================================ */
  7. :root {
  8. /* ---------- 背景层级(0=最深 3=最浅浮层) ---------- */
  9. --bg-0: #0B1017; /* 页面深底 */
  10. --bg-1: #111925; /* 一级浮层 / 区块底 */
  11. --bg-2: #171F2B; /* 卡片底 */
  12. --bg-3: #0D131C; /* 浮层 / 弹层底 */
  13. /* ---------- 文字层级(1=最高 4=最低) ---------- */
  14. --text-1: #FBFAF7; /* 大标题 / 核心结论 */
  15. --text-2: #C1C4CB; /* 主标题 / 正文 */
  16. --text-3: #777D85; /* 说明 / 次级 */
  17. --text-4: rgba(255,255,255,.42); /* 弱化 / 页码 / 脚注 */
  18. /* ---------- 品牌强调 ---------- */
  19. --brand-1: #D5B254; /* 金:主强调 */
  20. --brand-1-hi: #FFC000; /* 金黄:框线 / 高亮 */
  21. --brand-2: #AF8AE8; /* 浅紫:次级强调 */
  22. --brand-3: #FF0000; /* 红:卡点 / 警示 */
  23. --brand-ok: #7FD1A0; /* 绿:通过 / 已确认 */
  24. /* ---------- 渐变 ---------- */
  25. --gradient-brand: linear-gradient(135deg, #D5B254, #FFC000);
  26. --gradient-text: linear-gradient(135deg, #FFC000, #AF8AE8);
  27. --on-gradient: #0B1017; /* 品牌渐变底上的文字色(暗=金渐变深字) */
  28. --gradient-hero: radial-gradient(ellipse at 50% 0%, rgba(213,178,84,.10) 0%, transparent 60%),
  29. radial-gradient(ellipse at 80% 85%, rgba(175,138,232,.10) 0%, transparent 55%),
  30. linear-gradient(180deg, #0B1017 0%, #111925 60%, #0D131C 100%);
  31. /* ---------- 边框 ---------- */
  32. --border-subtle: rgba(255,255,255,.07);
  33. --border-strong: rgba(213,178,84,.35);
  34. --border-focus: rgba(213,178,84,.6);
  35. --border-danger: rgba(255,0,0,.45); /* 警示红框(卡点 / 翻车) */
  36. --border-ok: rgba(127,209,160,.4); /* 通过绿框(已确认 / 人味版) */
  37. /* ---------- 阴影 ---------- */
  38. --shadow-card: none; /* 暗色用线框,不用投影 */
  39. --shadow-float: 0 8px 30px rgba(0,0,0,.45);
  40. --shadow-glow: 0 0 24px rgba(213,178,84,.25);
  41. /* ---------- 圆角(混沌 = 直角卡片) ---------- */
  42. --radius-sm: 3px; --radius-md: 6px; --radius-lg: 10px;
  43. --radius-card: 0px;
  44. --radius-pill: 999px;
  45. /* ---------- 字体 ---------- */
  46. --font-display: "Source Han Serif SC","Noto Serif SC","Songti SC","SimSun",serif;
  47. --font-display-weight: 800;
  48. --font-body: "Source Han Sans SC","Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  49. --font-mono: "SF Mono","Cascadia Code","JetBrains Mono",Consolas,monospace;
  50. /* ---------- 缓动 ---------- */
  51. --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  52. --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  53. /* ---------- 玻璃拟态 ---------- */
  54. --glass-bg: rgba(23,31,43,.85);
  55. --glass-blur: 12px;
  56. /* ---------- 屏幕 ---------- */
  57. --screen-h: 100dvh;
  58. /* ---------- 组件 token:微信/群聊 ---------- */
  59. --chat-bg: #111B21;
  60. --chat-in-bg: #202C33; --chat-in-text: #E9EDEF;
  61. --chat-out-bg: #95EC69; --chat-out-text: #111B21;
  62. --chat-avatar-bg: #5A6570; --chat-avatar-text: #FFFFFF;
  63. --chat-link: #7FD1A0;
  64. --chat-bar-bg: #0B1017; --chat-bar-text: #D5B254;
  65. --chat-card-bg: rgba(127,209,160,.06);
  66. --chat-card-border: rgba(127,209,160,.4);
  67. --chat-time: #777D85;
  68. /* ---------- 组件 token:多画像评估 ---------- */
  69. /* 画像区分色(avatar 底 / 标签点 / 雷达线),双主题两套值 */
  70. --persona-1: #FFC000; /* 决策层老板 */
  71. --persona-2: #AF8AE8; /* 执行层操盘手 */
  72. --persona-3: #FF6B6B; /* 一线业务经纪人 */
  73. --persona-4: #4FC3F7; /* 技术 AI 工程师 */
  74. --persona-5: #7FD1A0; /* 非技术市场 HR */
  75. --persona-6: #FF9F43; /* 行业老兵 */
  76. --persona-7: #F78FB3; /* 课程采购负责人 */
  77. --persona-8: #00E5CC; /* 挑剔同行讲师 */
  78. --persona-9: #B2B6BF; /* 预留 */
  79. --persona-10: #8BE9FD; /* 预留 */
  80. /* 问题优先级徽章色(色点/色条背景),P0 红 / P1 橙 / P2 黄 / P3 绿 */
  81. --grade-p0: #FF0000;
  82. --grade-p1: #FF9F43;
  83. --grade-p2: #FFC000;
  84. --grade-p3: #7FD1A0;
  85. /* 徽章前景文字(双主题两套值,与背景成对) */
  86. --grade-p0-fg: #FFFFFF;
  87. --grade-p1-fg: #0B1017;
  88. --grade-p2-fg: #0B1017;
  89. --grade-p3-fg: #0B1017;
  90. }
  91. /* ============================================================
  92. * 浅色 · 未来飞马 VI
  93. * 主色:紫 #6C5CE7 / 蓝 #3B82F6 / 青 #0891B2
  94. * 背景 #F8F9FC,玻璃卡 + 圆角 16 + 胶囊 50 + 柔和阴影,黑体标题
  95. * ============================================================ */
  96. html[data-theme="light"] {
  97. --bg-0: #F8F9FC;
  98. --bg-1: #FFFFFF;
  99. --bg-2: #F0F2F8;
  100. --bg-3: #E9EBF3;
  101. --text-1: #0F0F23;
  102. --text-2: #1A1A2E;
  103. --text-3: #4A4A6A;
  104. --text-4: #6B7280;
  105. --brand-1: #6C5CE7; /* 主品牌紫 */
  106. --brand-1-hi: #3B82F6; /* 辅蓝 */
  107. --brand-2: #0891B2; /* 强调青 */
  108. --brand-3: #E5484D;
  109. --brand-ok: #16A34A;
  110. --gradient-brand: linear-gradient(135deg, #6C5CE7, #3B82F6);
  111. --gradient-text: linear-gradient(135deg, #6C5CE7, #0891B2);
  112. --on-gradient: #FFFFFF; /* 品牌渐变底上的文字色(浅=紫渐变白字) */
  113. --gradient-hero: linear-gradient(135deg, #EEF2FF 0%, #E0E7FF 50%, #F8F9FC 100%);
  114. --border-subtle: rgba(15,15,35,.08);
  115. --border-strong: rgba(108,92,231,.35);
  116. --border-focus: rgba(108,92,231,.6);
  117. --border-danger: rgba(229,72,77,.45);
  118. --border-ok: rgba(22,163,74,.4);
  119. --shadow-card: 0 4px 24px rgba(0,0,0,.06);
  120. --shadow-float: 0 8px 32px rgba(0,0,0,.10);
  121. --shadow-glow: 0 0 24px rgba(108,92,231,.20);
  122. --radius-sm: 8px; --radius-md: 12px; --radius-lg: 16px;
  123. --radius-card: 16px;
  124. --radius-pill: 50px;
  125. --font-display: "Source Han Sans SC","Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  126. --font-display-weight: 700;
  127. --glass-bg: rgba(255,255,255,.85);
  128. --glass-blur: 20px;
  129. --chat-bg: #FFFFFF;
  130. --chat-in-bg: #FFFFFF; --chat-in-text: #1A1A2E;
  131. --chat-out-bg: #6C5CE7; --chat-out-text: #FFFFFF;
  132. --chat-avatar-bg: #B9B1F5; --chat-avatar-text: #FFFFFF;
  133. --chat-link: #6C5CE7;
  134. --chat-bar-bg: #F8F9FC; --chat-bar-text: #6C5CE7;
  135. --chat-card-bg: rgba(108,92,231,.06);
  136. --chat-card-border: rgba(108,92,231,.4);
  137. --chat-time: #9CA3AF;
  138. /* 多画像评估(浅色:中深色系保证浅底可读) */
  139. --persona-1: #F59E0B; /* 决策层老板 */
  140. --persona-2: #8B5CF6; /* 执行层操盘手 */
  141. --persona-3: #E5484D; /* 一线业务经纪人 */
  142. --persona-4: #3B82F6; /* 技术 AI 工程师 */
  143. --persona-5: #16A34A; /* 非技术市场 HR */
  144. --persona-6: #EA580C; /* 行业老兵 */
  145. --persona-7: #DB2777; /* 课程采购负责人 */
  146. --persona-8: #0D9488; /* 挑剔同行讲师 */
  147. --persona-9: #64748B; /* 预留 */
  148. --persona-10: #0EA5E9; /* 预留 */
  149. --grade-p0: #E5484D;
  150. --grade-p1: #EA580C;
  151. --grade-p2: #D97706;
  152. --grade-p3: #16A34A;
  153. --grade-p0-fg: #FFFFFF;
  154. --grade-p1-fg: #FFFFFF;
  155. --grade-p2-fg: #FFFFFF;
  156. --grade-p3-fg: #FFFFFF;
  157. }
  158. /* ---------- 主题切换过渡(页面级,轻微即可) ---------- */
  159. html[data-theme] body,
  160. html[data-theme] .card,
  161. html[data-theme] .s-wrap {
  162. transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease;
  163. }