openyida 2026.9.20 → 2026.9.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/README.md +1 -1
  2. package/lib/app/application-style.js +3 -1
  3. package/lib/app/theme-from-design.js +38 -13
  4. package/lib/app/update-app.js +63 -13
  5. package/lib/core/command-manifest.js +32 -20
  6. package/lib/core/locales/en.js +17 -0
  7. package/lib/core/locales/zh.js +17 -0
  8. package/lib/core/sample.js +17 -14
  9. package/lib/design-plan/confirmation.js +13 -0
  10. package/lib/design-plan/design-plan.js +44 -2
  11. package/lib/design-plan/entry-navigation.js +10 -2
  12. package/lib/design-plan/init.js +11 -7
  13. package/lib/design-plan/materialize.js +62 -43
  14. package/lib/design-plan/normalize.js +13 -14
  15. package/lib/design-plan/parallel.js +62 -13
  16. package/lib/design-plan/patch.js +21 -7
  17. package/lib/design-plan/rebase.js +60 -0
  18. package/lib/design-plan/themes.js +16 -1
  19. package/lib/design-plan/validate.js +6 -1
  20. package/lib/design-plan/visual-policy.js +18 -4
  21. package/lib/samples/openyida-scaffold/canvas-form-drawer.canvas.jsx +3 -3
  22. package/lib/samples/openyida-scaffold/canvas-nav/mixed.jsx +6 -4
  23. package/lib/samples/openyida-scaffold/canvas-nav/shared.jsx +5 -5
  24. package/lib/samples/openyida-scaffold/canvas-nav/side.jsx +1 -2
  25. package/lib/samples/openyida-scaffold/canvas-nav/sidebar.jsx +1 -1
  26. package/lib/samples/openyida-scaffold/canvas-nav/top.jsx +5 -4
  27. package/package.json +1 -1
  28. package/yida-skills/SKILL.md +2 -2
  29. package/yida-skills/references/yida-api.md +4 -0
  30. package/yida-skills/skills/yida-app/SKILL.md +12 -4
  31. package/yida-skills/skills/yida-app/references/entry-navigation.md +11 -9
  32. package/yida-skills/skills/yida-app/workflow/plan/step-4-deliver.md +1 -1
  33. package/yida-skills/skills/yida-app/workflow/plan/workflow.md +11 -4
  34. package/yida-skills/skills/yida-app/workflow/step-2-design.md +3 -3
  35. package/yida-skills/skills/yida-app/workflow/step-3-create-or-reuse-app.md +2 -2
  36. package/yida-skills/skills/yida-app/workflow/step-8-publish-navigation.md +3 -3
  37. package/yida-skills/skills/yida-app/workflow/step-9-output-finish.md +3 -2
  38. package/yida-skills/skills/yida-canvas-custom-page/SKILL.md +2 -2
  39. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-style-implementation-guide.md +1 -1
  40. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-theme-provider.md +1 -1
  41. package/yida-skills/skills/yida-canvas-custom-page/references/data-bridge-guide.md +140 -1
  42. package/yida-skills/skills/yida-canvas-custom-page/references/navigation-and-entry-guide.md +1 -1
  43. package/yida-skills/skills/yida-canvas-custom-page/scripts/canvas-theme-provider.template.jsx +1 -1
  44. package/yida-skills/skills/yida-canvas-data-binding/SKILL.md +7 -0
  45. package/yida-skills/skills/yida-create-form-page/SKILL.md +1 -1
  46. package/yida-skills/skills/yida-design/SKILL.md +5 -3
  47. package/yida-skills/skills/yida-design/references/application-style-library.md +22 -7
  48. package/yida-skills/skills/yida-design/references/application-theme-consistency.md +45 -5
  49. package/yida-skills/skills/yida-design/references/ask-human-interaction-contract.md +1 -1
  50. package/yida-skills/skills/yida-design/references/native-form-styles.md +1 -1
  51. package/yida-skills/skills/yida-design/references/navigation-decision.md +6 -4
  52. package/yida-skills/skills/yida-design/references/theme/app-custom-theme-template.css +62 -0
  53. package/yida-skills/skills/yida-design/references/theme-selection.md +10 -9
  54. package/yida-skills/skills/yida-design/references/visual-decision-engine.md +1 -1
  55. package/yida-skills/skills/yida-design/scripts/validate_design_themes.py +35 -9
  56. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/SKILL.md +13 -3
  57. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-compact-schema.md +4 -2
  58. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-schema.md +4 -2
  59. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-design.md +3 -1
  60. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-theme-selection.md +15 -17
  61. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/render_build_plan.py +2 -0
  62. package/yida-skills/skills/yida-design/templates/design-themes/README.md +15 -10
  63. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/app_theme.css +224 -83
  64. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/design.md +69 -14
  65. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/app_theme.css +224 -83
  66. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/design.md +69 -14
  67. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/app_theme.css +244 -103
  68. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/design.md +68 -13
  69. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/app_theme.css +223 -82
  70. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/design.md +68 -13
  71. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/app_theme.css +225 -84
  72. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/design.md +69 -14
  73. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/app_theme.css +244 -103
  74. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/design.md +68 -13
  75. package/yida-skills/skills/yida-design/templates/design-themes/app-line/app_theme.css +224 -83
  76. package/yida-skills/skills/yida-design/templates/design-themes/app-line/design.md +69 -14
  77. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/app_theme.css +244 -103
  78. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/design.md +68 -13
  79. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/app_theme.css +236 -89
  80. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/design.md +74 -14
  81. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/app_theme.css +224 -83
  82. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/design.md +68 -13
  83. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/app_theme.css +223 -82
  84. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/design.md +68 -13
  85. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/app_theme.css +224 -83
  86. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/design.md +68 -13
  87. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/app_theme.css +240 -89
  88. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/design.md +76 -14
  89. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/app_theme.css +224 -83
  90. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/design.md +69 -14
  91. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/app_theme.css +224 -83
  92. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/design.md +68 -13
  93. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/app_theme.css +254 -107
  94. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/design.md +74 -14
  95. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/app_theme.css +233 -88
  96. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/design.md +73 -14
  97. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/app_theme.css +224 -83
  98. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/design.md +69 -14
  99. package/yida-skills/skills/yida-design/templates/design-themes/basic-tokens.json +2 -1
  100. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/app_theme.css +690 -0
  101. package/yida-skills/skills/yida-design/templates/design-themes/{dark-inset-hairline.md → dark-inset-hairline/design.md} +103 -58
  102. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/form-layout.json +13 -0
  103. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/app_theme.css +691 -0
  104. package/yida-skills/skills/yida-design/templates/design-themes/{dark-rail-fine-lines.md → dark-rail-fine-lines/design.md} +102 -50
  105. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/form-layout.json +13 -0
  106. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/app_theme.css +696 -0
  107. package/yida-skills/skills/yida-design/templates/design-themes/{dark-rail-signal-panels.md → dark-rail-signal-panels/design.md} +62 -12
  108. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/form-layout.json +13 -0
  109. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/app_theme.css +278 -115
  110. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/design.md +57 -10
  111. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/app_theme.css +692 -0
  112. package/yida-skills/skills/yida-design/templates/design-themes/{graphite-bevel-grid.md → graphite-bevel-grid/design.md} +60 -10
  113. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/form-layout.json +13 -0
  114. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/app_theme.css +691 -0
  115. package/yida-skills/skills/yida-design/templates/design-themes/{hairline-shared-bands.md → hairline-shared-bands/design.md} +62 -12
  116. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/form-layout.json +13 -0
  117. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/app_theme.css +691 -0
  118. package/yida-skills/skills/yida-design/templates/design-themes/{hairline-soft-blocks.md → hairline-soft-blocks/design.md} +57 -9
  119. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/form-layout.json +13 -0
  120. package/yida-skills/skills/yida-design/templates/design-themes/index.json +141 -48
  121. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/app_theme.css +701 -0
  122. package/yida-skills/skills/yida-design/templates/design-themes/{ink-glow-soft-panels.md → ink-glow-soft-panels/design.md} +58 -8
  123. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/form-layout.json +13 -0
  124. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/app_theme.css +691 -0
  125. package/yida-skills/skills/yida-design/templates/design-themes/{inset-frame-pixel-rhythm.md → inset-frame-pixel-rhythm/design.md} +59 -9
  126. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/form-layout.json +13 -0
  127. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/app_theme.css +698 -0
  128. package/yida-skills/skills/yida-design/templates/design-themes/{outlined-texture-duotone.md → outlined-texture-duotone/design.md} +62 -12
  129. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/form-layout.json +13 -0
  130. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/app_theme.css +691 -0
  131. package/yida-skills/skills/yida-design/templates/design-themes/{soft-inset-surfaces.md → soft-inset-surfaces/design.md} +59 -11
  132. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/form-layout.json +13 -0
  133. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/app_theme.css +690 -0
  134. package/yida-skills/skills/yida-design/templates/design-themes/{soft-outline-rhythm.md → soft-outline-rhythm/design.md} +60 -26
  135. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/form-layout.json +13 -0
  136. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/app_theme.css +698 -0
  137. package/yida-skills/skills/yida-design/templates/design-themes/{soft-rail-bold-band.md → soft-rail-bold-band/design.md} +99 -49
  138. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/form-layout.json +13 -0
  139. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/app_theme.css +692 -0
  140. package/yida-skills/skills/yida-design/templates/design-themes/{soft-spectral-panels.md → soft-spectral-panels/design.md} +63 -13
  141. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/form-layout.json +13 -0
  142. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/app_theme.css +711 -0
  143. package/yida-skills/skills/yida-design/templates/design-themes/{warm-canvas-contrast-panels.md → warm-canvas-contrast-panels/design.md} +60 -10
  144. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/form-layout.json +13 -0
  145. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/app_theme.css +692 -0
  146. package/yida-skills/skills/yida-design/templates/design-themes/{warm-rail-muted-panels.md → warm-rail-muted-panels/design.md} +98 -50
  147. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/form-layout.json +13 -0
  148. package/yida-skills/skills/yida-design/templates/navigation-styles.json +769 -0
  149. package/yida-skills/skills/yida-design/workflow/output-design.md +5 -5
  150. package/yida-skills/skills/yida-design/workflow/step-2-theme-system.md +5 -3
  151. package/yida-skills/skills/yida-design/workflow/step-6-handoff.md +1 -1
  152. package/yida-skills/skills/yida-form-permission/SKILL.md +6 -0
  153. package/yida-skills/skills/yida-nav-shell/SKILL.md +1 -1
  154. package/yida-skills/skills/yida-nav-shell/references/nav-shell-patterns.md +6 -0
  155. package/yida-skills/skills/yida-page-config/SKILL.md +9 -0
  156. package/yida-skills/skills/yida-prd/SKILL.md +1 -0
  157. package/yida-skills/skills/yida-prd/workflow/output-prd.md +2 -2
  158. package/yida-skills/skills/yida-prd/workflow/step-2-information-architecture.md +1 -1
  159. package/yida-skills/skills/yida-requirement-analysis/references/experience-groups.md +45 -9
  160. package/yida-skills/skills/yida-requirement-analysis/references/handoff.md +5 -5
  161. package/yida-skills/skills/yida-requirement-analysis/workflow/prepare-brief.md +17 -4
  162. package/yida-skills/skills-index.json +2 -2
@@ -12,12 +12,57 @@ tokens:
12
12
  "--pod-card-bg-color": "#ffffff"
13
13
  "--pod-table-cell-color": "var(--pod-card-bg-color)"
14
14
  navigation:
15
- "--pod-shell-theme-bg-color": "#FFFFFF"
16
- "--pod-nav-item-text-color": "#595959"
17
- "--pod-nav-item-text-hover-color": "#262626"
18
- "--pod-nav-item-text-selected-color": "var(--color-brand1-6)"
19
- "--pod-nav-menu-bg-hover-color": "#F5F5F5"
20
- "--pod-nav-menu-bg-selected-color": "#F0F0F0"
15
+ "--pod-shell-theme-bg-color": "#E6ECEA"
16
+ "--pod-nav-item-text-color": "#35434B"
17
+ "--pod-nav-item-text-hover-color": "#24323A"
18
+ "--pod-nav-item-text-selected-color": "#F5F8F7"
19
+ "--pod-nav-menu-bg-hover-color": "#D6E0DD"
20
+ "--pod-nav-menu-bg-selected-color": "#354B51"
21
+ "--pod-nav-menu-item-selected-shadow": "none"
22
+ "--pod-page-header-bg-color": "var(--pod-shell-theme-bg-color)"
23
+ "--pod-nav-l-sub-main-bg-color": "var(--pod-shell-theme-bg-color)"
24
+ "--pod-nav-top-main-border-width": "1px"
25
+ "--pod-nav-top-main-border-color": "#B7C5C0"
26
+ "--pod-nav-top-tab-indicator-width": "0px"
27
+ "--pod-nav-logo-text": "var(--pod-nav-item-text-hover-color)"
28
+ "--pod-nav-logo-bg": "var(--pod-nav-menu-bg-selected-color)"
29
+ "--pod-nav-logo-icon": "var(--pod-nav-item-text-selected-color)"
30
+ "--pod-nav-logo-border": "1px solid #B7C5C0"
31
+ "--pod-nav-logo-border-radius": "6px"
32
+ "--pod-nav-sub-divider-color": "#B7C5C0"
33
+ "--pod-nav-item-text-disabled-color": "rgba(24,28,31,.30)"
34
+ "--pod-nav-l-container-bg": "var(--pod-shell-theme-bg-color)"
35
+ "--pod-nav-l-group-label-color": "var(--pod-nav-item-text-color)"
36
+ "--pod-nav-l-search-border-color": "#B7C5C0"
37
+ "--pod-nav-popup-bg-color": "var(--pod-shell-theme-bg-color)"
38
+ "--pod-nav-popup-border-radius": "6px"
39
+ "--pod-nav-popup-shadow": "0 6px 18px rgba(53,67,75,.10)"
40
+ "--pod-nav-tab-line-hover-color": "var(--pod-nav-item-text-hover-color)"
41
+ "--pod-nav-tab-line-selected-color": "var(--pod-nav-item-text-hover-color)"
42
+ "--pod-nav-search-bg-color": "var(--pod-nav-menu-bg-hover-color)"
43
+ "--pod-nav-search-bg-hover-color": "var(--pod-nav-menu-bg-hover-color)"
44
+ "--pod-nav-search-bg-active-color": "var(--pod-nav-menu-bg-hover-color)"
45
+ "--pod-nav-search-placeholder-color": "var(--pod-nav-item-text-color)"
46
+ "--pod-nav-search-text-color": "var(--pod-nav-item-text-hover-color)"
47
+ "--pod-nav-search-icon-color": "var(--pod-nav-item-text-color)"
48
+ "--pod-nav-search-border-color": "#B7C5C0"
49
+ "--pod-nav-search-border-hover-color": "var(--pod-nav-item-text-hover-color)"
50
+ "--pod-nav-search-border-active-color": "var(--pod-nav-item-text-hover-color)"
51
+ "--pod-nav-action-icon-color": "var(--pod-nav-item-text-color)"
52
+ "--pod-nav-action-border-color": "#B7C5C0"
53
+ "--pod-nav-action-border": "1px solid #B7C5C0"
54
+ "--pod-nav-action-bg-hover-color": "var(--pod-nav-menu-bg-hover-color)"
55
+ "--pod-nav-action-bg-active-color": "var(--pod-nav-menu-bg-hover-color)"
56
+ "--pod-nav-menu-item-height": "38px"
57
+ "--pod-nav-menu-item-radius": "6px"
58
+ "--pod-nav-menu-item-border": "1px solid transparent"
59
+ "--pod-nav-menu-item-hover-border": "1px solid #B7C5C0"
60
+ "--pod-nav-menu-item-selected-border": "1px solid #354B51"
61
+ "--pod-nav-menu-font-size": "14px"
62
+ "--pod-nav-menu-item-selected-font-weight": "600"
63
+ "--pod-nav-menu-line-height": "20px"
64
+ "--pod-nav-menu-gap": "6px"
65
+ "--pod-shell-lshape-border-radius": "6px"
21
66
  native-form:
22
67
  "--form-element-medium-corner": "6px"
23
68
  "--form-element-medium-height": "38px"
@@ -104,11 +149,11 @@ tokens:
104
149
  "--s-10": "40px"
105
150
  rounded:
106
151
  "--corner-zero": "0px"
107
- "--corner-1": "4px"
152
+ "--corner-1": "6px"
108
153
  "--corner-2": "6px"
109
- "--corner-3": "8px"
110
- "--corner-4": "10px"
111
- "--corner-5": "12px"
154
+ "--corner-3": "6px"
155
+ "--corner-4": "6px"
156
+ "--corner-5": "6px"
112
157
  "--corner-circle": "50%"
113
158
  "--corner-semicircle": "500px"
114
159
  shadow:
@@ -147,7 +192,7 @@ themeProfile:
147
192
 
148
193
  稳定双列与合同摘要侧栏;铂灰细线、低圆角、均衡留白。适合合同、采购与商务审批。
149
194
 
150
- 应用、自定义页面、表单、编辑与详情共用这一套视觉语言。业务内容来自 PRD,不复制示例行业、编号、标题或数据。色彩来源:{{COLOR_SOURCE}};主色由 {{PRIMARY_COLOR}} 实例化,示范配色只是参考。
195
+ 导航、应用框架、自定义页面、表单、编辑与详情共用这一套视觉语言。业务内容来自 PRD,按实际行业、页面标题和数据设计。色彩来源:{{COLOR_SOURCE}};主色由 {{PRIMARY_COLOR}} 实例化,品牌悬停色按同源占位说明生成;模板不固定项目品牌色。
151
196
 
152
197
  ## 2. 页面视觉系统
153
198
 
@@ -157,7 +202,17 @@ themeProfile:
157
202
 
158
203
  ### 2.2 应用导航
159
204
 
160
- 平台侧导航与内容区域使用同一设计语言;选中项用品牌色和明确文字,不靠图标猜测。 默认保留平台导航,菜单来自真实业务范围。只有需求确定自绘导航时才在 Canvas 实现结构。当前模板使用 contentTone: light、navTheme: light。
205
+ 铂灰导航配低圆角菜单与均衡行距,青灰细线连接合同工作区,当前入口以深灰底浅字形成稳重焦点。
206
+
207
+ 菜单轮廓使用 --pod-nav-menu-item-radius、--pod-nav-menu-item-border、--pod-nav-menu-item-hover-border、--pod-nav-menu-item-selected-border。侧栏和顶部菜单共用轮廓,各状态保持相同边框宽度,文字位置稳定;具体数值以本项目 Token 为准。
208
+
209
+ 导航与应用框架、表单、自定义页面和详情页共用设计语言。先按业务入口安排菜单、分组、搜索、品牌区与常用操作,再一起确定导航与正文的明暗、表面、字体、边界、圆角和密度。平台导航使用真实页面菜单;自绘导航按同一套导航 Token 实现。命名模板沿用自身 navTheme,换主色保持导航明暗与内容画布;需要另一导航明暗时改选主题,自由创意按项目明确设计。
210
+
211
+ 导航底色使用 --pod-shell-theme-bg-color;普通、悬停和选中文字分别使用 --pod-nav-item-text-color、--pod-nav-item-text-hover-color、--pod-nav-item-text-selected-color;悬停和选中背景使用 --pod-nav-menu-bg-hover-color、--pod-nav-menu-bg-selected-color。图标跟随对应文字状态,当前入口同时用背景或字重表达。
212
+
213
+ 菜单高度、圆角与间距使用 --pod-nav-menu-item-height、--pod-nav-menu-item-radius、--pod-nav-menu-gap;搜索、品牌区、分组、操作和弹出菜单使用 navigation 分组中的对应 Token。弹出菜单的底色、文字与搜索状态成组配套,导航与内容可以分别选择明暗。选中项使用 --pod-nav-menu-item-selected-shadow:none 关闭额外标记,完整 box-shadow 值可表达左、右或底部内阴影,不占据菜单布局空间;该 Token 独立于导航明暗。菜单高度、文字行高、内距和框架留白一起调整,给外阴影、长标题与键盘焦点留出空间。
214
+
215
+ 桌面检查菜单、搜索、选中态与表单的协调;折叠后保留可识别图标和入口名称;窄屏保持菜单可展开、当前页面可定位、键盘焦点可见。提交、编辑、详情与自定义页都沿用这一导航设计。 当前模板使用 contentTone: light、navTheme: light。
161
216
 
162
217
  ### 2.3 页面标题与操作
163
218
 
@@ -213,7 +268,7 @@ YAML Token 是唯一数值源。沿用当前主题的构图与材质语言,按
213
268
 
214
269
  ### 验收
215
270
 
216
- - [ ] 应用壳、Canvas、表单与详情的字体、线条、材质和状态一致。
271
+ - [ ] 导航、应用框架、Canvas、表单与详情的字体、线条、材质和状态一致。
217
272
  - [ ] 正文与底栏对齐;四类容器与移动端无横向溢出。
218
273
  - [ ] 文字/焦点/禁用/错误在实际背景上可辨,长说明与表格未裁切。
219
274
  - [ ] 表单布局与逐页设计一致;组件、字段、主题和响应式规则均已核对。
@@ -13,7 +13,7 @@
13
13
  * --design-file <design.md> --output <app-theme.css> 生成主题。
14
14
  * 2. 修改 design.md 后重跑同一命令,CLI 增量更新 token 并保留其他定制。
15
15
  * 省略 --design-file 会重置模板,不用于保留已有定制的更新。
16
- * 3. 本模板默认品牌种子为 coffee 咖啡色;最终配色和圆角以 design.md 的 tokens 为准。
16
+ * 3. 品牌值保留项目占位和派生说明;先完成 design.md,再生成实际主题 CSS。
17
17
  * 4. 应用品牌色阶只使用平台实际生成的 --color-brand1-1、2、3、5、6、9、10;
18
18
  * CLI 同时生成 --color-brand-1 至 --color-brand-4 和 --color-group,不要补造 4、7、8。
19
19
  * 5. 若 design.md 选择其他主色,必须同步替换品牌色阶、基础色阶、图表色组,以及模板中按钮、
@@ -35,13 +35,13 @@
35
35
  --color-white: var(--pod-card-bg-color);
36
36
 
37
37
  /* brand */
38
- --color-brand1-1: #7A6679;
39
- --color-brand1-2: #EDEAED;
40
- --color-brand1-3: #F9F8F9;
41
- --color-brand1-5: #362D35;
42
- --color-brand1-6: #685167;
43
- --color-brand1-9: #4F3E4E;
44
- --color-brand1-10: #332D32;
38
+ --color-brand1-1: <生成实际色值:--color-brand1-6 88% + #FFFFFF 12%,sRGB 逐通道混合>;
39
+ --color-brand1-2: <生成实际色值:--color-brand1-6 12% + #FFFFFF 88%,sRGB 逐通道混合>;
40
+ --color-brand1-3: <生成实际色值:--color-brand1-6 4% + #FFFFFF 96%,sRGB 逐通道混合>;
41
+ --color-brand1-5: <生成实际色值:--color-brand1-6 38% + #171717 62%,sRGB 逐通道混合>;
42
+ --color-brand1-6: {{PRIMARY_COLOR}};
43
+ --color-brand1-9: <生成实际色值:--color-brand1-6 76% + #000000 24%,sRGB 逐通道混合>;
44
+ --color-brand1-10: <生成实际色值:--color-brand1-6 26% + #202020 74%,sRGB 逐通道混合>;
45
45
 
46
46
  /* line */
47
47
  --color-line1-1: #d8cad5;
@@ -95,11 +95,11 @@
95
95
 
96
96
  /* rounded */
97
97
  --corner-zero: 0px;
98
- --corner-1: 4px;
99
- --corner-2: 6px;
100
- --corner-3: 8px;
98
+ --corner-1: 10px;
99
+ --corner-2: 10px;
100
+ --corner-3: 10px;
101
101
  --corner-4: 10px;
102
- --corner-5: 12px;
102
+ --corner-5: 10px;
103
103
  --corner-circle: 50%;
104
104
  --corner-semicircle: 500px;
105
105
 
@@ -167,12 +167,12 @@
167
167
 
168
168
  /* 新主题下变量 */
169
169
  /* shell 背景 padding 圆角 */
170
- --pod-shell-bg-color-light: var(--color-brand1-2, #EDEAED);
170
+ --pod-shell-bg-color-light: var(--color-brand1-2, var(--color-brand1-2));
171
171
  --pod-shell-bg-color-white: #fff;
172
172
  --pod-shell-bg-color-gray: var(--pod-common-bg-color, #f0f2f5);
173
- --pod-shell-bg-color-dark: var(--color-brand1-5, #362D35);
173
+ --pod-shell-bg-color-dark: var(--color-brand1-5, var(--color-brand1-5));
174
174
  --pod-shell-padding: 4px;
175
- --pod-shell-lshape-border-radius: 16px;
175
+ --pod-shell-lshape-border-radius: 10px;
176
176
  /* 新版主题shell main 容器相关 暂时不需要这个变量,写死用户不可配置 */
177
177
  --pod-shell-content-container-padding: 0px;
178
178
  --pod-shell-content-container-margin: 0px;
@@ -212,7 +212,7 @@
212
212
  --pod-formView-stickyFooter-box-shadow: none;
213
213
  --pod-formView-stickyFooter-height: 56px;
214
214
  --pod-formView-stickyFooter-bottom: 8px;
215
- --pod-page-header-bg-color: var(--color-white, #fff);
215
+ --pod-page-header-bg-color: var(--pod-shell-theme-bg-color);
216
216
 
217
217
  /* 原生表单:按项目设计调整控件形状、密度和填充,不通过全局 input 选择器覆盖状态。 */
218
218
  --form-element-medium-corner: 10px;
@@ -258,8 +258,8 @@
258
258
  --pod-nav-page-white-bg-color: rgba(246, 247, 247, 1);
259
259
  --pod-nav-page-padding: var(--pod-lg-gap-pad-margin, 16px);
260
260
  --pod-nav-top-main-border-width: 1px;
261
- --pod-nav-top-main-border-color: #00000014;
262
- --pod-nav-l-sub-main-bg-color: var(--color-white, #fff);
261
+ --pod-nav-top-main-border-color: #BC9AB7;
262
+ --pod-nav-l-sub-main-bg-color: var(--pod-shell-theme-bg-color);
263
263
  --pod-nav-l-header-gap: 28px;
264
264
  --pod-nav-l-header-padding: 8px 16px;
265
265
  --pod-nav-l-aside-padding: 8px;
@@ -282,7 +282,7 @@
282
282
  --pod-nav-top-tab-item-max-width: 120px;
283
283
  --pod-nav-top-tab-item-padding: 0 12px;
284
284
  --pod-nav-top-tab-item-inner-padding: 12px 0;
285
- --pod-nav-top-tab-indicator-width: 2px;
285
+ --pod-nav-top-tab-indicator-width: 0px;
286
286
 
287
287
  /* 新版导航平台 Header、内容行与操作区。 */
288
288
  --pod-nav-platform-header-height: 48px;
@@ -296,48 +296,52 @@
296
296
  --pod-nav-platform-action-badge-font-size: 9px;
297
297
  --pod-nav-platform-action-badge-radius: 7px;
298
298
  --pod-nav-platform-action-badge-digit-width: 6px;
299
- --pod-nav-action-border: 0.5px solid var(--pod-nav-action-border-color);
299
+ --pod-nav-action-border: 1px solid #BC9AB7;
300
300
  --pod-nav-ai-wenban-border-color: #ffffff3d;
301
301
  --pod-nav-ai-wenban-bg:
302
302
  radial-gradient(64px 24px at 31% 0%, transparent, rgba(0, 0, 0, 0.6)),
303
303
  linear-gradient(
304
304
  161deg,
305
- var(--color-brand1-1, #7A6679) 5.22%,
306
- var(--color-brand1-5, #362D35) 50.54%,
307
- var(--color-brand1-9, #4F3E4E) 89.61%
305
+ var(--color-brand1-1, #4584B3) 5.22%,
306
+ var(--color-brand1-5, #1F3A4E) 50.54%,
307
+ var(--color-brand1-9, #215780) 89.61%
308
308
  );
309
309
  --pod-nav-ai-wenban-text-color: var(--color-text1-5, #fff);
310
310
  --pod-nav-logo-gap: 8px;
311
311
  --pod-nav-logo-padding: 4px 8px;
312
- --pod-nav-logo-bg: var(--color-brand1-6, #685167);
313
- --pod-nav-logo-border: none;
314
- --pod-nav-logo-icon: var(--color-text1-5, #fff);
315
- --pod-nav-logo-border-radius: 6px;
312
+ --pod-nav-logo-bg: var(--pod-nav-menu-bg-selected-color);
313
+ --pod-nav-logo-border: 1px solid #BC9AB7;
314
+ --pod-nav-logo-icon: var(--pod-nav-item-text-selected-color);
315
+ --pod-nav-logo-border-radius: 10px;
316
316
  --pod-nav-logo-size: 32px;
317
317
  --pod-nav-logo-img-size: calc(var(--pod-nav-logo-size, 32px) - 6px);
318
318
 
319
319
  /* 新版导航搜索 & 菜单栏 & 导航项气泡 */
320
320
  --pod-nav-search-height: var(--pod-nav-platform-row-height, 32px);
321
- --pod-nav-search-border-color: transparent;
321
+ --pod-nav-search-border-color: #BC9AB7;
322
322
  --pod-nav-search-menu-gap: 8px;
323
323
  --pod-nav-menu-panel-search-padding-top: 8px;
324
324
  --pod-nav-menu-panel-top: 12px;
325
325
  --pod-nav-menu-panel-after-collapse-top: 40px;
326
- --pod-nav-menu-item-height: 36px;
326
+ --pod-nav-menu-item-height: 44px;
327
327
  --pod-nav-menu-item-padding: 8px;
328
- --pod-nav-menu-item-radius: var(--pod-sm-border-radius, 8px);
328
+ --pod-nav-menu-item-radius: 16px 4px 16px 4px;
329
+ --pod-nav-menu-item-border: 1px solid #BC9AB7;
330
+ --pod-nav-menu-item-hover-border: 1px solid #653A61;
331
+ --pod-nav-menu-item-selected-border: 1px solid #492746;
329
332
  --pod-nav-menu-font-size: 14px;
330
- --pod-nav-menu-item-selected-font-weight: 400;
333
+ --pod-nav-menu-item-selected-font-weight: 500;
334
+ --pod-nav-menu-item-selected-shadow: none;
331
335
  --pod-nav-menu-line-height: 20px;
332
336
  --pod-nav-menu-icon-size: 16px;
333
337
  --pod-nav-menu-arrow-icon-size: 12px;
334
- --pod-nav-menu-gap: 8px;
338
+ --pod-nav-menu-gap: 10px;
335
339
  --pod-nav-menu-item-gap: 4px;
336
340
  --pod-nav-popup-width: 220px;
337
341
  --pod-nav-popup-max-height: 400px;
338
342
  --pod-nav-popup-padding: 8px;
339
- --pod-nav-popup-border-radius: var(--corner-3);
340
- --pod-nav-popup-shadow: 0 8px 24px rgba(31, 35, 41, 0.12);
343
+ --pod-nav-popup-border-radius: 10px;
344
+ --pod-nav-popup-shadow: 0 8px 24px rgba(101,58,97,.10);
341
345
 
342
346
  /* 侧导菜单滚动区底部渐隐遮罩高度,并预留等高底部空间。 */
343
347
  --pod-nav-menu-fade-height: 32px;
@@ -355,12 +359,33 @@
355
359
  --page-bg: var(--pod-page-bg-color, #fff);
356
360
  --card-bg: var(--pod-card-bg-color, #fff);
357
361
  --popup-bg: var(--color-fill1-5, #fff);
358
- --pod-shell-theme-bg-color: #FFFFFF;
359
- --pod-nav-item-text-color: #595959;
360
- --pod-nav-item-text-hover-color: #262626;
361
- --pod-nav-item-text-selected-color: var(--color-brand1-6);
362
- --pod-nav-menu-bg-hover-color: #F5F5F5;
363
- --pod-nav-menu-bg-selected-color: #F0F0F0;
362
+ --pod-shell-theme-bg-color: #EEE2EB;
363
+ --pod-nav-item-text-color: #653A61;
364
+ --pod-nav-item-text-hover-color: #492746;
365
+ --pod-nav-item-text-selected-color: #FFF9FD;
366
+ --pod-nav-menu-bg-hover-color: #DECBDD;
367
+ --pod-nav-menu-bg-selected-color: #653A61;
368
+ --pod-nav-logo-text: var(--pod-nav-item-text-hover-color);
369
+ --pod-nav-sub-divider-color: #BC9AB7;
370
+ --pod-nav-item-text-disabled-color: rgba(24,28,31,.30);
371
+ --pod-nav-l-container-bg: var(--pod-shell-theme-bg-color);
372
+ --pod-nav-l-group-label-color: var(--pod-nav-item-text-color);
373
+ --pod-nav-l-search-border-color: #BC9AB7;
374
+ --pod-nav-popup-bg-color: var(--pod-shell-theme-bg-color);
375
+ --pod-nav-tab-line-hover-color: var(--pod-nav-item-text-hover-color);
376
+ --pod-nav-tab-line-selected-color: var(--pod-nav-item-text-hover-color);
377
+ --pod-nav-search-bg-color: var(--pod-nav-menu-bg-hover-color);
378
+ --pod-nav-search-bg-hover-color: var(--pod-nav-menu-bg-hover-color);
379
+ --pod-nav-search-bg-active-color: var(--pod-nav-menu-bg-hover-color);
380
+ --pod-nav-search-placeholder-color: var(--pod-nav-item-text-color);
381
+ --pod-nav-search-text-color: var(--pod-nav-item-text-hover-color);
382
+ --pod-nav-search-icon-color: var(--pod-nav-item-text-color);
383
+ --pod-nav-search-border-hover-color: var(--pod-nav-item-text-hover-color);
384
+ --pod-nav-search-border-active-color: var(--pod-nav-item-text-hover-color);
385
+ --pod-nav-action-icon-color: var(--pod-nav-item-text-color);
386
+ --pod-nav-action-border-color: #BC9AB7;
387
+ --pod-nav-action-bg-hover-color: var(--pod-nav-menu-bg-hover-color);
388
+ --pod-nav-action-bg-active-color: var(--pod-nav-menu-bg-hover-color);
364
389
  --input-hover-bg-color: #fffdfd;
365
390
  --oyd-page-bg: var(--pod-page-bg-color);
366
391
  --oyd-surface: var(--pod-card-bg-color);
@@ -378,11 +403,11 @@
378
403
  --oyd-rule-style: double;
379
404
  --oyd-layout-columns: minmax(0, 7fr) minmax(0, 5fr);
380
405
  --oyd-surface-shadow: none;
381
- --color-brand-1: #332D32;
382
- --color-brand-2: #7A6679;
383
- --color-brand-3: #685167;
384
- --color-brand-4: #4F3E4E;
385
- --color-group: #685167, #7A6679, #362D35, #EDEAED, #4F3E4E, #F9F8F9;
406
+ --color-brand-1: var(--color-brand1-10);
407
+ --color-brand-2: var(--color-brand1-1);
408
+ --color-brand-3: var(--color-brand1-6);
409
+ --color-brand-4: var(--color-brand1-9);
410
+ --color-group: var(--color-brand1-6), var(--color-brand1-1), var(--color-brand1-5), var(--color-brand1-2), var(--color-brand1-9), var(--color-brand1-3);
386
411
  }
387
412
 
388
413
  /* 独立提交页(含抽屉 iframe)使用应用外衬;平台默认壳层取导航背景且不消费背景图。 */
@@ -394,6 +419,22 @@ body.pod-premium.page-type-submit .vc-shell-without-nav.pod-premium {
394
419
  background-size: cover;
395
420
  }
396
421
 
422
+ /* 原生详情属于内容区,独立页面和抽屉内都沿用内容画布与前景。 */
423
+ body.pod-premium.page-type-detail .vc-shell-without-nav.pod-premium {
424
+ background-color: var(--pod-page-bg-color, var(--color-white, #fff));
425
+ --pod-theme-text-color: var(--color-text1-4, #202020);
426
+ }
427
+
428
+ /* 详情顶栏的独立图标使用内容文字色,保留按钮自身的禁用状态。 */
429
+ body.pod-premium.page-type-detail .top-banner-area
430
+ .next-yida-button-iconOnly:not([disabled]):not(.disabled) .next-icon {
431
+ color: var(--color-text1-3, #737373);
432
+ }
433
+ body.pod-premium.page-type-detail .top-banner-area
434
+ .next-yida-button-iconOnly:not([disabled]):not(.disabled):hover .next-icon {
435
+ color: var(--color-text1-4, #202020);
436
+ }
437
+
397
438
  /* 按实际底栏类型适配 PC 固定提交栏,不按有无导航判断。
398
439
  * 排除 DATA_MANAGE 和容器内 sticky 模式;抽屉提交标记按平台规则优先。
399
440
  * 管理页、旧主题、移动端继续由各自布局负责占位。 */
@@ -448,44 +489,46 @@ body.pod-premium.page-type-submit
448
489
 
449
490
  :root {
450
491
  /* Light theme defaults. */
451
- --pod-nav-logo-text: var(--color-text1-4, #202020);
452
- --pod-nav-sub-divider-color: var(--color-line1-1, #efefef);
453
- --pod-nav-item-text-color: #595959;
454
- --pod-nav-item-text-hover-color: #262626;
455
- --pod-nav-item-text-disabled-color: rgba(24, 28, 31, 0.24);
456
- --pod-nav-item-text-selected-color: var(--color-brand1-6);
457
- --pod-nav-menu-bg-hover-color: #F5F5F5;
458
- --pod-nav-menu-bg-selected-color: #F0F0F0;
459
- --pod-nav-l-container-bg: rgba(255, 255, 255, 0.4);
460
- --pod-nav-l-group-label-color: rgba(24, 28, 31, 0.4);
461
- --pod-nav-l-search-border-color: rgba(0, 0, 0, 0);
462
- --pod-nav-popup-bg-color: var(--popup-bg, var(--color-white, #fff));
463
- --pod-nav-tab-line-hover-color: var(--color-brand1-6, #685167);
464
- --pod-nav-tab-line-selected-color: var(--color-brand1-6, #685167);
465
- --pod-nav-search-bg-color: var(--ovrelay-fill1-6, rgba(24, 28, 31, 0.06));
466
- --pod-nav-search-bg-hover-color: var(--ovrelay-fill1-6, rgba(24, 28, 31, 0.06));
467
- --pod-nav-search-bg-active-color: rgba(83, 88, 97, 0.24);
468
- --pod-nav-search-placeholder-color: var(--color-text1-1, #d6d6d6);
469
- --pod-nav-search-text-color: var(--color-text1-4, #202020);
470
- --pod-nav-search-icon-color: var(--color-text1-2, #adadad);
471
- --pod-nav-search-border-hover-color: var(--color-brand1-6, #685167);
472
- --pod-nav-search-border-active-color: var(--color-brand1-6, #685167);
473
- --pod-nav-action-icon-color: var(--color-text1-2, #adadad);
474
- --pod-nav-action-border-color: rgba(24, 28, 31, 0.12);
475
- --pod-nav-action-bg-hover-color: rgba(83, 88, 97, 0.16);
476
- --pod-nav-action-bg-active-color: rgba(83, 88, 97, 0.24);
492
+ --pod-nav-logo-text: var(--pod-nav-item-text-hover-color);
493
+ --pod-nav-sub-divider-color: #BC9AB7;
494
+ --pod-nav-item-text-color: #653A61;
495
+ --pod-nav-item-text-hover-color: #492746;
496
+ --pod-nav-item-text-disabled-color: rgba(24,28,31,.30);
497
+ --pod-nav-item-text-selected-color: #FFF9FD;
498
+ --pod-nav-menu-bg-hover-color: #DECBDD;
499
+ --pod-nav-menu-bg-selected-color: #653A61;
500
+ --pod-nav-l-container-bg: var(--pod-shell-theme-bg-color);
501
+ --pod-nav-l-group-label-color: var(--pod-nav-item-text-color);
502
+ --pod-nav-l-search-border-color: #BC9AB7;
503
+ --pod-nav-popup-bg-color: var(--pod-shell-theme-bg-color);
504
+ --pod-nav-tab-line-hover-color: var(--pod-nav-item-text-hover-color);
505
+ --pod-nav-tab-line-selected-color: var(--pod-nav-item-text-hover-color);
506
+ --pod-nav-search-bg-color: var(--pod-nav-menu-bg-hover-color);
507
+ --pod-nav-search-bg-hover-color: var(--pod-nav-menu-bg-hover-color);
508
+ --pod-nav-search-bg-active-color: var(--pod-nav-menu-bg-hover-color);
509
+ --pod-nav-search-placeholder-color: var(--pod-nav-item-text-color);
510
+ --pod-nav-search-text-color: var(--pod-nav-item-text-hover-color);
511
+ --pod-nav-search-icon-color: var(--pod-nav-item-text-color);
512
+ --pod-nav-search-border-hover-color: var(--pod-nav-item-text-hover-color);
513
+ --pod-nav-search-border-active-color: var(--pod-nav-item-text-hover-color);
514
+ --pod-nav-action-icon-color: var(--pod-nav-item-text-color);
515
+ --pod-nav-action-border-color: #BC9AB7;
516
+ --pod-nav-action-bg-hover-color: var(--pod-nav-menu-bg-hover-color);
517
+ --pod-nav-action-bg-active-color: var(--pod-nav-menu-bg-hover-color);
477
518
  --pod-theme-text-color: var(--color-text1-4, #202020);
478
519
  --pod-page-header-text-color: var(--pod-theme-text-color, var(--color-text1-4, #202020));
479
520
  }
480
521
 
481
522
  .pod-premium.nav-light {
482
- --pod-shell-theme-bg-color: #FFFFFF;
483
- --pod-page-header-bg-color: #FFFFFF;
523
+ --pod-shell-theme-bg-color: #EEE2EB;
524
+ --pod-page-header-bg-color: var(--pod-shell-theme-bg-color);
525
+ --pod-shell-lshape-border-radius: 10px;
484
526
  }
485
527
 
486
528
  .pod-premium.nav-dark {
487
529
  --pod-shell-theme-bg-color: var(--pod-shell-bg-color-dark, var(--color-brand1-5, rgba(52, 50, 44, 1)));
488
530
  --pod-page-header-bg-color: var(--pod-shell-theme-bg-color, var(--color-white, #fff));
531
+ --pod-shell-lshape-border-radius: 16px;
489
532
  }
490
533
 
491
534
  .pod-premium.nav-white {
@@ -501,15 +544,53 @@ body.pod-premium.page-type-submit
501
544
  .pod-premium.is-light {
502
545
  --pod-theme-text-color: var(--color-text1-4, #202020);
503
546
  --pod-page-header-text-color: var(--pod-theme-text-color, var(--color-text1-4, #202020));
504
- --pod-nav-logo-bg: var(--color-brand1-6, #685167);
505
- --pod-nav-logo-border: none;
506
- --pod-nav-item-text-selected-color: var(--color-brand1-6);
507
- --pod-nav-menu-bg-selected-color: #F0F0F0;
508
- --pod-nav-popup-bg-color: var(--color-white, #fff);
509
- --pod-nav-action-icon-color: var(--color-text1-2, #adadad);
510
- --pod-nav-item-text-color: #595959;
511
- --pod-nav-item-text-hover-color: #262626;
512
- --pod-nav-menu-bg-hover-color: #F5F5F5;
547
+ --pod-nav-logo-bg: var(--pod-nav-menu-bg-selected-color);
548
+ --pod-nav-logo-border: 1px solid #BC9AB7;
549
+ --pod-nav-item-text-selected-color: #FFF9FD;
550
+ --pod-nav-menu-bg-selected-color: #653A61;
551
+ --pod-nav-popup-bg-color: var(--pod-shell-theme-bg-color);
552
+ --pod-nav-action-icon-color: var(--pod-nav-item-text-color);
553
+ --pod-nav-item-text-color: #653A61;
554
+ --pod-nav-item-text-hover-color: #492746;
555
+ --pod-nav-menu-bg-hover-color: #DECBDD;
556
+ --pod-nav-l-sub-main-bg-color: var(--pod-shell-theme-bg-color);
557
+ --pod-nav-top-main-border-width: 1px;
558
+ --pod-nav-top-main-border-color: #BC9AB7;
559
+ --pod-nav-top-tab-indicator-width: 0px;
560
+ --pod-nav-logo-text: var(--pod-nav-item-text-hover-color);
561
+ --pod-nav-logo-icon: var(--pod-nav-item-text-selected-color);
562
+ --pod-nav-logo-border-radius: 10px;
563
+ --pod-nav-sub-divider-color: #BC9AB7;
564
+ --pod-nav-item-text-disabled-color: rgba(24,28,31,.30);
565
+ --pod-nav-l-container-bg: var(--pod-shell-theme-bg-color);
566
+ --pod-nav-l-group-label-color: var(--pod-nav-item-text-color);
567
+ --pod-nav-l-search-border-color: #BC9AB7;
568
+ --pod-nav-popup-border-radius: 10px;
569
+ --pod-nav-popup-shadow: 0 8px 24px rgba(101,58,97,.10);
570
+ --pod-nav-tab-line-hover-color: var(--pod-nav-item-text-hover-color);
571
+ --pod-nav-tab-line-selected-color: var(--pod-nav-item-text-hover-color);
572
+ --pod-nav-search-bg-color: var(--pod-nav-menu-bg-hover-color);
573
+ --pod-nav-search-bg-hover-color: var(--pod-nav-menu-bg-hover-color);
574
+ --pod-nav-search-bg-active-color: var(--pod-nav-menu-bg-hover-color);
575
+ --pod-nav-search-placeholder-color: var(--pod-nav-item-text-color);
576
+ --pod-nav-search-text-color: var(--pod-nav-item-text-hover-color);
577
+ --pod-nav-search-icon-color: var(--pod-nav-item-text-color);
578
+ --pod-nav-search-border-color: #BC9AB7;
579
+ --pod-nav-search-border-hover-color: var(--pod-nav-item-text-hover-color);
580
+ --pod-nav-search-border-active-color: var(--pod-nav-item-text-hover-color);
581
+ --pod-nav-action-border-color: #BC9AB7;
582
+ --pod-nav-action-border: 1px solid #BC9AB7;
583
+ --pod-nav-action-bg-hover-color: var(--pod-nav-menu-bg-hover-color);
584
+ --pod-nav-action-bg-active-color: var(--pod-nav-menu-bg-hover-color);
585
+ --pod-nav-menu-item-height: 44px;
586
+ --pod-nav-menu-item-radius: 16px 4px 16px 4px;
587
+ --pod-nav-menu-item-border: 1px solid #BC9AB7;
588
+ --pod-nav-menu-item-hover-border: 1px solid #653A61;
589
+ --pod-nav-menu-item-selected-border: 1px solid #492746;
590
+ --pod-nav-menu-font-size: 14px;
591
+ --pod-nav-menu-item-selected-font-weight: 500;
592
+ --pod-nav-menu-line-height: 20px;
593
+ --pod-nav-menu-gap: 10px;
513
594
  }
514
595
 
515
596
  .pod-premium.is-dark {
@@ -529,7 +610,7 @@ body.pod-premium.page-type-submit
529
610
  --pod-nav-l-container-bg: rgba(255, 255, 255, 0.08);
530
611
  --pod-nav-l-group-label-color: rgba(255, 255, 255, 0.4);
531
612
  --pod-nav-l-search-border-color: rgba(255, 255, 255, 0.05);
532
- --pod-nav-popup-bg-color: var(--pod-shell-bg-color-dark, var(--color-brand1-5, #362D35));
613
+ --pod-nav-popup-bg-color: var(--pod-shell-bg-color-dark, var(--color-brand1-5, rgba(52, 50, 44, 1)));
533
614
  --pod-nav-tab-line-hover-color: #fff;
534
615
  --pod-nav-tab-line-selected-color: #fff;
535
616
  --pod-nav-search-bg-color: rgba(255, 255, 255, 0.12);
@@ -545,7 +626,67 @@ body.pod-premium.page-type-submit
545
626
  --pod-nav-action-border: 0.5px solid rgba(255, 255, 255, 0.2);
546
627
  --pod-nav-action-bg-hover-color: rgba(255, 255, 255, 0.12);
547
628
  --pod-nav-action-bg-active-color: rgba(255, 255, 255, 0.16);
629
+ --pod-nav-l-sub-main-bg-color: var(--color-white, #fff);
630
+ --pod-nav-top-main-border-width: 1px;
631
+ --pod-nav-top-main-border-color: #00000014;
632
+ --pod-nav-top-tab-indicator-width: 2px;
633
+ --pod-nav-logo-icon: var(--color-text1-5, #fff);
634
+ --pod-nav-logo-border-radius: 6px;
635
+ --pod-nav-popup-border-radius: var(--corner-3);
636
+ --pod-nav-popup-shadow: 0 8px 24px rgba(31, 35, 41, 0.12);
637
+ --pod-nav-search-border-color: transparent;
638
+ --pod-nav-menu-item-height: 36px;
639
+ --pod-nav-menu-item-radius: var(--pod-sm-border-radius, 8px);
640
+ --pod-nav-menu-item-border: none;
641
+ --pod-nav-menu-item-hover-border: var(--pod-nav-menu-item-border);
642
+ --pod-nav-menu-item-selected-border: var(--pod-nav-menu-item-border);
643
+ --pod-nav-menu-font-size: 14px;
644
+ --pod-nav-menu-item-selected-font-weight: 400;
645
+ --pod-nav-menu-line-height: 20px;
646
+ --pod-nav-menu-gap: 8px;
647
+ }
648
+
649
+ /* openyida-navigation-shape:start */
650
+ /* Side/L navigation and top tabs share the same theme-defined menu shape.
651
+ * Border widths stay constant between states; border-box keeps row height stable. */
652
+ .pod-premium .deep-shell-nav-menu-content .next-nav-item,
653
+ .pod-premium .deep-shell-nav-tab-list .next-nav-item {
654
+ box-sizing: border-box;
655
+ border-radius: var(--pod-nav-menu-item-radius, 8px);
656
+ border: var(--pod-nav-menu-item-border, none);
657
+ }
658
+ /* Native inner rows also have a fixed minimum height. Fit them inside the
659
+ * bordered item instead of letting a thick outline push content below it. */
660
+ .vc-shell.pod-premium .next-nav.next-line.next-ver.deep-shell-nav-menu-content:not(.next-icon-only) .next-nav-item.next-menu-item > .next-menu-item-inner,
661
+ .vc-shell.pod-premium .next-shell-header .next-shell-navigation .next-nav.next-line.next-hoz.deep-shell-nav-tab-list .next-nav-item.next-menu-item > .next-menu-item-inner {
662
+ box-sizing: border-box;
663
+ height: 100% !important;
664
+ min-height: 0 !important;
665
+ }
666
+ .pod-premium .deep-shell-nav-menu-content .next-nav-item:hover,
667
+ .pod-premium .deep-shell-nav-tab-list .next-nav-item:hover {
668
+ border: var(--pod-nav-menu-item-hover-border, var(--pod-nav-menu-item-border, none));
669
+ }
670
+ /* Platform top tabs use transparent backgrounds and zero margin !important.
671
+ * Match the header scope so theme surfaces and spacing can reveal their shape. */
672
+ .vc-shell.pod-premium .next-shell-header .next-shell-navigation .next-nav.next-line.next-hoz.deep-shell-nav-tab-list .next-nav-item.next-menu-item {
673
+ margin-inline: calc(var(--pod-nav-menu-gap, 8px) / 2) !important;
674
+ }
675
+ .vc-shell.pod-premium .next-shell-header .next-shell-navigation .next-nav.next-line.next-hoz.deep-shell-nav-tab-list .next-nav-item.next-menu-item:hover {
676
+ background: var(--pod-nav-menu-bg-hover-color) !important;
677
+ color: var(--pod-nav-item-text-hover-color) !important;
678
+ }
679
+ .vc-shell.pod-premium .next-shell-header .next-shell-navigation .next-nav.next-line.next-hoz.deep-shell-nav-tab-list .next-nav-item.next-menu-item.next-selected {
680
+ background: var(--pod-nav-menu-bg-selected-color) !important;
681
+ color: var(--pod-nav-item-text-selected-color) !important;
682
+ }
683
+ /* Selected state wins over hover, retaining the original inset-shadow marker. */
684
+ .pod-premium .deep-shell-nav-menu-content .next-nav-item.next-selected,
685
+ .pod-premium .deep-shell-nav-tab-list .next-nav-item.next-selected {
686
+ border: var(--pod-nav-menu-item-selected-border, var(--pod-nav-menu-item-border, none));
687
+ box-shadow: var(--pod-nav-menu-item-selected-shadow, none);
548
688
  }
689
+ /* openyida-navigation-shape:end */
549
690
 
550
691
  /* OPENYIDA APPLICATION STYLE RECIPES START
551
692
  * Opt-in semantic classes for custom pages. Native form structure stays in Schema.