Просмотр исходного кода

merge(miniprogram): 访客态三页设计稿落地 合入 cfclub 主线(health/growth/profile 访客分支令牌化重做 + 弱文字对比度达标 517f73ea4;script 逐字节保真、登录态零改动)

Agnes Agent 1 час назад
Родитель
Сommit
b44051e3f3

+ 95 - 54
cfc-frontend/pages/growth-main/index.vue

@@ -1,9 +1,9 @@
 <template>
   <view class="container" :style="{ '--font-scale': fontScale }">
     <login-sheet ref="loginSheet" @success="onLoginSuccess" />
-    <view v-if="!isLoggedIn">
+        <view v-if="!isLoggedIn">
       <view class="gg-page">
-        <!-- Hero -->
+        <!-- Hero 主角 -->
         <view class="gg-hero">
           <text class="gg-eyebrow">浠艾福 · 成长记录</text>
           <text class="gg-hero-line gg-hero-line-top">看见改变</text>
@@ -12,7 +12,7 @@
           <text class="gg-hero-sub">记录不是目的,看见改变才是。每一份饮食、运动、心情的记录,都在为成长提供依据。</text>
         </view>
 
-        <!-- 真实案例档案 -->
+        <!-- 真实案例:档案卡 -->
         <view class="gg-card">
           <view class="gg-case-head">
             <text class="gg-case-title">真实案例(脱敏)</text>
@@ -21,62 +21,66 @@
           <text class="gg-case-name">小明(10 岁,体校生)</text>
           <text class="gg-case-change">3 个月干预前后:</text>
           <view class="gg-metrics">
-            <view class="gg-metric">
+            <view class="gg-metric gg-metric--lead">
               <text class="gg-metric-value gg-metric-value-body">+5 分</text>
-              <text class="gg-metric-label">身维度</text>
+              <text class="gg-metric-label">身维度 · 主力提升</text>
             </view>
-            <view class="gg-metric">
-              <text class="gg-metric-value gg-metric-value-wisdom">+3 分</text>
-              <text class="gg-metric-label">智维度</text>
-            </view>
-            <view class="gg-metric">
-              <text class="gg-metric-value gg-metric-value-action">+8 天</text>
-              <text class="gg-metric-label">连续打卡</text>
+            <view class="gg-metrics-side">
+              <view class="gg-metric gg-metric--side">
+                <text class="gg-metric-value gg-metric-value-wisdom">+3 分</text>
+                <text class="gg-metric-label">智维度</text>
+              </view>
+              <view class="gg-metric gg-metric--side">
+                <text class="gg-metric-value gg-metric-value-wealth">+8 天</text>
+                <text class="gg-metric-label">连续打卡</text>
+              </view>
             </view>
           </view>
           <text class="gg-case-note">通过饮食记录 + 睡眠打卡,免疫力显著提升。</text>
         </view>
 
-        <!-- 成长功能预览 -->
+        <!-- 成长功能预览:列表式 4 行(非等权砖) -->
         <view class="gg-block">
-          <text class="gg-tag">成长功能预览</text>
+          <view class="gg-tag-row">
+            <text class="gg-tag">成长功能预览</text>
+          </view>
           <view class="gg-rows">
             <view class="gg-row" @click="handleGuestFeatureTap">
-              <view class="gg-ic gg-ic-body"><text class="gg-glyph">身</text></view>
+              <view class="gg-ic gg-ic-body"></view>
               <view class="gg-row-info">
                 <text class="gg-row-name">每日打卡</text>
                 <text class="gg-row-sub">饮食 · 运动 · 睡眠 · 心情</text>
               </view>
-              <text class="gg-chev">›</text>
+              <view class="gg-row-chev"></view>
             </view>
             <view class="gg-row" @click="handleGuestFeatureTap">
-              <view class="gg-ic gg-ic-wealth"><text class="gg-glyph">富</text></view>
+              <view class="gg-ic gg-ic-wisdom"></view>
               <view class="gg-row-info">
                 <text class="gg-row-name">里程碑</text>
                 <text class="gg-row-sub">连续打卡 · 挑战完成</text>
               </view>
-              <text class="gg-chev">›</text>
+              <view class="gg-row-chev"></view>
             </view>
             <view class="gg-row" @click="handleGuestFeatureTap">
-              <view class="gg-ic gg-ic-action"><text class="gg-glyph">行</text></view>
+              <view class="gg-ic gg-ic-wealth"></view>
               <view class="gg-row-info">
                 <text class="gg-row-name">家庭挑战</text>
                 <text class="gg-row-sub">全家参与的互动任务</text>
               </view>
-              <text class="gg-chev">›</text>
+              <view class="gg-row-chev"></view>
             </view>
             <view class="gg-row" @click="handleGuestFeatureTap">
-              <view class="gg-ic gg-ic-wisdom"><text class="gg-glyph">智</text></view>
+              <view class="gg-ic gg-ic-action"></view>
               <view class="gg-row-info">
                 <text class="gg-row-name">任务中心</text>
                 <text class="gg-row-sub">执行任务 · 完成挑战</text>
               </view>
-              <text class="gg-chev">›</text>
+              <view class="gg-row-chev"></view>
             </view>
           </view>
         </view>
 
-        <!-- 五维行动速览 -->
+        <!-- 五维行动速览:精简版(不重复相生相克长文) -->
         <view class="gg-block">
           <view class="gg-tag-row">
             <text class="gg-tag">五维行动速览</text>
@@ -87,7 +91,7 @@
               <view class="gg-dot gg-dot-body"></view>
               <text class="gg-act-dim gg-act-dim-body">身</text>
               <text class="gg-act-title">今天动一动</text>
-              <text class="gg-act-sub">30 分钟微微出汗</text>
+              <text class="gg-act-sub">30 分钟 · 微微出汗</text>
             </view>
             <view class="gg-act">
               <view class="gg-dot gg-dot-wisdom"></view>
@@ -99,19 +103,19 @@
               <view class="gg-dot gg-dot-wealth"></view>
               <text class="gg-act-dim gg-act-dim-wealth">富</text>
               <text class="gg-act-title">记一笔</text>
-              <text class="gg-act-sub">健康账本利他积累</text>
+              <text class="gg-act-sub">健康账本 · 利他积累</text>
             </view>
             <view class="gg-act">
               <view class="gg-dot gg-dot-action"></view>
               <text class="gg-act-dim gg-act-dim-action">行</text>
               <text class="gg-act-title">陪家人</text>
-              <text class="gg-act-sub">一次倾听关系升温</text>
+              <text class="gg-act-sub">一次倾听 · 关系升温</text>
             </view>
             <view class="gg-act">
               <view class="gg-dot gg-dot-mind"></view>
               <text class="gg-act-dim gg-act-dim-mind">心</text>
               <text class="gg-act-title">说说话</text>
-              <text class="gg-act-sub">10 分钟接住心事</text>
+              <text class="gg-act-sub">10 分钟 · 接住心事</text>
             </view>
           </view>
           <text class="gg-act-note">五维相生相克,动起来、坚持做,让成长真正发生。</text>
@@ -595,13 +599,28 @@ $c-danger-ink:       $status-danger-deep;
 }
 .section { margin: 20rpx 24rpx 0; }
 
-// ==================== 游客态(新暖调配色 · 令牌化) ====================
+// ==================== 游客态(设计稿 page-growth 落地 · 令牌化) ====================
+// 页面级局部色令牌:仅声明 uni.scss 未收录、本页专属的值;其余全部走共享令牌
+$gg-tint-soft: $tint-warm-soft;               // 暖白浅底 #FFF1E6
+$gg-wisdom-border: #E4E4F5;                   // 智维度徽章描边
+$gg-dot-dim: $facade-text-ghost-light;        // 分隔点
+
+// data-URI SVG icon 构造(mp-weixin 模板内禁写 <svg>,与 login-sheet 落地同款方案)
+@function gg-icon($color, $inner) {
+  @return url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23#{$color}' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E#{$inner}%3C/svg%3E");
+}
+$gg-ic-body-bg:   str-slice('#{$dim-body-deep}', 2);
+$gg-ic-wisdom-bg: str-slice('#{$dim-wisdom-deep}', 2);
+$gg-ic-wealth-bg: str-slice('#{$dim-wealth-deep}', 2);
+$gg-ic-action-bg: str-slice('#{$dim-action-deep}', 2);
+$gg-chev-bg:      str-slice('#{$facade-text-slate}', 2);
+
 .gg-page { background: $app-bg; min-height: 100vh; padding: 28rpx 0 40rpx; }
 
 /* Hero */
 .gg-hero { margin: 0 32rpx 28rpx; display: flex; flex-direction: column; }
 .gg-eyebrow { font-size: calc(22rpx * var(--font-scale, 1)); font-weight: 600; color: $brand-primary; letter-spacing: 2rpx; }
-.gg-hero-line { font-size: calc(52rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; line-height: 1.28; }
+.gg-hero-line { font-size: calc(52rpx * var(--font-scale, 1)); font-weight: 800; color: $facade-text-strong; line-height: 1.28; letter-spacing: 1rpx; }
 .gg-hero-line-top { margin-top: 16rpx; }
 .gg-hero-bar { width: 84rpx; height: 8rpx; border-radius: 999rpx; margin: 20rpx 0 18rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-dark); }
 .gg-hero-sub { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.7; }
@@ -612,17 +631,26 @@ $c-danger-ink:       $status-danger-deep;
 /* 真实案例 */
 .gg-case-head { display: flex; flex-direction: row; align-items: center; justify-content: space-between; margin-bottom: 16rpx; }
 .gg-case-title { font-size: calc(26rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; }
-.gg-case-tag { font-size: calc(20rpx * var(--font-scale, 1)); color: $brand-primary; background: rgba($brand-primary, 0.1); border-radius: 8rpx; padding: 2rpx 12rpx; }
+.gg-case-tag { font-size: calc(20rpx * var(--font-scale, 1)); color: $dim-body-deep; background: $dim-body-tint; border: 1rpx solid $app-border-subtle; border-radius: 999rpx; padding: 4rpx 16rpx; font-weight: 600; }
 .gg-case-name { display: block; font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
 .gg-case-change { display: block; font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 8rpx; margin-bottom: 16rpx; }
-.gg-metrics { display: flex; flex-direction: row; }
-.gg-metric { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 18rpx 8rpx; border-radius: 16rpx; background: $app-bg; border: 1rpx solid $app-border-subtle; margin-right: 12rpx; }
-.gg-metric:last-child { margin-right: 0; }
-.gg-metric-value { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; }
+.gg-metrics { display: flex; flex-direction: row; align-items: stretch; }
+.gg-metric--lead { flex: 1.35; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24rpx 12rpx; border-radius: 20rpx; background: linear-gradient(165deg, $gg-tint-soft 0%, $dim-body-tint 100%); border: 1rpx solid $app-border-subtle; }
+.gg-metric-value { font-size: calc(40rpx * var(--font-scale, 1)); font-weight: 800; line-height: 1.2; }
 .gg-metric-value-body { color: $dim-body-deep; }
 .gg-metric-value-wisdom { color: $dim-wisdom-deep; }
+.gg-metric-value-wealth { color: $dim-wealth-deep; }
 .gg-metric-value-action { color: $dim-action-deep; }
-.gg-metric-label { font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 6rpx; }
+.gg-metric-label { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 6rpx; font-weight: 600; }
+.gg-metric--lead .gg-metric-value { font-size: calc(44rpx * var(--font-scale, 1)); }
+.gg-metric--lead .gg-metric-label { color: $dim-body-deep; font-weight: 700; }
+.gg-metrics-side { flex: 1; margin-left: 16rpx; display: flex; flex-direction: column; }
+.gg-metric--side { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12rpx 8rpx; border-radius: 20rpx; }
+.gg-metric--side + .gg-metric--side { margin-top: 12rpx; }
+.gg-metric--side:nth-child(1) { background: $dim-wisdom-tint; border: 1rpx solid $app-border-subtle; }
+.gg-metric--side:nth-child(2) { background: $dim-wealth-tint; border: 1rpx solid $app-border-subtle; }
+.gg-metric--side .gg-metric-value { font-size: calc(32rpx * var(--font-scale, 1)); }
+.gg-metric--side .gg-metric-label { font-size: calc(20rpx * var(--font-scale, 1)); margin-top: 4rpx; }
 .gg-case-note { display: block; font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.6; margin-top: 16rpx; }
 
 /* 区块标签 */
@@ -631,29 +659,44 @@ $c-danger-ink:       $status-danger-deep;
 .gg-tag-row { display: flex; flex-direction: row; align-items: baseline; justify-content: space-between; }
 .gg-tag-note { font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-muted; }
 
-/* 功能预览行 */
+/* 功能预览行(卡片化 list) */
 .gg-rows { margin-top: 8rpx; display: flex; flex-direction: column; }
-.gg-row { display: flex; flex-direction: row; align-items: center; padding: 20rpx 0; border-top: 1rpx solid $app-border-subtle; }
-.gg-row:first-child { border-top: none; }
-.gg-row:active { opacity: 0.85; }
-.gg-ic { width: 76rpx; height: 76rpx; border-radius: 20rpx; display: flex; flex-direction: row; align-items: center; justify-content: center; flex-shrink: 0; }
-.gg-ic-body { background: $dim-body-tint; }
-.gg-ic-wisdom { background: $dim-wisdom-tint; }
-.gg-ic-wealth { background: $dim-wealth-tint; }
-.gg-ic-action { background: $dim-action-tint; }
-.gg-glyph { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; }
-.gg-ic-body .gg-glyph { color: $dim-body-deep; }
-.gg-ic-wisdom .gg-glyph { color: $dim-wisdom-deep; }
-.gg-ic-wealth .gg-glyph { color: $dim-wealth-deep; }
-.gg-ic-action .gg-glyph { color: $dim-action-deep; }
+.gg-row { display: flex; flex-direction: row; align-items: center; padding: 20rpx 12rpx; border: 1rpx solid $app-border-subtle; border-radius: 20rpx; background: $app-surface; }
+.gg-row + .gg-row { margin-top: 12rpx; }
+.gg-row:active { opacity: 0.88; }
+.gg-ic { width: 68rpx; height: 68rpx; border-radius: 18rpx; display: flex; flex-direction: row; align-items: center; justify-content: center; flex-shrink: 0; }
+.gg-ic-body {
+  background-color: $dim-body-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gg-icon($gg-ic-body-bg, '%3Cpath d=%22M22 11.08V12a10 10 0 1 1-5.93-9.14%22/%3E%3Cpolyline points=%2222 4 12 14.01 9 11.01%22/%3E');
+}
+.gg-ic-wisdom {
+  background-color: $dim-wisdom-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gg-icon($gg-ic-wisdom-bg, '%3Cpath d=%22M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z%22/%3E%3Cline x1=%224%22 y1=%2222%22 x2=%224%22 y2=%2215%22/%3E');
+}
+.gg-ic-wealth {
+  background-color: $dim-wealth-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gg-icon($gg-ic-wealth-bg, '%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%226%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%222%22/%3E');
+}
+.gg-ic-action {
+  background-color: $dim-action-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gg-icon($gg-ic-action-bg, '%3Cpath d=%22M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z%22/%3E%3Cpolyline points=%2214 2 14 8 20 8%22/%3E%3Cline x1=%2216%22 y1=%2213%22 x2=%228%22 y2=%2213%22/%3E%3Cline x1=%2216%22 y1=%2217%22 x2=%228%22 y2=%2217%22/%3E');
+}
 .gg-row-info { flex: 1; min-width: 0; margin-left: 20rpx; display: flex; flex-direction: column; }
 .gg-row-name { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
 .gg-row-sub { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 6rpx; }
-.gg-chev { font-size: calc(32rpx * var(--font-scale, 1)); color: $facade-text-ghost; margin-left: 12rpx; flex-shrink: 0; }
+.gg-row-chev {
+  width: 32rpx; height: 32rpx; flex-shrink: 0;
+  background-repeat: no-repeat; background-position: center; background-size: 32rpx 32rpx;
+  background-image: gg-icon($gg-chev-bg, '%3Cpolyline points=%229 18 15 12 9 6%22/%3E');
+}
 
 /* 五维行动速览 */
 .gg-acts { margin-top: 8rpx; display: flex; flex-direction: column; }
-.gg-act { display: flex; flex-direction: row; align-items: center; padding: 18rpx 0; border-top: 1rpx solid $app-border-subtle; }
+.gg-act { display: flex; flex-direction: row; align-items: center; padding: 20rpx 6rpx; border-top: 1rpx solid $app-border-subtle; }
 .gg-act:first-child { border-top: none; }
 .gg-dot { width: 16rpx; height: 16rpx; border-radius: 50%; flex-shrink: 0; }
 .gg-dot-body { background: $dim-body; }
@@ -661,7 +704,7 @@ $c-danger-ink:       $status-danger-deep;
 .gg-dot-wealth { background: $dim-wealth; }
 .gg-dot-action { background: $dim-action; }
 .gg-dot-mind { background: $dim-mind; }
-.gg-act-dim { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 700; margin-left: 14rpx; }
+.gg-act-dim { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 700; margin-left: 14rpx; width: 52rpx; flex-shrink: 0; }
 .gg-act-dim-body { color: $dim-body-deep; }
 .gg-act-dim-wisdom { color: $dim-wisdom-deep; }
 .gg-act-dim-wealth { color: $dim-wealth-deep; }
@@ -673,8 +716,6 @@ $c-danger-ink:       $status-danger-deep;
 
 .gg-guide { margin: 0 32rpx 8rpx; }
 
-
-
 // ==================== 已登录态 ====================
 .reminder-bar {
   margin: 12rpx 24rpx;

+ 197 - 113
cfc-frontend/pages/health-main/index.vue

@@ -4,7 +4,7 @@
     <login-sheet ref="loginSheet" @success="onSheetLoginSuccess" @open="onLoginSheetOpen" @close="onLoginSheetClose" />
     <block v-if="!isLoggedIn">
       <view class="gh-page">
-        <!-- 页面头 -->
+        <!-- 页面头 / 品牌锚点 -->
         <view class="gh-head">
           <text class="gh-eyebrow">浠艾福 · 家庭主动健康</text>
           <text class="gh-title">科学管理全家健康数据</text>
@@ -24,17 +24,24 @@
             <text class="gh-cta-title">15 题五维健康自检</text>
             <text class="gh-cta-sub">约 20 秒,了解家人的健康概况</text>
           </view>
-          <text class="gh-chev">›</text>
+          <view class="gh-chev"></view>
         </view>
 
         <!-- 本期待填调研(按周期计算,服务端返回 pending 列表) -->
-        <view v-for="(item, si) in pendingSurveys" :key="si" class="gh-pending" @click="goSurveyFill(item)">
-          <view class="gh-pending-ic"><text class="gh-pending-glyph">研</text></view>
-          <view class="gh-pending-info">
-            <text class="gh-pending-title">{{ item.title }}</text>
-            <text class="gh-pending-sub">{{ cycleLabel(item.cycleType) }} · {{ item.periodStart }} 至 {{ item.periodEnd }}</text>
+        <view class="gh-section">
+          <view class="gh-section-tag">
+            <view class="gh-section-dot"></view>
+            <text class="gh-section-title">本期待填调研</text>
+            <text class="gh-section-note">按周期推送</text>
+          </view>
+          <view v-for="(item, si) in pendingSurveys" :key="si" class="gh-pending" @click="goSurveyFill(item)">
+            <view class="gh-pending-ic"></view>
+            <view class="gh-pending-info">
+              <text class="gh-pending-title">{{ item.title }}</text>
+              <text class="gh-pending-sub">{{ cycleLabel(item.cycleType) }} · {{ item.periodStart }} 至 {{ item.periodEnd }}</text>
+            </view>
+            <text class="gh-pending-tag">待填写</text>
           </view>
-          <text class="gh-pending-tag">待填写</text>
         </view>
 
         <!-- 演示雷达(登录浮层打开时隐藏:原生 canvas 会盖在浮层之上) -->
@@ -60,7 +67,7 @@
           </view>
         </view>
 
-        <!-- 五维健康体系 -->
+        <!-- 五维健康体系(完整版:全站唯一保留相生相克的一页) -->
         <view class="gh-wuxing">
           <text class="gh-wuxing-title">身 · 智 · 富 · 行 · 心,看得见的健康闭环</text>
           <text class="gh-wuxing-sub">五行相生相克,从报告和测评里,真正读懂家人的身体。</text>
@@ -69,15 +76,15 @@
             <text class="gh-rel-title">相生 · 前进</text>
             <view class="gh-chain">
               <text class="gh-node gh-node-body">身</text>
-              <text class="gh-arrow">→</text>
+              <view class="gh-arrow"></view>
               <text class="gh-node gh-node-wisdom">智</text>
-              <text class="gh-arrow">→</text>
+              <view class="gh-arrow"></view>
               <text class="gh-node gh-node-wealth">富</text>
-              <text class="gh-arrow">→</text>
+              <view class="gh-arrow"></view>
               <text class="gh-node gh-node-action">行</text>
-              <text class="gh-arrow">→</text>
+              <view class="gh-arrow"></view>
               <text class="gh-node gh-node-mind">心</text>
-              <text class="gh-arrow">→</text>
+              <view class="gh-arrow"></view>
               <text class="gh-node gh-node-body">身</text>
             </view>
             <text class="gh-rel-hint">健康孕育智慧,智慧创造价值,价值滋养关系,关系反哺心灵,心灵守护健康。</text>
@@ -86,69 +93,59 @@
           <view class="gh-rel">
             <text class="gh-rel-title">相克 · 平衡</text>
             <view class="gh-chain">
-              <text class="gh-node gh-node-body">身</text>
-              <text class="gh-op">克</text>
-              <text class="gh-node gh-node-wealth">富</text>
+              <text class="gh-node gh-node-body">身克富</text>
               <text class="gh-sep">·</text>
-              <text class="gh-node gh-node-wisdom">智</text>
-              <text class="gh-op">克</text>
-              <text class="gh-node gh-node-action">行</text>
+              <text class="gh-node gh-node-wisdom">智克行</text>
               <text class="gh-sep">·</text>
-              <text class="gh-node gh-node-wealth">富</text>
-              <text class="gh-op">克</text>
-              <text class="gh-node gh-node-mind">心</text>
+              <text class="gh-node gh-node-wealth">富克心</text>
               <text class="gh-sep">·</text>
-              <text class="gh-node gh-node-action">行</text>
-              <text class="gh-op">克</text>
-              <text class="gh-node gh-node-body">身</text>
+              <text class="gh-node gh-node-action">行克身</text>
               <text class="gh-sep">·</text>
-              <text class="gh-node gh-node-mind">心</text>
-              <text class="gh-op">克</text>
-              <text class="gh-node gh-node-wisdom">智</text>
+              <text class="gh-node gh-node-mind">心克智</text>
             </view>
             <text class="gh-rel-hint">莫以健康换金钱,真诚胜过算计,财富服务家庭,关爱有度、大爱留白。</text>
           </view>
 
           <view class="gh-rows">
-            <view class="gh-row" @click="goPage('/pages/body-detail/index')">
-              <view class="gh-ic gh-ic-body"><text class="gh-glyph">身</text></view>
+            <view class="gh-row gh-row--featured" @click="goPage('/pages/body-detail/index')">
+              <view class="gh-ic gh-ic-body"></view>
               <view class="gh-row-info">
-                <text class="gh-row-name">身 · 主动健康</text>
+                <text class="gh-row-name"><text class="gh-dim gh-dim-body">身</text> · 主动健康</text>
                 <text class="gh-row-sub">读懂每一份报告,看见全家体质的变化</text>
               </view>
-              <text class="gh-row-chev">›</text>
+              <view class="gh-row-chev"></view>
             </view>
             <view class="gh-row" @click="goPage('/pages/wisdom-detail/index')">
-              <view class="gh-ic gh-ic-wisdom"><text class="gh-glyph">智</text></view>
+              <view class="gh-ic gh-ic-wisdom"></view>
               <view class="gh-row-info">
-                <text class="gh-row-name">智 · 面向未来</text>
-                <text class="gh-row-sub">一次测评,看见成员真实的专注与潜能</text>
+                <text class="gh-row-name"><text class="gh-dim gh-dim-wisdom">智</text> · 面向未来</text>
+                <text class="gh-row-sub">一次测评,看见家人真实的专注与潜能</text>
               </view>
-              <text class="gh-row-chev">›</text>
+              <view class="gh-row-chev"></view>
             </view>
             <view class="gh-row" @click="goPage('/pages/wealth/index')">
-              <view class="gh-ic gh-ic-wealth"><text class="gh-glyph">富</text></view>
+              <view class="gh-ic gh-ic-wealth"></view>
               <view class="gh-row-info">
-                <text class="gh-row-name">富 · 利他创富</text>
+                <text class="gh-row-name"><text class="gh-dim gh-dim-wealth">富</text> · 利他创富</text>
                 <text class="gh-row-sub">看懂健康与财富的关系,明白身体是最大的本钱</text>
               </view>
-              <text class="gh-row-chev">›</text>
+              <view class="gh-row-chev"></view>
             </view>
             <view class="gh-row" @click="goPage('/pages/action-detail/member-action-detail')">
-              <view class="gh-ic gh-ic-action"><text class="gh-glyph">行</text></view>
+              <view class="gh-ic gh-ic-action"></view>
               <view class="gh-row-info">
-                <text class="gh-row-name">行 · 人际和谐</text>
+                <text class="gh-row-name"><text class="gh-dim gh-dim-action">行</text> · 人际和谐</text>
                 <text class="gh-row-sub">看懂关系里的情绪,看见家人真实的需求</text>
               </view>
-              <text class="gh-row-chev">›</text>
+              <view class="gh-row-chev"></view>
             </view>
-            <view class="gh-row" @click="goPage('/pages/mind-detail/index')">
-              <view class="gh-ic gh-ic-mind"><text class="gh-glyph">心</text></view>
+            <view class="gh-row gh-row--featured" @click="goPage('/pages/mind-detail/index')">
+              <view class="gh-ic gh-ic-mind"></view>
               <view class="gh-row-info">
-                <text class="gh-row-name">心 · 大爱相随</text>
+                <text class="gh-row-name"><text class="gh-dim gh-dim-mind">心</text> · 大爱相随</text>
                 <text class="gh-row-sub">读懂情绪的信号,听懂家人没说出口的话</text>
               </view>
-              <text class="gh-row-chev">›</text>
+              <view class="gh-row-chev"></view>
             </view>
           </view>
         </view>
@@ -934,98 +931,185 @@ export default {
 .plan-btn { background: linear-gradient(135deg, $brand-primary, $brand-primary-light); color: $app-surface; font-size: calc(24rpx * var(--font-scale, 1)); border: none; border-radius: 24rpx; padding: 10rpx 28rpx; height: 56rpx; line-height: 36rpx; margin: 0; }
 .plan-goal { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.5; display: block; margin-top: 12rpx; }
 .plan-hint { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-muted; display: block; margin-top: 12rpx; }
-/* ===== 访客态(新暖调配色 · 令牌化) ===== */
-$gh-white: str-slice('#{$app-surface}', 2);
+/* ===== 访客态(设计稿 page-health 落地 · 令牌化) ===== */
+// 页面级局部色令牌:仅声明 uni.scss 未收录、本页专属的值;其余全部走共享令牌
+$gh-cta-from:  #D1440B;                       // 深橙·亮端(白字 4.62:1)
+$gh-cta-to:    $brand-primary;                // 深橙·暗端(#C2410C 白字 5.18:1)
+$gh-cta-deep:  #B23A0B;                       // 渐变第三档
+$gh-cta-hover-from: #B93D0B;
+$gh-cta-hover-to:   #A9330A;
+$gh-cta-press-from: #A9330A;
+$gh-cta-press-to:   #962D08;
+$gh-white-16:  rgba($app-surface, 0.16);      // 橙底图标盘
+$gh-tint-soft: $tint-warm-soft;               // 暖白浅底 #FFF1E6
+$gh-wisdom-border: #E4E4F5;                   // 智维度徽章描边
+$gh-arrow-ink: $facade-text-slate;            // 相生箭头
+$gh-guide-bg-from: #FFF8F2;                   // 引导卡顶(暖白偏橙)
+$gh-guide-bg-to:   #FFFDFB;                   // 引导卡底
+
+// data-URI SVG icon 构造(mp-weixin 模板内禁写 <svg>,与 login-sheet 落地同款方案)
+// $color: stroke 色;$inner: 内部图形路径
+@function gh-icon($color, $inner) {
+  @return url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23#{$color}' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E#{$inner}%3C/svg%3E");
+}
+$gh-ic-body-bg:   str-slice('#{$dim-body-deep}', 2);
+$gh-ic-wisdom-bg: str-slice('#{$dim-wisdom-deep}', 2);
+$gh-ic-wealth-bg: str-slice('#{$dim-wealth-deep}', 2);
+$gh-ic-action-bg: str-slice('#{$dim-action-deep}', 2);
+$gh-ic-mind-bg:   str-slice('#{$dim-mind-deep}', 2);
+$gh-white-bg:     str-slice('#{$app-surface}', 2);
+$gh-arrow-bg:     str-slice('#{$gh-arrow-ink}', 2);
+$gh-chev-bg:      str-slice('#{$facade-text-slate}', 2);
+$gh-file-bg:      str-slice('#{$dim-body-deep}', 2);
 
 .gh-page { background: $app-bg; min-height: 100vh; padding: 28rpx 0 40rpx; }
 
-/* 页面头 */
+/* 页面头 / 品牌锚点 */
 .gh-head { margin: 0 32rpx 24rpx; display: flex; flex-direction: column; }
 .gh-eyebrow { font-size: calc(22rpx * var(--font-scale, 1)); font-weight: 600; color: $brand-primary; letter-spacing: 2rpx; }
-.gh-title { font-size: calc(46rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; line-height: 1.32; margin-top: 12rpx; }
-.gh-sub { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 10rpx; }
+.gh-title { font-size: calc(52rpx * var(--font-scale, 1)); font-weight: 800; color: $facade-text-strong; line-height: 1.24; letter-spacing: 1rpx; margin-top: 12rpx; }
+.gh-sub { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.7; margin-top: 12rpx; }
 
 /* 痛点条 */
-.gh-pain { margin: 0 32rpx 24rpx; display: flex; flex-direction: row; flex-wrap: wrap; align-items: baseline; justify-content: space-between; }
-.gh-pain-quote { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $brand-primary; }
-.gh-pain-desc { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; }
+.gh-pain { margin: 0 32rpx 24rpx; display: flex; flex-direction: row; flex-wrap: wrap; align-items: baseline; padding: 24rpx 28rpx; background: $app-surface; border: 1rpx solid $app-border-subtle; border-radius: $uni-radius-lg; }
+.gh-pain-quote { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 800; color: $brand-primary; margin-right: 16rpx; white-space: nowrap; }
+.gh-pain-desc { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.6; }
 
 /* 自检 hero CTA */
-.gh-cta { margin: 0 32rpx 24rpx; display: flex; flex-direction: row; align-items: center; padding: 28rpx; border-radius: 24rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-dark); box-shadow: 0 12rpx 32rpx rgba($brand-primary, 0.24); }
-.gh-cta:active { opacity: 0.9; }
+.gh-cta { margin: 0 32rpx 24rpx; display: flex; flex-direction: row; align-items: center; padding: 36rpx 32rpx; border-radius: $uni-radius-lg; background: linear-gradient(150deg, $gh-cta-from 0%, $gh-cta-to 78%, $gh-cta-deep 100%); }
+.gh-cta:active { opacity: 0.92; }
 .gh-cta-ic {
-  width: 88rpx; height: 88rpx; border-radius: 24rpx; flex-shrink: 0;
-  background-color: rgba($app-surface, 0.18);
+  width: 88rpx; height: 88rpx; flex-shrink: 0;
+  border-radius: 24rpx;
+  background-color: $gh-white-16;
   background-repeat: no-repeat;
   background-position: center;
   background-size: 48rpx 48rpx;
-  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23#{$gh-white}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h6l-1 8 9-12h-6l1-8z'/%3E%3C/svg%3E");
+  background-image: gh-icon($gh-white-bg, '%3Cpath d=%22M13 2 3 14h9l-1 8 10-12h-9l1-8z%22/%3E');
 }
-.gh-cta-info { flex: 1; min-width: 0; margin-left: 20rpx; display: flex; flex-direction: column; }
-.gh-cta-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $app-surface; }
-.gh-cta-sub { font-size: calc(22rpx * var(--font-scale, 1)); color: rgba($app-surface, 0.82); margin-top: 6rpx; }
-.gh-chev { font-size: calc(36rpx * var(--font-scale, 1)); color: rgba($app-surface, 0.72); margin-left: 12rpx; }
+.gh-cta-info { flex: 1; min-width: 0; margin-left: 24rpx; display: flex; flex-direction: column; }
+.gh-cta-title { font-size: calc(34rpx * var(--font-scale, 1)); font-weight: 800; color: $app-surface; letter-spacing: 1rpx; }
+.gh-cta-sub { font-size: calc(24rpx * var(--font-scale, 1)); color: rgba($app-surface, 0.86); margin-top: 6rpx; }
+.gh-chev {
+  width: 36rpx; height: 36rpx; flex-shrink: 0; margin-left: 16rpx;
+  background-repeat: no-repeat;
+  background-position: center;
+  background-size: 36rpx 36rpx;
+  background-image: gh-icon($gh-white-bg, '%3Cpolyline points=%229 18 15 12 9 6%22/%3E');
+}
+
+/* 区块标签 */
+.gh-section { margin: 0 32rpx 24rpx; }
+.gh-section-tag { display: flex; flex-direction: row; align-items: center; margin: 0 0 20rpx 4rpx; }
+.gh-section-dot { width: 8rpx; height: 28rpx; border-radius: 4rpx; background: $brand-primary; }
+.gh-section-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; margin-left: 12rpx; letter-spacing: 1rpx; }
+.gh-section-note { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-slate; margin-left: 4rpx; }
 
 /* 待填调研 */
-.gh-pending { margin: 0 32rpx 20rpx; display: flex; flex-direction: row; align-items: center; padding: 24rpx; border-radius: 20rpx; background: $app-surface; border: 1rpx solid $app-border-subtle; }
+.gh-pending { display: flex; flex-direction: row; align-items: center; padding: 24rpx; border-radius: $uni-radius-lg; background: $app-surface; border: 1rpx solid $app-border-subtle; }
+.gh-pending + .gh-pending { margin-top: 16rpx; }
 .gh-pending:active { opacity: 0.9; }
-.gh-pending-ic { width: 72rpx; height: 72rpx; border-radius: 20rpx; display: flex; flex-direction: row; align-items: center; justify-content: center; flex-shrink: 0; background: $dim-body-tint; }
-.gh-pending-glyph { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 700; color: $dim-body-deep; }
+.gh-pending-ic {
+  width: 72rpx; height: 72rpx; border-radius: 20rpx; flex-shrink: 0;
+  background-color: $dim-body-tint;
+  background-repeat: no-repeat;
+  background-position: center;
+  background-size: 40rpx 40rpx;
+  background-image: gh-icon($gh-file-bg, '%3Cpath d=%22M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z%22/%3E%3Cpolyline points=%2214 2 14 8 20 8%22/%3E%3Cline x1=%2216%22 y1=%2213%22 x2=%228%22 y2=%2213%22/%3E%3Cline x1=%2216%22 y1=%2217%22 x2=%228%22 y2=%2217%22/%3E%3Cpolyline points=%2210 9 9 9 8 9%22/%3E');
+}
 .gh-pending-info { flex: 1; min-width: 0; margin-left: 20rpx; display: flex; flex-direction: column; }
 .gh-pending-title { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
 .gh-pending-sub { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 6rpx; }
-.gh-pending-tag { flex-shrink: 0; margin-left: 12rpx; font-size: calc(20rpx * var(--font-scale, 1)); font-weight: 600; color: $brand-primary; background: rgba($brand-primary, 0.1); border-radius: 999rpx; padding: 6rpx 16rpx; }
+.gh-pending-tag { flex-shrink: 0; font-size: calc(22rpx * var(--font-scale, 1)); font-weight: 700; color: $brand-primary; background: $gh-tint-soft; border-radius: 999rpx; padding: 6rpx 20rpx; }
 
-/* 演示雷达 */
-.gh-demo { margin: 0 32rpx 24rpx; background: $app-surface; border-radius: 24rpx; padding: 20rpx 12rpx 12rpx; border: 1rpx solid $app-border-subtle; }
-.gh-demo-block { margin-top: 12rpx; }
-.gh-demo-block:first-child { margin-top: 0; }
-.gh-demo-head { display: flex; flex-direction: row; align-items: center; justify-content: space-between; padding: 0 20rpx; margin: 12rpx 0 4rpx; }
-.gh-demo-name { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
-.gh-demo-tag { font-size: calc(20rpx * var(--font-scale, 1)); color: $brand-primary; background: rgba($brand-primary, 0.1); border-radius: 8rpx; padding: 2rpx 12rpx; }
-.gh-demo-empty { padding: 72rpx 20rpx; display: flex; flex-direction: column; align-items: center; }
-.gh-demo-empty-text { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-strong; font-weight: 600; display: block; }
-.gh-demo-empty-sub { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-muted; display: block; margin-top: 10rpx; }
+/* 演示雷达(卡片化:每个雷达独立 surface card) */
+.gh-demo { margin: 0 32rpx 24rpx; display: flex; flex-direction: column; }
+.gh-demo-block { background: $app-surface; border: 1rpx solid $app-border-subtle; border-radius: $uni-radius-lg; padding: 28rpx 24rpx 16rpx; }
+.gh-demo-block + .gh-demo-block { margin-top: 20rpx; }
+.gh-demo-head { display: flex; flex-direction: row; align-items: center; }
+.gh-demo-name { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; }
+.gh-demo-tag { font-size: calc(20rpx * var(--font-scale, 1)); color: $dim-body-deep; background: $dim-body-tint; border: 1rpx solid $app-border-subtle; border-radius: 999rpx; padding: 4rpx 16rpx; margin-left: 16rpx; font-weight: 600; }
+.gh-demo-block:nth-child(2) .gh-demo-tag { color: $dim-wisdom-deep; background: $dim-wisdom-tint; border-color: $gh-wisdom-border; }
+.gh-demo-empty { background: $app-surface; border: 1rpx solid $app-border-subtle; border-radius: $uni-radius-lg; padding: 96rpx 40rpx; display: flex; flex-direction: column; align-items: center; }
+.gh-demo-empty-text { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-strong; font-weight: 600; }
+.gh-demo-empty-sub { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-slate; margin-top: 16rpx; }
 
 /* 五维健康体系 */
-.gh-wuxing { margin: 0 32rpx 24rpx; background: $app-surface; border-radius: 24rpx; padding: 28rpx 24rpx; border: 1rpx solid $app-border-subtle; }
-.gh-wuxing-title { display: block; text-align: center; font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; line-height: 1.45; }
-.gh-wuxing-sub { display: block; text-align: center; font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 10rpx; }
-.gh-rel { margin-top: 24rpx; padding: 20rpx; border-radius: 20rpx; background: $app-bg; }
-.gh-rel-title { display: block; font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; margin-bottom: 12rpx; }
-.gh-chain { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; }
-.gh-node { font-size: calc(22rpx * var(--font-scale, 1)); font-weight: 700; padding: 6rpx 14rpx; border-radius: 10rpx; }
-.gh-node-body { color: $dim-body-deep; background: $dim-body-tint; }
-.gh-node-wisdom { color: $dim-wisdom-deep; background: $dim-wisdom-tint; }
-.gh-node-wealth { color: $dim-wealth-deep; background: $dim-wealth-tint; }
-.gh-node-action { color: $dim-action-deep; background: $dim-action-tint; }
-.gh-node-mind { color: $dim-mind-deep; background: $dim-mind-tint; }
-.gh-arrow { font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-ghost; margin: 0 6rpx; }
-.gh-op { font-size: calc(20rpx * var(--font-scale, 1)); color: $status-danger-deep; margin: 0 8rpx; }
-.gh-sep { font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-ghost; margin: 0 8rpx; }
-.gh-rel-hint { display: block; font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 12rpx; }
+.gh-wuxing { margin: 0 32rpx 24rpx; background: $app-surface; border: 1rpx solid $app-border-subtle; border-radius: $uni-radius-lg; padding: 32rpx 28rpx; }
+.gh-wuxing-title { display: block; font-size: calc(32rpx * var(--font-scale, 1)); font-weight: 800; color: $facade-text-strong; line-height: 1.4; }
+.gh-wuxing-sub { display: block; font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.6; margin-top: 12rpx; }
 
-.gh-rows { margin-top: 24rpx; display: flex; flex-direction: column; }
-.gh-row { display: flex; flex-direction: row; align-items: center; padding: 20rpx 0; border-top: 1rpx solid $app-border-subtle; }
-.gh-row:first-child { border-top: none; padding-top: 4rpx; }
-.gh-row:active { opacity: 0.85; }
-.gh-ic { width: 76rpx; height: 76rpx; border-radius: 20rpx; display: flex; flex-direction: row; align-items: center; justify-content: center; flex-shrink: 0; }
-.gh-ic-body { background: $dim-body-tint; }
-.gh-ic-wisdom { background: $dim-wisdom-tint; }
-.gh-ic-wealth { background: $dim-wealth-tint; }
-.gh-ic-action { background: $dim-action-tint; }
-.gh-ic-mind { background: $dim-mind-tint; }
-.gh-glyph { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; }
-.gh-ic-body .gh-glyph { color: $dim-body-deep; }
-.gh-ic-wisdom .gh-glyph { color: $dim-wisdom-deep; }
-.gh-ic-wealth .gh-glyph { color: $dim-wealth-deep; }
-.gh-ic-action .gh-glyph { color: $dim-action-deep; }
-.gh-ic-mind .gh-glyph { color: $dim-mind-deep; }
+/* 相生 / 相克 */
+.gh-rel { margin-top: 24rpx; padding: 24rpx 24rpx 20rpx; border-radius: $uni-radius-lg; background: $app-bg; }
+.gh-rel-title { display: block; font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-slate; letter-spacing: 1rpx; }
+.gh-chain { margin-top: 14rpx; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; }
+.gh-node { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 700; }
+.gh-node-body { color: $dim-body-deep; }
+.gh-node-wisdom { color: $dim-wisdom-deep; }
+.gh-node-wealth { color: $dim-wealth-deep; }
+.gh-node-action { color: $dim-action-deep; }
+.gh-node-mind { color: $dim-mind-deep; }
+.gh-arrow {
+  width: 24rpx; height: 24rpx; margin: 0 8rpx; flex-shrink: 0;
+  background-repeat: no-repeat;
+  background-position: center;
+  background-size: 24rpx 24rpx;
+  background-image: gh-icon($gh-arrow-bg, '%3Cline x1=%225%22 y1=%2212%22 x2=%2219%22 y2=%2212%22/%3E%3Cpolyline points=%2212 5 19 12 12 19%22/%3E');
+}
+.gh-sep { font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-slate; margin: 0 8rpx; }
+.gh-rel-hint { display: block; font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 14rpx; }
+
+/* 五行 rows(首尾身/心 featured 暖底高亮,破五卡等权) */
+.gh-rows { margin-top: 28rpx; display: flex; flex-direction: column; }
+.gh-row { display: flex; flex-direction: row; align-items: center; padding: 20rpx 12rpx; border: 1rpx solid $app-border-subtle; border-radius: $uni-radius-lg; background: $app-surface; }
+.gh-row + .gh-row { margin-top: 12rpx; }
+.gh-row:active { opacity: 0.88; }
+.gh-row--featured { padding: 24rpx 12rpx; background: $gh-tint-soft; border-color: rgba($brand-primary, 0.14); }
+.gh-ic { width: 68rpx; height: 68rpx; border-radius: 18rpx; flex-shrink: 0; display: flex; flex-direction: row; align-items: center; justify-content: center; }
+.gh-row--featured .gh-ic { width: 80rpx; height: 80rpx; border-radius: 22rpx; }
+.gh-ic-body {
+  background-color: $dim-body-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 40rpx 40rpx;
+  background-image: gh-icon($gh-ic-body-bg, '%3Cpath d=%22M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2%22/%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%224%22/%3E');
+}
+.gh-ic-wisdom {
+  background-color: $dim-wisdom-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 36rpx 36rpx;
+  background-image: gh-icon($gh-ic-wisdom-bg, '%3Cpath d=%22M9 18h6%22/%3E%3Cpath d=%22M10 22h4%22/%3E%3Cpath d=%22M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0 0 18 8 6 6 0 0 0 6 8c0 1 .23 2.23 1.5 3.5.76.76 1.23 1.52 1.41 2.5%22/%3E');
+}
+.gh-ic-wealth {
+  background-color: $dim-wealth-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 36rpx 36rpx;
+  background-image: gh-icon($gh-ic-wealth-bg, '%3Cpolyline points=%2223 6 13.5 15.5 8.5 10.5 1 18%22/%3E%3Cpolyline points=%2217 6 23 6 23 12%22/%3E');
+}
+.gh-ic-action {
+  background-color: $dim-action-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 36rpx 36rpx;
+  background-image: gh-icon($gh-ic-action-bg, '%3Cpolyline points=%2222 12 18 12 15 21 9 3 6 12 2 12%22/%3E');
+}
+.gh-ic-mind {
+  background-color: $dim-mind-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 40rpx 40rpx;
+  background-image: gh-icon($gh-ic-mind-bg, '%3Cpath d=%22M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z%22/%3E');
+}
 .gh-row-info { flex: 1; min-width: 0; margin-left: 20rpx; display: flex; flex-direction: column; }
-.gh-row-name { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
-.gh-row-sub { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.5; margin-top: 6rpx; }
-.gh-row-chev { font-size: calc(32rpx * var(--font-scale, 1)); color: $facade-text-ghost; margin-left: 12rpx; flex-shrink: 0; }
+.gh-row-name { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; }
+.gh-row--featured .gh-row-name { font-size: calc(32rpx * var(--font-scale, 1)); }
+.gh-dim { font-weight: 800; }
+.gh-dim-body { color: $dim-body-deep; }
+.gh-dim-wisdom { color: $dim-wisdom-deep; }
+.gh-dim-wealth { color: $dim-wealth-deep; }
+.gh-dim-action { color: $dim-action-deep; }
+.gh-dim-mind { color: $dim-mind-deep; }
+.gh-row-sub { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.5; margin-top: 6rpx; }
+.gh-row--featured .gh-row-sub { font-size: calc(26rpx * var(--font-scale, 1)); }
+.gh-row-chev {
+  width: 32rpx; height: 32rpx; flex-shrink: 0;
+  background-repeat: no-repeat; background-position: center; background-size: 32rpx 32rpx;
+  background-image: gh-icon($gh-chev-bg, '%3Cpolyline points=%229 18 15 12 9 6%22/%3E');
+}
 
+/* 登录引导 */
 .gh-guide { margin: 0 32rpx 8rpx; }
 
 </style>

+ 138 - 36
cfc-frontend/pages/profile-main/profile.vue

@@ -14,15 +14,20 @@
             <view class="gp-login-btn-ic"></view>
             <text class="gp-login-btn-text">登录 / 注册</text>
           </view>
-          <text class="gp-skip" @click="goSkip">暂不登录,先逛逛 ›</text>
+          <view class="gp-ghost-btn" @click="goSkip">
+            <text class="gp-ghost-btn-text">暂不登录,先逛逛</text>
+            <view class="gp-ghost-chev"></view>
+          </view>
         </view>
 
         <!-- 登录后开启 -->
         <view class="gp-block">
-          <text class="gp-tag">登录后开启</text>
+          <view class="gp-tag-row">
+            <text class="gp-tag">登录后开启</text>
+          </view>
           <view class="gp-rows">
             <view class="gp-row">
-              <view class="gp-ic gp-ic-wisdom"><text class="gp-glyph">智</text></view>
+              <view class="gp-ic gp-ic-body"></view>
               <view class="gp-row-info">
                 <text class="gp-row-name">个人身份档案</text>
                 <text class="gp-row-sub">资料、角色标签与会员状态</text>
@@ -30,7 +35,7 @@
               <view class="gp-lock"></view>
             </view>
             <view class="gp-row">
-              <view class="gp-ic gp-ic-action"><text class="gp-glyph">行</text></view>
+              <view class="gp-ic gp-ic-wisdom"></view>
               <view class="gp-row-info">
                 <text class="gp-row-name">我的家庭</text>
                 <text class="gp-row-sub">成员档案、家庭报告与关系管理</text>
@@ -38,7 +43,7 @@
               <view class="gp-lock"></view>
             </view>
             <view class="gp-row">
-              <view class="gp-ic gp-ic-wealth"><text class="gp-glyph">富</text></view>
+              <view class="gp-ic gp-ic-wealth"></view>
               <view class="gp-row-info">
                 <text class="gp-row-name">积分与能量</text>
                 <text class="gp-row-sub">积分记录、能量数据与健康资产</text>
@@ -50,8 +55,36 @@
 
         <!-- 理念卡 -->
         <view class="gp-philosophy">
-          <text class="gp-philosophy-title">照顾家庭,从照顾好自己开始</text>
-          <text class="gp-philosophy-desc">你的状态,就是家的状态。先安顿好自己,才有余力温暖家人。</text>
+          <view class="gp-philosophy-ic"></view>
+          <view class="gp-philosophy-body">
+            <text class="gp-philosophy-title">照顾家庭,从照顾好自己开始</text>
+            <text class="gp-philosophy-desc">你的状态,就是家的状态。先安顿好自己,才有余力温暖家人。</text>
+          </view>
+        </view>
+
+        <!-- 登录引导(模板内联:本页未注册 LoginGuideCard,等价结构本地实现) -->
+        <view class="gp-guide">
+          <view class="gp-guide-head">
+            <view class="gp-guide-ic"></view>
+            <text class="gp-guide-title">登录后,和家庭一起开始</text>
+          </view>
+          <view class="gp-guide-list">
+            <view class="gp-guide-item">
+              <view class="gp-guide-check"></view>
+              <text class="gp-guide-text">查看家庭报告与成员档案</text>
+            </view>
+            <view class="gp-guide-item">
+              <view class="gp-guide-check"></view>
+              <text class="gp-guide-text">管理积分与能量数据</text>
+            </view>
+            <view class="gp-guide-item">
+              <view class="gp-guide-check"></view>
+              <text class="gp-guide-text">参与家庭挑战与里程碑</text>
+            </view>
+          </view>
+          <view class="gp-guide-btn" @click="goLogin">
+            <text class="gp-guide-btn-text">手机号快捷登录</text>
+          </view>
         </view>
       </view>
     </view>
@@ -1030,53 +1063,94 @@ $c-fill-2b:         #F2F2F2;
   padding-bottom: calc(160rpx + env(safe-area-inset-bottom));
 }
 
-/* ===== 访客态(新暖调配色 · 令牌化) ===== */
-$gp-white: str-slice('#{$app-surface}', 2);
-$gp-brand-hex: '#{$brand-primary}';
-$gp-brand: str-slice($gp-brand-hex, 2);
-$gp-ghost-hex: '#{$facade-text-ghost}';
-$gp-ghost: str-slice($gp-ghost-hex, 2);
+/* ===== 访客态(设计稿 page-profile 落地 · 令牌化) ===== */
+// 页面级局部色令牌:仅声明 uni.scss 未收录、本页专属的值;其余全部走共享令牌
+$gp-cta-from:  #D1440B;                       // 深橙·亮端(白字 4.62:1)
+$gp-cta-to:    $brand-primary;                // 深橙·暗端(#C2410C 白字 5.18:1)
+$gp-cta-hover-from: #B93D0B;
+$gp-cta-hover-to:   #A9330A;
+$gp-cta-press-from: #A9330A;
+$gp-cta-press-to:   #962D08;
+$gp-logo-from: #FFE9D6;                       // logo 渐变亮端
+$gp-logo-to:   #FFD6AE;                       // logo 渐变暗端
+$gp-tint-soft: $tint-warm-soft;               // 暖白浅底 #FFF1E6
+$gp-guide-bg-from: #FFF8F2;                   // 引导卡顶(暖白偏橙)
+$gp-guide-bg-to:   #FFFDFB;                   // 引导卡底
+$gp-guide-ic-bg:   $dim-body-deep;
+
+// data-URI SVG icon 构造(mp-weixin 模板内禁写 <svg>,与 login-sheet 落地同款方案)
+@function gp-icon($color, $inner) {
+  @return url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23#{$color}' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E#{$inner}%3C/svg%3E");
+}
+$gp-white-bg:     str-slice('#{$app-surface}', 2);
+$gp-ghost-bg:     str-slice('#{$facade-text-slate}', 2);
+$gp-brand-bg:     str-slice('#{$brand-primary}', 2);
+$gp-body-bg:      str-slice('#{$dim-body-deep}', 2);
+$gp-wisdom-bg:    str-slice('#{$dim-wisdom-deep}', 2);
+$gp-wealth-bg:    str-slice('#{$dim-wealth-deep}', 2);
+$gp-guide-ic-b:   str-slice('#{$gp-guide-ic-bg}', 2);
+$gp-success-bg:   str-slice('#{$status-success-strong}', 2);
+$gp-ghost-hex:    '#{$facade-text-ghost}';
+$gp-ghost:        str-slice($gp-ghost-hex, 2);
 
 .gp-page { background: $app-bg; min-height: 100vh; padding: 28rpx 0 40rpx; }
 
 /* 登录大卡 */
-.gp-login { margin: 0 32rpx 24rpx; background: $app-surface; border-radius: 24rpx; padding: 48rpx 32rpx 40rpx; border: 1rpx solid $app-border-subtle; display: flex; flex-direction: column; align-items: center; box-shadow: 0 8rpx 24rpx rgba($brand-primary, 0.06); }
-.gp-logo { width: 112rpx; height: 112rpx; border-radius: 28rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-dark); display: flex; flex-direction: row; align-items: center; justify-content: center; box-shadow: 0 8rpx 20rpx rgba($brand-primary, 0.22); }
+.gp-login { margin: 0 32rpx 24rpx; background: linear-gradient(165deg, $gp-guide-bg-to 0%, $app-bg 100%); border: 1rpx solid $app-border-subtle; border-radius: 32rpx; padding: 48rpx 36rpx 40rpx; display: flex; flex-direction: column; }
+.gp-logo { width: 112rpx; height: 112rpx; border-radius: 28rpx; background: linear-gradient(135deg, $gp-logo-from 0%, $gp-logo-to 100%); display: flex; flex-direction: row; align-items: center; justify-content: center; }
 .gp-logo-heart {
   width: 56rpx; height: 56rpx;
   background-repeat: no-repeat;
   background-position: center;
   background-size: 56rpx 56rpx;
-  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23#{$gp-white}' d='M12 20.6 4.6 13.2a4.8 4.8 0 0 1 6.8-6.8l.6.6.6-.6a4.8 4.8 0 0 1 6.8 6.8z'/%3E%3C/svg%3E");
+  background-image: gp-icon($gp-brand-bg, '%3Cpath d=%22M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z%22/%3E');
 }
-.gp-login-title { font-size: calc(38rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; margin-top: 24rpx; }
-.gp-login-desc { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 12rpx; text-align: center; }
-.gp-login-btn { margin-top: 32rpx; width: 100%; display: flex; flex-direction: row; align-items: center; justify-content: center; padding: 26rpx 0; border-radius: 999rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-dark); box-shadow: 0 10rpx 24rpx rgba($brand-primary, 0.22); }
+.gp-login-title { font-size: calc(44rpx * var(--font-scale, 1)); font-weight: 800; color: $facade-text-strong; margin-top: 24rpx; letter-spacing: 1rpx; }
+.gp-login-desc { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 14rpx; }
+.gp-login-btn { margin-top: 32rpx; width: 100%; display: flex; flex-direction: row; align-items: center; justify-content: center; padding: 28rpx 0; border-radius: 24rpx; background: linear-gradient(135deg, $gp-cta-from 0%, $gp-cta-to 100%); box-shadow: 0 10rpx 24rpx rgba($brand-primary, 0.2); }
 .gp-login-btn:active { opacity: 0.9; }
 .gp-login-btn-ic {
   width: 36rpx; height: 36rpx; flex-shrink: 0;
   background-repeat: no-repeat;
   background-position: center;
   background-size: 36rpx 36rpx;
-  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23#{$gp-white}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.6'/%3E%3Cpath d='M4.8 20.4a7.2 7.2 0 0 1 14.4 0'/%3E%3C/svg%3E");
+  background-image: gp-icon($gp-white-bg, '%3Cpath d=%22M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2%22/%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%224%22/%3E');
+}
+.gp-login-btn-text { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $app-surface; margin-left: 12rpx; }
+.gp-ghost-btn { margin-top: 10rpx; width: 100%; display: flex; flex-direction: row; align-items: center; justify-content: center; padding: 24rpx 0; border-radius: 24rpx; background: $app-surface; border: 1rpx solid $app-border-subtle; }
+.gp-ghost-btn:active { opacity: 0.85; }
+.gp-ghost-btn-text { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-slate; }
+.gp-ghost-chev {
+  width: 30rpx; height: 30rpx; margin-left: 10rpx; flex-shrink: 0;
+  background-repeat: no-repeat;
+  background-position: center;
+  background-size: 30rpx 30rpx;
+  background-image: gp-icon($gp-ghost-bg, '%3Cpolyline points=%229 18 15 12 9 6%22/%3E');
 }
-.gp-login-btn-text { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; color: $app-surface; margin-left: 12rpx; }
-.gp-skip { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-top: 24rpx; }
 
 /* 登录后开启 */
 .gp-block { margin: 0 32rpx 24rpx; background: $app-surface; border-radius: 24rpx; padding: 24rpx; border: 1rpx solid $app-border-subtle; }
+.gp-tag-row { display: flex; flex-direction: row; align-items: baseline; justify-content: space-between; }
 .gp-tag { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 700; color: $brand-primary; letter-spacing: 1rpx; }
 .gp-rows { margin-top: 8rpx; display: flex; flex-direction: column; }
-.gp-row { display: flex; flex-direction: row; align-items: center; padding: 20rpx 0; border-top: 1rpx solid $app-border-subtle; }
-.gp-row:first-child { border-top: none; }
-.gp-ic { width: 76rpx; height: 76rpx; border-radius: 20rpx; display: flex; flex-direction: row; align-items: center; justify-content: center; flex-shrink: 0; }
-.gp-ic-wisdom { background: $dim-wisdom-tint; }
-.gp-ic-action { background: $dim-action-tint; }
-.gp-ic-wealth { background: $dim-wealth-tint; }
-.gp-glyph { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; }
-.gp-ic-wisdom .gp-glyph { color: $dim-wisdom-deep; }
-.gp-ic-action .gp-glyph { color: $dim-action-deep; }
-.gp-ic-wealth .gp-glyph { color: $dim-wealth-deep; }
+.gp-row { display: flex; flex-direction: row; align-items: center; padding: 20rpx 12rpx; border: 1rpx solid $app-border-subtle; border-radius: 20rpx; background: $app-surface; }
+.gp-row + .gp-row { margin-top: 12rpx; }
+.gp-ic { width: 68rpx; height: 68rpx; border-radius: 18rpx; flex-shrink: 0; }
+.gp-ic-body {
+  background-color: $dim-body-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gp-icon($gp-body-bg, '%3Cpath d=%22M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2%22/%3E%3Ccircle cx=%2212%22 cy=%227%22 r=%224%22/%3E');
+}
+.gp-ic-wisdom {
+  background-color: $dim-wisdom-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gp-icon($gp-wisdom-bg, '%3Cpath d=%22M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2%22/%3E%3Ccircle cx=%229%22 cy=%227%22 r=%224%22/%3E%3Cpath d=%22M23 21v-2a4 4 0 0 0-3-3.87%22/%3E%3Cpath d=%22M16 3.13a4 4 0 0 1 0 7.75%22/%3E');
+}
+.gp-ic-wealth {
+  background-color: $dim-wealth-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gp-icon($gp-wealth-bg, '%3Cline x1=%2218%22 y1=%2220%22 x2=%2218%22 y2=%2210%22/%3E%3Cline x1=%2212%22 y1=%2220%22 x2=%2212%22 y2=%224%22/%3E%3Cline x1=%226%22 y1=%2220%22 x2=%226%22 y2=%2214%22/%3E');
+}
 .gp-row-info { flex: 1; min-width: 0; margin-left: 20rpx; display: flex; flex-direction: column; }
 .gp-row-name { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
 .gp-row-sub { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 6rpx; }
@@ -1085,14 +1159,42 @@ $gp-ghost: str-slice($gp-ghost-hex, 2);
   background-repeat: no-repeat;
   background-position: center;
   background-size: 32rpx 32rpx;
-  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23#{$gp-ghost}' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='10.5' rx='2.5'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
+  background-image: gp-icon($gp-ghost, '%3Crect x=%223%22 y=%2211%22 width=%2218%22 height=%2211%22 rx=%222%22/%3E%3Cpath d=%22M7 11V7a5 5 0 0 1 10 0v4%22/%3E');
 }
 
 /* 理念卡 */
-.gp-philosophy { margin: 0 32rpx 8rpx; background: $facade-brand-tint; border-radius: 24rpx; padding: 28rpx 24rpx; border-left: 6rpx solid $brand-primary; }
-.gp-philosophy-title { display: block; font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; }
-.gp-philosophy-desc { display: block; font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.65; margin-top: 10rpx; }
+.gp-philosophy { margin: 0 32rpx 24rpx; display: flex; flex-direction: row; align-items: flex-start; background: $app-surface; border-radius: 24rpx; padding: 28rpx 24rpx; border: 1rpx solid $app-border-subtle; }
+.gp-philosophy-ic {
+  width: 68rpx; height: 68rpx; flex-shrink: 0; border-radius: 18rpx;
+  background-color: $dim-action-tint;
+  background-repeat: no-repeat; background-position: center; background-size: 38rpx 38rpx;
+  background-image: gp-icon($gp-guide-ic-b, '%3Cpath d=%22M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z%22/%3E');
+}
+.gp-philosophy-body { flex: 1; min-width: 0; margin-left: 20rpx; display: flex; flex-direction: column; }
+.gp-philosophy-title { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; line-height: 1.45; }
+.gp-philosophy-desc { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.7; margin-top: 12rpx; }
 
+/* 登录引导(模板内联:本页未注册 LoginGuideCard) */
+.gp-guide { margin: 0 32rpx 8rpx; display: flex; flex-direction: column; background: linear-gradient(150deg, $gp-guide-bg-from 0%, $gp-guide-bg-to 100%); border-radius: 24rpx; padding: 32rpx 28rpx; border: 1rpx solid $app-border-subtle; }
+.gp-guide-head { display: flex; flex-direction: row; align-items: center; }
+.gp-guide-ic {
+  width: 36rpx; height: 36rpx; flex-shrink: 0;
+  background-repeat: no-repeat; background-position: center; background-size: 36rpx 36rpx;
+  background-image: gp-icon($gp-brand-bg, '%3Crect x=%223%22 y=%2211%22 width=%2218%22 height=%2211%22 rx=%222%22/%3E%3Cpath d=%22M7 11V7a5 5 0 0 1 10 0v4%22/%3E');
+}
+.gp-guide-title { flex: 1; min-width: 0; margin-left: 14rpx; font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 800; color: $facade-text-strong; line-height: 1.4; }
+.gp-guide-list { margin-top: 20rpx; display: flex; flex-direction: column; }
+.gp-guide-item { display: flex; flex-direction: row; align-items: flex-start; margin-top: 14rpx; }
+.gp-guide-item:first-child { margin-top: 0; }
+.gp-guide-check {
+  width: 28rpx; height: 28rpx; flex-shrink: 0; margin-top: 6rpx;
+  background-repeat: no-repeat; background-position: center; background-size: 28rpx 28rpx;
+  background-image: gp-icon($gp-success-bg, '%3Cpolyline points=%2220 6 9 17 4 12%22/%3E');
+}
+.gp-guide-text { flex: 1; min-width: 0; margin-left: 12rpx; font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-body; line-height: 1.6; }
+.gp-guide-btn { margin-top: 28rpx; padding: 24rpx 0; border-radius: 999rpx; background: linear-gradient(135deg, $gp-cta-from 0%, $gp-cta-to 100%); display: flex; flex-direction: row; align-items: center; justify-content: center; box-shadow: 0 10rpx 24rpx rgba($brand-primary, 0.18); }
+.gp-guide-btn:active { opacity: 0.9; }
+.gp-guide-btn-text { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $app-surface; }
 
 /* 退出切换 */
 .exit-switch {