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

Merge commit '300dd07650ff23077481d7642b3abe9ac68264b3' into HEAD

Agnes Agent 2 недель назад
Родитель
Сommit
6ce7a547be
100 измененных файлов с 433 добавлено и 433 удалено
  1. 3 3
      cfc-frontend/components/ArticleBookshelf.vue
  2. 1 1
      cfc-frontend/components/BadgeGrid.vue
  3. 1 1
      cfc-frontend/components/ConfigurableGuide.vue
  4. 1 1
      cfc-frontend/components/ContentSharePoster.vue
  5. 2 2
      cfc-frontend/components/DimensionActivities.vue
  6. 2 2
      cfc-frontend/components/DimensionArticles.vue
  7. 1 1
      cfc-frontend/components/DimensionProducts.vue
  8. 3 3
      cfc-frontend/components/DimensionVisitorCard.vue
  9. 2 2
      cfc-frontend/components/FamilyChallengeCard.vue
  10. 4 4
      cfc-frontend/components/FamilyEnergyBar.vue
  11. 2 2
      cfc-frontend/components/FamilyFeed.vue
  12. 1 1
      cfc-frontend/components/FamilyMemberCard.vue
  13. 2 2
      cfc-frontend/components/GenerationPicker.vue
  14. 1 1
      cfc-frontend/components/HealthBadge.vue
  15. 1 1
      cfc-frontend/components/LoginGuideCard.vue
  16. 8 8
      cfc-frontend/components/MemberSelector.vue
  17. 1 1
      cfc-frontend/components/OnboardingProgressBar.vue
  18. 1 1
      cfc-frontend/components/PageBanner.vue
  19. 1 1
      cfc-frontend/components/PlayfulCard.vue
  20. 1 1
      cfc-frontend/components/ProfileBadges.vue
  21. 1 1
      cfc-frontend/components/ProfileGrowth.vue
  22. 1 1
      cfc-frontend/components/RadarChart.vue
  23. 4 4
      cfc-frontend/components/RecommendedFeed.vue
  24. 3 3
      cfc-frontend/components/RelatedContent.vue
  25. 2 2
      cfc-frontend/components/TagChip.vue
  26. 2 2
      cfc-frontend/components/address-picker.vue
  27. 1 1
      cfc-frontend/components/gate-lock.vue
  28. 4 4
      cfc-frontend/components/hand-signature/hand-signature.vue
  29. 4 4
      cfc-frontend/components/login-sheet.vue
  30. 3 3
      cfc-frontend/components/report-upload-card.vue
  31. 2 2
      cfc-frontend/components/tab-transition.vue
  32. 7 7
      cfc-frontend/components/wuxing-sandbox.vue
  33. 3 3
      cfc-frontend/pages/achievement/index.vue
  34. 2 2
      cfc-frontend/pages/action-detail/components/DimensionSubDims.vue
  35. 4 4
      cfc-frontend/pages/action-detail/components/OctopusDiagram.vue
  36. 2 2
      cfc-frontend/pages/action-detail/components/PearlDiagram.vue
  37. 8 8
      cfc-frontend/pages/action-detail/contact-detail.vue
  38. 9 9
      cfc-frontend/pages/action-detail/index.vue
  39. 7 7
      cfc-frontend/pages/action-detail/interaction-log.vue
  40. 2 2
      cfc-frontend/pages/action-detail/member-action-detail.vue
  41. 8 8
      cfc-frontend/pages/action-detail/octopus-add-effect.vue
  42. 5 5
      cfc-frontend/pages/action-detail/octopus-add-key-person.vue
  43. 5 5
      cfc-frontend/pages/action-detail/pearl-add-resource.vue
  44. 4 4
      cfc-frontend/pages/action-detail/relationship-questionnaire.vue
  45. 22 22
      cfc-frontend/pages/activity/activity-detail/activity-detail.vue
  46. 1 1
      cfc-frontend/pages/activity/components/ActivityPoster.vue
  47. 8 8
      cfc-frontend/pages/activity/create.vue
  48. 9 9
      cfc-frontend/pages/activity/index.vue
  49. 1 1
      cfc-frontend/pages/activity/order-pay/order-pay.vue
  50. 5 5
      cfc-frontend/pages/ai/chat.vue
  51. 1 1
      cfc-frontend/pages/ai/components/AITaskCard.vue
  52. 2 2
      cfc-frontend/pages/ai/components/QuotaProgressBar.vue
  53. 1 1
      cfc-frontend/pages/ai/components/UpgradeGuideModal.vue
  54. 9 9
      cfc-frontend/pages/article-center/article-detail.vue
  55. 4 4
      cfc-frontend/pages/article-center/article-edit.vue
  56. 4 4
      cfc-frontend/pages/article-center/index.vue
  57. 1 1
      cfc-frontend/pages/article-center/my-posts.vue
  58. 1 1
      cfc-frontend/pages/assessment-plan/detail.vue
  59. 3 3
      cfc-frontend/pages/assessment-plan/list.vue
  60. 5 5
      cfc-frontend/pages/assessment/apply.vue
  61. 8 8
      cfc-frontend/pages/assessment/execution.vue
  62. 6 6
      cfc-frontend/pages/assessment/purchase.vue
  63. 6 6
      cfc-frontend/pages/assessment/quota.vue
  64. 4 4
      cfc-frontend/pages/assessment/rating.vue
  65. 8 8
      cfc-frontend/pages/assessment/results.vue
  66. 5 5
      cfc-frontend/pages/assessment/upload-report.vue
  67. 6 6
      cfc-frontend/pages/body-detail/checkin.vue
  68. 4 4
      cfc-frontend/pages/body-detail/dimension-detail.vue
  69. 6 6
      cfc-frontend/pages/body-detail/dimension-questionnaire.vue
  70. 5 5
      cfc-frontend/pages/body-detail/health-dimensions.vue
  71. 10 10
      cfc-frontend/pages/body-detail/health-report.vue
  72. 8 8
      cfc-frontend/pages/body-detail/index.vue
  73. 2 2
      cfc-frontend/pages/body-detail/member-body-detail.vue
  74. 5 5
      cfc-frontend/pages/butler/apply.vue
  75. 4 4
      cfc-frontend/pages/butler/select.vue
  76. 3 3
      cfc-frontend/pages/child/rewards.vue
  77. 3 3
      cfc-frontend/pages/cognitive-hall.vue
  78. 2 2
      cfc-frontend/pages/cognitive-test/language-test.vue
  79. 5 5
      cfc-frontend/pages/cognitive-test/logic-test.vue
  80. 7 7
      cfc-frontend/pages/cognitive-test/memory-test.vue
  81. 2 2
      cfc-frontend/pages/cognitive-test/perception-test.vue
  82. 5 5
      cfc-frontend/pages/cognitive-test/spatial-test.vue
  83. 6 6
      cfc-frontend/pages/cognitive-test/speed-test.vue
  84. 1 1
      cfc-frontend/pages/dan-assessment/comparison.vue
  85. 13 13
      cfc-frontend/pages/dan-assessment/report-result.vue
  86. 9 9
      cfc-frontend/pages/diet/food-query.vue
  87. 8 8
      cfc-frontend/pages/diet/index.vue
  88. 3 3
      cfc-frontend/pages/diet/meal-config.vue
  89. 2 2
      cfc-frontend/pages/diet/preferences.vue
  90. 7 7
      cfc-frontend/pages/diet/recommendation.vue
  91. 4 4
      cfc-frontend/pages/diet/record-detail.vue
  92. 4 4
      cfc-frontend/pages/diet/records.vue
  93. 14 14
      cfc-frontend/pages/discover-detail/product-detail/product-detail.vue
  94. 6 6
      cfc-frontend/pages/discover/circle-feed.vue
  95. 7 7
      cfc-frontend/pages/discover/circles.vue
  96. 1 1
      cfc-frontend/pages/discover/components/CircleCard.vue
  97. 1 1
      cfc-frontend/pages/discover/components/CircleDetail.vue
  98. 5 5
      cfc-frontend/pages/discover/create-circle.vue
  99. 7 7
      cfc-frontend/pages/discover/index.vue
  100. 12 12
      cfc-frontend/pages/energy/index.vue

+ 3 - 3
cfc-frontend/components/ArticleBookshelf.vue

@@ -206,7 +206,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 0;
   height: 0;
   padding-top: 133.33%; /* 3:4 书封比例 */
   padding-top: 133.33%; /* 3:4 书封比例 */
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: linear-gradient(180deg, $facade-fill-4 0%, $facade-fill 50%, $facade-fill-4 100%);
   background: linear-gradient(180deg, $facade-fill-4 0%, $facade-fill 50%, $facade-fill-4 100%);
   background-size: 200% 100%;
   background-size: 200% 100%;
   animation: skeleton-wave 1.4s ease-in-out infinite;
   animation: skeleton-wave 1.4s ease-in-out infinite;
@@ -214,7 +214,7 @@ export default {
 .bs-skeleton-line {
 .bs-skeleton-line {
   height: 24rpx;
   height: 24rpx;
   margin-top: 10rpx;
   margin-top: 10rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   background: linear-gradient(180deg, $facade-fill-4 0%, $facade-fill 50%, $facade-fill-4 100%);
   background: linear-gradient(180deg, $facade-fill-4 0%, $facade-fill 50%, $facade-fill-4 100%);
   background-size: 200% 100%;
   background-size: 200% 100%;
   animation: skeleton-wave 1.4s ease-in-out infinite;
   animation: skeleton-wave 1.4s ease-in-out infinite;
@@ -241,7 +241,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 0;
   height: 0;
   padding-top: 133.33%; /* 3:4 书封比例 */
   padding-top: 133.33%; /* 3:4 书封比例 */
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   position: relative;
   position: relative;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;

+ 1 - 1
cfc-frontend/components/BadgeGrid.vue

@@ -23,7 +23,7 @@ export default {
 <style scoped lang="scss">
 <style scoped lang="scss">
 .badge-grid {
 .badge-grid {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }

+ 1 - 1
cfc-frontend/components/ConfigurableGuide.vue

@@ -120,7 +120,7 @@ export default {
   width: 640rpx;
   width: 640rpx;
   min-height: 560rpx;
   min-height: 560rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   flex-direction: column;
   flex-direction: column;
   align-items: center;
   align-items: center;

+ 1 - 1
cfc-frontend/components/ContentSharePoster.vue

@@ -800,7 +800,7 @@ export default {
   height: 80rpx;
   height: 80rpx;
   line-height: 80rpx;
   line-height: 80rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
   border: none;
   border: none;
 }
 }

+ 2 - 2
cfc-frontend/components/DimensionActivities.vue

@@ -241,7 +241,7 @@ export default {
 .section-icon-wrap {
 .section-icon-wrap {
   width: 44rpx;
   width: 44rpx;
   height: 44rpx;
   height: 44rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: linear-gradient(135deg, $dim-mind, $dim-mind-light-2);
   background: linear-gradient(135deg, $dim-mind, $dim-mind-light-2);
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -326,7 +326,7 @@ export default {
 
 
 .dot.active {
 .dot.active {
   width: 32rpx;
   width: 32rpx;
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   background: $brand-primary;
   background: $brand-primary;
 }
 }
 
 

+ 2 - 2
cfc-frontend/components/DimensionArticles.vue

@@ -165,7 +165,7 @@ export default {
 }
 }
 .article-card {
 .article-card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 28rpx 24rpx;
   padding: 28rpx 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   margin-bottom: 20rpx;
   margin-bottom: 20rpx;
@@ -176,7 +176,7 @@ export default {
 .article-category {
 .article-category {
   display: inline-block;
   display: inline-block;
   padding: 4rpx 18rpx;
   padding: 4rpx 18rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 14rpx;
   margin-bottom: 14rpx;
 }
 }
 .article-category-text {
 .article-category-text {

+ 1 - 1
cfc-frontend/components/DimensionProducts.vue

@@ -168,7 +168,7 @@ export default {
 .product-card {
 .product-card {
   width: calc(25% - 12rpx);
   width: calc(25% - 12rpx);
   background: $app-surface;
   background: $app-surface;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   overflow: hidden;
   overflow: hidden;
   box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.06);
   margin-right: 16rpx;
   margin-right: 16rpx;

+ 3 - 3
cfc-frontend/components/DimensionVisitorCard.vue

@@ -158,7 +158,7 @@ export default {
   flex: 1;
   flex: 1;
   height: 88rpx;
   height: 88rpx;
   line-height: 88rpx;
   line-height: 88rpx;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   color: $app-surface;
   color: $app-surface;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;
@@ -170,7 +170,7 @@ export default {
   flex: 1;
   flex: 1;
   height: 88rpx;
   height: 88rpx;
   line-height: 88rpx;
   line-height: 88rpx;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   background: $app-surface;
   background: $app-surface;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 500;
   font-weight: 500;
@@ -183,7 +183,7 @@ export default {
   margin-top: 24rpx;
   margin-top: 24rpx;
   background: $app-surface;
   background: $app-surface;
   border: 1rpx dashed $facade-gray-200;
   border: 1rpx dashed $facade-gray-200;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx 28rpx;
   padding: 40rpx 28rpx;
   display: flex;
   display: flex;
   flex-direction: column;
   flex-direction: column;

+ 2 - 2
cfc-frontend/components/FamilyChallengeCard.vue

@@ -220,7 +220,7 @@ export default {
 /* 待同意提示区 */
 /* 待同意提示区 */
 .pending-section {
 .pending-section {
   background: $status-warning-soft;
   background: $status-warning-soft;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 10rpx 12rpx;
   padding: 10rpx 12rpx;
   margin-bottom: 6rpx;
   margin-bottom: 6rpx;
 }
 }
@@ -250,7 +250,7 @@ export default {
 /* 目标区 */
 /* 目标区 */
 .target-section {
 .target-section {
   background: $facade-fill-slate-50;
   background: $facade-fill-slate-50;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 10rpx 12rpx;
   padding: 10rpx 12rpx;
   margin-bottom: 6rpx;
   margin-bottom: 6rpx;
 }
 }

+ 4 - 4
cfc-frontend/components/FamilyEnergyBar.vue

@@ -207,13 +207,13 @@ export default {
   flex: 1;
   flex: 1;
   height: 24rpx;
   height: 24rpx;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   overflow: hidden;
   overflow: hidden;
   margin: 0 12rpx;
   margin: 0 12rpx;
 }
 }
 .bar-fill {
 .bar-fill {
   height: 100%;
   height: 100%;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   transition: width 0.5s ease;
   transition: width 0.5s ease;
 }
 }
 .bar-value {
 .bar-value {
@@ -240,10 +240,10 @@ export default {
   overflow: hidden;
   overflow: hidden;
 }
 }
 .bar-fill-primary {
 .bar-fill-primary {
-  border-radius: 12rpx 0 0 12rpx;
+  border-radius: 16rpx 0 0 16rpx;
 }
 }
 .bar-fill-secondary {
 .bar-fill-secondary {
-  border-radius: 0 12rpx 12rpx 0;
+  border-radius: 0 16rpx 16rpx 0;
   margin-left: 2rpx;
   margin-left: 2rpx;
 }
 }
 .stacked-legend {
 .stacked-legend {

+ 2 - 2
cfc-frontend/components/FamilyFeed.vue

@@ -358,7 +358,7 @@ export default {
 .feed-detail-head { display: flex; flex-direction: row; align-items: center; }
 .feed-detail-head { display: flex; flex-direction: row; align-items: center; }
 
 
 .feed-detail-icon-wrap {
 .feed-detail-icon-wrap {
-  width: 64rpx; height: 64rpx; border-radius: 20rpx;
+  width: 64rpx; height: 64rpx; border-radius: 24rpx;
   background: rgba(249,115,22,0.1);
   background: rgba(249,115,22,0.1);
   display: flex; align-items: center; justify-content: center;
   display: flex; align-items: center; justify-content: center;
   margin-right: 16rpx; flex-shrink: 0;
   margin-right: 16rpx; flex-shrink: 0;
@@ -384,7 +384,7 @@ export default {
 }
 }
 .feed-detail-amount-text { font-size: calc(24rpx * var(--font-scale, 1)); color: $app-surface; font-weight: bold; }
 .feed-detail-amount-text { font-size: calc(24rpx * var(--font-scale, 1)); color: $app-surface; font-weight: bold; }
 .feed-detail-btn {
 .feed-detail-btn {
-  margin-top: 28rpx; height: 76rpx; border-radius: 38rpx;
+  margin-top: 28rpx; height: 76rpx; border-radius: 24rpx;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   display: flex; align-items: center; justify-content: center;
   display: flex; align-items: center; justify-content: center;
 }
 }

+ 1 - 1
cfc-frontend/components/FamilyMemberCard.vue

@@ -141,7 +141,7 @@ export default {
   left: 50%;
   left: 50%;
   transform: translateX(-50%);
   transform: translateX(-50%);
   padding: 1rpx 8rpx;
   padding: 1rpx 8rpx;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   white-space: nowrap;
   white-space: nowrap;
   max-width: 84rpx;
   max-width: 84rpx;
 }
 }

+ 2 - 2
cfc-frontend/components/GenerationPicker.vue

@@ -101,7 +101,7 @@ export default {
 }
 }
 .picker {
 .picker {
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
@@ -129,7 +129,7 @@ export default {
   margin-top: 20rpx;
   margin-top: 20rpx;
   padding: 20rpx;
   padding: 20rpx;
   background: $facade-fill-ghost-2;
   background: $facade-fill-ghost-2;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
 }
 }
 .radio-group {
 .radio-group {
   display: flex;
   display: flex;

+ 1 - 1
cfc-frontend/components/HealthBadge.vue

@@ -41,7 +41,7 @@ export default {
   gap: 16rpx;
   gap: 16rpx;
   padding: 20rpx 24rpx;
   padding: 20rpx 24rpx;
   background: linear-gradient(135deg, $status-success-tint-2, $status-success-tint);
   background: linear-gradient(135deg, $status-success-tint-2, $status-success-tint);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin: 0 20rpx 16rpx 20rpx;
   margin: 0 20rpx 16rpx 20rpx;
 }
 }
 .badge-icon-wrap {
 .badge-icon-wrap {

+ 1 - 1
cfc-frontend/components/LoginGuideCard.vue

@@ -64,7 +64,7 @@ export default {
 }
 }
 .guide-btn {
 .guide-btn {
   padding: 16rpx 48rpx;
   padding: 16rpx 48rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 500;
   font-weight: 500;
 }
 }

+ 8 - 8
cfc-frontend/components/MemberSelector.vue

@@ -690,7 +690,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
-  border-radius: 40rpx;
+  border-radius: 24rpx;
 }
 }
 /* Action Sheet 头部 */
 /* Action Sheet 头部 */
 .action-header {
 .action-header {
@@ -730,12 +730,12 @@ export default {
   flex: 1;
   flex: 1;
   height: 14rpx;
   height: 14rpx;
   background: $facade-fill-gray-100;
   background: $facade-fill-gray-100;
-  border-radius: 7rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .score-bar-fill {
 .score-bar-fill {
   height: 100%;
   height: 100%;
-  border-radius: 7rpx;
+  border-radius: 8rpx;
 }
 }
 .score-bar-fill.trust { background: $status-success; }
 .score-bar-fill.trust { background: $status-success; }
 .score-bar-fill.intimacy { background: $status-info; }
 .score-bar-fill.intimacy { background: $status-info; }
@@ -788,7 +788,7 @@ $tab-dims: (
   padding: 10rpx 22rpx 10rpx 12rpx;
   padding: 10rpx 22rpx 10rpx 12rpx;
   background: $app-surface;
   background: $app-surface;
   border: 2rpx solid $app-border-subtle;
   border: 2rpx solid $app-border-subtle;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   transition: border-color $dur-state $ease-standard, background $dur-state $ease-standard, transform $dur-press $ease-standard;
   transition: border-color $dur-state $ease-standard, background $dur-state $ease-standard, transform $dur-press $ease-standard;
   flex-shrink: 0;
   flex-shrink: 0;
 
 
@@ -814,7 +814,7 @@ $tab-dims: (
   min-width: 36rpx;
   min-width: 36rpx;
   height: 36rpx;
   height: 36rpx;
   padding: 0 8rpx;
   padding: 0 8rpx;
-  border-radius: 18rpx;
+  border-radius: 16rpx;
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
@@ -869,7 +869,7 @@ $tab-dims: (
   min-height: 88rpx;
   min-height: 88rpx;
   min-width: 88rpx;
   min-width: 88rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   background: $app-surface-subtle;
   background: $app-surface-subtle;
   flex-shrink: 0;
   flex-shrink: 0;
 
 
@@ -900,7 +900,7 @@ $tab-dims: (
 .tabs-empty-btn {
 .tabs-empty-btn {
   margin-top: 16rpx;
   margin-top: 16rpx;
   padding: 12rpx 32rpx;
   padding: 12rpx 32rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
@@ -955,7 +955,7 @@ $tab-dims: (
 .minimal-chip {
 .minimal-chip {
   flex-shrink: 0;
   flex-shrink: 0;
   padding: 10rpx 24rpx;
   padding: 10rpx 24rpx;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
   border: 2rpx solid transparent;
   border: 2rpx solid transparent;
 }
 }

+ 1 - 1
cfc-frontend/components/OnboardingProgressBar.vue

@@ -77,7 +77,7 @@ export default {
   padding: 24rpx 28rpx;
   padding: 24rpx 28rpx;
   background: linear-gradient(135deg, $uni-primary-pale, $facade-brand-tint-2);
   background: linear-gradient(135deg, $uni-primary-pale, $facade-brand-tint-2);
   border: 2rpx solid $brand-primary-light-2;
   border: 2rpx solid $brand-primary-light-2;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 .opb-head {
 .opb-head {
   display: flex;
   display: flex;

+ 1 - 1
cfc-frontend/components/PageBanner.vue

@@ -106,7 +106,7 @@ export default {
 .banner-logo {
 .banner-logo {
   width: 56rpx;
   width: 56rpx;
   height: 56rpx;
   height: 56rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   flex-shrink: 0;
   flex-shrink: 0;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }

+ 1 - 1
cfc-frontend/components/PlayfulCard.vue

@@ -56,7 +56,7 @@ export default {
 <style scoped lang="scss">
 <style scoped lang="scss">
 .playful-card {
 .playful-card {
   background: var(--surface, $app-surface);
   background: var(--surface, $app-surface);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   transition: transform .15s ease, box-shadow .2s ease;
   transition: transform .15s ease, box-shadow .2s ease;
 }
 }

+ 1 - 1
cfc-frontend/components/ProfileBadges.vue

@@ -136,7 +136,7 @@ export default {
   flex-direction: row;
   flex-direction: row;
   flex-wrap: wrap;
   flex-wrap: wrap;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx 16rpx;
   padding: 24rpx 16rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }

+ 1 - 1
cfc-frontend/components/ProfileGrowth.vue

@@ -104,7 +104,7 @@ export default {
 
 
 .report-card {
 .report-card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;

+ 1 - 1
cfc-frontend/components/RadarChart.vue

@@ -853,7 +853,7 @@ export default {
 .radar-chart-wrap {
 .radar-chart-wrap {
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   overflow: hidden;
   overflow: hidden;
   display: flex;
   display: flex;

+ 4 - 4
cfc-frontend/components/RecommendedFeed.vue

@@ -177,7 +177,7 @@ export default {
 .feed-img {
 .feed-img {
   width: 100%;
   width: 100%;
   height: 200rpx;
   height: 200rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill;
   background: $facade-fill;
   display: block;
   display: block;
   margin-bottom: 12rpx;
   margin-bottom: 12rpx;
@@ -185,7 +185,7 @@ export default {
 .feed-img-placeholder {
 .feed-img-placeholder {
   width: 100%;
   width: 100%;
   height: 200rpx;
   height: 200rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: linear-gradient(135deg, $facade-fill 25%, $facade-fill-4 50%, $facade-fill 75%);
   background: linear-gradient(135deg, $facade-fill 25%, $facade-fill-4 50%, $facade-fill 75%);
   background-size: 200% 100%;
   background-size: 200% 100%;
   animation: shimmer 1.5s infinite;
   animation: shimmer 1.5s infinite;
@@ -208,7 +208,7 @@ export default {
 .feed-type-badge {
 .feed-type-badge {
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   padding: 2rpx 8rpx;
   padding: 2rpx 8rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   font-weight: 500;
   font-weight: 500;
 }
 }
 .product-badge {
 .product-badge {
@@ -222,7 +222,7 @@ export default {
 .feed-status-badge {
 .feed-status-badge {
   font-size: calc(18rpx * var(--font-scale, 1));
   font-size: calc(18rpx * var(--font-scale, 1));
   padding: 2rpx 8rpx;
   padding: 2rpx 8rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
 }
 }
 .status-upcoming { background: $status-info-soft; color: $status-info-deep; }
 .status-upcoming { background: $status-info-soft; color: $status-info-deep; }
 .status-ongoing { background: $status-success-soft; color: $status-success-strong-2; }
 .status-ongoing { background: $status-success-soft; color: $status-success-strong-2; }

+ 3 - 3
cfc-frontend/components/RelatedContent.vue

@@ -348,7 +348,7 @@ export default {
   flex-direction: row;
   flex-direction: row;
   align-items: flex-start;
   align-items: flex-start;
   padding: 14rpx 0;
   padding: 14rpx 0;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
 }
 }
 .ra-item-pressed {
 .ra-item-pressed {
   background: $facade-fill-gray-100;
   background: $facade-fill-gray-100;
@@ -356,7 +356,7 @@ export default {
 .ra-cover {
 .ra-cover {
   width: 160rpx;
   width: 160rpx;
   height: 120rpx;
   height: 120rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-gray-100;
   background: $facade-fill-gray-100;
   flex-shrink: 0;
   flex-shrink: 0;
 }
 }
@@ -395,7 +395,7 @@ export default {
 .ra-status {
 .ra-status {
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   padding: 2rpx 12rpx;
   padding: 2rpx 12rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-right: 12rpx;
   margin-right: 12rpx;
 }
 }
 .ra-status.upcoming {
 .ra-status.upcoming {

+ 2 - 2
cfc-frontend/components/TagChip.vue

@@ -44,7 +44,7 @@ export default {
   justify-content: center;
   justify-content: center;
   padding: 12rpx 24rpx;
   padding: 12rpx 24rpx;
   border: 2rpx solid $facade-fill-4;
   border: 2rpx solid $facade-fill-4;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
   transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
   transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
 }
 }
@@ -69,7 +69,7 @@ export default {
 .tag-chip--body {
 .tag-chip--body {
   border-width: 1rpx;
   border-width: 1rpx;
   border-color: $facade-border-soft;
   border-color: $facade-border-soft;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   background-color: $facade-fill-ghost;
   background-color: $facade-fill-ghost;
   transition: none;
   transition: none;
 }
 }

+ 2 - 2
cfc-frontend/components/address-picker.vue

@@ -378,7 +378,7 @@ export default {
   justify-content: space-between;
   justify-content: space-between;
   padding: 24rpx 20rpx;
   padding: 24rpx 20rpx;
   background: $facade-fill-page;
   background: $facade-fill-page;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   border: 2rpx solid $facade-hairline-2;
   border: 2rpx solid $facade-hairline-2;
 }
 }
 
 
@@ -457,7 +457,7 @@ export default {
   color: $facade-text-body;
   color: $facade-text-body;
   padding: 8rpx 16rpx;
   padding: 8rpx 16rpx;
   background: $facade-hairline-2;
   background: $facade-hairline-2;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 
 
 .crumb-active {
 .crumb-active {

+ 1 - 1
cfc-frontend/components/gate-lock.vue

@@ -146,7 +146,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-dark);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-dark);
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
 }
 }
 .gate-btn:active {
 .gate-btn:active {

+ 4 - 4
cfc-frontend/components/hand-signature/hand-signature.vue

@@ -276,7 +276,7 @@ export default {
   margin-right: 12rpx;
   margin-right: 12rpx;
   margin-top: 2rpx;
   margin-top: 2rpx;
   border: 2rpx solid #c8c9cc;
   border: 2rpx solid #c8c9cc;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   background: $app-surface;
   background: $app-surface;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -301,7 +301,7 @@ export default {
   position: relative;
   position: relative;
   width: 100%;
   width: 100%;
   border: 2rpx dashed $facade-text-ghost;
   border: 2rpx dashed $facade-text-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $app-surface;
   background: $app-surface;
   overflow: hidden;
   overflow: hidden;
 }
 }
@@ -331,7 +331,7 @@ export default {
   color: $facade-text-body;
   color: $facade-text-body;
   background: $facade-fill-2;
   background: $facade-fill-2;
   border: none;
   border: none;
-  border-radius: 36rpx;
+  border-radius: 24rpx;
 }
 }
 .btn-sign-clear[disabled] {
 .btn-sign-clear[disabled] {
   opacity: 0.5;
   opacity: 0.5;
@@ -344,7 +344,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   border: none;
   border: none;
-  border-radius: 36rpx;
+  border-radius: 24rpx;
 }
 }
 .btn-sign-confirm[disabled] {
 .btn-sign-confirm[disabled] {
   opacity: 0.5;
   opacity: 0.5;

+ 4 - 4
cfc-frontend/components/login-sheet.vue

@@ -255,7 +255,7 @@ export default {
   height: 85vh;
   height: 85vh;
   max-height: 85vh;
   max-height: 85vh;
   background: linear-gradient(180deg, #fffaf3 0%, #fff3e4 100%);
   background: linear-gradient(180deg, #fffaf3 0%, #fff3e4 100%);
-  border-radius: 32rpx 32rpx 0 0;
+  border-radius: 24rpx 24rpx 0 0;
   overflow: hidden;
   overflow: hidden;
   transform: translateY(100%);
   transform: translateY(100%);
   transition: transform 0.3s ease;
   transition: transform 0.3s ease;
@@ -300,7 +300,7 @@ export default {
 .logo {
 .logo {
   width: 128rpx;
   width: 128rpx;
   height: 128rpx;
   height: 128rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
 }
 }
 .app-name {
 .app-name {
   font-size: calc(44rpx * var(--font-scale, 1));
   font-size: calc(44rpx * var(--font-scale, 1));
@@ -323,7 +323,7 @@ export default {
 /* ===== 理念卡 ===== */
 /* ===== 理念卡 ===== */
 .concept-card {
 .concept-card {
   background: rgba(249, 115, 22, 0.08);
   background: rgba(249, 115, 22, 0.08);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   margin-top: 28rpx;
   margin-top: 28rpx;
 }
 }
@@ -405,7 +405,7 @@ export default {
 .phone-btn {
 .phone-btn {
   width: 100%;
   width: 100%;
   height: 96rpx;
   height: 96rpx;
-  border-radius: 48rpx;
+  border-radius: 24rpx;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));

+ 3 - 3
cfc-frontend/components/report-upload-card.vue

@@ -37,7 +37,7 @@ export default {
   flex-direction: row;
   flex-direction: row;
   align-items: center;
   align-items: center;
   background: linear-gradient(135deg, $mat-green-tint, #F1F8E9);
   background: linear-gradient(135deg, $mat-green-tint, #F1F8E9);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 28rpx 24rpx;
   padding: 28rpx 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }
@@ -45,7 +45,7 @@ export default {
   width: 100rpx;
   width: 100rpx;
   height: 100rpx;
   height: 100rpx;
   background: rgba(255,255,255,0.7);
   background: rgba(255,255,255,0.7);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -83,7 +83,7 @@ export default {
   color: #33691E;
   color: #33691E;
   background: rgba(255,255,255,0.6);
   background: rgba(255,255,255,0.6);
   padding: 4rpx 14rpx;
   padding: 4rpx 14rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 .report-upload-arrow {
 .report-upload-arrow {
   font-size: calc(40rpx * var(--font-scale, 1));
   font-size: calc(40rpx * var(--font-scale, 1));

+ 2 - 2
cfc-frontend/components/tab-transition.vue

@@ -146,14 +146,14 @@ export default {
   width: 200rpx;
   width: 200rpx;
   height: 4rpx;
   height: 4rpx;
   background: rgba(0, 0, 0, 0.08);
   background: rgba(0, 0, 0, 0.08);
-  border-radius: 2rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 
 
 .energy-bar-fill {
 .energy-bar-fill {
   width: 0%;
   width: 0%;
   height: 100%;
   height: 100%;
-  border-radius: 2rpx;
+  border-radius: 8rpx;
   animation: bar-grow 0.6s ease 0.2s forwards;
   animation: bar-grow 0.6s ease 0.2s forwards;
 }
 }
 
 

+ 7 - 7
cfc-frontend/components/wuxing-sandbox.vue

@@ -702,7 +702,7 @@ export default {
   color: rgba(143,197,232,0.7);
   color: rgba(143,197,232,0.7);
   background: rgba(143,197,232,0.1);
   background: rgba(143,197,232,0.1);
   padding: 4rpx 14rpx;
   padding: 4rpx 14rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-left: auto;
   margin-left: auto;
 }
 }
 .sandbox-switch {
 .sandbox-switch {
@@ -713,7 +713,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   padding: 10rpx 20rpx;
   padding: 10rpx 20rpx;
-  border-radius: 28rpx;
+  border-radius: 24rpx;
   margin-left: auto;
   margin-left: auto;
   flex-shrink: 0;
   flex-shrink: 0;
   box-shadow: 0 4rpx 12rpx rgba(102,126,234,0.45);
   box-shadow: 0 4rpx 12rpx rgba(102,126,234,0.45);
@@ -746,7 +746,7 @@ export default {
   box-sizing: border-box;
   box-sizing: border-box;
   padding: 28rpx 28rpx calc(24rpx + env(safe-area-inset-bottom));
   padding: 28rpx 28rpx calc(24rpx + env(safe-area-inset-bottom));
   background: #ffffff;
   background: #ffffff;
-  border-radius: 28rpx 28rpx 0 0;
+  border-radius: 24rpx 24rpx 0 0;
   box-shadow: 0 -8rpx 32rpx rgba(0, 0, 0, 0.12);
   box-shadow: 0 -8rpx 32rpx rgba(0, 0, 0, 0.12);
 }
 }
 .member-picker-title {
 .member-picker-title {
@@ -854,7 +854,7 @@ export default {
 .point-energy {
 .point-energy {
   font-size: calc(18rpx * var(--font-scale, 1)); color: rgba(143,197,232,0.8);
   font-size: calc(18rpx * var(--font-scale, 1)); color: rgba(143,197,232,0.8);
   background: rgba(143,197,232,0.12);
   background: rgba(143,197,232,0.12);
-  padding: 1rpx 10rpx; border-radius: 12rpx;
+  padding: 1rpx 10rpx; border-radius: 16rpx;
   margin-top: 2rpx;
   margin-top: 2rpx;
 }
 }
 .star-point--row .point-energy,
 .star-point--row .point-energy,
@@ -881,7 +881,7 @@ export default {
   position: relative; z-index: 5; flex-wrap: wrap;
   position: relative; z-index: 5; flex-wrap: wrap;
 }
 }
 .dim-item {
 .dim-item {
-  font-size: calc(20rpx * var(--font-scale, 1)); padding: 4rpx 12rpx; border-radius: 10rpx; white-space: nowrap;
+  font-size: calc(20rpx * var(--font-scale, 1)); padding: 4rpx 12rpx; border-radius: 8rpx; white-space: nowrap;
 }
 }
 .dim-item--wood { color: $mat-green; background: rgba(76,175,80,0.12); }
 .dim-item--wood { color: $mat-green; background: rgba(76,175,80,0.12); }
 .dim-item--fire { color: $mind-accent; background: rgba(255,107,53,0.12); }
 .dim-item--fire { color: $mind-accent; background: rgba(255,107,53,0.12); }
@@ -910,11 +910,11 @@ export default {
   color: rgba(143,197,232,0.6);
   color: rgba(143,197,232,0.6);
   background: rgba(143,197,232,0.08);
   background: rgba(143,197,232,0.08);
   border: 1rpx solid rgba(143,197,232,0.15);
   border: 1rpx solid rgba(143,197,232,0.15);
-  border-radius: 30rpx 0 0 30rpx;
+  border-radius: 24rpx 0 0 24rpx;
   transition: color 0.2s, background-color 0.2s, border-color 0.2s;
   transition: color 0.2s, background-color 0.2s, border-color 0.2s;
 }
 }
 .toggle-item--family {
 .toggle-item--family {
-  border-radius: 0 30rpx 30rpx 0;
+  border-radius: 0 24rpx 24rpx 0;
   border-left: none;
   border-left: none;
 }
 }
 .toggle-item--active {
 .toggle-item--active {

+ 3 - 3
cfc-frontend/pages/achievement/index.vue

@@ -141,7 +141,7 @@ export default {
 .badge-section, .goals-section {
 .badge-section, .goals-section {
   background: $app-surface;
   background: $app-surface;
   margin: 0 30rpx 20rpx;
   margin: 0 30rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
 }
 }
 .section-title {
 .section-title {
@@ -230,13 +230,13 @@ export default {
 .progress-bar {
 .progress-bar {
   height: 12rpx;
   height: 12rpx;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .progress-fill {
 .progress-fill {
   height: 100%;
   height: 100%;
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   transition: width 0.3s;
   transition: width 0.3s;
 }
 }
 </style>
 </style>

+ 2 - 2
cfc-frontend/pages/action-detail/components/DimensionSubDims.vue

@@ -163,12 +163,12 @@ export default {
 .dim-bar-track {
 .dim-bar-track {
   height: 8rpx;
   height: 8rpx;
   background: rgba(0, 0, 0, 0.06);
   background: rgba(0, 0, 0, 0.06);
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .dim-bar-fill {
 .dim-bar-fill {
   height: 100%;
   height: 100%;
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
   transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
 }
 }
 </style>
 </style>

+ 4 - 4
cfc-frontend/pages/action-detail/components/OctopusDiagram.vue

@@ -590,7 +590,7 @@ export default {
 .action-btn {
 .action-btn {
   display: inline-block;
   display: inline-block;
   padding: 12rpx 32rpx;
   padding: 12rpx 32rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;
 }
 }
@@ -604,7 +604,7 @@ export default {
   right: 16rpx;
   right: 16rpx;
   z-index: 10;
   z-index: 10;
   background: rgba(255,255,255,0.9);
   background: rgba(255,255,255,0.9);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 8rpx 16rpx;
   padding: 8rpx 16rpx;
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   color: $uni-text-color-secondary;
   color: $uni-text-color-secondary;
@@ -644,7 +644,7 @@ export default {
 .popup-tag {
 .popup-tag {
   font-size: calc(18rpx * var(--font-scale, 1));
   font-size: calc(18rpx * var(--font-scale, 1));
   padding: 2rpx 10rpx;
   padding: 2rpx 10rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-right: 8rpx;
   margin-right: 8rpx;
   margin-top: 4rpx;
   margin-top: 4rpx;
   background: $uni-primary-pale;
   background: $uni-primary-pale;
@@ -677,7 +677,7 @@ export default {
   color: $status-success;
   color: $status-success;
   background: $status-success-tint;
   background: $status-success-tint;
   padding: 2rpx 10rpx;
   padding: 2rpx 10rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   flex-shrink: 0;
   flex-shrink: 0;
 }
 }
 .popup-empty {
 .popup-empty {

+ 2 - 2
cfc-frontend/pages/action-detail/components/PearlDiagram.vue

@@ -921,7 +921,7 @@ export default {
 .popup-tag {
 .popup-tag {
   font-size: calc(18rpx * var(--font-scale, 1));
   font-size: calc(18rpx * var(--font-scale, 1));
   padding: 2rpx 10rpx;
   padding: 2rpx 10rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-right: 8rpx;
   margin-right: 8rpx;
 }
 }
 .popup-tag-rel {
 .popup-tag-rel {
@@ -966,7 +966,7 @@ export default {
 .action-btn {
 .action-btn {
   display: inline-block;
   display: inline-block;
   padding: 10rpx 24rpx;
   padding: 10rpx 24rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
 }
 }
 .action-btn-primary {
 .action-btn-primary {

+ 8 - 8
cfc-frontend/pages/action-detail/contact-detail.vue

@@ -283,7 +283,7 @@ export default {
 .header-avatar {
 .header-avatar {
   width: 120rpx;
   width: 120rpx;
   height: 120rpx;
   height: 120rpx;
-  border-radius: 60rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -302,7 +302,7 @@ export default {
 .info-section, .interaction-section {
 .info-section, .interaction-section {
   background: $app-surface;
   background: $app-surface;
   margin: 20rpx;
   margin: 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
 }
 }
 .section-title {
 .section-title {
@@ -332,7 +332,7 @@ export default {
 }
 }
 .edit-input {
 .edit-input {
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 20rpx;
   padding: 24rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   width: 100%;
   width: 100%;
@@ -341,7 +341,7 @@ export default {
 }
 }
 .edit-textarea {
 .edit-textarea {
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 20rpx;
   padding: 24rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   width: 100%;
   width: 100%;
@@ -350,7 +350,7 @@ export default {
 }
 }
 .edit-picker {
 .edit-picker {
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 20rpx;
   padding: 24rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   min-height: 80rpx;
   min-height: 80rpx;
@@ -360,7 +360,7 @@ export default {
 .btn-save {
 .btn-save {
   width: 100%;
   width: 100%;
   padding: 24rpx;
   padding: 24rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: linear-gradient(135deg, $mind-accent, $brand-primary);
   background: linear-gradient(135deg, $mind-accent, $brand-primary);
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   color: $app-surface;
   color: $app-surface;
@@ -381,7 +381,7 @@ export default {
 .btn-interaction {
 .btn-interaction {
   width: 100%;
   width: 100%;
   padding: 24rpx;
   padding: 24rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   color: $app-surface;
   color: $app-surface;
@@ -393,7 +393,7 @@ export default {
 .btn-delete {
 .btn-delete {
   width: 100%;
   width: 100%;
   padding: 24rpx;
   padding: 24rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $app-surface;
   background: $app-surface;
   border: 1rpx solid $status-danger-2;
   border: 1rpx solid $status-danger-2;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));

+ 9 - 9
cfc-frontend/pages/action-detail/index.vue

@@ -937,7 +937,7 @@ $c-tint-mint: $c-tint-mint-wash;
   margin: 20rpx 30rpx 0;
   margin: 20rpx 30rpx 0;
   padding: 24rpx 28rpx;
   padding: 24rpx 28rpx;
   background: linear-gradient(135deg, $app-surface 0%, $dim-action-tint 100%);
   background: linear-gradient(135deg, $app-surface 0%, $dim-action-tint 100%);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   border: 1rpx solid rgba(16, 185, 129, 0.15);
   border: 1rpx solid rgba(16, 185, 129, 0.15);
   box-shadow: 0 4rpx 16rpx rgba(16, 185, 129, 0.08);
   box-shadow: 0 4rpx 16rpx rgba(16, 185, 129, 0.08);
   display: flex;
   display: flex;
@@ -963,7 +963,7 @@ $c-tint-mint: $c-tint-mint-wash;
   left: 24rpx;
   left: 24rpx;
   right: 24rpx;
   right: 24rpx;
   height: 3rpx;
   height: 3rpx;
-  border-radius: 3rpx 3rpx 0 0;
+  border-radius: 8rpx 8rpx 0 0;
   background: linear-gradient(90deg, $dim-action, $c-action-light);
   background: linear-gradient(90deg, $dim-action, $c-action-light);
   opacity: 0.7;
   opacity: 0.7;
 }
 }
@@ -1028,7 +1028,7 @@ $c-tint-mint: $c-tint-mint-wash;
   display: inline-flex;
   display: inline-flex;
   align-items: center;
   align-items: center;
   padding: 12rpx 28rpx;
   padding: 12rpx 28rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   font-weight: 500;
   font-weight: 500;
   white-space: nowrap;
   white-space: nowrap;
@@ -1058,7 +1058,7 @@ $c-tint-mint: $c-tint-mint-wash;
 /* 关系解读卡片 — 状态色 */
 /* 关系解读卡片 — 状态色 */
 .score-explain-card {
 .score-explain-card {
   background: linear-gradient(135deg, $app-surface 0%, $dim-action-tint 100%);
   background: linear-gradient(135deg, $app-surface 0%, $dim-action-tint 100%);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 28rpx 32rpx;
   padding: 28rpx 32rpx;
   border: 1rpx solid rgba(16, 185, 129, 0.12);
   border: 1rpx solid rgba(16, 185, 129, 0.12);
   box-shadow: 0 4rpx 16rpx rgba(16, 185, 129, 0.08);
   box-shadow: 0 4rpx 16rpx rgba(16, 185, 129, 0.08);
@@ -1227,7 +1227,7 @@ $c-tint-mint: $c-tint-mint-wash;
 .func-icon-wrap {
 .func-icon-wrap {
   width: 96rpx;
   width: 96rpx;
   height: 96rpx;
   height: 96rpx;
-  border-radius: 28rpx;
+  border-radius: 24rpx;
   background: linear-gradient(135deg, $status-success-soft, $c-success-light);
   background: linear-gradient(135deg, $status-success-soft, $c-success-light);
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -1291,7 +1291,7 @@ $c-tint-mint: $c-tint-mint-wash;
 .portrait-dim-icon {
 .portrait-dim-icon {
   width: 36rpx;
   width: 36rpx;
   height: 36rpx;
   height: 36rpx;
-  border-radius: 18rpx;
+  border-radius: 16rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -1313,14 +1313,14 @@ $c-tint-mint: $c-tint-mint-wash;
 .portrait-dim-bar-track {
 .portrait-dim-bar-track {
   height: 10rpx;
   height: 10rpx;
   background: $status-success-soft;
   background: $status-success-soft;
-  border-radius: 5rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
   margin-bottom: 4rpx;
   margin-bottom: 4rpx;
   flex: 1;
   flex: 1;
 }
 }
 .portrait-dim-bar-fill {
 .portrait-dim-bar-fill {
   height: 100%;
   height: 100%;
-  border-radius: 5rpx;
+  border-radius: 8rpx;
   transition: width 0.3s ease;
   transition: width 0.3s ease;
 }
 }
 .portrait-dim-desc {
 .portrait-dim-desc {
@@ -1331,7 +1331,7 @@ $c-tint-mint: $c-tint-mint-wash;
 .portrait-tip {
 .portrait-tip {
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   background: linear-gradient(135deg, $dim-action-tint, $c-tint-mint);
   background: linear-gradient(135deg, $dim-action-tint, $c-tint-mint);
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   border-left: 8rpx solid $dim-action;
   border-left: 8rpx solid $dim-action;
   margin-top: 16rpx;
   margin-top: 16rpx;
 }
 }

+ 7 - 7
cfc-frontend/pages/action-detail/interaction-log.vue

@@ -446,7 +446,7 @@ export default {
 .member-item {
 .member-item {
   padding: 16rpx 24rpx;
   padding: 16rpx 24rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
 }
 }
 .member-item.selected {
 .member-item.selected {
@@ -473,7 +473,7 @@ export default {
   padding: 20rpx 0;
   padding: 20rpx 0;
   text-align: center;
   text-align: center;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
 }
 }
 .type-item.selected {
 .type-item.selected {
@@ -483,7 +483,7 @@ export default {
 .custom-type-input {
 .custom-type-input {
   margin-top: 20rpx;
   margin-top: 20rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
@@ -501,7 +501,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 160rpx;
   height: 160rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -514,7 +514,7 @@ export default {
 .time-option {
 .time-option {
   padding: 16rpx 32rpx;
   padding: 16rpx 32rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
 }
 }
@@ -529,7 +529,7 @@ export default {
 .time-display {
 .time-display {
   padding: 20rpx;
   padding: 20rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
 }
 }
@@ -634,7 +634,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 0;
   padding: 24rpx 0;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
 }
 }

+ 2 - 2
cfc-frontend/pages/action-detail/member-action-detail.vue

@@ -242,14 +242,14 @@ export default {
   align-items: center;
   align-items: center;
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }
 .member-avatar {
 .member-avatar {
   width: 80rpx;
   width: 80rpx;
   height: 80rpx;
   height: 80rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   background: linear-gradient(135deg, $mat-green, $mat-green-light);
   background: linear-gradient(135deg, $mat-green, $mat-green-light);
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;

+ 8 - 8
cfc-frontend/pages/action-detail/octopus-add-effect.vue

@@ -249,7 +249,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -258,7 +258,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 160rpx;
   height: 160rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -282,7 +282,7 @@ export default {
 .kp-item {
 .kp-item {
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
   margin-bottom: 12rpx;
   margin-bottom: 12rpx;
 }
 }
@@ -317,7 +317,7 @@ export default {
   color: $status-success;
   color: $status-success;
   background: $status-success-tint;
   background: $status-success-tint;
   padding: 2rpx 12rpx;
   padding: 2rpx 12rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-left: 8rpx;
   margin-left: 8rpx;
 }
 }
 .kp-role {
 .kp-role {
@@ -349,7 +349,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 0;
   padding: 24rpx 0;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
 }
 }
@@ -360,7 +360,7 @@ export default {
   width: 45%;
   width: 45%;
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -387,7 +387,7 @@ export default {
   flex: 1;
   flex: 1;
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -398,7 +398,7 @@ export default {
   line-height: 88rpx;
   line-height: 88rpx;
   background: $uni-info;
   background: $uni-info;
   color: $app-surface;
   color: $app-surface;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   flex-shrink: 0;
   flex-shrink: 0;
 }
 }

+ 5 - 5
cfc-frontend/pages/action-detail/octopus-add-key-person.vue

@@ -197,7 +197,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -206,7 +206,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 160rpx;
   height: 160rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -215,7 +215,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -227,7 +227,7 @@ export default {
 .referrer-select {
 .referrer-select {
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -313,7 +313,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 0;
   padding: 24rpx 0;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
 }
 }

+ 5 - 5
cfc-frontend/pages/action-detail/pearl-add-resource.vue

@@ -199,7 +199,7 @@ export default {
   padding: 20rpx 0;
   padding: 20rpx 0;
   text-align: center;
   text-align: center;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
 }
 }
 .type-item.selected {
 .type-item.selected {
@@ -214,7 +214,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 88rpx;
   height: 88rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -223,7 +223,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 160rpx;
   height: 160rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -236,7 +236,7 @@ export default {
 .member-item {
 .member-item {
   padding: 16rpx 24rpx;
   padding: 16rpx 24rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
 }
 }
 .member-item.selected {
 .member-item.selected {
@@ -264,7 +264,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 0;
   padding: 24rpx 0;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
 }
 }

+ 4 - 4
cfc-frontend/pages/action-detail/relationship-questionnaire.vue

@@ -221,7 +221,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 24rpx 60rpx;
   padding: 24rpx 60rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
 }
 }
@@ -241,7 +241,7 @@ export default {
 .dimension-tag {
 .dimension-tag {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 12rpx;
   padding: 4rpx 12rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-right: 12rpx;
   margin-right: 12rpx;
 }
 }
 .dimension-tag.trust { background: $status-success-soft; color: $status-success-deep; }
 .dimension-tag.trust { background: $status-success-soft; color: $status-success-deep; }
@@ -265,7 +265,7 @@ export default {
   gap: 16rpx;
   gap: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-ghost;
   background: $facade-fill-ghost;
 }
 }
 .option-item.selected {
 .option-item.selected {
@@ -367,7 +367,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx 0;
   padding: 20rpx 0;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
 }
 }

+ 22 - 22
cfc-frontend/pages/activity/activity-detail/activity-detail.vue

@@ -1108,7 +1108,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 12rpx 40rpx;
   padding: 12rpx 40rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   line-height: 1.5;
   line-height: 1.5;
@@ -1142,7 +1142,7 @@ export default {
   color: $brand-primary;
   color: $brand-primary;
   background: $uni-primary-pale;
   background: $uni-primary-pale;
   padding: 3rpx 14rpx;
   padding: 3rpx 14rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-right: 10rpx;
   margin-right: 10rpx;
   margin-bottom: 6rpx;
   margin-bottom: 6rpx;
 }
 }
@@ -1249,12 +1249,12 @@ export default {
   flex: 1;
   flex: 1;
   height: 14rpx;
   height: 14rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
-  border-radius: 7rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .roster-progress-bar {
 .roster-progress-bar {
   height: 100%;
   height: 100%;
-  border-radius: 7rpx;
+  border-radius: 8rpx;
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
   transition: width 0.3s ease;
   transition: width 0.3s ease;
 }
 }
@@ -1334,7 +1334,7 @@ export default {
   margin-bottom: 10rpx;
   margin-bottom: 10rpx;
   background: $status-danger-tint-2;
   background: $status-danger-tint-2;
   border: 2rpx solid $danger-line;
   border: 2rpx solid $danger-line;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   display: flex;
   display: flex;
   flex-direction: row;
   flex-direction: row;
@@ -1388,7 +1388,7 @@ export default {
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 16rpx 48rpx;
   padding: 16rpx 48rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;
@@ -1411,7 +1411,7 @@ export default {
   background: linear-gradient(135deg, $status-success, $status-success-light-3);
   background: linear-gradient(135deg, $status-success, $status-success-light-3);
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 16rpx 32rpx;
   padding: 16rpx 32rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;
@@ -1425,7 +1425,7 @@ export default {
   background: $facade-fill-2;
   background: $facade-fill-2;
   color: $facade-text-muted;
   color: $facade-text-muted;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 16rpx 32rpx;
   padding: 16rpx 32rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   line-height: 1.5;
   line-height: 1.5;
@@ -1436,7 +1436,7 @@ export default {
   background: $app-surface;
   background: $app-surface;
   color: $facade-text-muted;
   color: $facade-text-muted;
   border: 2rpx solid $facade-border-soft;
   border: 2rpx solid $facade-border-soft;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 14rpx 28rpx;
   padding: 14rpx 28rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   line-height: 1.5;
   line-height: 1.5;
@@ -1483,7 +1483,7 @@ export default {
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 16rpx 60rpx;
   padding: 16rpx 60rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
 }
 }
@@ -1499,7 +1499,7 @@ export default {
 .feedback-title { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; }
 .feedback-title { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; }
 .feedback-btn {
 .feedback-btn {
   background: $brand-primary; color: $app-surface; border: none;
   background: $brand-primary; color: $app-surface; border: none;
-  border-radius: 40rpx; padding: 20rpx 40rpx; font-size: calc(28rpx * var(--font-scale, 1));
+  border-radius: 24rpx; padding: 20rpx 40rpx; font-size: calc(28rpx * var(--font-scale, 1));
   text-align: center;
   text-align: center;
 }
 }
 .feedback-submitted { padding: 10rpx 0; }
 .feedback-submitted { padding: 10rpx 0; }
@@ -1522,7 +1522,7 @@ export default {
   z-index: 999;
   z-index: 999;
 }
 }
 .feedback-modal {
 .feedback-modal {
-  background: $app-surface; border-radius: 20rpx; padding: 40rpx;
+  background: $app-surface; border-radius: 24rpx; padding: 40rpx;
   width: 80%; max-width: 600rpx;
   width: 80%; max-width: 600rpx;
 }
 }
 .feedback-modal-title {
 .feedback-modal-title {
@@ -1539,7 +1539,7 @@ export default {
 .star-active { color: $brand-primary; }
 .star-active { color: $brand-primary; }
 .feedback-textarea {
 .feedback-textarea {
   width: 100%; height: 160rpx; margin-top: 20rpx;
   width: 100%; height: 160rpx; margin-top: 20rpx;
-  border: 1rpx solid $facade-hairline-2; border-radius: 12rpx;
+  border: 1rpx solid $facade-hairline-2; border-radius: 16rpx;
   padding: 16rpx; font-size: calc(26rpx * var(--font-scale, 1)); box-sizing: border-box;
   padding: 16rpx; font-size: calc(26rpx * var(--font-scale, 1)); box-sizing: border-box;
 }
 }
 .feedback-modal-actions {
 .feedback-modal-actions {
@@ -1547,15 +1547,15 @@ export default {
 }
 }
 .feedback-cancel-btn {
 .feedback-cancel-btn {
   flex: 1; background: $facade-fill-2; color: $facade-text-body; border: none;
   flex: 1; background: $facade-fill-2; color: $facade-text-body; border: none;
-  border-radius: 40rpx; padding: 20rpx; font-size: calc(28rpx * var(--font-scale, 1));
+  border-radius: 24rpx; padding: 20rpx; font-size: calc(28rpx * var(--font-scale, 1));
   text-align: center; margin-right: 20rpx;
   text-align: center; margin-right: 20rpx;
 }
 }
 .feedback-submit-btn {
 .feedback-submit-btn {
   flex: 1; background: $brand-primary; color: $app-surface; border: none;
   flex: 1; background: $brand-primary; color: $app-surface; border: none;
-  border-radius: 40rpx; padding: 20rpx; font-size: calc(28rpx * var(--font-scale, 1));
+  border-radius: 24rpx; padding: 20rpx; font-size: calc(28rpx * var(--font-scale, 1));
   text-align: center;
   text-align: center;
 }
 }
-.share-btn { height: 64rpx; line-height: 64rpx; background: $app-surface; border: 2rpx solid $brand-primary; color: $brand-primary; font-size: calc(24rpx * var(--font-scale, 1)); border-radius: 32rpx; padding: 0 24rpx; display: flex; align-items: center; flex-shrink: 0; }
+.share-btn { height: 64rpx; line-height: 64rpx; background: $app-surface; border: 2rpx solid $brand-primary; color: $brand-primary; font-size: calc(24rpx * var(--font-scale, 1)); border-radius: 24rpx; padding: 0 24rpx; display: flex; align-items: center; flex-shrink: 0; }
 .share-btn::after { border: none; }
 .share-btn::after { border: none; }
 .share-btn-icon { font-size: calc(28rpx * var(--font-scale, 1)); margin-right: 6rpx; }
 .share-btn-icon { font-size: calc(28rpx * var(--font-scale, 1)); margin-right: 6rpx; }
 .share-btn-text { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 600; }
 .share-btn-text { font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 600; }
@@ -1610,7 +1610,7 @@ export default {
   justify-content: space-between;
   justify-content: space-between;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   background: $facade-fill-ghost-2;
   background: $facade-fill-ghost-2;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-bottom: 10rpx;
   margin-bottom: 10rpx;
 }
 }
 .reg-family-item-selected {
 .reg-family-item-selected {
@@ -1689,7 +1689,7 @@ export default {
   flex: 1;
   flex: 1;
   background: $facade-fill-2;
   background: $facade-fill-2;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -1709,7 +1709,7 @@ export default {
 .reg-add-btn {
 .reg-add-btn {
   background: none;
   background: none;
   border: 2rpx dashed $facade-border-soft;
   border: 2rpx dashed $facade-border-soft;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx;
   padding: 16rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   color: $brand-primary;
   color: $brand-primary;
@@ -1725,7 +1725,7 @@ export default {
   margin-bottom: 24rpx;
   margin-bottom: 24rpx;
   padding: 16rpx;
   padding: 16rpx;
   background: $uni-primary-pale;
   background: $uni-primary-pale;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
 }
 }
 .reg-actions {
 .reg-actions {
   display: flex;
   display: flex;
@@ -1738,7 +1738,7 @@ export default {
   background: $facade-fill-2;
   background: $facade-fill-2;
   color: $facade-text-body;
   color: $facade-text-body;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   text-align: center;
   text-align: center;
@@ -1748,7 +1748,7 @@ export default {
   background: linear-gradient(135deg, $status-success, $status-success-light-3);
   background: linear-gradient(135deg, $status-success, $status-success-light-3);
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;

+ 1 - 1
cfc-frontend/pages/activity/components/ActivityPoster.vue

@@ -878,7 +878,7 @@ export default {
   line-height: 88rpx;
   line-height: 88rpx;
   background: linear-gradient(135deg, $uni-primary, $uni-primary-dark);
   background: linear-gradient(135deg, $uni-primary, $uni-primary-dark);
   color: #fff;
   color: #fff;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;
   border: none;
   border: none;

+ 8 - 8
cfc-frontend/pages/activity/create.vue

@@ -763,7 +763,7 @@ export default {
 
 
 .form-card {
 .form-card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 32rpx 28rpx;
   padding: 32rpx 28rpx;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
 }
 }
@@ -802,7 +802,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 80rpx;
   height: 80rpx;
   border: 1rpx solid $uni-border-color-light;
   border: 1rpx solid $uni-border-color-light;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $uni-text-color;
   color: $uni-text-color;
@@ -898,7 +898,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 80rpx;
   height: 80rpx;
   border: 1rpx solid $uni-border-color-light;
   border: 1rpx solid $uni-border-color-light;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $uni-text-color;
   color: $uni-text-color;
@@ -916,7 +916,7 @@ export default {
   width: 100%;
   width: 100%;
   min-height: 160rpx;
   min-height: 160rpx;
   border: 1rpx solid $uni-border-color-light;
   border: 1rpx solid $uni-border-color-light;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $uni-text-color;
   color: $uni-text-color;
@@ -927,7 +927,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 320rpx;
   height: 320rpx;
   border: 2rpx dashed $uni-border-color;
   border: 2rpx dashed $uni-border-color;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -987,7 +987,7 @@ export default {
 .poster-tpl-card {
 .poster-tpl-card {
   width: 200rpx;
   width: 200rpx;
   border: 2rpx solid $uni-border-color-light;
   border: 2rpx solid $uni-border-color-light;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx 16rpx;
   padding: 20rpx 16rpx;
   display: flex;
   display: flex;
   flex-direction: column;
   flex-direction: column;
@@ -1034,7 +1034,7 @@ export default {
 
 
 .btn-preview {
 .btn-preview {
   padding: 12rpx 32rpx;
   padding: 12rpx 32rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
@@ -1051,7 +1051,7 @@ export default {
 .btn-publish {
 .btn-publish {
   flex: 1;
   flex: 1;
   height: 88rpx;
   height: 88rpx;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;

+ 9 - 9
cfc-frontend/pages/activity/index.vue

@@ -1040,7 +1040,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
 
 
 .activity-card {
 .activity-card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   display: flex;
   display: flex;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
@@ -1071,7 +1071,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
   color: $brand-primary;
   color: $brand-primary;
   background: $uni-primary-pale;
   background: $uni-primary-pale;
   padding: 2rpx 12rpx;
   padding: 2rpx 12rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-right: 8rpx;
   margin-right: 8rpx;
   margin-bottom: 4rpx;
   margin-bottom: 4rpx;
 }
 }
@@ -1103,7 +1103,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
 .card-status {
 .card-status {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 12rpx;
   padding: 4rpx 12rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 .status-pending {
 .status-pending {
@@ -1174,7 +1174,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
   color: $facade-text-muted;
   color: $facade-text-muted;
   background: $app-surface;
   background: $app-surface;
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   line-height: 1.5;
   line-height: 1.5;
 }
 }
 
 
@@ -1184,7 +1184,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
   color: $app-surface;
   color: $app-surface;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   border: none;
   border: none;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   line-height: 1.5;
   line-height: 1.5;
 }
 }
 
 
@@ -1220,7 +1220,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
   color: $app-surface;
   color: $app-surface;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
 }
 }
 
 
 .loading-state {
 .loading-state {
@@ -1290,7 +1290,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
   gap: 16rpx;
   gap: 16rpx;
   background: $app-surface;
   background: $app-surface;
   margin: 24rpx 24rpx 0;
   margin: 24rpx 24rpx 0;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
 }
 }
 
 
@@ -1340,7 +1340,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
   gap: 12rpx;
   gap: 12rpx;
   padding: 24rpx 0;
   padding: 24rpx 0;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin: 0 24rpx;
   margin: 0 24rpx;
 }
 }
 
 
@@ -1378,7 +1378,7 @@ uni.showToast({ title: '请先选择家庭成员身份', icon: 'none' })
 .manage-action-small {
 .manage-action-small {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 16rpx;
   padding: 4rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   background: $brand-primary;
   background: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   font-weight: 500;
   font-weight: 500;

+ 1 - 1
cfc-frontend/pages/activity/order-pay/order-pay.vue

@@ -302,7 +302,7 @@ export default {
 .pay-btn {
 .pay-btn {
   width: 100%;
   width: 100%;
   height: 88rpx;
   height: 88rpx;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));

+ 5 - 5
cfc-frontend/pages/ai/chat.vue

@@ -760,13 +760,13 @@ export default {
 .user-bubble {
 .user-bubble {
   background: var(--color-primary, $brand-primary);
   background: var(--color-primary, $brand-primary);
   color: $app-surface;
   color: $app-surface;
-  border-bottom-right-radius: 4rpx;
+  border-bottom-right-radius: 8rpx;
 }
 }
 
 
 .ai-bubble {
 .ai-bubble {
   background: $app-surface;
   background: $app-surface;
   color: var(--text, $uni-text-color);
   color: var(--text, $uni-text-color);
-  border-bottom-left-radius: 4rpx;
+  border-bottom-left-radius: 8rpx;
   box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.04);
   box-shadow: 0 2rpx 8rpx rgba(0,0,0,0.04);
 }
 }
 
 
@@ -783,7 +783,7 @@ export default {
 .chat-input-wrap {
 .chat-input-wrap {
   flex: 1;
   flex: 1;
   background: var(--bg, $uni-primary-pale);
   background: var(--bg, $uni-primary-pale);
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 0 24rpx;
   padding: 0 24rpx;
   margin-right: 12rpx;
   margin-right: 12rpx;
 }
 }
@@ -897,7 +897,7 @@ export default {
   display: flex;
   display: flex;
   flex-direction: row;
   flex-direction: row;
   background: var(--bg, $uni-primary-pale);
   background: var(--bg, $uni-primary-pale);
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   overflow: hidden;
   overflow: hidden;
   padding: 12rpx;
   padding: 12rpx;
 }
 }
@@ -959,7 +959,7 @@ export default {
   gap: 4rpx;
   gap: 4rpx;
   padding: 6rpx 16rpx;
   padding: 6rpx 16rpx;
   background: $dim-wisdom-tint-2;
   background: $dim-wisdom-tint-2;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
 }
 }
 .mascot-badge-icon {
 .mascot-badge-icon {

+ 1 - 1
cfc-frontend/pages/ai/components/AITaskCard.vue

@@ -211,7 +211,7 @@ export default {
   background-color: $brand-primary;
   background-color: $brand-primary;
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 20rpx 40rpx;
   padding: 20rpx 40rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 500;
   font-weight: 500;

+ 2 - 2
cfc-frontend/pages/ai/components/QuotaProgressBar.vue

@@ -43,13 +43,13 @@ export default {
 .quota-track {
 .quota-track {
   height: 12rpx;
   height: 12rpx;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .quota-fill {
 .quota-fill {
   height: 100%;
   height: 100%;
   background: $brand-primary;
   background: $brand-primary;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   transition: width 0.3s;
   transition: width 0.3s;
 }
 }
 </style>
 </style>

+ 1 - 1
cfc-frontend/pages/ai/components/UpgradeGuideModal.vue

@@ -114,7 +114,7 @@ export default {
 .btn-know, .btn-learn, .btn-upgrade {
 .btn-know, .btn-learn, .btn-upgrade {
   height: 80rpx;
   height: 80rpx;
   line-height: 80rpx;
   line-height: 80rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
 }
 }
 .btn-know {
 .btn-know {

+ 9 - 9
cfc-frontend/pages/article-center/article-detail.vue

@@ -452,14 +452,14 @@ export default {
 .error-wrap { display: flex; flex-direction: column; align-items: center; padding-top: 300rpx; }
 .error-wrap { display: flex; flex-direction: column; align-items: center; padding-top: 300rpx; }
 .error-icon { font-size: calc(100rpx * var(--font-scale, 1)); margin-bottom: 24rpx; }
 .error-icon { font-size: calc(100rpx * var(--font-scale, 1)); margin-bottom: 24rpx; }
 .error-text { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-bottom: 30rpx; }
 .error-text { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-bottom: 30rpx; }
-.retry-btn { width: 240rpx; height: 72rpx; line-height: 72rpx; background: $brand-primary; color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 36rpx; text-align: center; border: none; }
+.retry-btn { width: 240rpx; height: 72rpx; line-height: 72rpx; background: $brand-primary; color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 24rpx; text-align: center; border: none; }
 .content-scroll { height: calc(100vh - 120rpx); }
 .content-scroll { height: calc(100vh - 120rpx); }
 .detail-cover { width: 100%; display: block; }
 .detail-cover { width: 100%; display: block; }
 .detail-title { display: block; font-size: calc(36rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; line-height: 1.4; padding: 30rpx 30rpx 0; }
 .detail-title { display: block; font-size: calc(36rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; line-height: 1.4; padding: 30rpx 30rpx 0; }
 .detail-meta { display: flex; align-items: center; padding: 16rpx 30rpx 0; font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-muted; flex-wrap: wrap; }
 .detail-meta { display: flex; align-items: center; padding: 16rpx 30rpx 0; font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-muted; flex-wrap: wrap; }
 .meta-author { color: $uni-info; }
 .meta-author { color: $uni-info; }
 .meta-sep { margin: 0 12rpx; color: $facade-border-soft; }
 .meta-sep { margin: 0 12rpx; color: $facade-border-soft; }
-.reading-time-badge { margin-left: auto; font-size: calc(20rpx * var(--font-scale, 1)); color: $uni-info; background: rgba(14, 165, 233, 0.08); padding: 4rpx 12rpx; border-radius: 20rpx; white-space: nowrap; }
+.reading-time-badge { margin-left: auto; font-size: calc(20rpx * var(--font-scale, 1)); color: $uni-info; background: rgba(14, 165, 233, 0.08); padding: 4rpx 12rpx; border-radius: 24rpx; white-space: nowrap; }
 .reading-time-badge.completed { color: $status-success; background: rgba(16,185,129,0.1); }
 .reading-time-badge.completed { color: $status-success; background: rgba(16,185,129,0.1); }
 .meta-readcount {
 .meta-readcount {
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
@@ -469,7 +469,7 @@ export default {
 .detail-category { display: inline-block; font-size: calc(20rpx * var(--font-scale, 1)); color: $uni-info; background: rgba(14, 165, 233, 0.1); padding: 4rpx 16rpx; border-radius: 8rpx; }
 .detail-category { display: inline-block; font-size: calc(20rpx * var(--font-scale, 1)); color: $uni-info; background: rgba(14, 165, 233, 0.1); padding: 4rpx 16rpx; border-radius: 8rpx; }
 .detail-dimensions { padding: 16rpx 30rpx 0; display: flex; gap: 12rpx; }
 .detail-dimensions { padding: 16rpx 30rpx 0; display: flex; gap: 12rpx; }
 .dim-bar-item { flex: 1; }
 .dim-bar-item { flex: 1; }
-.dim-bar { height: 8rpx; border-radius: 4rpx; }
+.dim-bar { height: 8rpx; border-radius: 8rpx; }
 .dim-label { font-size: calc(18rpx * var(--font-scale, 1)); color: $facade-text-muted; text-align: center; display: block; margin-top: 4rpx; }
 .dim-label { font-size: calc(18rpx * var(--font-scale, 1)); color: $facade-text-muted; text-align: center; display: block; margin-top: 4rpx; }
 .detail-summary { padding: 20rpx 30rpx; }
 .detail-summary { padding: 20rpx 30rpx; }
 .detail-summary-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-faint; line-height: 1.7; display: block; border-left: 4rpx solid $brand-primary; padding-left: 20rpx; }
 .detail-summary-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-faint; line-height: 1.7; display: block; border-left: 4rpx solid $brand-primary; padding-left: 20rpx; }
@@ -477,12 +477,12 @@ export default {
 .detail-body { padding: 0 30rpx; font-size: calc(32rpx * var(--font-scale, 1)); color: $facade-text-deep-2; line-height: 1.8; }
 .detail-body { padding: 0 30rpx; font-size: calc(32rpx * var(--font-scale, 1)); color: $facade-text-deep-2; line-height: 1.8; }
 
 
 .detail-footer { position: fixed; bottom: 0; left: 0; right: 0; background: $app-surface; padding: 20rpx 30rpx; display: flex; align-items: center; gap: 16rpx; box-shadow: 0 -2rpx 10rpx rgba(0,0,0,0.06); z-index: 10; }
 .detail-footer { position: fixed; bottom: 0; left: 0; right: 0; background: $app-surface; padding: 20rpx 30rpx; display: flex; align-items: center; gap: 16rpx; box-shadow: 0 -2rpx 10rpx rgba(0,0,0,0.06); z-index: 10; }
-.share-btn { height: 72rpx; padding: 0 30rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-light); border-radius: 36rpx; display: flex; align-items: center; justify-content: center; border: none; }
+.share-btn { height: 72rpx; padding: 0 30rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-light); border-radius: 24rpx; display: flex; align-items: center; justify-content: center; border: none; }
 .share-btn::after { border: none; }
 .share-btn::after { border: none; }
 .share-btn-icon { font-size: calc(30rpx * var(--font-scale, 1)); margin-right: 8rpx; }
 .share-btn-icon { font-size: calc(30rpx * var(--font-scale, 1)); margin-right: 8rpx; }
 .share-btn-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $app-surface; font-weight: 600; }
 .share-btn-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $app-surface; font-weight: 600; }
 
 
-.listen-btn { height: 72rpx; padding: 0 30rpx; background: rgba(14, 165, 233, 0.1); border: 2rpx solid $uni-info; border-radius: 36rpx; display: flex; align-items: center; justify-content: center; }
+.listen-btn { height: 72rpx; padding: 0 30rpx; background: rgba(14, 165, 233, 0.1); border: 2rpx solid $uni-info; border-radius: 24rpx; display: flex; align-items: center; justify-content: center; }
 .listen-btn.playing { background: rgba(14, 165, 233, 0.2); }
 .listen-btn.playing { background: rgba(14, 165, 233, 0.2); }
 .listen-btn-icon { font-size: calc(30rpx * var(--font-scale, 1)); margin-right: 8rpx; }
 .listen-btn-icon { font-size: calc(30rpx * var(--font-scale, 1)); margin-right: 8rpx; }
 .listen-btn-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $uni-info; font-weight: 600; }
 .listen-btn-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $uni-info; font-weight: 600; }
@@ -501,7 +501,7 @@ export default {
 .quiz-dot.done { background: $mat-orange-300; }
 .quiz-dot.done { background: $mat-orange-300; }
 .q-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; line-height: 1.5; margin-bottom: 20rpx; }
 .q-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; line-height: 1.5; margin-bottom: 20rpx; }
 .q-options { display: flex; flex-direction: column; gap: 12rpx; }
 .q-options { display: flex; flex-direction: column; gap: 12rpx; }
-.q-option-row { display: flex; align-items: center; padding: 16rpx 20rpx; border: 2rpx solid $facade-gray-200; border-radius: 12rpx; }
+.q-option-row { display: flex; align-items: center; padding: 16rpx 20rpx; border: 2rpx solid $facade-gray-200; border-radius: 16rpx; }
 .q-option-row.selected { border-color: $brand-primary; background: $uni-primary-pale; }
 .q-option-row.selected { border-color: $brand-primary; background: $uni-primary-pale; }
 .q-option-letter { width: 44rpx; font-size: calc(26rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-body; flex-shrink: 0; }
 .q-option-letter { width: 44rpx; font-size: calc(26rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-body; flex-shrink: 0; }
 .q-option-row.selected .q-option-letter { color: $brand-primary; }
 .q-option-row.selected .q-option-letter { color: $brand-primary; }
@@ -510,11 +510,11 @@ export default {
 .q-option-check { width: 32rpx; height: 32rpx; border-radius: 50%; border: 3rpx solid $app-border-strong; color: transparent; font-size: calc(20rpx * var(--font-scale, 1)); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
 .q-option-check { width: 32rpx; height: 32rpx; border-radius: 50%; border: 3rpx solid $app-border-strong; color: transparent; font-size: calc(20rpx * var(--font-scale, 1)); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
 .q-option-row.selected .q-option-check { border-color: $brand-primary; background: $brand-primary; color: $app-surface; }
 .q-option-row.selected .q-option-check { border-color: $brand-primary; background: $brand-primary; color: $app-surface; }
 .quiz-nav { display: flex; gap: 16rpx; margin-top: 28rpx; }
 .quiz-nav { display: flex; gap: 16rpx; margin-top: 28rpx; }
-.quiz-prev { flex: 1; padding: 20rpx; background: $app-surface; color: $brand-primary; border: 2rpx solid $brand-primary; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 12rpx; }
+.quiz-prev { flex: 1; padding: 20rpx; background: $app-surface; color: $brand-primary; border: 2rpx solid $brand-primary; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 16rpx; }
 .quiz-prev::after { border: none; }
 .quiz-prev::after { border: none; }
-.quiz-submit { flex: 1; padding: 20rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-light); color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 12rpx; border: none; }
+.quiz-submit { flex: 1; padding: 20rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-light); color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 16rpx; border: none; }
 .quiz-submit::after { border: none; }
 .quiz-submit::after { border: none; }
-.result-btn { width: 100%; padding: 20rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-light); color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 12rpx; border: none; margin-top: 20rpx; }
+.result-btn { width: 100%; padding: 20rpx; background: linear-gradient(135deg, $brand-primary, $brand-primary-light); color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 16rpx; border: none; margin-top: 20rpx; }
 .result-dialog { text-align: center; }
 .result-dialog { text-align: center; }
 .result-icon { font-size: calc(80rpx * var(--font-scale, 1)); }
 .result-icon { font-size: calc(80rpx * var(--font-scale, 1)); }
 .result-text { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; margin: 16rpx 0; }
 .result-text { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-text-strong; margin: 16rpx 0; }

+ 4 - 4
cfc-frontend/pages/article-center/article-edit.vue

@@ -291,7 +291,7 @@ export default {
   background: rgba(0,0,0,0.5);
   background: rgba(0,0,0,0.5);
   color: $app-surface;
   color: $app-surface;
   padding: 6rpx 20rpx;
   padding: 6rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
 }
 }
 /* 表单组 */
 /* 表单组 */
@@ -315,7 +315,7 @@ export default {
 .dimension-chips { display: flex; flex-wrap: wrap; gap: 16rpx; }
 .dimension-chips { display: flex; flex-wrap: wrap; gap: 16rpx; }
 .dim-chip {
 .dim-chip {
   padding: 10rpx 28rpx;
   padding: 10rpx 28rpx;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   border: 2rpx solid $facade-border-soft;
   border: 2rpx solid $facade-border-soft;
   color: $facade-text-body;
   color: $facade-text-body;
@@ -337,7 +337,7 @@ export default {
 .vis-option {
 .vis-option {
   flex: 1;
   flex: 1;
   padding: 24rpx;
   padding: 24rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   border: 2rpx solid $facade-hairline-2;
   border: 2rpx solid $facade-hairline-2;
   text-align: center;
   text-align: center;
 }
 }
@@ -354,7 +354,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
   border: none;
   border: none;
   margin-top: 20rpx;
   margin-top: 20rpx;

+ 4 - 4
cfc-frontend/pages/article-center/index.vue

@@ -403,7 +403,7 @@ onLoad(options) {
   flex: 1;
   flex: 1;
   height: 60rpx;
   height: 60rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   padding: 0 28rpx;
   padding: 0 28rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -437,7 +437,7 @@ onLoad(options) {
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 26rpx;
+  border-radius: 24rpx;
   border: 2rpx solid $facade-fill;
   border: 2rpx solid $facade-fill;
   flex-shrink: 0;
   flex-shrink: 0;
   transition: font-weight 0.2s;
   transition: font-weight 0.2s;
@@ -471,7 +471,7 @@ onLoad(options) {
   height: 22rpx;
   height: 22rpx;
   background: linear-gradient(90deg, $facade-fill 25%, $facade-fill-4 50%, $facade-fill 75%);
   background: linear-gradient(90deg, $facade-fill 25%, $facade-fill-4 50%, $facade-fill 75%);
   background-size: 200% 100%;
   background-size: 200% 100%;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   margin-bottom: 14rpx;
   margin-bottom: 14rpx;
   animation: sk-shimmer 1.5s infinite;
   animation: sk-shimmer 1.5s infinite;
 }
 }
@@ -538,7 +538,7 @@ onLoad(options) {
 }
 }
 .ac-card-dim-tag {
 .ac-card-dim-tag {
   padding: 2rpx 14rpx;
   padding: 2rpx 14rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   color: $app-surface;
   color: $app-surface;
   font-weight: 500;
   font-weight: 500;

+ 1 - 1
cfc-frontend/pages/article-center/my-posts.vue

@@ -139,7 +139,7 @@ export default {
 .loading-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-muted; }
 .loading-text { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-muted; }
 .empty-icon { font-size: calc(100rpx * var(--font-scale, 1)); margin-bottom: 24rpx; }
 .empty-icon { font-size: calc(100rpx * var(--font-scale, 1)); margin-bottom: 24rpx; }
 .empty-text { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-bottom: 30rpx; }
 .empty-text { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-bottom: 30rpx; }
-.write-btn { width: 240rpx; height: 72rpx; line-height: 72rpx; background: $brand-primary; color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 36rpx; border: none; }
+.write-btn { width: 240rpx; height: 72rpx; line-height: 72rpx; background: $brand-primary; color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 24rpx; border: none; }
 .write-btn::after { border: none; }
 .write-btn::after { border: none; }
 .post-list { padding: 20rpx 24rpx; }
 .post-list { padding: 20rpx 24rpx; }
 .post-card {
 .post-card {

+ 1 - 1
cfc-frontend/pages/assessment-plan/detail.vue

@@ -185,7 +185,7 @@ export default {
 .plan-status {
 .plan-status {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 16rpx;
   padding: 4rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-left: 12rpx;
   margin-left: 12rpx;
 }
 }
 .status-active { background: $mat-blue-tint; color: $mat-blue-strong; }
 .status-active { background: $mat-blue-tint; color: $mat-blue-strong; }

+ 3 - 3
cfc-frontend/pages/assessment-plan/list.vue

@@ -158,7 +158,7 @@ export default {
 .plan-status {
 .plan-status {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 16rpx;
   padding: 4rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-left: 12rpx;
   margin-left: 12rpx;
 }
 }
 .status-active { background: $mat-blue-tint; color: $mat-blue-strong; }
 .status-active { background: $mat-blue-tint; color: $mat-blue-strong; }
@@ -189,14 +189,14 @@ export default {
   flex: 1;
   flex: 1;
   height: 12rpx;
   height: 12rpx;
   background: #EEF2F7;
   background: #EEF2F7;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
 .progress-fill {
 .progress-fill {
   height: 100%;
   height: 100%;
   background: $brand-primary;
   background: $brand-primary;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
 }
 }
 .progress-text {
 .progress-text {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));

+ 5 - 5
cfc-frontend/pages/assessment/apply.vue

@@ -378,7 +378,7 @@ export default {
 
 
 .section {
 .section {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -404,7 +404,7 @@ export default {
   position: relative;
   position: relative;
   background: $facade-fill-page;
   background: $facade-fill-page;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
   min-width: 200rpx;
   min-width: 200rpx;
   flex: 1;
   flex: 1;
@@ -510,7 +510,7 @@ export default {
   align-items: center;
   align-items: center;
   height: 80rpx;
   height: 80rpx;
   background: $facade-fill-page;
   background: $facade-fill-page;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -523,7 +523,7 @@ export default {
 
 
 .price-info {
 .price-info {
   background: $facade-fill-page;
   background: $facade-fill-page;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
 }
 }
 
 
@@ -558,7 +558,7 @@ export default {
   height: 90rpx;
   height: 90rpx;
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 45rpx;
+  border-radius: 24rpx;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
   margin-top: 40rpx;
   margin-top: 40rpx;

+ 8 - 8
cfc-frontend/pages/assessment/execution.vue

@@ -257,7 +257,7 @@ export default {
 
 
 .status-card {
 .status-card {
   background: white;
   background: white;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 60rpx 40rpx;
   padding: 60rpx 40rpx;
   text-align: center;
   text-align: center;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
@@ -300,7 +300,7 @@ export default {
   width: 6rpx;
   width: 6rpx;
   height: 36rpx;
   height: 36rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 3rpx;
+  border-radius: 8rpx;
   position: relative;
   position: relative;
   z-index: 1;
   z-index: 1;
 }
 }
@@ -363,7 +363,7 @@ export default {
 
 
 .timeline {
 .timeline {
   background: white;
   background: white;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx;
   padding: 40rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -458,7 +458,7 @@ export default {
   position: absolute;
   position: absolute;
   bottom: 10rpx;
   bottom: 10rpx;
   left: 8rpx;
   left: 8rpx;
-  border-radius: 2rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 /* 规划师图标 */
 /* 规划师图标 */
@@ -483,7 +483,7 @@ export default {
   position: absolute;
   position: absolute;
   bottom: 10rpx;
   bottom: 10rpx;
   left: 8rpx;
   left: 8rpx;
-  border-radius: 2rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 /* 确认图标 */
 /* 确认图标 */
@@ -508,7 +508,7 @@ export default {
   position: absolute;
   position: absolute;
   bottom: 10rpx;
   bottom: 10rpx;
   left: 8rpx;
   left: 8rpx;
-  border-radius: 2rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 .timeline-content {
 .timeline-content {
@@ -537,7 +537,7 @@ export default {
 
 
 .notes-section {
 .notes-section {
   background: white;
   background: white;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx;
   padding: 40rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -572,7 +572,7 @@ export default {
 }
 }
 
 
 .btn-primary, .btn-secondary, .btn-outline {
 .btn-primary, .btn-secondary, .btn-outline {
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   padding: 30rpx;
   padding: 30rpx;
   text-align: center;
   text-align: center;

+ 6 - 6
cfc-frontend/pages/assessment/purchase.vue

@@ -382,7 +382,7 @@ export default {
 
 
 .section {
 .section {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -407,7 +407,7 @@ export default {
   align-items: center;
   align-items: center;
   background: $facade-fill-page;
   background: $facade-fill-page;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
 }
 }
 
 
@@ -458,7 +458,7 @@ export default {
   position: relative;
   position: relative;
   background: $facade-fill-page;
   background: $facade-fill-page;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
 }
 }
 
 
@@ -515,7 +515,7 @@ export default {
   align-items: center;
   align-items: center;
   background: $mat-green-tint;
   background: $mat-green-tint;
   padding: 8rpx 12rpx;
   padding: 8rpx 12rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 
 
 .feature-icon {
 .feature-icon {
@@ -546,7 +546,7 @@ export default {
 
 
 .price-breakdown {
 .price-breakdown {
   background: $facade-fill-page;
   background: $facade-fill-page;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
 }
 }
 
 
@@ -592,7 +592,7 @@ export default {
   height: 90rpx;
   height: 90rpx;
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 45rpx;
+  border-radius: 24rpx;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
   margin-top: 40rpx;
   margin-top: 40rpx;

+ 6 - 6
cfc-frontend/pages/assessment/quota.vue

@@ -127,7 +127,7 @@ export default {
 }
 }
 .quota-card {
 .quota-card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 28rpx;
   padding: 28rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }
@@ -145,7 +145,7 @@ export default {
 .status-tag {
 .status-tag {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 16rpx;
   padding: 4rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 .status-tag.active {
 .status-tag.active {
   background: $mat-green-tint;
   background: $mat-green-tint;
@@ -165,13 +165,13 @@ export default {
   flex: 1;
   flex: 1;
   height: 12rpx;
   height: 12rpx;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .progress-bar-fill {
 .progress-bar-fill {
   height: 100%;
   height: 100%;
   background: linear-gradient(90deg, $accent-indigo, $accent-indigo-deep);
   background: linear-gradient(90deg, $accent-indigo, $accent-indigo-deep);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
 }
 }
 .progress-text {
 .progress-text {
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
@@ -212,7 +212,7 @@ export default {
   line-height: 76rpx;
   line-height: 76rpx;
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 38rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   text-align: center;
   text-align: center;
 }
 }
@@ -237,7 +237,7 @@ export default {
   line-height: 80rpx;
   line-height: 80rpx;
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   text-align: center;
   text-align: center;
 }
 }

+ 4 - 4
cfc-frontend/pages/assessment/rating.vue

@@ -234,7 +234,7 @@ export default {
 
 
 .rating-section {
 .rating-section {
   background: white;
   background: white;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx;
   padding: 40rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -248,7 +248,7 @@ export default {
 .section-icon {
 .section-icon {
   width: 48rpx;
   width: 48rpx;
   height: 48rpx;
   height: 48rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-right: 16rpx;
   margin-right: 16rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -335,7 +335,7 @@ export default {
   min-height: 200rpx;
   min-height: 200rpx;
   padding: 20rpx;
   padding: 20rpx;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
 }
 }
@@ -348,7 +348,7 @@ export default {
 }
 }
 
 
 .btn-primary, .btn-outline {
 .btn-primary, .btn-outline {
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   padding: 30rpx;
   padding: 30rpx;
   text-align: center;
   text-align: center;

+ 8 - 8
cfc-frontend/pages/assessment/results.vue

@@ -259,7 +259,7 @@ export default {
 .tabs {
 .tabs {
   display: flex;
   display: flex;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 10rpx;
   padding: 10rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -268,7 +268,7 @@ export default {
   flex: 1;
   flex: 1;
   text-align: center;
   text-align: center;
   padding: 20rpx;
   padding: 20rpx;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
 }
 }
@@ -280,7 +280,7 @@ export default {
 
 
 .section {
 .section {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
@@ -300,7 +300,7 @@ export default {
 
 
 .report-item {
 .report-item {
   background: $facade-fill-page;
   background: $facade-fill-page;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
 }
 }
 
 
@@ -336,7 +336,7 @@ export default {
 .score-item {
 .score-item {
   background: $mat-green-tint;
   background: $mat-green-tint;
   padding: 10rpx 15rpx;
   padding: 10rpx 15rpx;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 .score-label {
 .score-label {
@@ -396,7 +396,7 @@ export default {
 
 
 .modal-content {
 .modal-content {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx;
   padding: 40rpx;
   width: 90%;
   width: 90%;
   max-height: 80vh;
   max-height: 80vh;
@@ -457,7 +457,7 @@ export default {
 .detail-content {
 .detail-content {
   background: $facade-fill-page;
   background: $facade-fill-page;
   padding: 20rpx;
   padding: 20rpx;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 .content-text {
 .content-text {
@@ -476,7 +476,7 @@ export default {
   height: 80rpx;
   height: 80rpx;
   background: $facade-fill;
   background: $facade-fill;
   color: $facade-text-strong;
   color: $facade-text-strong;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
 }
 }

+ 5 - 5
cfc-frontend/pages/assessment/upload-report.vue

@@ -135,7 +135,7 @@ export default {
 }
 }
 .section {
 .section {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   margin-bottom: 24rpx;
   margin-bottom: 24rpx;
 }
 }
@@ -154,7 +154,7 @@ export default {
   position: relative;
   position: relative;
   background: $facade-fill-page;
   background: $facade-fill-page;
   border: 2rpx solid $facade-hairline;
   border: 2rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
   min-width: 160rpx;
   min-width: 160rpx;
   text-align: center;
   text-align: center;
@@ -188,7 +188,7 @@ export default {
   height: 160rpx;
   height: 160rpx;
   background: $facade-fill-page;
   background: $facade-fill-page;
   border: 2rpx dashed $facade-text-ghost;
   border: 2rpx dashed $facade-text-ghost;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
 }
 }
 .upload-icon {
 .upload-icon {
   font-size: calc(48rpx * var(--font-scale, 1));
   font-size: calc(48rpx * var(--font-scale, 1));
@@ -201,7 +201,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 160rpx;
   height: 160rpx;
   background: $facade-fill-page;
   background: $facade-fill-page;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -212,7 +212,7 @@ export default {
   line-height: 88rpx;
   line-height: 88rpx;
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   background: linear-gradient(135deg, $accent-indigo, $accent-indigo-deep);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   margin-top: 30rpx;
   margin-top: 30rpx;
 }
 }

+ 6 - 6
cfc-frontend/pages/body-detail/checkin.vue

@@ -316,7 +316,7 @@ $c-tint-amber-edge: #FFECB3;  // 能量提示渐变终点(amber-100;与全
 .form-section {
 .form-section {
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }
@@ -343,7 +343,7 @@ $c-tint-amber-edge: #FFECB3;  // 能量提示渐变终点(amber-100;与全
   align-items: center;
   align-items: center;
   justify-content: space-between;
   justify-content: space-between;
   background: $app-bg;
   background: $app-bg;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -384,7 +384,7 @@ $c-tint-amber-edge: #FFECB3;  // 能量提示渐变终点(amber-100;与全
   flex-direction: column;
   flex-direction: column;
   align-items: center;
   align-items: center;
   padding: 12rpx 16rpx;
   padding: 12rpx 16rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
 }
 }
 .mood-selected {
 .mood-selected {
   background: $mat-amber-tint;
   background: $mat-amber-tint;
@@ -403,7 +403,7 @@ $c-tint-amber-edge: #FFECB3;  // 能量提示渐变终点(amber-100;与全
   width: 100%;
   width: 100%;
   box-sizing: border-box;
   box-sizing: border-box;
   background: $app-bg;
   background: $app-bg;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx;
   padding: 16rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -418,7 +418,7 @@ $c-tint-amber-edge: #FFECB3;  // 能量提示渐变终点(amber-100;与全
   font-weight: bold;
   font-weight: bold;
   text-align: center;
   text-align: center;
   padding: 24rpx;
   padding: 24rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   margin-top: 16rpx;
   margin-top: 16rpx;
 }
 }
 .submit-btn:active {
 .submit-btn:active {
@@ -470,7 +470,7 @@ $c-tint-amber-edge: #FFECB3;  // 能量提示渐变终点(amber-100;与全
   color: $mat-blue-strong;
   color: $mat-blue-strong;
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   padding: 4rpx 12rpx;
   padding: 4rpx 12rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-right: 8rpx;
   margin-right: 8rpx;
   margin-bottom: 4rpx;
   margin-bottom: 4rpx;
 }
 }

+ 4 - 4
cfc-frontend/pages/body-detail/dimension-detail.vue

@@ -392,7 +392,7 @@ export default {
 .dd-dim-level {
 .dd-dim-level {
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   padding: 6rpx 24rpx;
   padding: 6rpx 24rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   display: inline-block;
   display: inline-block;
   margin-top: 16rpx;
   margin-top: 16rpx;
   background: rgba(255,255,255,0.2);
   background: rgba(255,255,255,0.2);
@@ -400,7 +400,7 @@ export default {
 .dd-section {
 .dd-section {
   background: $app-surface;
   background: $app-surface;
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.04);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.04);
 }
 }
@@ -486,7 +486,7 @@ export default {
 .dd-prod-img {
 .dd-prod-img {
   width: 120rpx;
   width: 120rpx;
   height: 120rpx;
   height: 120rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-right: 20rpx;
   margin-right: 20rpx;
   flex-shrink: 0;
   flex-shrink: 0;
   background: $facade-fill;
   background: $facade-fill;
@@ -520,7 +520,7 @@ export default {
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
 }
 }
 .dd-btn-outline {
 .dd-btn-outline {

+ 6 - 6
cfc-frontend/pages/body-detail/dimension-questionnaire.vue

@@ -531,18 +531,18 @@ export default {
 .qd-progress-bar {
 .qd-progress-bar {
   height: 6rpx;
   height: 6rpx;
   background: $facade-fill-4;
   background: $facade-fill-4;
-  border-radius: 3rpx;
+  border-radius: 8rpx;
   margin: 20rpx 0;
   margin: 20rpx 0;
 }
 }
 .qd-progress-fill {
 .qd-progress-fill {
   height: 100%;
   height: 100%;
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
-  border-radius: 3rpx;
+  border-radius: 8rpx;
   transition: width 0.3s ease;
   transition: width 0.3s ease;
 }
 }
 .qd-question-card {
 .qd-question-card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx 30rpx;
   padding: 40rpx 30rpx;
   margin: 20rpx 0;
   margin: 20rpx 0;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
@@ -562,7 +562,7 @@ export default {
   justify-content: space-between;
   justify-content: space-between;
   padding: 24rpx 20rpx;
   padding: 24rpx 20rpx;
   border: 2rpx solid $facade-fill-3;
   border: 2rpx solid $facade-fill-3;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-bottom: 16rpx;
   margin-bottom: 16rpx;
   transition: border-color 0.2s, background-color 0.2s;
   transition: border-color 0.2s, background-color 0.2s;
 }
 }
@@ -598,7 +598,7 @@ export default {
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   border: none;
   border: none;
   text-align: center;
   text-align: center;
 }
 }
@@ -636,7 +636,7 @@ export default {
 .qd-result-level {
 .qd-result-level {
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   padding: 8rpx 24rpx;
   padding: 8rpx 24rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   display: inline-block;
   display: inline-block;
   margin-bottom: 20rpx;
   margin-bottom: 20rpx;
 }
 }

+ 5 - 5
cfc-frontend/pages/body-detail/health-dimensions.vue

@@ -473,7 +473,7 @@ export default {
 .dim-level-tag {
 .dim-level-tag {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 4rpx 16rpx;
   padding: 4rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   background: $facade-fill;
   background: $facade-fill;
   color: $facade-text-body;
   color: $facade-text-body;
 }
 }
@@ -578,7 +578,7 @@ export default {
   height: 80rpx;
   height: 80rpx;
   line-height: 80rpx;
   line-height: 80rpx;
   border: 1px solid $facade-hairline;
   border: 1px solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   color: $facade-text-strong;
   color: $facade-text-strong;
@@ -586,7 +586,7 @@ export default {
 .form-input {
 .form-input {
   height: 80rpx;
   height: 80rpx;
   border: 1px solid $facade-hairline;
   border: 1px solid $facade-hairline;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
 }
 }
@@ -601,7 +601,7 @@ export default {
   line-height: 88rpx;
   line-height: 88rpx;
   text-align: center;
   text-align: center;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
 }
 }
@@ -611,7 +611,7 @@ export default {
   line-height: 88rpx;
   line-height: 88rpx;
   text-align: center;
   text-align: center;
   background: linear-gradient(135deg, $dim-body, $mind-accent);
   background: linear-gradient(135deg, $dim-body, $mind-accent);
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   color: $app-surface;
   color: $app-surface;
 }
 }

+ 10 - 10
cfc-frontend/pages/body-detail/health-report.vue

@@ -537,7 +537,7 @@ export default {
 .report-header {
 .report-header {
   background: linear-gradient(135deg, $mat-blue-tint, $mat-blue-light);
   background: linear-gradient(135deg, $mat-blue-tint, $mat-blue-light);
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx 24rpx;
   padding: 30rpx 24rpx;
 }
 }
 .report-type-tag {
 .report-type-tag {
@@ -546,7 +546,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   padding: 6rpx 20rpx;
   padding: 6rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 20rpx;
   margin-bottom: 20rpx;
 }
 }
 .report-scores {
 .report-scores {
@@ -563,7 +563,7 @@ export default {
 .score-circle-lg {
 .score-circle-lg {
   width: 140rpx;
   width: 140rpx;
   height: 140rpx;
   height: 140rpx;
-  border-radius: 70rpx;
+  border-radius: 24rpx;
   background: $app-surface;
   background: $app-surface;
   display: flex;
   display: flex;
   flex-direction: column;
   flex-direction: column;
@@ -603,7 +603,7 @@ export default {
   color: $facade-text-strong;
   color: $facade-text-strong;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   padding: 8rpx 20rpx;
   padding: 8rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
 .report-date {
 .report-date {
@@ -734,7 +734,7 @@ export default {
   flex-direction: row;
   flex-direction: row;
   align-items: center;
   align-items: center;
   padding: 20rpx 40rpx;
   padding: 20rpx 40rpx;
-  border-radius: 50rpx;
+  border-radius: 24rpx;
   box-shadow: 0 8rpx 24rpx rgba(67, 160, 71, 0.4);
   box-shadow: 0 8rpx 24rpx rgba(67, 160, 71, 0.4);
   z-index: 200;
   z-index: 200;
 }
 }
@@ -752,7 +752,7 @@ export default {
 .score-dashboard {
 .score-dashboard {
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }
@@ -793,7 +793,7 @@ export default {
 .flora-score-circle {
 .flora-score-circle {
   width: 80rpx;
   width: 80rpx;
   height: 80rpx;
   height: 80rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -865,13 +865,13 @@ export default {
   flex: 1;
   flex: 1;
   height: 12rpx;
   height: 12rpx;
   background: $facade-fill-gray-100;
   background: $facade-fill-gray-100;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
 .severity-fill {
 .severity-fill {
   height: 100%;
   height: 100%;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
 }
 }
 .severity-val {
 .severity-val {
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
@@ -962,7 +962,7 @@ export default {
   color: $facade-text-slate;
   color: $facade-text-slate;
   background: $facade-fill-gray-100;
   background: $facade-fill-gray-100;
   padding: 2rpx 12rpx;
   padding: 2rpx 12rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
 }
 }
 .food-nutrition {
 .food-nutrition {
   display: flex;
   display: flex;

+ 8 - 8
cfc-frontend/pages/body-detail/index.vue

@@ -776,7 +776,7 @@ $c-tint-warm: #FFF5EE;
   margin-right: 16rpx;
   margin-right: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   background: linear-gradient(135deg, $dim-body-tint 0%, $c-tint-peach 100%);
   background: linear-gradient(135deg, $dim-body-tint 0%, $c-tint-peach 100%);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   box-shadow: 0 2rpx 8rpx rgba(255, 140, 66, 0.08);
   box-shadow: 0 2rpx 8rpx rgba(255, 140, 66, 0.08);
 }
 }
 
 
@@ -860,7 +860,7 @@ $c-tint-warm: #FFF5EE;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
   background: linear-gradient(135deg, $dim-body, $c-body-deep);
   background: linear-gradient(135deg, $dim-body, $c-body-deep);
-  border-radius: 48rpx;
+  border-radius: 24rpx;
   padding: 20rpx 0;
   padding: 20rpx 0;
   box-shadow: 0 4rpx 16rpx rgba(255, 107, 26, 0.35);
   box-shadow: 0 4rpx 16rpx rgba(255, 107, 26, 0.35);
 }
 }
@@ -887,7 +887,7 @@ $c-tint-warm: #FFF5EE;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
   background-color: $app-surface;
   background-color: $app-surface;
-  border-radius: 48rpx;
+  border-radius: 24rpx;
   padding: 20rpx 0;
   padding: 20rpx 0;
   border: 2rpx solid $dim-body;
   border: 2rpx solid $dim-body;
 }
 }
@@ -971,7 +971,7 @@ $c-tint-warm: #FFF5EE;
   margin-right: 16rpx;
   margin-right: 16rpx;
   padding: 20rpx;
   padding: 20rpx;
   background: linear-gradient(135deg, $c-tint-blush 0%, $c-tint-warm 100%);
   background: linear-gradient(135deg, $c-tint-blush 0%, $c-tint-warm 100%);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   border: 2rpx solid rgba(255, 140, 66, 0.15);
   border: 2rpx solid rgba(255, 140, 66, 0.15);
 }
 }
 
 
@@ -1214,7 +1214,7 @@ $c-tint-warm: #FFF5EE;
 .portrait-dim-icon {
 .portrait-dim-icon {
   width: 40rpx;
   width: 40rpx;
   height: 40rpx;
   height: 40rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -1235,13 +1235,13 @@ $c-tint-warm: #FFF5EE;
 .portrait-dim-bar-track {
 .portrait-dim-bar-track {
   height: 12rpx;
   height: 12rpx;
   background: $dim-body-tint;
   background: $dim-body-tint;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
   margin-bottom: 6rpx;
   margin-bottom: 6rpx;
 }
 }
 .portrait-dim-bar-fill {
 .portrait-dim-bar-fill {
   height: 100%;
   height: 100%;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   transition: width 0.3s ease;
   transition: width 0.3s ease;
 }
 }
 .portrait-dim-desc {
 .portrait-dim-desc {
@@ -1252,7 +1252,7 @@ $c-tint-warm: #FFF5EE;
 .portrait-tip {
 .portrait-tip {
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   background: linear-gradient(135deg, $dim-wealth-tint, $dim-body-tint);
   background: linear-gradient(135deg, $dim-wealth-tint, $dim-body-tint);
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   border-left: 8rpx solid $dim-body;
   border-left: 8rpx solid $dim-body;
 }
 }
 .portrait-tip-text {
 .portrait-tip-text {

+ 2 - 2
cfc-frontend/pages/body-detail/member-body-detail.vue

@@ -202,14 +202,14 @@ export default {
   align-items: center;
   align-items: center;
   margin: 20rpx 30rpx;
   margin: 20rpx 30rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
 }
 }
 .member-avatar {
 .member-avatar {
   width: 80rpx;
   width: 80rpx;
   height: 80rpx;
   height: 80rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   background: linear-gradient(135deg, $mat-green, $mat-green-light);
   background: linear-gradient(135deg, $mat-green, $mat-green-light);
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;

+ 5 - 5
cfc-frontend/pages/butler/apply.vue

@@ -132,7 +132,7 @@ export default {
 }
 }
 .form {
 .form {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 40rpx;
   padding: 40rpx;
 }
 }
 .form-item {
 .form-item {
@@ -149,7 +149,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 80rpx;
   height: 80rpx;
   border: 1rpx solid $facade-hairline;
   border: 1rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -158,7 +158,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 80rpx;
   height: 80rpx;
   border: 1rpx solid $facade-hairline;
   border: 1rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   display: flex;
   display: flex;
@@ -177,7 +177,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 200rpx;
   height: 200rpx;
   border: 1rpx solid $facade-hairline;
   border: 1rpx solid $facade-hairline;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   padding: 20rpx;
   padding: 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -194,7 +194,7 @@ export default {
   height: 90rpx;
   height: 90rpx;
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   background: linear-gradient(135deg, $accent-indigo 0%, $accent-indigo-deep 100%);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 45rpx;
+  border-radius: 24rpx;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
   margin-top: 40rpx;
   margin-top: 40rpx;

+ 4 - 4
cfc-frontend/pages/butler/select.vue

@@ -143,7 +143,7 @@ export default {
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
 .select-page { min-height: 100vh; background: $facade-fill-blue-ghost; padding: 24rpx; box-sizing: border-box; display: flex; flex-direction: column; }
 .select-page { min-height: 100vh; background: $facade-fill-blue-ghost; padding: 24rpx; box-sizing: border-box; display: flex; flex-direction: column; }
-.status-card { background: $app-surface; border-radius: 20rpx; padding: 32rpx; margin-bottom: 24rpx; }
+.status-card { background: $app-surface; border-radius: 24rpx; padding: 32rpx; margin-bottom: 24rpx; }
 .current-label { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-bottom: 16rpx; }
 .current-label { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-bottom: 16rpx; }
 .current-row { display: flex; align-items: center; }
 .current-row { display: flex; align-items: center; }
 .current-avatar { width: 96rpx; height: 96rpx; border-radius: 50%; margin-right: 20rpx; }
 .current-avatar { width: 96rpx; height: 96rpx; border-radius: 50%; margin-right: 20rpx; }
@@ -151,12 +151,12 @@ export default {
 .current-name { font-size: calc(34rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; }
 .current-name { font-size: calc(34rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; }
 .current-date { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-top: 6rpx; }
 .current-date { font-size: calc(22rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-top: 6rpx; }
 .current-desc { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 20rpx; line-height: 1.6; }
 .current-desc { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-body; margin-top: 20rpx; line-height: 1.6; }
-.btn-change { margin-top: 24rpx; background: $brand-primary; color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 40rpx; }
+.btn-change { margin-top: 24rpx; background: $brand-primary; color: $app-surface; font-size: calc(28rpx * var(--font-scale, 1)); border-radius: 24rpx; }
 .upgrade-banner { display: flex; justify-content: space-between; align-items: center; background: $uni-primary-pale; border: 1rpx solid #ffb56b; border-radius: 16rpx; padding: 24rpx; margin-bottom: 24rpx; }
 .upgrade-banner { display: flex; justify-content: space-between; align-items: center; background: $uni-primary-pale; border: 1rpx solid #ffb56b; border-radius: 16rpx; padding: 24rpx; margin-bottom: 24rpx; }
 .upgrade-text { font-size: calc(26rpx * var(--font-scale, 1)); color: #d4770a; flex: 1; }
 .upgrade-text { font-size: calc(26rpx * var(--font-scale, 1)); color: #d4770a; flex: 1; }
 .upgrade-arrow { font-size: calc(36rpx * var(--font-scale, 1)); color: #d4770a; margin-left: 12rpx; }
 .upgrade-arrow { font-size: calc(36rpx * var(--font-scale, 1)); color: #d4770a; margin-left: 12rpx; }
 .section-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; margin: 8rpx 0 20rpx; }
 .section-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; margin: 8rpx 0 20rpx; }
-.butler-card { display: flex; align-items: center; background: $app-surface; border-radius: 20rpx; padding: 28rpx; margin-bottom: 20rpx; }
+.butler-card { display: flex; align-items: center; background: $app-surface; border-radius: 24rpx; padding: 28rpx; margin-bottom: 20rpx; }
 .butler-card.active { border: 2rpx solid $brand-primary; }
 .butler-card.active { border: 2rpx solid $brand-primary; }
 .card-avatar { width: 88rpx; height: 88rpx; border-radius: 50%; margin-right: 20rpx; flex-shrink: 0; }
 .card-avatar { width: 88rpx; height: 88rpx; border-radius: 50%; margin-right: 20rpx; flex-shrink: 0; }
 .card-body { flex: 1; min-width: 0; }
 .card-body { flex: 1; min-width: 0; }
@@ -164,7 +164,7 @@ export default {
 .card-name { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; }
 .card-name { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: bold; color: $facade-text-strong; }
 .card-slots { font-size: calc(22rpx * var(--font-scale, 1)); color: $status-success; }
 .card-slots { font-size: calc(22rpx * var(--font-scale, 1)); color: $status-success; }
 .card-desc { display: block; font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-faint; margin-top: 8rpx; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
 .card-desc { display: block; font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-faint; margin-top: 8rpx; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
-.btn-select { width: 120rpx; height: 60rpx; line-height: 60rpx; padding: 0; font-size: calc(26rpx * var(--font-scale, 1)); background: $brand-primary; color: $app-surface; border-radius: 30rpx; flex-shrink: 0; margin-left: 16rpx; }
+.btn-select { width: 120rpx; height: 60rpx; line-height: 60rpx; padding: 0; font-size: calc(26rpx * var(--font-scale, 1)); background: $brand-primary; color: $app-surface; border-radius: 24rpx; flex-shrink: 0; margin-left: 16rpx; }
 .btn-select[disabled] { background: $facade-text-ghost; color: $app-surface; }
 .btn-select[disabled] { background: $facade-text-ghost; color: $app-surface; }
 .empty-tip { text-align: center; color: $facade-text-muted; font-size: calc(26rpx * var(--font-scale, 1)); padding: 60rpx 0; }
 .empty-tip { text-align: center; color: $facade-text-muted; font-size: calc(26rpx * var(--font-scale, 1)); padding: 60rpx 0; }
 </style>
 </style>

+ 3 - 3
cfc-frontend/pages/child/rewards.vue

@@ -142,7 +142,7 @@ export default {
 
 
 <style scoped lang="scss">
 <style scoped lang="scss">
 .container { padding: 30rpx; padding-bottom: 120rpx; }
 .container { padding: 30rpx; padding-bottom: 120rpx; }
-.exit-switch { background: $facade-fill-2; padding: 20rpx; border-radius: 10rpx; margin-bottom: 20rpx; text-align: center; color: $facade-text-body; font-size: calc(28rpx * var(--font-scale, 1)); }
+.exit-switch { background: $facade-fill-2; padding: 20rpx; border-radius: 8rpx; margin-bottom: 20rpx; text-align: center; color: $facade-text-body; font-size: calc(28rpx * var(--font-scale, 1)); }
 .reward-item { background: $app-surface; border-radius: 16rpx; padding: 30rpx; margin-bottom: 20rpx; }
 .reward-item { background: $app-surface; border-radius: 16rpx; padding: 30rpx; margin-bottom: 20rpx; }
 .reward-title { font-size: calc(30rpx * var(--font-scale, 1)); color: $facade-text-strong; margin-bottom: 15rpx; }
 .reward-title { font-size: calc(30rpx * var(--font-scale, 1)); color: $facade-text-strong; margin-bottom: 15rpx; }
 .reward-progress { width: 100%; }
 .reward-progress { width: 100%; }
@@ -150,12 +150,12 @@ export default {
 .add-btn { position: fixed; bottom: 30rpx; left: 30rpx; right: 30rpx; }
 .add-btn { position: fixed; bottom: 30rpx; left: 30rpx; right: 30rpx; }
 .empty { text-align: center; color: $facade-text-muted; padding: 100rpx; }
 .empty { text-align: center; color: $facade-text-muted; padding: 100rpx; }
 .modal-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; }
 .modal-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; }
-.modal { background: $app-surface; border-radius: 20rpx; padding: 40rpx; width: 80%; }
+.modal { background: $app-surface; border-radius: 24rpx; padding: 40rpx; width: 80%; }
 .modal-title { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: bold; margin-bottom: 30rpx; text-align: center; }
 .modal-title { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: bold; margin-bottom: 30rpx; text-align: center; }
 .form-item { margin-bottom: 20rpx; }
 .form-item { margin-bottom: 20rpx; }
 .form-label { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-strong; margin-bottom: 10rpx; }
 .form-label { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-strong; margin-bottom: 10rpx; }
 .required { color: $brand-primary; }
 .required { color: $brand-primary; }
-.form-tip { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; padding: 20rpx; background: $facade-fill-2; border-radius: 10rpx; margin-bottom: 20rpx; }
+.form-tip { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; padding: 20rpx; background: $facade-fill-2; border-radius: 8rpx; margin-bottom: 20rpx; }
 .modal-btns { display: flex; gap: 20rpx; margin-top: 30rpx; }
 .modal-btns { display: flex; gap: 20rpx; margin-top: 30rpx; }
 .modal-btns button { flex: 1; }
 .modal-btns button { flex: 1; }
 </style>
 </style>

+ 3 - 3
cfc-frontend/pages/cognitive-hall.vue

@@ -226,7 +226,7 @@ $c-ink-night:    $app-ink-night;   // 深夜蓝黑(本页深色文字)
   flex-direction: row;
   flex-direction: row;
   align-items: center;
   align-items: center;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 28rpx;
   padding: 28rpx;
   margin-bottom: 20rpx;
   margin-bottom: 20rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
@@ -235,7 +235,7 @@ $c-ink-night:    $app-ink-night;   // 深夜蓝黑(本页深色文字)
 .game-icon-wrap {
 .game-icon-wrap {
   width: 88rpx;
   width: 88rpx;
   height: 88rpx;
   height: 88rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -312,7 +312,7 @@ $c-ink-night:    $app-ink-night;   // 深夜蓝黑(本页深色文字)
 .btn {
 .btn {
   width: 100%;
   width: 100%;
   padding: 24rpx 0;
   padding: 24rpx 0;
-  border-radius: 50rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;

+ 2 - 2
cfc-frontend/pages/cognitive-test/language-test.vue

@@ -294,7 +294,7 @@ export default {
   width: 480rpx;
   width: 480rpx;
   height: 92rpx;
   height: 92rpx;
   line-height: 92rpx;
   line-height: 92rpx;
-  border-radius: 46rpx;
+  border-radius: 24rpx;
   border: none;
   border: none;
   margin-top: 60rpx;
   margin-top: 60rpx;
   padding: 0;
   padding: 0;
@@ -311,7 +311,7 @@ export default {
   width: 480rpx;
   width: 480rpx;
   height: 92rpx;
   height: 92rpx;
   line-height: 92rpx;
   line-height: 92rpx;
-  border-radius: 46rpx;
+  border-radius: 24rpx;
   border: 2rpx solid rgba(255,255,255,0.25);
   border: 2rpx solid rgba(255,255,255,0.25);
   margin-top: 32rpx;
   margin-top: 32rpx;
   padding: 0;
   padding: 0;

+ 5 - 5
cfc-frontend/pages/cognitive-test/logic-test.vue

@@ -314,7 +314,7 @@ export default {
 .intro-info {
 .intro-info {
   width: 100%;
   width: 100%;
   background: rgba(255, 255, 255, 0.06);
   background: rgba(255, 255, 255, 0.06);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 20rpx 30rpx;
   padding: 20rpx 30rpx;
   margin-bottom: 60rpx;
   margin-bottom: 60rpx;
   box-sizing: border-box;
   box-sizing: border-box;
@@ -358,14 +358,14 @@ export default {
 .timer-track {
 .timer-track {
   height: 12rpx;
   height: 12rpx;
   background: rgba(255, 255, 255, 0.12);
   background: rgba(255, 255, 255, 0.12);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
   margin-bottom: 50rpx;
   margin-bottom: 50rpx;
 }
 }
 .timer-fill {
 .timer-fill {
   height: 100%;
   height: 100%;
   background: linear-gradient(90deg, $accent-gold, $accent-gold-deep);
   background: linear-gradient(90deg, $accent-gold, $accent-gold-deep);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   transition: width 0.1s linear;
   transition: width 0.1s linear;
 }
 }
 .question-card {
 .question-card {
@@ -447,7 +447,7 @@ export default {
 .result-info {
 .result-info {
   width: 100%;
   width: 100%;
   background: rgba(255, 255, 255, 0.06);
   background: rgba(255, 255, 255, 0.06);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 20rpx 30rpx;
   padding: 20rpx 30rpx;
   margin-bottom: 60rpx;
   margin-bottom: 60rpx;
   box-sizing: border-box;
   box-sizing: border-box;
@@ -486,7 +486,7 @@ export default {
 .btn {
 .btn {
   width: 100%;
   width: 100%;
   padding: 26rpx 0;
   padding: 26rpx 0;
-  border-radius: 50rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;

+ 7 - 7
cfc-frontend/pages/cognitive-test/memory-test.vue

@@ -321,7 +321,7 @@ export default {
   width: 480rpx;
   width: 480rpx;
   height: 96rpx;
   height: 96rpx;
   line-height: 96rpx;
   line-height: 96rpx;
-  border-radius: 48rpx;
+  border-radius: 24rpx;
   background: linear-gradient(135deg, $dim-wisdom 0%, $dim-wisdom-light 100%);
   background: linear-gradient(135deg, $dim-wisdom 0%, $dim-wisdom-light 100%);
   color: $app-surface;
   color: $app-surface;
   font-size: calc(34rpx * var(--font-scale, 1));
   font-size: calc(34rpx * var(--font-scale, 1));
@@ -343,7 +343,7 @@ export default {
   width: 480rpx;
   width: 480rpx;
   height: 96rpx;
   height: 96rpx;
   line-height: 96rpx;
   line-height: 96rpx;
-  border-radius: 48rpx;
+  border-radius: 24rpx;
   background: transparent;
   background: transparent;
   color: $indigo-light;
   color: $indigo-light;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
@@ -429,14 +429,14 @@ export default {
 .progress-track {
 .progress-track {
   width: 480rpx;
   width: 480rpx;
   height: 8rpx;
   height: 8rpx;
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   background: rgba(255, 255, 255, 0.1);
   background: rgba(255, 255, 255, 0.1);
   margin-top: 24rpx;
   margin-top: 24rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .progress-fill {
 .progress-fill {
   height: 100%;
   height: 100%;
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   background: linear-gradient(90deg, $dim-wisdom, $dim-wisdom-light);
   background: linear-gradient(90deg, $dim-wisdom, $dim-wisdom-light);
   transition: width 0.3s ease;
   transition: width 0.3s ease;
 }
 }
@@ -478,14 +478,14 @@ export default {
 .timer-bar-wrap {
 .timer-bar-wrap {
   width: 480rpx;
   width: 480rpx;
   height: 12rpx;
   height: 12rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   background: rgba(255, 255, 255, 0.1);
   background: rgba(255, 255, 255, 0.1);
   overflow: hidden;
   overflow: hidden;
   margin-top: 60rpx;
   margin-top: 60rpx;
 }
 }
 .timer-bar {
 .timer-bar {
   height: 100%;
   height: 100%;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   background: linear-gradient(90deg, $dim-wisdom, $dim-wisdom-light);
   background: linear-gradient(90deg, $dim-wisdom, $dim-wisdom-light);
   transition: width 0.05s linear;
   transition: width 0.05s linear;
 }
 }
@@ -536,7 +536,7 @@ export default {
 .pad-key {
 .pad-key {
   width: 180rpx;
   width: 180rpx;
   height: 108rpx;
   height: 108rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   background: rgba(255, 255, 255, 0.06);
   background: rgba(255, 255, 255, 0.06);
   border: 2rpx solid rgba(255, 255, 255, 0.08);
   border: 2rpx solid rgba(255, 255, 255, 0.08);
   display: flex;
   display: flex;

+ 2 - 2
cfc-frontend/pages/cognitive-test/perception-test.vue

@@ -292,7 +292,7 @@ export default {
   width: 480rpx;
   width: 480rpx;
   height: 92rpx;
   height: 92rpx;
   line-height: 92rpx;
   line-height: 92rpx;
-  border-radius: 46rpx;
+  border-radius: 24rpx;
   border: none;
   border: none;
   margin-top: 60rpx;
   margin-top: 60rpx;
   padding: 0;
   padding: 0;
@@ -309,7 +309,7 @@ export default {
   width: 480rpx;
   width: 480rpx;
   height: 92rpx;
   height: 92rpx;
   line-height: 92rpx;
   line-height: 92rpx;
-  border-radius: 46rpx;
+  border-radius: 24rpx;
   border: 2rpx solid rgba(255,255,255,0.25);
   border: 2rpx solid rgba(255,255,255,0.25);
   margin-top: 32rpx;
   margin-top: 32rpx;
   padding: 0;
   padding: 0;

+ 5 - 5
cfc-frontend/pages/cognitive-test/spatial-test.vue

@@ -321,7 +321,7 @@ export default {
 .rule-list {
 .rule-list {
   width: 100%;
   width: 100%;
   background: rgba(255, 255, 255, 0.06);
   background: rgba(255, 255, 255, 0.06);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 30rpx;
   padding: 30rpx;
   margin-bottom: 80rpx;
   margin-bottom: 80rpx;
   box-sizing: border-box;
   box-sizing: border-box;
@@ -367,14 +367,14 @@ export default {
   width: 100%;
   width: 100%;
   height: 12rpx;
   height: 12rpx;
   background: rgba(255, 255, 255, 0.1);
   background: rgba(255, 255, 255, 0.1);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
   margin-bottom: 80rpx;
   margin-bottom: 80rpx;
 }
 }
 .timer-bar-fill {
 .timer-bar-fill {
   height: 100%;
   height: 100%;
   background: linear-gradient(90deg, $status-info, #60A5FA);
   background: linear-gradient(90deg, $status-info, #60A5FA);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   transition: width 1s linear;
   transition: width 1s linear;
 }
 }
 .question-box {
 .question-box {
@@ -481,7 +481,7 @@ export default {
   padding: 10rpx 32rpx;
   padding: 10rpx 32rpx;
   background: rgba(59, 130, 246, 0.15);
   background: rgba(59, 130, 246, 0.15);
   border: 2rpx solid rgba(59, 130, 246, 0.5);
   border: 2rpx solid rgba(59, 130, 246, 0.5);
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   margin-bottom: 80rpx;
   margin-bottom: 80rpx;
 }
 }
 .dimension-name {
 .dimension-name {
@@ -494,7 +494,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 96rpx;
   height: 96rpx;
   line-height: 96rpx;
   line-height: 96rpx;
-  border-radius: 48rpx;
+  border-radius: 24rpx;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   text-align: center;
   text-align: center;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;

+ 6 - 6
cfc-frontend/pages/cognitive-test/speed-test.vue

@@ -376,7 +376,7 @@ export default {
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
   font-size: calc(34rpx * var(--font-scale, 1));
   font-size: calc(34rpx * var(--font-scale, 1));
-  border-radius: 50rpx;
+  border-radius: 24rpx;
   border: none;
   border: none;
   margin-top: 20rpx;
   margin-top: 20rpx;
 }
 }
@@ -394,7 +394,7 @@ export default {
   background: transparent;
   background: transparent;
   color: $brand-primary;
   color: $brand-primary;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
-  border-radius: 50rpx;
+  border-radius: 24rpx;
   border: 2rpx solid $brand-primary;
   border: 2rpx solid $brand-primary;
   margin-top: 30rpx;
   margin-top: 30rpx;
 }
 }
@@ -423,13 +423,13 @@ export default {
   width: 100%;
   width: 100%;
   height: 10rpx;
   height: 10rpx;
   background: rgba(255, 255, 255, 0.12);
   background: rgba(255, 255, 255, 0.12);
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 
 
 .timer-fill {
 .timer-fill {
   height: 100%;
   height: 100%;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(90deg, $brand-primary, $brand-primary-light);
   transition: width 0.1s linear;
   transition: width 0.1s linear;
 }
 }
@@ -485,7 +485,7 @@ export default {
   justify-content: center;
   justify-content: center;
   background: $game-ink;
   background: $game-ink;
   border: 2rpx solid transparent;
   border: 2rpx solid transparent;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
 }
 }
 
 
@@ -568,7 +568,7 @@ export default {
   color: $brand-primary;
   color: $brand-primary;
   background: rgba(249, 115, 22, 0.12);
   background: rgba(249, 115, 22, 0.12);
   border: 2rpx solid rgba(249, 115, 22, 0.4);
   border: 2rpx solid rgba(249, 115, 22, 0.4);
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   padding: 12rpx 40rpx;
   padding: 12rpx 40rpx;
   margin-bottom: 50rpx;
   margin-bottom: 50rpx;
 }
 }

+ 1 - 1
cfc-frontend/pages/dan-assessment/comparison.vue

@@ -182,7 +182,7 @@ export default {
 .filter-item:last-child { margin-right: 0; }
 .filter-item:last-child { margin-right: 0; }
 
 
 /* 对比区 */
 /* 对比区 */
-.comparison-wrap { background: $app-surface; border-radius: 20rpx; padding: 24rpx; margin-bottom: 24rpx; box-shadow: 0 4rpx 16rpx rgba(30,41,59,0.06); }
+.comparison-wrap { background: $app-surface; border-radius: 24rpx; padding: 24rpx; margin-bottom: 24rpx; box-shadow: 0 4rpx 16rpx rgba(30,41,59,0.06); }
 .section-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; color: $uni-text-color; margin-bottom: 20rpx; }
 .section-title { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; color: $uni-text-color; margin-bottom: 20rpx; }
 .info-item { display: flex; align-items: center; margin-bottom: 16rpx; }
 .info-item { display: flex; align-items: center; margin-bottom: 16rpx; }
 .label { font-size: calc(24rpx * var(--font-scale, 1)); color: $uni-text-color-secondary; margin-right: 12rpx; }
 .label { font-size: calc(24rpx * var(--font-scale, 1)); color: $uni-text-color-secondary; margin-right: 12rpx; }

+ 13 - 13
cfc-frontend/pages/dan-assessment/report-result.vue

@@ -664,8 +664,8 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
   background: linear-gradient(160deg, $dim-wisdom-deep 0%, $facade-violet-deep 55%, $facade-violet 100%);
   background: linear-gradient(160deg, $dim-wisdom-deep 0%, $facade-violet-deep 55%, $facade-violet 100%);
   padding: 48rpx 36rpx 44rpx;
   padding: 48rpx 36rpx 44rpx;
   overflow: hidden;
   overflow: hidden;
-  border-bottom-left-radius: 36rpx;
-  border-bottom-right-radius: 36rpx;
+  border-bottom-left-radius: 24rpx;
+  border-bottom-right-radius: 24rpx;
 }
 }
 .hero-bg-circle { position: absolute; border-radius: 50%; background: rgba(255,255,255,0.06); }
 .hero-bg-circle { position: absolute; border-radius: 50%; background: rgba(255,255,255,0.06); }
 .hero-bg-circle-1 { width: 380rpx; height: 380rpx; right: -120rpx; top: -140rpx; }
 .hero-bg-circle-1 { width: 380rpx; height: 380rpx; right: -120rpx; top: -140rpx; }
@@ -711,7 +711,7 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
 }
 }
 .hero-pct-marker {
 .hero-pct-marker {
   position: absolute; top: -6rpx; width: 4rpx; height: 26rpx;
   position: absolute; top: -6rpx; width: 4rpx; height: 26rpx;
-  background: $app-surface; border-radius: 2rpx; transform: translateX(-2rpx);
+  background: $app-surface; border-radius: 8rpx; transform: translateX(-2rpx);
 }
 }
 .hero-pct-foot { margin-top: 12rpx; text-align: center; }
 .hero-pct-foot { margin-top: 12rpx; text-align: center; }
 .hero-pct-foot-text { font-size: calc(22rpx * var(--font-scale, 1)); color: rgba(255,255,255,0.85); }
 .hero-pct-foot-text { font-size: calc(22rpx * var(--font-scale, 1)); color: rgba(255,255,255,0.85); }
@@ -720,14 +720,14 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
 .body { padding: 28rpx 24rpx 0; }
 .body { padding: 28rpx 24rpx 0; }
 .card {
 .card {
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 28rpx 26rpx;
   padding: 28rpx 26rpx;
   margin-bottom: 22rpx;
   margin-bottom: 22rpx;
   box-shadow: 0 4rpx 16rpx rgba(99,102,241,0.06);
   box-shadow: 0 4rpx 16rpx rgba(99,102,241,0.06);
 }
 }
 .card-title-row { display: flex; align-items: baseline; margin-bottom: 24rpx; }
 .card-title-row { display: flex; align-items: baseline; margin-bottom: 24rpx; }
 .card-title-bar {
 .card-title-bar {
-  width: 8rpx; height: 30rpx; border-radius: 4rpx;
+  width: 8rpx; height: 30rpx; border-radius: 8rpx;
   background: linear-gradient(180deg, $dim-wisdom, $facade-violet);
   background: linear-gradient(180deg, $dim-wisdom, $facade-violet);
   margin-right: 12rpx; align-self: center;
   margin-right: 12rpx; align-self: center;
 }
 }
@@ -757,7 +757,7 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
 .metric-fill-warn { background: linear-gradient(90deg, $c-rpt-orange, $brand-primary-dark); }
 .metric-fill-warn { background: linear-gradient(90deg, $c-rpt-orange, $brand-primary-dark); }
 .metric-ref-line {
 .metric-ref-line {
   position: absolute; top: -4rpx; width: 2rpx; height: 24rpx;
   position: absolute; top: -4rpx; width: 2rpx; height: 24rpx;
-  background: $c-rpt-gray-line; border-radius: 1rpx;
+  background: $c-rpt-gray-line; border-radius: 8rpx;
 }
 }
 /* 非数值指标行(名称 + 取值,无进度条) */
 /* 非数值指标行(名称 + 取值,无进度条) */
 .metric-plain-row {
 .metric-plain-row {
@@ -772,14 +772,14 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
 .bf-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10rpx; }
 .bf-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10rpx; }
 .bf-name { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-gray-700; font-weight: 500; }
 .bf-name { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-gray-700; font-weight: 500; }
 .bf-value { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-violet-deep; }
 .bf-value { font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-violet-deep; }
-.bf-track { position: relative; height: 14rpx; border-radius: 7rpx; background: $c-rpt-violet-grid; }
-.bf-fill { height: 100%; border-radius: 7rpx; }
+.bf-track { position: relative; height: 14rpx; border-radius: 8rpx; background: $c-rpt-violet-grid; }
+.bf-fill { height: 100%; border-radius: 8rpx; }
 .bf-neutral { background: linear-gradient(90deg, $c-rpt-violet-soft, $facade-violet); }
 .bf-neutral { background: linear-gradient(90deg, $c-rpt-violet-soft, $facade-violet); }
 .bf-high { background: linear-gradient(90deg, $status-success-light-2, $status-success); }
 .bf-high { background: linear-gradient(90deg, $status-success-light-2, $status-success); }
 .bf-low { background: linear-gradient(90deg, $c-rpt-yellow, $dim-wealth); }
 .bf-low { background: linear-gradient(90deg, $c-rpt-yellow, $dim-wealth); }
 .bf-avg-line {
 .bf-avg-line {
   position: absolute; top: -5rpx; left: 60%; width: 2rpx; height: 24rpx;
   position: absolute; top: -5rpx; left: 60%; width: 2rpx; height: 24rpx;
-  background: $facade-text-gray-400; border-radius: 1rpx;
+  background: $facade-text-gray-400; border-radius: 8rpx;
 }
 }
 .bf-hint { display: block; font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-gray-400; margin-top: 6rpx; }
 .bf-hint { display: block; font-size: calc(20rpx * var(--font-scale, 1)); color: $facade-text-gray-400; margin-top: 6rpx; }
 
 
@@ -788,13 +788,13 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
 .emo-row:last-child { margin-bottom: 4rpx; }
 .emo-row:last-child { margin-bottom: 4rpx; }
 .emo-chip {
 .emo-chip {
   display: flex; align-items: baseline;
   display: flex; align-items: baseline;
-  background: $facade-violet-tint-2; border-radius: 14rpx;
+  background: $facade-violet-tint-2; border-radius: 16rpx;
   padding: 10rpx 18rpx; margin-right: 18rpx; flex-shrink: 0;
   padding: 10rpx 18rpx; margin-right: 18rpx; flex-shrink: 0;
 }
 }
 .emo-name { font-size: calc(24rpx * var(--font-scale, 1)); color: $c-rpt-violet-text; margin-right: 12rpx; }
 .emo-name { font-size: calc(24rpx * var(--font-scale, 1)); color: $c-rpt-violet-text; margin-right: 12rpx; }
 .emo-value { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-violet-deep; }
 .emo-value { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 700; color: $facade-violet-deep; }
-.emo-track { flex: 1; height: 12rpx; border-radius: 6rpx; background: $c-rpt-violet-grid; overflow: hidden; }
-.emo-fill { height: 100%; border-radius: 6rpx; background: linear-gradient(90deg, $facade-violet-light, $facade-violet-deep); }
+.emo-track { flex: 1; height: 12rpx; border-radius: 8rpx; background: $c-rpt-violet-grid; overflow: hidden; }
+.emo-fill { height: 100%; border-radius: 8rpx; background: linear-gradient(90deg, $facade-violet-light, $facade-violet-deep); }
 
 
 /* ==================== 雷达图容器 ==================== */
 /* ==================== 雷达图容器 ==================== */
 .radar-wrap {
 .radar-wrap {
@@ -807,7 +807,7 @@ $c-rpt-mask-ink:     #000;    // 遮罩渐变异色(mask-image)
 /* ==================== 情绪总分行 ==================== */
 /* ==================== 情绪总分行 ==================== */
 .emo-summary {
 .emo-summary {
   background: $facade-violet-tint-2;
   background: $facade-violet-tint-2;
-  border-radius: 14rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   margin-bottom: 20rpx;
   margin-bottom: 20rpx;
 }
 }

+ 9 - 9
cfc-frontend/pages/diet/food-query.vue

@@ -474,7 +474,7 @@ export default {
 .member-tab {
 .member-tab {
   flex-shrink: 0;
   flex-shrink: 0;
   padding: 8rpx 20rpx;
   padding: 8rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
   color: $facade-text-body;
   color: $facade-text-body;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
@@ -497,7 +497,7 @@ export default {
   flex: 1;
   flex: 1;
   padding: 12rpx 0;
   padding: 12rpx 0;
   text-align: center;
   text-align: center;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
   color: $facade-text-body;
   color: $facade-text-body;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
@@ -516,7 +516,7 @@ export default {
 .search-input {
 .search-input {
   flex: 1;
   flex: 1;
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   padding: 16rpx 24rpx;
   padding: 16rpx 24rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   background-color: $facade-fill-ghost;
   background-color: $facade-fill-ghost;
@@ -526,7 +526,7 @@ export default {
   padding: 16rpx 32rpx;
   padding: 16rpx 32rpx;
   background-color: $dim-body;
   background-color: $dim-body;
   color: $app-surface;
   color: $app-surface;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
 }
 }
 
 
@@ -548,7 +548,7 @@ export default {
 .tab-item {
 .tab-item {
   padding: 12rpx 24rpx;
   padding: 12rpx 24rpx;
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
   background-color: $app-surface;
   background-color: $app-surface;
@@ -568,7 +568,7 @@ export default {
 .filter-item {
 .filter-item {
   padding: 12rpx 24rpx;
   padding: 12rpx 24rpx;
   border: 1rpx solid $facade-border-soft;
   border: 1rpx solid $facade-border-soft;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
   background-color: $app-surface;
   background-color: $app-surface;
@@ -624,7 +624,7 @@ export default {
 .member-score {
 .member-score {
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   padding: 4rpx 12rpx;
   padding: 4rpx 12rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
 }
 }
 .score-green {
 .score-green {
@@ -662,7 +662,7 @@ export default {
 .ingredient-badge {
 .ingredient-badge {
   width: 36rpx;
   width: 36rpx;
   height: 36rpx;
   height: 36rpx;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -727,7 +727,7 @@ export default {
 .score-value.bad { color: $status-danger; }
 .score-value.bad { color: $status-danger; }
 .status-badge {
 .status-badge {
   padding: 6rpx 16rpx;
   padding: 6rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   font-weight: 500;
   font-weight: 500;
 }
 }

+ 8 - 8
cfc-frontend/pages/diet/index.vue

@@ -414,7 +414,7 @@ export default {
 }
 }
 .dining-hero {
 .dining-hero {
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   padding: 36rpx 32rpx;
   padding: 36rpx 32rpx;
   margin-bottom: 24rpx;
   margin-bottom: 24rpx;
   box-shadow: 0 8rpx 32rpx rgba(255, 140, 66, 0.25);
   box-shadow: 0 8rpx 32rpx rgba(255, 140, 66, 0.25);
@@ -433,7 +433,7 @@ export default {
 .hero-meal {
 .hero-meal {
   flex: 1; margin: 0 8rpx;
   flex: 1; margin: 0 8rpx;
   background: rgba(255,255,255,0.18);
   background: rgba(255,255,255,0.18);
-  border-radius: 20rpx; padding: 20rpx 8rpx;
+  border-radius: 24rpx; padding: 20rpx 8rpx;
   display: flex; flex-direction: column; align-items: center;
   display: flex; flex-direction: column; align-items: center;
 }
 }
 .hero-meal:first-child { margin-left: 0; }
 .hero-meal:first-child { margin-left: 0; }
@@ -470,7 +470,7 @@ export default {
   padding: 28rpx 28rpx 0;
   padding: 28rpx 28rpx 0;
 }
 }
 .card-basket-icon {
 .card-basket-icon {
-  width: 64rpx; height: 64rpx; border-radius: 18rpx;
+  width: 64rpx; height: 64rpx; border-radius: 16rpx;
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   display: flex; align-items: center; justify-content: center;
   display: flex; align-items: center; justify-content: center;
   margin-right: 16rpx; flex-shrink: 0;
   margin-right: 16rpx; flex-shrink: 0;
@@ -494,7 +494,7 @@ export default {
 }
 }
 .action-btn {
 .action-btn {
   padding: 14rpx 24rpx;
   padding: 14rpx 24rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   background: $facade-fill-2;
   background: $facade-fill-2;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
@@ -541,7 +541,7 @@ export default {
 .ingredient-badge {
 .ingredient-badge {
   width: 40rpx;
   width: 40rpx;
   height: 40rpx;
   height: 40rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -718,7 +718,7 @@ export default {
   width: 100%;
   width: 100%;
   max-height: 80vh;
   max-height: 80vh;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 32rpx 32rpx 0 0;
+  border-radius: 24rpx 24rpx 0 0;
   padding: 32rpx;
   padding: 32rpx;
   z-index: 1;
   z-index: 1;
 }
 }
@@ -749,7 +749,7 @@ export default {
 }
 }
 .search-input {
 .search-input {
   border: 1rpx solid $facade-hairline-2;
   border: 1rpx solid $facade-hairline-2;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   padding: 20rpx 28rpx;
   padding: 20rpx 28rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   background: $facade-fill-page;
   background: $facade-fill-page;
@@ -773,7 +773,7 @@ export default {
   color: $dim-body;
   color: $dim-body;
   background: $warm-peach;
   background: $warm-peach;
   padding: 6rpx 16rpx;
   padding: 6rpx 16rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 
 
 /* 底部留白 */
 /* 底部留白 */

+ 3 - 3
cfc-frontend/pages/diet/meal-config.vue

@@ -248,7 +248,7 @@ export default {
   padding: 24rpx 30rpx;
   padding: 24rpx 30rpx;
   border-bottom: 1rpx solid $uni-border-color-light;
   border-bottom: 1rpx solid $uni-border-color-light;
 }
 }
-.meal-icon-wrap { width: 72rpx; height: 72rpx; border-radius: 22rpx; display: flex; align-items: center; justify-content: center; margin-right: 16rpx; }
+.meal-icon-wrap { width: 72rpx; height: 72rpx; border-radius: 24rpx; display: flex; align-items: center; justify-content: center; margin-right: 16rpx; }
 .meal-icon-breakfast { background: linear-gradient(135deg, $status-info-light, $tint-sky-line); }
 .meal-icon-breakfast { background: linear-gradient(135deg, $status-info-light, $tint-sky-line); }
 .meal-icon-lunch     { background: linear-gradient(135deg, $status-warning, $accent-amber-light); }
 .meal-icon-lunch     { background: linear-gradient(135deg, $status-warning, $accent-amber-light); }
 .meal-icon-dinner    { background: linear-gradient(135deg, $facade-violet-light, $accent-violet-300); }
 .meal-icon-dinner    { background: linear-gradient(135deg, $facade-violet-light, $accent-violet-300); }
@@ -267,7 +267,7 @@ export default {
 .member-item {
 .member-item {
   box-sizing: border-box; position: relative;
   box-sizing: border-box; position: relative;
   display: flex; align-items: center;
   display: flex; align-items: center;
-  padding: 16rpx 24rpx; border: 2rpx solid $uni-border-color-light; border-radius: 20rpx;
+  padding: 16rpx 24rpx; border: 2rpx solid $uni-border-color-light; border-radius: 24rpx;
   background: $app-surface; min-width: 160rpx;
   background: $app-surface; min-width: 160rpx;
   transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
   transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
 }
 }
@@ -336,7 +336,7 @@ export default {
   justify-content: center;
   justify-content: center;
   background-color: $app-surface;
   background-color: $app-surface;
   border: 2rpx dashed $brand-primary;
   border: 2rpx dashed $brand-primary;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx 30rpx;
   padding: 24rpx 30rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
   transition: background-color 0.2s ease;
   transition: background-color 0.2s ease;

+ 2 - 2
cfc-frontend/pages/diet/preferences.vue

@@ -401,11 +401,11 @@ $c-dp-footer-line: #FFE9D4; // 底部操作条描边
 /* ===== 进度条 ===== */
 /* ===== 进度条 ===== */
 .progress-bar { padding: 30rpx 32rpx 10rpx; }
 .progress-bar { padding: 30rpx 32rpx 10rpx; }
 .progress-track {
 .progress-track {
-  height: 12rpx; background: $c-dp-track; border-radius: 6rpx; overflow: hidden;
+  height: 12rpx; background: $c-dp-track; border-radius: 8rpx; overflow: hidden;
 }
 }
 .progress-fill {
 .progress-fill {
   height: 100%; background: linear-gradient(90deg, $dim-body, $dim-body-light);
   height: 100%; background: linear-gradient(90deg, $dim-body, $dim-body-light);
-  border-radius: 6rpx; transition: width 0.3s ease;
+  border-radius: 8rpx; transition: width 0.3s ease;
 }
 }
 .progress-labels { display: flex; justify-content: space-between; margin-top: 12rpx; }
 .progress-labels { display: flex; justify-content: space-between; margin-top: 12rpx; }
 .progress-label { font-size: calc(22rpx * var(--font-scale, 1)); color: $c-dp-label; flex: 1; text-align: center; }
 .progress-label { font-size: calc(22rpx * var(--font-scale, 1)); color: $c-dp-label; flex: 1; text-align: center; }

+ 7 - 7
cfc-frontend/pages/diet/recommendation.vue

@@ -290,7 +290,7 @@ export default {
 .card {
 .card {
   display: flex;
   display: flex;
   background-color: $app-surface;
   background-color: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   overflow: hidden;
   overflow: hidden;
@@ -319,7 +319,7 @@ export default {
 }
 }
 .status-badge {
 .status-badge {
   padding: 8rpx 20rpx;
   padding: 8rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
 }
 }
 .status-pending { background: $tint-warm-soft; color: $brand-primary-deep; }
 .status-pending { background: $tint-warm-soft; color: $brand-primary-deep; }
@@ -333,13 +333,13 @@ export default {
 }
 }
 .meal-section {
 .meal-section {
   background-color: $app-surface;
   background-color: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
   overflow: hidden;
   overflow: hidden;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
 }
 }
 .meal-header { display: flex; align-items: center; padding: 24rpx 30rpx; border-bottom: 1rpx solid #FDE8D0; }
 .meal-header { display: flex; align-items: center; padding: 24rpx 30rpx; border-bottom: 1rpx solid #FDE8D0; }
-.meal-icon-wrap { width: 64rpx; height: 64rpx; border-radius: 20rpx; display: flex; align-items: center; justify-content: center; margin-right: 16rpx; }
+.meal-icon-wrap { width: 64rpx; height: 64rpx; border-radius: 24rpx; display: flex; align-items: center; justify-content: center; margin-right: 16rpx; }
 .meal-icon-breakfast { background: linear-gradient(135deg, $dim-body-light, #FFD48A); }
 .meal-icon-breakfast { background: linear-gradient(135deg, $dim-body-light, #FFD48A); }
 .meal-icon-lunch     { background: linear-gradient(135deg, $status-warning, $accent-amber-light); }
 .meal-icon-lunch     { background: linear-gradient(135deg, $status-warning, $accent-amber-light); }
 .meal-icon-dinner    { background: linear-gradient(135deg, $facade-violet-light, $accent-violet-300); }
 .meal-icon-dinner    { background: linear-gradient(135deg, $facade-violet-light, $accent-violet-300); }
@@ -360,7 +360,7 @@ export default {
 .dish-list {
 .dish-list {
   padding: 20rpx 30rpx;
   padding: 20rpx 30rpx;
 }
 }
-.dish-item { padding: 24rpx; border-radius: 20rpx; background: $flat-bg; margin-bottom: 16rpx; }
+.dish-item { padding: 24rpx; border-radius: 24rpx; background: $flat-bg; margin-bottom: 16rpx; }
 .dish-item:last-child { margin-bottom: 0; }
 .dish-item:last-child { margin-bottom: 0; }
 .dish-header {
 .dish-header {
   display: flex;
   display: flex;
@@ -378,7 +378,7 @@ export default {
 .ingredient-tag {
 .ingredient-tag {
   padding: 6rpx 16rpx;
   padding: 6rpx 16rpx;
   background-color: $facade-fill-2;
   background-color: $facade-fill-2;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
 }
 }
@@ -401,7 +401,7 @@ export default {
 .nutrition-item {
 .nutrition-item {
   text-align: center;
   text-align: center;
 }
 }
-.nutrition-card .card-body { background: $flat-bg; border-radius: 0 0 20rpx 20rpx; }
+.nutrition-card .card-body { background: $flat-bg; border-radius: 0 0 24rpx 24rpx; }
 .nutrition-value { font-size: calc(40rpx * var(--font-scale, 1)); font-weight: 700; color: $brand-primary-deep; display: block; }
 .nutrition-value { font-size: calc(40rpx * var(--font-scale, 1)); font-weight: 700; color: $brand-primary-deep; display: block; }
 .nutrition-unit {
 .nutrition-unit {
   font-size: calc(22rpx * var(--font-scale, 1));
   font-size: calc(22rpx * var(--font-scale, 1));

+ 4 - 4
cfc-frontend/pages/diet/record-detail.vue

@@ -201,7 +201,7 @@ export default {
 }
 }
 .photo-section {
 .photo-section {
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .detail-photo {
 .detail-photo {
@@ -212,7 +212,7 @@ export default {
 .card {
 .card {
   display: flex;
   display: flex;
   background-color: $app-surface;
   background-color: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 30rpx;
   margin-bottom: 30rpx;
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
   overflow: hidden;
   overflow: hidden;
@@ -277,7 +277,7 @@ export default {
 .confidence-bar {
 .confidence-bar {
   height: 8rpx;
   height: 8rpx;
   background-color: $mat-blue-base;
   background-color: $mat-blue-base;
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   flex: 1;
   flex: 1;
 }
 }
 .confidence-text {
 .confidence-text {
@@ -293,7 +293,7 @@ export default {
 .food-tag {
 .food-tag {
   padding: 12rpx 24rpx;
   padding: 12rpx 24rpx;
   background-color: $flat-card;
   background-color: $flat-card;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   color: $dim-body;
   color: $dim-body;
 }
 }

+ 4 - 4
cfc-frontend/pages/diet/records.vue

@@ -427,7 +427,7 @@ export default {
 
 
 /* 通用卡片 */
 /* 通用卡片 */
 .card {
 .card {
-  display: flex; background: $app-surface; border-radius: 20rpx; margin-bottom: 24rpx;
+  display: flex; background: $app-surface; border-radius: 24rpx; margin-bottom: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.05); overflow: hidden;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.05); overflow: hidden;
 }
 }
 .card-accent { width: 8rpx; background: linear-gradient(180deg, $dim-body, $dim-body-light); flex-shrink: 0; }
 .card-accent { width: 8rpx; background: linear-gradient(180deg, $dim-body, $dim-body-light); flex-shrink: 0; }
@@ -443,7 +443,7 @@ export default {
 
 
 /* 食材提示 */
 /* 食材提示 */
 .alert-card {
 .alert-card {
-  background: $app-surface; border-radius: 20rpx; margin-bottom: 24rpx;
+  background: $app-surface; border-radius: 24rpx; margin-bottom: 24rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.05); overflow: hidden;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.05); overflow: hidden;
 }
 }
 .alert-header { display: flex; align-items: center; gap: 12rpx; padding: 24rpx 28rpx 16rpx; border-bottom: 1rpx solid $fortune-1-tint; }
 .alert-header { display: flex; align-items: center; gap: 12rpx; padding: 24rpx 28rpx 16rpx; border-bottom: 1rpx solid $fortune-1-tint; }
@@ -454,7 +454,7 @@ export default {
 .alert-label.over { color: $status-danger-strong-2; }
 .alert-label.over { color: $status-danger-strong-2; }
 .alert-label.under { color: $mat-blue-strong; }
 .alert-label.under { color: $mat-blue-strong; }
 .alert-tags { display: flex; flex-wrap: wrap; gap: 12rpx; }
 .alert-tags { display: flex; flex-wrap: wrap; gap: 12rpx; }
-.alert-tag { display: flex; align-items: center; gap: 6rpx; padding: 8rpx 16rpx; border-radius: 20rpx; font-size: calc(24rpx * var(--font-scale, 1)); }
+.alert-tag { display: flex; align-items: center; gap: 6rpx; padding: 8rpx 16rpx; border-radius: 24rpx; font-size: calc(24rpx * var(--font-scale, 1)); }
 .tag-over { background: $fortune-0-tint; color: $status-danger-strong-2; }
 .tag-over { background: $fortune-0-tint; color: $status-danger-strong-2; }
 .tag-under { background: $mat-blue-tint; color: $mat-blue-strong; }
 .tag-under { background: $mat-blue-tint; color: $mat-blue-strong; }
 .tag-count { font-size: calc(20rpx * var(--font-scale, 1)); opacity: 0.8; }
 .tag-count { font-size: calc(20rpx * var(--font-scale, 1)); opacity: 0.8; }
@@ -489,7 +489,7 @@ export default {
   box-shadow: 0 2rpx 8rpx rgba(255,140,66,0.06); border-left: 6rpx solid $dim-body;
   box-shadow: 0 2rpx 8rpx rgba(255,140,66,0.06); border-left: 6rpx solid $dim-body;
 }
 }
 .record-card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10rpx; }
 .record-card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10rpx; }
-.meal-badge { padding: 6rpx 18rpx; border-radius: 20rpx; font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 600; }
+.meal-badge { padding: 6rpx 18rpx; border-radius: 24rpx; font-size: calc(24rpx * var(--font-scale, 1)); font-weight: 600; }
 .meal-breakfast { background: $fortune-1-tint; color: $mat-orange-strong; }
 .meal-breakfast { background: $fortune-1-tint; color: $mat-orange-strong; }
 .meal-lunch     { background: $mat-amber-tint; color: $mat-orange-700; }
 .meal-lunch     { background: $mat-amber-tint; color: $mat-orange-700; }
 .meal-dinner    { background: $fortune-3-tint; color: $fortune-3-ink; }
 .meal-dinner    { background: $fortune-3-tint; color: $fortune-3-ink; }

+ 14 - 14
cfc-frontend/pages/discover-detail/product-detail/product-detail.vue

@@ -887,7 +887,7 @@ export default {
   background: $uni-primary-pale;
   background: $uni-primary-pale;
   border: 1rpx solid $brand-primary-light-2;
   border: 1rpx solid $brand-primary-light-2;
   padding: 2rpx 10rpx;
   padding: 2rpx 10rpx;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   font-weight: normal;
   font-weight: normal;
 }
 }
 .price-original {
 .price-original {
@@ -919,7 +919,7 @@ export default {
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   color: #fff;
   color: #fff;
   background: $brand-primary;
   background: $brand-primary;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   padding: 2rpx 10rpx;
   padding: 2rpx 10rpx;
 }
 }
 .special-deal-block {
 .special-deal-block {
@@ -956,13 +956,13 @@ export default {
   margin-top: 12rpx;
   margin-top: 12rpx;
   height: 12rpx;
   height: 12rpx;
   background: $brand-primary-tint-2;
   background: $brand-primary-tint-2;
-  border-radius: 6rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .special-deal-progress-bar {
 .special-deal-progress-bar {
   height: 100%;
   height: 100%;
   background: linear-gradient(90deg, $brand-primary, #fb923c);
   background: linear-gradient(90deg, $brand-primary, #fb923c);
-  border-radius: 6rpx;
+  border-radius: 8rpx;
 }
 }
 .gift-tag {
 .gift-tag {
   display: inline-block;
   display: inline-block;
@@ -984,7 +984,7 @@ export default {
   color: $facade-text-muted;
   color: $facade-text-muted;
   background: $facade-fill-2;
   background: $facade-fill-2;
   padding: 4rpx 16rpx;
   padding: 4rpx 16rpx;
-  border-radius: 4rpx;
+  border-radius: 8rpx;
   margin-right: 12rpx;
   margin-right: 12rpx;
   margin-bottom: 8rpx;
   margin-bottom: 8rpx;
 }
 }
@@ -1024,7 +1024,7 @@ export default {
 .bundle-section { background: $app-surface; margin: 20rpx; border-radius: 16rpx; padding: 24rpx; }
 .bundle-section { background: $app-surface; margin: 20rpx; border-radius: 16rpx; padding: 24rpx; }
 .bundle-item { display: flex; align-items: center; padding: 12rpx 0; border-bottom: 1rpx solid $facade-fill-2; }
 .bundle-item { display: flex; align-items: center; padding: 12rpx 0; border-bottom: 1rpx solid $facade-fill-2; }
 .bundle-item:last-child { border-bottom: none; }
 .bundle-item:last-child { border-bottom: none; }
-.bundle-item-img { width: 80rpx; height: 80rpx; border-radius: 12rpx; margin-right: 16rpx; flex-shrink: 0; background: $facade-fill-cool; }
+.bundle-item-img { width: 80rpx; height: 80rpx; border-radius: 16rpx; margin-right: 16rpx; flex-shrink: 0; background: $facade-fill-cool; }
 .bundle-item-info { flex: 1; display: flex; flex-direction: column; min-width: 0; }
 .bundle-item-info { flex: 1; display: flex; flex-direction: column; min-width: 0; }
 .bundle-item-name { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-strong; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
 .bundle-item-name { font-size: calc(28rpx * var(--font-scale, 1)); color: $facade-text-strong; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
 .bundle-item-spec { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-top: 4rpx; }
 .bundle-item-spec { font-size: calc(24rpx * var(--font-scale, 1)); color: $facade-text-muted; margin-top: 4rpx; }
@@ -1154,7 +1154,7 @@ export default {
   padding: 0 32rpx;
   padding: 0 32rpx;
   height: 64rpx;
   height: 64rpx;
   line-height: 64rpx;
   line-height: 64rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   border: none;
   border: none;
   margin: 0;
   margin: 0;
 }
 }
@@ -1210,7 +1210,7 @@ export default {
   padding: 0 60rpx;
   padding: 0 60rpx;
   height: 72rpx;
   height: 72rpx;
   line-height: 72rpx;
   line-height: 72rpx;
-  border-radius: 36rpx;
+  border-radius: 24rpx;
   border: none;
   border: none;
 }
 }
 .btn-buy::after {
 .btn-buy::after {
@@ -1234,7 +1234,7 @@ export default {
   padding: 0 24rpx;
   padding: 0 24rpx;
   height: 72rpx;
   height: 72rpx;
   line-height: 72rpx;
   line-height: 72rpx;
-  border-radius: 36rpx;
+  border-radius: 24rpx;
 }
 }
 .btn-cart::after {
 .btn-cart::after {
   border: none;
   border: none;
@@ -1246,7 +1246,7 @@ export default {
   padding: 0 24rpx;
   padding: 0 24rpx;
   height: 64rpx;
   height: 64rpx;
   line-height: 64rpx;
   line-height: 64rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   margin-right: 16rpx;
   margin-right: 16rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
@@ -1270,7 +1270,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   padding: 6rpx 20rpx;
   padding: 6rpx 20rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   margin-bottom: 12rpx;
   margin-bottom: 12rpx;
 }
 }
 .delivery-hint {
 .delivery-hint {
@@ -1316,7 +1316,7 @@ export default {
   align-items: center;
   align-items: center;
   padding: 16rpx;
   padding: 16rpx;
   border: 2rpx solid $facade-hairline-2;
   border: 2rpx solid $facade-hairline-2;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-bottom: 12rpx;
   margin-bottom: 12rpx;
   background: $app-surface;
   background: $app-surface;
 }
 }
@@ -1327,7 +1327,7 @@ export default {
 .gift-select-img {
 .gift-select-img {
   width: 80rpx;
   width: 80rpx;
   height: 80rpx;
   height: 80rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-right: 16rpx;
   margin-right: 16rpx;
   flex-shrink: 0;
   flex-shrink: 0;
   background: $facade-fill-cool;
   background: $facade-fill-cool;
@@ -1341,7 +1341,7 @@ export default {
   margin-right: 16rpx;
   margin-right: 16rpx;
   flex-shrink: 0;
   flex-shrink: 0;
   background: linear-gradient(135deg, #F9731622, #FB923C22);
   background: linear-gradient(135deg, #F9731622, #FB923C22);
-  border-radius: 12rpx;
+  border-radius: 16rpx;
 }
 }
 .gift-select-info {
 .gift-select-info {
   flex: 1;
   flex: 1;

+ 6 - 6
cfc-frontend/pages/discover/circle-feed.vue

@@ -584,7 +584,7 @@ export default {
 .fa-type-badge {
 .fa-type-badge {
   font-size: calc(20rpx * var(--font-scale, 1));
   font-size: calc(20rpx * var(--font-scale, 1));
   padding: 4rpx 12rpx;
   padding: 4rpx 12rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $warm-peach;
   background: $warm-peach;
   color: $dim-body;
   color: $dim-body;
 }
 }
@@ -596,7 +596,7 @@ export default {
 .feed-img {
 .feed-img {
   width: 220rpx;
   width: 220rpx;
   height: 220rpx;
   height: 220rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   margin-right: 12rpx;
   margin-right: 12rpx;
   margin-bottom: 12rpx;
   margin-bottom: 12rpx;
 }
 }
@@ -642,7 +642,7 @@ export default {
 .ci-input {
 .ci-input {
   flex: 1;
   flex: 1;
   background: $facade-fill-2;
   background: $facade-fill-2;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   padding: 12rpx 20rpx;
   padding: 12rpx 20rpx;
   font-size: calc(26rpx * var(--font-scale, 1));
   font-size: calc(26rpx * var(--font-scale, 1));
   margin-right: 16rpx;
   margin-right: 16rpx;
@@ -671,7 +671,7 @@ export default {
   width: 100%;
   width: 100%;
   max-height: 80vh;
   max-height: 80vh;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 32rpx 32rpx 0 0;
+  border-radius: 24rpx 24rpx 0 0;
   padding: 32rpx;
   padding: 32rpx;
   overflow-y: auto;
   overflow-y: auto;
 }
 }
@@ -717,7 +717,7 @@ export default {
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   color: $app-surface;
   color: $app-surface;
   border: none;
   border: none;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
   font-weight: 600;
   font-weight: 600;
   padding: 24rpx 0;
   padding: 24rpx 0;
@@ -747,5 +747,5 @@ export default {
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
 .mi-name { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-strong; flex: 1; }
 .mi-name { font-size: calc(26rpx * var(--font-scale, 1)); color: $facade-text-strong; flex: 1; }
-.mi-role { font-size: calc(20rpx * var(--font-scale, 1)); color: $dim-body; background: $warm-peach; padding: 4rpx 12rpx; border-radius: 12rpx; }
+.mi-role { font-size: calc(20rpx * var(--font-scale, 1)); color: $dim-body; background: $warm-peach; padding: 4rpx 12rpx; border-radius: 16rpx; }
 </style>
 </style>

+ 7 - 7
cfc-frontend/pages/discover/circles.vue

@@ -462,7 +462,7 @@ export default {
 .edit-content {
 .edit-content {
   width: 620rpx;
   width: 620rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 32rpx;
   padding: 32rpx;
 }
 }
 .modal-header {
 .modal-header {
@@ -494,7 +494,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 76rpx;
   height: 76rpx;
   background: $facade-fill-cool;
   background: $facade-fill-cool;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 0 20rpx;
   padding: 0 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -503,7 +503,7 @@ export default {
   width: 100%;
   width: 100%;
   height: 150rpx;
   height: 150rpx;
   background: $facade-fill-cool;
   background: $facade-fill-cool;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   padding: 16rpx 20rpx;
   padding: 16rpx 20rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   box-sizing: border-box;
   box-sizing: border-box;
@@ -517,7 +517,7 @@ export default {
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
   height: 72rpx;
   height: 72rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   background: $facade-fill-cool;
   background: $facade-fill-cool;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
@@ -546,7 +546,7 @@ export default {
   background: $mat-orange-base;
   background: $mat-orange-base;
   color: $app-surface;
   color: $app-surface;
   font-size: calc(30rpx * var(--font-scale, 1));
   font-size: calc(30rpx * var(--font-scale, 1));
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
 }
 }
 .btn-save[disabled] {
 .btn-save[disabled] {
@@ -615,7 +615,7 @@ export default {
 }
 }
 .approve-btn {
 .approve-btn {
   background: $mat-orange-base;
   background: $mat-orange-base;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   padding: 10rpx 26rpx;
   padding: 10rpx 26rpx;
   margin-right: 12rpx;
   margin-right: 12rpx;
 }
 }
@@ -625,7 +625,7 @@ export default {
 }
 }
 .reject-btn {
 .reject-btn {
   background: $facade-fill-2;
   background: $facade-fill-2;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   padding: 10rpx 26rpx;
   padding: 10rpx 26rpx;
 }
 }
 .reject-btn-text {
 .reject-btn-text {

+ 1 - 1
cfc-frontend/pages/discover/components/CircleCard.vue

@@ -137,6 +137,6 @@ export default {
   color: $brand-primary;
   color: $brand-primary;
   background: $uni-primary-pale;
   background: $uni-primary-pale;
   padding: 4rpx 12rpx;
   padding: 4rpx 12rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
 }
 }
 </style>
 </style>

+ 1 - 1
cfc-frontend/pages/discover/components/CircleDetail.vue

@@ -181,7 +181,7 @@ export default {
 .circle-btn {
 .circle-btn {
   width: 100%;
   width: 100%;
   height: 80rpx;
   height: 80rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   font-weight: 500;
   font-weight: 500;
   display: flex;
   display: flex;

+ 5 - 5
cfc-frontend/pages/discover/create-circle.vue

@@ -143,17 +143,17 @@ export default {
 .nav-title { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
 .nav-title { font-size: calc(32rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; }
 .nav-placeholder { width: 80rpx; }
 .nav-placeholder { width: 80rpx; }
 .content { padding: 24rpx 32rpx; }
 .content { padding: 24rpx 32rpx; }
-.form-card { background: $app-surface; border-radius: 20rpx; padding: 24rpx; }
+.form-card { background: $app-surface; border-radius: 24rpx; padding: 24rpx; }
 .form-item { padding: 24rpx 0; border-bottom: 1rpx solid $facade-fill-2; }
 .form-item { padding: 24rpx 0; border-bottom: 1rpx solid $facade-fill-2; }
 .form-item:last-child { border-bottom: none; }
 .form-item:last-child { border-bottom: none; }
 .form-label { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; display: block; margin-bottom: 16rpx; }
 .form-label { font-size: calc(28rpx * var(--font-scale, 1)); font-weight: 600; color: $facade-text-strong; display: block; margin-bottom: 16rpx; }
 .required { color: $mat-red; }
 .required { color: $mat-red; }
 .form-input {
 .form-input {
-  width: 100%; height: 72rpx; background: $facade-fill-2; border-radius: 12rpx;
+  width: 100%; height: 72rpx; background: $facade-fill-2; border-radius: 16rpx;
   padding: 0 20rpx; font-size: calc(28rpx * var(--font-scale, 1)); box-sizing: border-box;
   padding: 0 20rpx; font-size: calc(28rpx * var(--font-scale, 1)); box-sizing: border-box;
 }
 }
 .form-textarea {
 .form-textarea {
-  width: 100%; height: 160rpx; background: $facade-fill-2; border-radius: 12rpx;
+  width: 100%; height: 160rpx; background: $facade-fill-2; border-radius: 16rpx;
   padding: 16rpx 20rpx; font-size: calc(26rpx * var(--font-scale, 1)); line-height: 1.6; box-sizing: border-box;
   padding: 16rpx 20rpx; font-size: calc(26rpx * var(--font-scale, 1)); line-height: 1.6; box-sizing: border-box;
 }
 }
 .type-grid { display: flex; flex-wrap: wrap; }
 .type-grid { display: flex; flex-wrap: wrap; }
@@ -168,7 +168,7 @@ export default {
 .join-options { display: flex; flex-direction: column; }
 .join-options { display: flex; flex-direction: column; }
 .join-opt {
 .join-opt {
   display: flex; align-items: center; padding: 20rpx;
   display: flex; align-items: center; padding: 20rpx;
-  background: $facade-fill-ghost; border-radius: 12rpx; border: 2rpx solid transparent;
+  background: $facade-fill-ghost; border-radius: 16rpx; border: 2rpx solid transparent;
 }
 }
 .join-active { border-color: $dim-body; background: $dim-body-tint; }
 .join-active { border-color: $dim-body; background: $dim-body-tint; }
 .jo-icon { font-size: calc(36rpx * var(--font-scale, 1)); margin-right: 16rpx; }
 .jo-icon { font-size: calc(36rpx * var(--font-scale, 1)); margin-right: 16rpx; }
@@ -183,7 +183,7 @@ export default {
 }
 }
 .btn-create {
 .btn-create {
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
   background: linear-gradient(135deg, $dim-body, $dim-body-light);
-  color: $app-surface; border: none; border-radius: 40rpx;
+  color: $app-surface; border: none; border-radius: 24rpx;
   font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; padding: 24rpx 0;
   font-size: calc(30rpx * var(--font-scale, 1)); font-weight: 600; padding: 24rpx 0;
 }
 }
 .btn-create[disabled] { opacity: 0.4; }
 .btn-create[disabled] { opacity: 0.4; }

+ 7 - 7
cfc-frontend/pages/discover/index.vue

@@ -280,7 +280,7 @@ export default {
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   color: $facade-text-body;
   color: $facade-text-body;
   background: $facade-fill;
   background: $facade-fill;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
   margin-right: 16rpx;
   margin-right: 16rpx;
 }
 }
 .filter-chip.active {
 .filter-chip.active {
@@ -353,7 +353,7 @@ export default {
   flex-direction: column;
   flex-direction: column;
   width: 260rpx;
   width: 260rpx;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   overflow: hidden;
   overflow: hidden;
   margin-right: 20rpx;
   margin-right: 20rpx;
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
   box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06);
@@ -398,7 +398,7 @@ export default {
   color: $brand-primary;
   color: $brand-primary;
   background: rgba(249, 115, 22, 0.1);
   background: rgba(249, 115, 22, 0.1);
   padding: 2rpx 10rpx;
   padding: 2rpx 10rpx;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
 }
 }
 
 
 /* ===== 家庭会员推荐卡片 ===== */
 /* ===== 家庭会员推荐卡片 ===== */
@@ -409,7 +409,7 @@ export default {
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx 30rpx;
   padding: 24rpx 30rpx;
 }
 }
 .member-card-icon {
 .member-card-icon {
@@ -441,7 +441,7 @@ export default {
   color: $brand-primary;
   color: $brand-primary;
   font-size: calc(24rpx * var(--font-scale, 1));
   font-size: calc(24rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
-  border-radius: 30rpx;
+  border-radius: 24rpx;
 }
 }
 
 
 /* ===== 推荐文章 ===== */
 /* ===== 推荐文章 ===== */
@@ -516,7 +516,7 @@ export default {
   width: calc(50% - 10rpx);
   width: calc(50% - 10rpx);
   box-sizing: border-box;
   box-sizing: border-box;
   background: $app-surface;
   background: $app-surface;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 24rpx;
   padding: 24rpx;
   margin-bottom: 20rpx;
   margin-bottom: 20rpx;
   display: flex;
   display: flex;
@@ -556,7 +556,7 @@ export default {
   color: $app-surface;
   color: $app-surface;
   font-size: calc(32rpx * var(--font-scale, 1));
   font-size: calc(32rpx * var(--font-scale, 1));
   font-weight: bold;
   font-weight: bold;
-  border-radius: 44rpx;
+  border-radius: 24rpx;
   text-align: center;
   text-align: center;
   border: none;
   border: none;
 }
 }

+ 12 - 12
cfc-frontend/pages/energy/index.vue

@@ -461,7 +461,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
   gap: 6rpx;
   gap: 6rpx;
   background: rgba(255,255,255,0.15);
   background: rgba(255,255,255,0.15);
   padding: 10rpx 20rpx;
   padding: 10rpx 20rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
 }
 }
 .nav-right:active {
 .nav-right:active {
   background: rgba(255,255,255,0.25);
   background: rgba(255,255,255,0.25);
@@ -512,7 +512,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
   line-height: 80rpx;
   line-height: 80rpx;
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   background: linear-gradient(135deg, $brand-primary, $brand-primary-light);
   color: $app-surface;
   color: $app-surface;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   font-size: calc(28rpx * var(--font-scale, 1));
   font-size: calc(28rpx * var(--font-scale, 1));
   border: none;
   border: none;
 }
 }
@@ -532,7 +532,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .overview-avatar {
 .overview-avatar {
   width: 80rpx;
   width: 80rpx;
   height: 80rpx;
   height: 80rpx;
-  border-radius: 40rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -560,7 +560,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .dim-icon-wrap {
 .dim-icon-wrap {
   width: 52rpx;
   width: 52rpx;
   height: 52rpx;
   height: 52rpx;
-  border-radius: 12rpx;
+  border-radius: 16rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -571,12 +571,12 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
   flex: 1;
   flex: 1;
   height: 20rpx;
   height: 20rpx;
   background: rgba(255,255,255,0.08);
   background: rgba(255,255,255,0.08);
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   overflow: hidden;
   overflow: hidden;
 }
 }
 .dim-bar-fill {
 .dim-bar-fill {
   height: 100%;
   height: 100%;
-  border-radius: 10rpx;
+  border-radius: 8rpx;
   transition: width 0.5s ease;
   transition: width 0.5s ease;
 }
 }
 .dim-bar-score {
 .dim-bar-score {
@@ -624,7 +624,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .compare-section { }
 .compare-section { }
 .compare-list {
 .compare-list {
   background: rgba(255,255,255,0.06);
   background: rgba(255,255,255,0.06);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   overflow: hidden;
   overflow: hidden;
   border: 1rpx solid rgba(255,255,255,0.08);
   border: 1rpx solid rgba(255,255,255,0.08);
 }
 }
@@ -640,7 +640,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .compare-avatar {
 .compare-avatar {
   width: 64rpx;
   width: 64rpx;
   height: 64rpx;
   height: 64rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -660,7 +660,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
   flex-wrap: wrap;
   flex-wrap: wrap;
   gap: 16rpx;
   gap: 16rpx;
   background: rgba(255,255,255,0.06);
   background: rgba(255,255,255,0.06);
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   padding: 20rpx;
   padding: 20rpx;
   border: 1rpx solid rgba(255,255,255,0.08);
   border: 1rpx solid rgba(255,255,255,0.08);
 }
 }
@@ -676,7 +676,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .quick-icon-wrap {
 .quick-icon-wrap {
   width: 72rpx;
   width: 72rpx;
   height: 72rpx;
   height: 72rpx;
-  border-radius: 20rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;
@@ -697,7 +697,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .member-picker {
 .member-picker {
   width: 100%;
   width: 100%;
   background: $c-energy-deep-2;
   background: $c-energy-deep-2;
-  border-radius: 32rpx 32rpx 0 0;
+  border-radius: 24rpx 24rpx 0 0;
   padding: 20rpx 30rpx 60rpx;
   padding: 20rpx 30rpx 60rpx;
   max-height: 70vh;
   max-height: 70vh;
   overflow-y: auto;
   overflow-y: auto;
@@ -722,7 +722,7 @@ $c-energy-deep-2: #1A2744; // 导航渐变终 / 卡片底(藏蓝)
 .picker-avatar {
 .picker-avatar {
   width: 64rpx;
   width: 64rpx;
   height: 64rpx;
   height: 64rpx;
-  border-radius: 32rpx;
+  border-radius: 24rpx;
   display: flex;
   display: flex;
   align-items: center;
   align-items: center;
   justify-content: center;
   justify-content: center;

Некоторые файлы не были показаны из-за большого количества измененных файлов