openyida 2026.9.21 → 2026.9.22-beta.2

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 (334) hide show
  1. package/README.md +14 -20
  2. package/bin/yida.js +6 -11
  3. package/lib/app/app-list.js +3 -7
  4. package/lib/app/canvas-compile.js +12 -22
  5. package/lib/app/check-prd-completeness.js +0 -7
  6. package/lib/app/create-app.js +1 -4
  7. package/lib/app/create-form/args.js +12 -37
  8. package/lib/app/create-form/batch.js +11 -86
  9. package/lib/app/create-form.js +86 -193
  10. package/lib/app/create-page.js +17 -84
  11. package/lib/app/custom-theme.js +0 -11
  12. package/lib/app/form-field-validator.js +41 -26
  13. package/lib/app/form-open-guard.js +10 -97
  14. package/lib/app/get-form-config.js +0 -1
  15. package/lib/app/inline-css-guard.js +31 -1
  16. package/lib/app/services/form-compiler.js +4 -2
  17. package/lib/app/theme-from-design.js +41 -144
  18. package/lib/app/theme-presets.js +1 -1
  19. package/lib/app/update-app.js +13 -63
  20. package/lib/asset/ai-image.js +9 -59
  21. package/lib/asset/asset-cmd.js +7 -18
  22. package/lib/asset/asset-plan.js +9 -102
  23. package/lib/asset/asset-resolve.js +10 -55
  24. package/lib/asset/asset-status.js +4 -5
  25. package/lib/asset/host-capabilities.js +2 -11
  26. package/lib/asset/url-verify.js +4 -19
  27. package/lib/auth/dws-sync.js +148 -0
  28. package/lib/auth/token-auth.js +73 -9
  29. package/lib/auth/token-store.js +50 -0
  30. package/lib/connector/connector-test.js +5 -19
  31. package/lib/connector/contract.js +1 -3
  32. package/lib/core/agent-capabilities.js +16 -19
  33. package/lib/core/command-manifest.js +40 -329
  34. package/lib/core/locales/en.js +17 -74
  35. package/lib/core/locales/zh.js +16 -73
  36. package/lib/core/redact.js +10 -15
  37. package/lib/core/sample.js +30 -72
  38. package/lib/core/utils.js +4 -0
  39. package/lib/design-plan/design-plan.js +4 -51
  40. package/lib/design-plan/init.js +26 -121
  41. package/lib/design-plan/materialize.js +348 -451
  42. package/lib/design-plan/normalize.js +29 -74
  43. package/lib/design-plan/parallel.js +16 -71
  44. package/lib/design-plan/patch.js +16 -63
  45. package/lib/design-plan/preview.js +8 -6
  46. package/lib/design-plan/validate.js +11 -71
  47. package/lib/process/create-process.js +50 -84
  48. package/lib/samples/openyida-scaffold/canvas-form-drawer.canvas.jsx +90 -20
  49. package/lib/samples/openyida-scaffold/canvas-nav/content.jsx +13 -93
  50. package/lib/samples/openyida-scaffold/canvas-nav/data.jsx +18 -100
  51. package/lib/samples/openyida-scaffold/canvas-nav/mixed.jsx +4 -6
  52. package/lib/samples/openyida-scaffold/canvas-nav/shared.jsx +5 -5
  53. package/lib/samples/openyida-scaffold/canvas-nav/side.jsx +2 -1
  54. package/lib/samples/openyida-scaffold/canvas-nav/sidebar.jsx +1 -1
  55. package/lib/samples/openyida-scaffold/canvas-nav/top.jsx +9 -15
  56. package/lib/samples/yida-canvas-table-form/table-form-batch-submit.canvas.jsx +83 -9
  57. package/lib/samples/yida-rechart/trend-combo.canvas.jsx +87 -14
  58. package/package.json +1 -3
  59. package/scripts/postinstall.js +3 -3
  60. package/yida-skills/SKILL.md +16 -19
  61. package/yida-skills/references/official-example-schema-patterns.md +1 -1
  62. package/yida-skills/references/yida-api.md +0 -4
  63. package/yida-skills/skills/yida-app/SKILL.md +23 -46
  64. package/yida-skills/skills/yida-app/workflow/parallel-work.md +6 -15
  65. package/yida-skills/skills/yida-app/workflow/plan/step-1-understand.md +1 -1
  66. package/yida-skills/skills/yida-app/workflow/plan/step-2-confirm.md +1 -1
  67. package/yida-skills/skills/yida-app/workflow/plan/step-4-deliver.md +15 -29
  68. package/yida-skills/skills/yida-app/workflow/plan/workflow.md +11 -29
  69. package/yida-skills/skills/yida-app/workflow/step-1-resource-context.md +2 -4
  70. package/yida-skills/skills/yida-app/workflow/step-2-design.md +9 -23
  71. package/yida-skills/skills/yida-app/workflow/step-3-create-or-reuse-app.md +4 -6
  72. package/yida-skills/skills/yida-app/workflow/step-4-forms-processes.md +4 -15
  73. package/yida-skills/skills/yida-app/workflow/step-6-main-page.md +4 -6
  74. package/yida-skills/skills/yida-app/workflow/step-7-page-code.md +9 -15
  75. package/yida-skills/skills/yida-app/workflow/step-8-publish-navigation.md +11 -25
  76. package/yida-skills/skills/yida-app/workflow/step-9-output-finish.md +28 -68
  77. package/yida-skills/skills/yida-canvas-custom-page/SKILL.md +43 -42
  78. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-style-implementation-guide.md +44 -60
  79. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-theme-provider.md +50 -72
  80. package/yida-skills/skills/yida-canvas-custom-page/references/component-library-guide.md +1 -13
  81. package/yida-skills/skills/yida-canvas-custom-page/references/data-bridge-guide.md +1 -140
  82. package/yida-skills/skills/yida-canvas-custom-page/references/navigation-and-entry-guide.md +72 -101
  83. package/yida-skills/skills/yida-canvas-custom-page/references/page-generation-guide.md +32 -35
  84. package/yida-skills/skills/yida-canvas-custom-page/scripts/build-canvas-theme.js +3 -29
  85. package/yida-skills/skills/yida-canvas-custom-page/scripts/canvas-theme-provider.template.jsx +6 -69
  86. package/yida-skills/skills/yida-canvas-data-binding/SKILL.md +0 -26
  87. package/yida-skills/skills/yida-create-app/SKILL.md +0 -2
  88. package/yida-skills/skills/yida-create-form-page/SKILL.md +58 -72
  89. package/yida-skills/skills/yida-create-form-page/references/advanced-form-modes.md +5 -5
  90. package/yida-skills/skills/yida-create-form-page/references/association-form-field.md +4 -4
  91. package/yida-skills/skills/yida-create-form-page/references/batch-forms.md +5 -6
  92. package/yida-skills/skills/yida-create-form-page/references/field-definition-guide.md +19 -7
  93. package/yida-skills/skills/yida-create-form-page/references/form-field-properties.md +44 -62
  94. package/yida-skills/skills/yida-create-page/SKILL.md +6 -14
  95. package/yida-skills/skills/yida-create-process/SKILL.md +2 -13
  96. package/yida-skills/skills/yida-custom-page/SKILL.md +0 -2
  97. package/yida-skills/skills/yida-custom-page/references/design-system.md +1 -1
  98. package/yida-skills/skills/yida-dashboard/SKILL.md +4 -5
  99. package/yida-skills/skills/yida-data-management/SKILL.md +2 -4
  100. package/yida-skills/skills/yida-data-management/references/data-format-guide.md +4 -4
  101. package/yida-skills/skills/yida-design/SKILL.md +14 -29
  102. package/yida-skills/skills/yida-design/references/app/blueprint.md +70 -0
  103. package/yida-skills/skills/yida-design/references/app/navigation-patterns.md +43 -0
  104. package/yida-skills/skills/yida-design/references/app/role-journey.md +30 -0
  105. package/yida-skills/skills/yida-design/references/ask-human-interaction-contract.md +42 -67
  106. package/yida-skills/skills/yida-design/references/asset-workflow.md +2 -6
  107. package/yida-skills/skills/yida-design/references/design-mode.md +4 -4
  108. package/yida-skills/skills/yida-design/references/page-quality-gates.md +38 -26
  109. package/yida-skills/skills/yida-design/references/style-design-selection.md +137 -0
  110. package/yida-skills/skills/yida-design/references/style-designs/_design-md-template.md +185 -0
  111. package/yida-skills/skills/yida-design/references/style-designs/aqua-service-progress-dashboard.md +242 -0
  112. package/yida-skills/skills/yida-design/references/style-designs/blue-insight-operations-dashboard.md +243 -0
  113. package/yida-skills/skills/yida-design/references/style-designs/blue-productivity-insight-workbench.md +242 -0
  114. package/yida-skills/skills/yida-design/references/style-designs/command-filter-card-console.md +304 -0
  115. package/yida-skills/skills/yida-design/references/style-designs/contrast-command-analytics-workbench.md +261 -0
  116. package/yida-skills/skills/yida-design/references/style-designs/dark-stage-analytic-dashboard.md +369 -0
  117. package/yida-skills/skills/yida-design/references/style-designs/filterable-card-catalog.md +354 -0
  118. package/yida-skills/skills/yida-design/references/style-designs/green-timeline-progress-workbench.md +250 -0
  119. package/yida-skills/skills/yida-design/references/style-designs/registry.md +117 -0
  120. package/yida-skills/skills/yida-design/references/style-designs/soft-analytic-workbench.md +348 -0
  121. package/yida-skills/skills/yida-design/references/style-designs/soft-blue-grid-analytic-dashboard.md +658 -0
  122. package/yida-skills/skills/yida-design/references/style-designs/soft-bordered-analytic-workbench.md +385 -0
  123. package/yida-skills/skills/yida-design/references/style-designs/soft-curated-filter-gallery.md +300 -0
  124. package/yida-skills/skills/yida-design/references/style-designs/soft-modular-analytic-workbench.md +404 -0
  125. package/yida-skills/skills/yida-design/references/style-designs/soft-progress-analytics-workbench.md +382 -0
  126. package/yida-skills/skills/yida-design/references/style-designs/soft-timeline-analytics-workbench.md +367 -0
  127. package/yida-skills/skills/yida-design/references/style-designs/teal-rail-analytics-workbench.md +341 -0
  128. package/yida-skills/skills/yida-design/references/theme/app-custom-theme-template.css +432 -350
  129. package/yida-skills/skills/yida-design/references/visual-decision-engine.md +143 -19
  130. package/yida-skills/skills/yida-design/references/visual-scaffold-recipes.md +27 -15
  131. package/yida-skills/skills/yida-design/sub_skill/page-design/SKILL.md +0 -4
  132. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/SKILL.md +8 -22
  133. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/assets/README.md +10 -14
  134. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/assets/build-plan-template.html +4 -9
  135. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-compact-schema.md +27 -49
  136. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-schema.md +154 -33
  137. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-design.md +127 -48
  138. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-theme-selection.md +51 -37
  139. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/render_build_plan.py +48 -43
  140. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/validate_design_themes.py +190 -0
  141. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/README.md +98 -0
  142. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-media-grid.md +339 -0
  143. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-modular-clarity.md +348 -0
  144. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-structured-clarity.md +344 -0
  145. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/ambient-halo-layered.md +345 -0
  146. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/dark-focus-layered.md +355 -0
  147. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/dark-luminous-modular.md +377 -0
  148. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/deep-stage-duotone.md +352 -0
  149. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/hairline-runway-clarity.md +389 -0
  150. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/high-contrast-modular.md +364 -0
  151. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/index.json +329 -0
  152. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/interlocked-vivid-modules.md +348 -0
  153. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/matrix-grid-focus.md +345 -0
  154. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/media-rail-inspector.md +379 -0
  155. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/mist-layered-signal.md +347 -0
  156. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/modular-rail-signal.md +352 -0
  157. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/mono-grid-signal.md +386 -0
  158. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/ribbon-ledger-lift.md +384 -0
  159. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/segmented-meter-clarity.md +388 -0
  160. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/split-rail-precision.md +341 -0
  161. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/status-framed-media-grid.md +361 -0
  162. package/yida-skills/skills/yida-design/workflow/output-design.md +375 -117
  163. package/yida-skills/skills/yida-design/workflow/output-prd.md +185 -0
  164. package/yida-skills/skills/yida-design/workflow/step-1-read-brief.md +1 -1
  165. package/yida-skills/skills/yida-design/workflow/step-2-theme-system.md +29 -33
  166. package/yida-skills/skills/yida-design/workflow/step-4-wireframe-interaction.md +1 -3
  167. package/yida-skills/skills/yida-design/workflow/step-5-visual-states.md +106 -22
  168. package/yida-skills/skills/yida-design/workflow/step-6-handoff.md +22 -15
  169. package/yida-skills/skills/yida-form-permission/SKILL.md +0 -6
  170. package/yida-skills/skills/yida-image-assets/SKILL.md +50 -73
  171. package/yida-skills/skills/yida-image-assets/references/manifest-contract.md +52 -82
  172. package/yida-skills/skills/yida-image-assets/references/source-policy.md +15 -14
  173. package/yida-skills/skills/yida-integration/SKILL.md +0 -1
  174. package/yida-skills/skills/yida-login/SKILL.md +0 -2
  175. package/yida-skills/skills/yida-nav-group/SKILL.md +2 -4
  176. package/yida-skills/skills/yida-nav-shell/SKILL.md +12 -36
  177. package/yida-skills/skills/yida-nav-shell/references/nav-shell-patterns.md +136 -79
  178. package/yida-skills/skills/yida-page-config/SKILL.md +4 -13
  179. package/yida-skills/skills/yida-prd/SKILL.md +3 -5
  180. package/yida-skills/skills/yida-prd/references/app/blueprint.md +4 -4
  181. package/yida-skills/skills/yida-prd/references/app/navigation-patterns.md +3 -6
  182. package/yida-skills/skills/yida-prd/references/app/role-journey.md +3 -5
  183. package/yida-skills/skills/yida-prd/references/plan-content.md +0 -4
  184. package/yida-skills/skills/yida-prd/workflow/output-prd.md +11 -18
  185. package/yida-skills/skills/yida-prd/workflow/plan-business.md +4 -4
  186. package/yida-skills/skills/yida-prd/workflow/step-2-information-architecture.md +8 -11
  187. package/yida-skills/skills/yida-publish-page/SKILL.md +1 -9
  188. package/yida-skills/skills/yida-requirement-analysis/SKILL.md +39 -10
  189. package/yida-skills/skills/yida-requirement-analysis/workflow/prepare-brief.md +71 -40
  190. package/yida-skills/skills-index.json +16 -36
  191. package/lib/app/application-entry-urls.js +0 -31
  192. package/lib/app/application-style.js +0 -69
  193. package/lib/app/canvas-icon-exports.json +0 -6160
  194. package/lib/app/canvas-icon-guard.js +0 -87
  195. package/lib/app/canvas-navigation-guard.js +0 -84
  196. package/lib/app/canvas-path-guard.js +0 -78
  197. package/lib/app/canvas-theme-guard.js +0 -184
  198. package/lib/app/form-data-response-guard.js +0 -57
  199. package/lib/asset/asset-execution.js +0 -79
  200. package/lib/core/css-structure.js +0 -37
  201. package/lib/design/check-design.js +0 -51
  202. package/lib/design/document.js +0 -458
  203. package/lib/design/icon-contrast.js +0 -85
  204. package/lib/design/page-content.js +0 -11
  205. package/lib/design-plan/artifact-updates.js +0 -117
  206. package/lib/design-plan/confirmation.js +0 -13
  207. package/lib/design-plan/entry-navigation.js +0 -97
  208. package/lib/design-plan/navigation-policy.js +0 -38
  209. package/lib/design-plan/rebase.js +0 -60
  210. package/lib/design-plan/themes.js +0 -101
  211. package/lib/design-plan/visual-policy.js +0 -42
  212. package/lib/samples/openyida-scaffold/canvas-admin-entry.jsx +0 -62
  213. package/lib/samples/openyida-scaffold/canvas-navigation.jsx +0 -56
  214. package/lib/samples/openyida-scaffold/canvas-view-state.jsx +0 -74
  215. package/yida-skills/skills/yida-app/references/entry-navigation.md +0 -193
  216. package/yida-skills/skills/yida-canvas-custom-page/references/view-state-recovery.md +0 -52
  217. package/yida-skills/skills/yida-canvas-data-binding/references/business-action-permissions.md +0 -31
  218. package/yida-skills/skills/yida-design/references/application-style-library.md +0 -93
  219. package/yida-skills/skills/yida-design/references/application-theme-consistency.md +0 -150
  220. package/yida-skills/skills/yida-design/references/native-form-styles.md +0 -208
  221. package/yida-skills/skills/yida-design/references/navigation-decision.md +0 -53
  222. package/yida-skills/skills/yida-design/references/page-continuity.md +0 -42
  223. package/yida-skills/skills/yida-design/references/theme/application-style-recipes.css +0 -58
  224. package/yida-skills/skills/yida-design/references/theme-selection.md +0 -67
  225. package/yida-skills/skills/yida-design/scripts/validate_design_themes.py +0 -302
  226. package/yida-skills/skills/yida-design/templates/application-styles.json +0 -398
  227. package/yida-skills/skills/yida-design/templates/design-themes/README.md +0 -73
  228. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/app_theme.css +0 -748
  229. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/design.md +0 -274
  230. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/form-layout.json +0 -15
  231. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/app_theme.css +0 -748
  232. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/design.md +0 -274
  233. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/form-layout.json +0 -14
  234. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/app_theme.css +0 -748
  235. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/design.md +0 -274
  236. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/form-layout.json +0 -13
  237. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/app_theme.css +0 -748
  238. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/design.md +0 -274
  239. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/form-layout.json +0 -14
  240. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/app_theme.css +0 -748
  241. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/design.md +0 -274
  242. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/form-layout.json +0 -14
  243. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/app_theme.css +0 -748
  244. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/design.md +0 -274
  245. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/form-layout.json +0 -14
  246. package/yida-skills/skills/yida-design/templates/design-themes/app-line/app_theme.css +0 -748
  247. package/yida-skills/skills/yida-design/templates/design-themes/app-line/design.md +0 -274
  248. package/yida-skills/skills/yida-design/templates/design-themes/app-line/form-layout.json +0 -13
  249. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/app_theme.css +0 -748
  250. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/design.md +0 -274
  251. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/form-layout.json +0 -14
  252. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/app_theme.css +0 -754
  253. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/design.md +0 -279
  254. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/form-layout.json +0 -13
  255. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/app_theme.css +0 -748
  256. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/design.md +0 -274
  257. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/form-layout.json +0 -13
  258. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/app_theme.css +0 -748
  259. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/design.md +0 -274
  260. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/form-layout.json +0 -14
  261. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/app_theme.css +0 -748
  262. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/design.md +0 -274
  263. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/form-layout.json +0 -14
  264. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/app_theme.css +0 -758
  265. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/design.md +0 -281
  266. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/form-layout.json +0 -14
  267. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/app_theme.css +0 -748
  268. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/design.md +0 -274
  269. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/form-layout.json +0 -14
  270. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/app_theme.css +0 -748
  271. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/design.md +0 -274
  272. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/form-layout.json +0 -14
  273. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/app_theme.css +0 -754
  274. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/design.md +0 -279
  275. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/form-layout.json +0 -14
  276. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/app_theme.css +0 -752
  277. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/design.md +0 -278
  278. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/form-layout.json +0 -13
  279. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/app_theme.css +0 -748
  280. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/design.md +0 -274
  281. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/form-layout.json +0 -14
  282. package/yida-skills/skills/yida-design/templates/design-themes/basic-tokens.json +0 -118
  283. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/app_theme.css +0 -690
  284. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/design.md +0 -382
  285. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/form-layout.json +0 -13
  286. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/app_theme.css +0 -691
  287. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/design.md +0 -380
  288. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/form-layout.json +0 -13
  289. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/app_theme.css +0 -696
  290. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/design.md +0 -378
  291. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/form-layout.json +0 -13
  292. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/app_theme.css +0 -689
  293. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/design.md +0 -238
  294. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/form-layout.json +0 -13
  295. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/app_theme.css +0 -692
  296. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/design.md +0 -375
  297. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/form-layout.json +0 -13
  298. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/app_theme.css +0 -691
  299. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/design.md +0 -362
  300. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/form-layout.json +0 -13
  301. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/app_theme.css +0 -691
  302. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/design.md +0 -409
  303. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/form-layout.json +0 -13
  304. package/yida-skills/skills/yida-design/templates/design-themes/index.json +0 -464
  305. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/app_theme.css +0 -701
  306. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/design.md +0 -379
  307. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/form-layout.json +0 -13
  308. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/app_theme.css +0 -691
  309. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/design.md +0 -404
  310. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/form-layout.json +0 -13
  311. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/app_theme.css +0 -698
  312. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/design.md +0 -389
  313. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/form-layout.json +0 -13
  314. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/app_theme.css +0 -691
  315. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/design.md +0 -372
  316. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/form-layout.json +0 -13
  317. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/app_theme.css +0 -690
  318. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/design.md +0 -455
  319. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/form-layout.json +0 -13
  320. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/app_theme.css +0 -698
  321. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/design.md +0 -394
  322. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/form-layout.json +0 -13
  323. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/app_theme.css +0 -692
  324. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/design.md +0 -391
  325. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/form-layout.json +0 -13
  326. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/app_theme.css +0 -711
  327. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/design.md +0 -408
  328. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/form-layout.json +0 -13
  329. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/app_theme.css +0 -692
  330. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/design.md +0 -383
  331. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/form-layout.json +0 -13
  332. package/yida-skills/skills/yida-design/templates/navigation-styles.json +0 -769
  333. package/yida-skills/skills/yida-requirement-analysis/references/experience-groups.md +0 -79
  334. package/yida-skills/skills/yida-requirement-analysis/references/handoff.md +0 -68
@@ -0,0 +1,352 @@
1
+ ---
2
+ name: "{{PROJECT_NAME}}"
3
+ description: 以近白画布、细描边模块、方形图标焦点、条件式主辅双列和复合趋势信号构成中等密度、清晰而富有节奏的层次主题。
4
+ themeId: modular-rail-signal
5
+ tokens:
6
+ application-global:
7
+ colors:
8
+ "--pod-page-bg-color": "var(--color-white, #fff)"
9
+ "--color-white": "#FFFFFF"
10
+ "--color-brand1-1": "<基于 --color-brand1-6 生成的实际色值:与白色混合 14%,用于悬停>"
11
+ "--color-brand1-2": "<基于 --color-brand1-6 生成的实际色值:与白色混合 88%,用于平台品牌浅色>"
12
+ "--color-brand1-3": "<基于 --color-brand1-6 生成的实际色值:与白色混合 94%,用于浅色导航框架>"
13
+ "--color-brand1-5": "<基于 --color-brand1-6 生成的实际色值:与黑色混合 18%,用于深色导航框架>"
14
+ "--color-brand1-6": "{{PRIMARY_COLOR}}"
15
+ "--color-brand1-9": "<基于 --color-brand1-6 生成的实际色值:与黑色混合 10%,用于按下与激活>"
16
+ "--color-brand1-10": "<基于 --color-brand1-6 生成的实际色值:与白色混合 64%,用于禁用>"
17
+ "--color-line1-1": "#EAEAEA"
18
+ "--color-line1-2": "#DADADA"
19
+ "--color-fill1-1": "#F8F8F8"
20
+ "--color-fill1-2": "#F2F2F2"
21
+ "--color-fill1-3": "#E7E7E7"
22
+ "--color-fill1-10": "rgba(255, 255, 255, 0.97)"
23
+ "--color-text1-4": "#181818"
24
+ "--color-text1-10": "#606060"
25
+ "--color-text1-3": "#8E8E8E"
26
+ typography:
27
+ base:
28
+ "--font-family-base": "Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif"
29
+ subhead:
30
+ "--font-size-subhead": 24px
31
+ "--font-weight-subhead": 600
32
+ "--font-lineheight-subhead": 1.3
33
+ body-2:
34
+ "--font-size-body-2": 16px
35
+ "--font-weight-body-2": 600
36
+ "--font-lineheight-body-2": 1.4
37
+ body-1:
38
+ "--font-size-body-1": 14px
39
+ "--font-weight-body-1": 400
40
+ "--font-lineheight-body-1": 1.5
41
+ table:
42
+ "--font-size-table": 14px
43
+ "--font-weight-table": 400
44
+ "--font-lineheight-table": 1.45
45
+ caption:
46
+ "--font-size-caption": 12px
47
+ "--font-weight-caption": 400
48
+ "--font-lineheight-caption": 1.4
49
+ spacing:
50
+ "--s-1": 4px
51
+ "--s-2": 8px
52
+ "--s-3": 12px
53
+ "--s-4": 16px
54
+ "--s-6": 24px
55
+ "--s-8": 32px
56
+ rounded:
57
+ "--corner-zero": 0px
58
+ "--corner-1": 4px
59
+ "--corner-2": 8px
60
+ "--corner-3": 12px
61
+ "--corner-4": 16px
62
+ "--corner-5": 20px
63
+ "--corner-circle": 50%
64
+ "--corner-semicircle": 500px
65
+ custom-page:
66
+ colors:
67
+ "--oyd-theme-soft": "color-mix(in srgb, var(--color-brand1-6) 12%, #FFFFFF)"
68
+ "--oyd-theme-bar": "color-mix(in srgb, var(--color-brand1-6) 18%, #FFFFFF)"
69
+ "--oyd-theme-spotlight": "color-mix(in srgb, var(--color-brand1-6) 78%, #111111)"
70
+ "--oyd-theme-object": "color-mix(in srgb, var(--color-brand1-6) 42%, #FFFFFF)"
71
+ "--oyd-inverted-marker": "#181818"
72
+ "--oyd-category-seq-1": "#28B87A"
73
+ "--oyd-category-seq-2": "#F28A22"
74
+ "--oyd-category-seq-3": "#9B63E6"
75
+ "--oyd-category-seq-4": "#E84FA7"
76
+ typography:
77
+ metric-primary:
78
+ "--font-size-metric-primary": 28px
79
+ "--font-weight-metric-primary": 600
80
+ "--font-lineheight-metric-primary": 1.2
81
+ metric-focus:
82
+ "--font-size-metric-focus": 40px
83
+ "--font-weight-metric-focus": 600
84
+ "--font-lineheight-metric-focus": 1.15
85
+ ---
86
+
87
+ # {{PROJECT_NAME}} design.md
88
+
89
+ ## 设计总览
90
+
91
+ - 业务领域:{{BUSINESS_DOMAIN}}
92
+ - 产品形态:{{EXPERIENCE_TOPOLOGY}}
93
+ - 主题来源:{{THEME_SOURCE}}
94
+ - 项目约束:{{PROJECT_CONSTRAINTS}}
95
+
96
+ 本主题以近白画布、白色细描边模块和稳定 16-20px 圆角建立清晰秩序。页面身份与操作位于顶部,三联摘要以主题色或独立分类色的方形图标块建立焦点;主体在内容契约成立时采用约 2:1 主辅双列,左侧承载结构化行列表、复合折线与柱形图、活动流,右侧承载日期条、色轨事件、清单和主题聚焦卡。主题色连接主操作、当前日期、主趋势线、链接和聚焦卡;独立分类色仅区分真实等权事件类别,平台状态色保持独立。
97
+
98
+ ### 风格定位与应用说明
99
+
100
+ - 核心气质是“清晰模块、方形图标焦点、复合趋势、色轨条目、主辅并行”;时序、进度、负责人、事件与清单等内容最能发挥记忆点,但这不是页面类型限制。
101
+ - 所有页面共享本主题的全应用 Token 和基础组件语言;逐页视觉应用根据真实页面、页面模式与内容生成,视觉记忆点仅在满足内容契约时使用。
102
+ - 构图迁移时保留细描边白卡、主辅层级、方形图标、主题主线、浅柱背景、色轨条目、状态胶囊和圆形事件标记,不照搬固定模块、日期、对象或指标。
103
+ - 内容不匹配时,主辅双列回退到 PRD 单列,复合图与日程/清单组件保留为 `recipe_only`;需要新增业务能力时使用 `suggest_only`。
104
+
105
+ ### 视觉 DNA
106
+
107
+ | 设计母体 | 可见证据与置信度 | 复用规则与实现钩子 | 缺失后的失败表现 |
108
+ | --- | --- | --- | --- |
109
+ | 方形图标摘要条 | 同一行三张横向摘要卡,左侧为高饱和方形图标块,右侧依次为标题、主值和行内变化。`observed` | 保留“方形图标 / 标题 / 主值与变化”的横向结构、等高与宽松内距;真实数量和内容由 PRD 决定。 | 退化为无图标数字卡或整卡彩底,焦点节奏和轻量感下降。 |
110
+ | 条件式主辅模块列 | 主区域使用宽主列与窄辅列,宽列连续承载主要任务与趋势,窄列堆叠时间、清单和聚焦摘要。`observed` | 仅在主要内容与独立辅助内容同时存在时使用约 2:1;所有模块拉伸对齐,模块顺序由 PRD 决定。 | 无条件保留窄列会制造空模块;缺失分层则所有内容等权拥挤。 |
111
+ | 复合焦点趋势场 | 同一图中叠加主题主线、两条中性比较线、浅色柱和事件焦点点;顶部有指标组与分段切换,焦点配 tooltip。`observed` | 保留“背景柱 / 中性对照线 / 主题主线 / 事件节点 / tooltip”层级;所有序列与事件必须真实。 | 退化为单一折线或花哨多色图,数据层次与交互焦点消失。 |
112
+ | 色轨事件条目 | 辅助面板的条目使用浅灰底、左侧 3-4px 分类色轨、方形图标块和两级文字;日期选择使用单个主题色方块。`observed` | 颜色只编码真实等权类别,当前选择消费主题色;保留细色轨、图标块和两级文字。 | 整条染色或无类别色轨会降低扫描性并破坏克制关系。 |
113
+ | 主题聚焦证据卡 | 辅列底部使用高对比主题色卡承载主值、比较说明、头像叠层和低对比抽象对象。`observed` | 只在 PRD 有合法聚焦摘要与真实参与对象时渲染;保留主题色面、白字、右侧抽象层与底部头像组。 | 无依据生成会伪造对象;改为普通白卡则失去页面视觉收束。 |
114
+
115
+ ### 视觉记忆点应用策略
116
+
117
+ | 视觉记忆组件或构图 | 内容契约 | 落地策略 | 可迁移机制与适配目标 | 无匹配内容时 |
118
+ | --- | --- | --- | --- | --- |
119
+ | 方形图标摘要条 | `content_contract`: 至少两个同层摘要,每项具有图标语义、主值与可选变化说明。 | `render_policy: adapt_existing_slot`;`direct_trigger`: PRD 提供 `primary_metrics`。 | `transferable_mechanism`: 彩色方形图标块、标题、主值与行内变化;`adaptation_targets`: `primary_metrics`、`primary_summary`。 | `fallback`: 无图标时使用主题线性图标,无摘要时移除;`forbidden`: 不得编造指标、变化率或数量。 |
120
+ | 条件式主辅模块列 | `content_contract`: 页面同时存在主要任务内容和至少一个可独立阅读的辅助内容。 | `render_policy: adapt_existing_slot`;`direct_trigger`: PRD 同时提供 `primary_content_panel` 与 `supporting_panel`。 | `transferable_mechanism`: 约 2:1 分栏、等高拉伸、辅列模块堆叠;`adaptation_targets`: 主要内容与真实辅助内容。 | `fallback`: 无独立辅助内容时主列占满;`forbidden`: 不得为形成辅列新增日期、清单、指标或摘要。 |
121
+ | 复合焦点趋势场 | `content_contract`: 存在一个主时序、可选真实对照序列、柱形背景量和事件节点中的至少两类。 | `render_policy: prd_match_only`;`direct_trigger`: PRD 提供可共享横轴的真实多层时序数据。 | `transferable_mechanism`: 浅柱、中性线、主题主线、圆形事件点和 tooltip;`adaptation_targets`: `primary_content_panel`、趋势与容量变化。 | `fallback`: 仅有单序列时使用简化折线;`forbidden`: 不得伪造柱值、对照线、事件、月份或变化率。 |
122
+ | 色轨事件条目 | `content_contract`: 存在有时间/顺序、真实类别、标题和辅助说明的条目集合。 | `render_policy: adapt_existing_slot`;`direct_trigger`: PRD 提供有序事件或分组条目。 | `transferable_mechanism`: 浅灰条目、窄色轨、方形图标和两级文本;`adaptation_targets`: `supporting_panel`、`detail_list`、事件流。 | `fallback`: 无类别时色轨统一主题色或移除;`forbidden`: 不得编造日期、类别、时间、地点或操作。 |
123
+ | 主题聚焦证据卡 | `content_contract`: PRD 明确一个重点结果,并提供比较信息与可选真实参与对象。 | `render_policy: prd_match_only`;`direct_trigger`: 存在 `primary_summary` 与真实对象集合。 | `transferable_mechanism`: 主题色高对比面、主值、说明、头像叠层与抽象低对比对象;`adaptation_targets`: `supporting_panel`、重点成果、阶段总结。 | `fallback`: 无参与对象时移除头像,无聚焦摘要时不渲染;`forbidden`: 不得编造主值、参与者、头像或比较信息。 |
124
+
125
+ - 先匹配 `content_contract`,再决定是否渲染组件本体;不能为了保留视觉记忆点而新增 PRD 未要求的字段、数据、入口、对象或流程。
126
+ - 每页优先清楚落地 1-3 个与 PRD 匹配的主记忆点,不要求全部组件同时出现。
127
+ - 无合法业务承载时保留为 `recipe_only`;若需要新增业务能力则使用 `suggest_only`,不进入默认实现。
128
+
129
+ ### 设计变量范围
130
+
131
+ `tokens.application-global` 是原生表单、流程页面和自定义页面共同遵守的全应用契约;本主题使用无彩灰阶、24px 以内标题、4px 基础间距和 4-20px 圆角阶梯。`tokens.custom-page` 只补充近白画布、主题浅底、主题柱、主题聚焦卡与抽象对象、反相事件标记、四个独立分类序列,以及全局缺失的常规指标与焦点指标数字语义。普通边界、网格、tooltip 和平台状态色直接复用全局或平台 Token。
132
+
133
+ ## 色彩
134
+
135
+ - 色彩来源:{{COLOR_SOURCE}}
136
+ - 颜色 Token 的名称和值以文档顶部 YAML 的 `tokens` 为唯一事实源;AI 可以根据主题调整色值,不改变宜搭应用全局变量名。
137
+ - 近白画布与白色细描边模块占主导;主题色承担主操作、主趋势、当前选择和聚焦卡,分类色只作为方形图标、窄色轨或小型类别标记。
138
+
139
+ ### 设计变量消费规则
140
+
141
+ | 固定消费语义 | 消费 Token | 作用域 |
142
+ | --- | --- | --- |
143
+ | 主题色交互元素悬停 | `--color-brand1-1` | 应用全局 |
144
+ | 平台预留品牌浅色;自定义页不主动绑定 | `--color-brand1-2` | 应用全局 |
145
+ | 浅色导航框架背景 | `--color-brand1-3` | 应用全局 |
146
+ | 深色导航框架背景 | `--color-brand1-5` | 应用全局 |
147
+ | 全应用主题主色;主操作、主线、当前选择、链接与焦点 | `--color-brand1-6` | 应用全局 |
148
+ | 主题色交互元素激活或按下 | `--color-brand1-9` | 应用全局 |
149
+ | 主题色交互元素禁用状态 | `--color-brand1-10` | 应用全局 |
150
+ | 弱分隔、图表网格、表格和列表行线 | `--color-line1-1` | 应用全局 |
151
+ | 输入、按钮和面板常规边界 | `--color-line1-2` | 应用全局 |
152
+ | 页面底层近白画布 | `--pod-page-bg-color` | 自定义页 |
153
+ | 面板、卡片、弹窗和表单容器 | `--color-white` | 应用全局 |
154
+ | 主题浅状态底、当前项背景与图标浅底 | `--oyd-theme-soft` | 自定义页 |
155
+ | 复合趋势图的主题浅柱 | `--oyd-theme-bar` | 自定义页 |
156
+ | 高对比主题聚焦卡背景 | `--oyd-theme-spotlight` | 自定义页 |
157
+ | 聚焦卡内低对比抽象对象 | `--oyd-theme-object` | 自定义页 |
158
+ | 图表中的反相事件焦点 | `--oyd-inverted-marker` | 自定义页 |
159
+ | 第一至第四真实等权类别的方形图标与窄色轨 | `--oyd-category-seq-1 / --oyd-category-seq-2 / --oyd-category-seq-3 / --oyd-category-seq-4` | 自定义页 |
160
+ | 菜单悬停、弱标签和默认浅填充 | `--color-fill1-1` | 应用全局 |
161
+ | 中性选中底和嵌套浅层 | `--color-fill1-2` | 应用全局 |
162
+ | 更重中性填充和禁用轨道 | `--color-fill1-3` | 应用全局 |
163
+ | 标题、主值、正文和主要图标 | `--color-text1-4` | 应用全局 |
164
+ | 表头和输入框 placeholder | `--color-text1-10` | 应用全局 |
165
+ | 辅助说明、坐标轴、时间和元信息 | `--color-text1-3` | 应用全局 |
166
+
167
+ `--color-brand1-6` 是唯一主题色种子。其余六个 Brand Token 与 `--oyd-theme-soft / --oyd-theme-bar / --oyd-theme-spotlight / --oyd-theme-object` 均由它派生并在项目实例化时写入实际色值。`--oyd-category-seq-1 / --oyd-category-seq-2 / --oyd-category-seq-3 / --oyd-category-seq-4` 是独立分类色,仅在 PRD 确认多个等权类别且颜色区分有必要时使用,不参与主题同色推演,不承担平台状态或主操作。无彩区域不少于页面面积的 82%,主题聚焦卡通常不超过首屏面积的 12%。
168
+
169
+ ### 本主题的配色约束
170
+
171
+ - `--color-line1-1 / --color-line1-2`、`--color-fill1-1 / --color-fill1-2 / --color-fill1-3`、`--color-text1-4 / --color-text1-10 / --color-text1-3` 与 `--oyd-inverted-marker` 均为 `neutral-gray`,Hex 满足 `R = G = B`;`--color-fill1-10` 的前三通道相等。
172
+ - `--oyd-theme-soft` 与 `--oyd-theme-bar` 是 `theme-gray` / 主题浅色,分别由 `--color-brand1-6` 12% / 18% 与 `#FFFFFF` 混合;实例化时写入实际色值。
173
+ - `--oyd-theme-spotlight` 与 `--oyd-theme-object` 是主题派生色;前者由主题色 78% 与 `#111111` 22% 混合,后者由主题色 42% 与白色 58% 混合。
174
+ - `--oyd-category-seq-1 / --oyd-category-seq-2 / --oyd-category-seq-3 / --oyd-category-seq-4` 是独立分类色,只占小面积;成功、警告、错误和信息状态仍直接消费平台语义色并配合文字或图标。
175
+ - 禁止从分类色反推主题色,禁止用分类色铺满普通卡片或在同一图表中无节制增加系列。
176
+
177
+ ## 字体与排版
178
+
179
+ - 全局只使用 `tokens.application-global.typography.base` 的字体栈。
180
+ - `page-title` 消费 `tokens.application-global.typography.subhead`;`panel-title` 消费 `body-2`;正文与列表主文本消费 `body-1`;表格消费 `table`;辅助信息消费 `caption`。
181
+ - `subhead` 为 24px / 600 / 1.3;`body-2` 为 16px / 600 / 1.4;`body-1` 为 14px / 400 / 1.5;`table` 为 14px / 400 / 1.45;`caption` 为 12px / 400 / 1.4。
182
+ - `tokens.custom-page.typography.metric-primary` 为 28px / 600 / 1.2,用于摘要主值;`metric-focus` 为 40px / 600 / 1.15,用于复合趋势焦点与主题聚焦卡主值。两者是全局层缺失的数据语义,不替代标题。
183
+ - 数值启用 `font-variant-numeric: tabular-nums`;页面说明最多两行,列表标题单行省略,清单说明最多两行,完整内容通过详情或可访问名称提供。
184
+ - 图标使用 1.5px 线性描边、圆端点;方形图标块内图标 18-20px,工具图标 18px,头像 28-32px,均与首行文字视觉居中。
185
+
186
+ ## 布局与间距
187
+
188
+ - 所有间距消费 YAML 的 `--s-1` 至 `--s-8`:图标与文字用 `--s-2 / --s-3`,工具组用 `--s-3 / --s-4`,卡片内距用 `--s-4 / --s-6`,大区块用 `--s-6 / --s-8`。
189
+ - 全页面最大宽度 1760px,桌面安全边距 24-32px;父级使用 `gap`,同类面板拉伸对齐,子项设置 `min-width: 0`。
190
+ - 摘要组按真实数量自适应等宽列;主辅双列仅在 `primary_content_panel` 与独立 `supporting_panel` 同时存在时使用,约 2:1。
191
+ - 页面身份、操作、主要任务、图表、活动、日期条、清单和聚焦摘要是否出现及顺序由 PRD 决定;无相应内容时不保留空卡。
192
+
193
+ ### 布局稳定性硬规则
194
+
195
+ - 桌面主网格使用 `align-items: stretch`;禁止瀑布流与 `align-items: start`。
196
+ - 面板使用 `height: 100%`、`min-width: 0`、`min-height: 0`、`display: flex`、`flex-direction: column`;标题区固定,内容区 `flex: 1; min-height: 0`。
197
+ - `metric_card` 高 116-140px;主要列表 `detail_panel` 高 320-400px;复合趋势 `chart_panel` 高 520-620px;辅列事件面板高 460-540px;清单面板高 380-480px;主题聚焦卡高 220-280px;可选 `quick_action_item` 高 68-84px。
198
+ - 复合趋势绘图区固定 300-360px;列表和清单内部滚动或截断,不撑破外层;同一行面板底部对齐。
199
+ - ≥1360px:摘要最多 3-4 列,主辅契约成立时约 2:1,辅列模块垂直堆叠。900-1359px:摘要 2 列,主辅上下排列,辅助模块 2 列。<900px:全部单列,操作移到标题下方,日期条和标签允许横向滚动,图表必要时横向滚动;移动端可解除等高但保留固定绘图区和触控目标。
200
+ - 内容契约不成立时,各断点按 PRD 的单列、列表、表单、详情或流程模式组织,不生成空辅列、空图表或空摘要。
201
+
202
+ ## 表面与层级
203
+
204
+ - 常规面板使用 `--color-white`、1px `--color-line1-1`、`--corner-4 / --corner-5`,默认不投影;通过边界、留白和局部浅填充建立层级。
205
+ - 方形图标块、当前日期和主操作使用主题或独立类别色;面板内部条目使用 `--color-fill1-1`,不再套同等描边卡。
206
+ - tooltip、popover 使用 `--color-fill1-10`、`--color-line1-2` 和 `0 8px 24px rgba(0,0,0,0.10)`;图表事件标记可使用轻投影 `0 4px 12px rgba(0,0,0,0.12)`。
207
+ - 仅主题聚焦卡允许主题色大面和低对比抽象对象;禁止毛玻璃、霓虹辉光、全页渐变和普遍强阴影。
208
+
209
+ ## 圆角与形状
210
+
211
+ - `--corner-1` 4px 用于细色轨、短状态和小点;`--corner-2` 8px 用于输入、按钮、图标块与 tooltip;`--corner-3` 12px 用于事件条目和分段控件;`--corner-4` 16px 用于常规卡片;`--corner-5` 20px 用于大图表和主要面板。
212
+ - `--corner-semicircle` 用于状态胶囊、短标签与头像计数;`--corner-circle` 用于头像、图表事件标记、清单选择和圆形图标按钮。
213
+ - 同层面板圆角一致;方形图标块保持 8-12px 圆角,不改成圆形大徽章。
214
+
215
+ ## 组件
216
+
217
+ ### 按钮与操作
218
+
219
+ 按钮只使用 28px 行内、32px 紧凑工具栏、36px 常规、40px 强调四档;图标按钮使用同档正方形。主按钮消费 `--color-brand1-6`,次按钮白底细边。hover、active 使用 `--color-brand1-1 / --color-brand1-9`,focus 为 2px 主题色外环加 2px offset,disabled 同时降低文字和边界对比。同一操作区只保留一个视觉主操作。
220
+
221
+ ### 输入与筛选控件
222
+
223
+ 紧凑工具栏 32px、常规表单 36px、宽松搜索与选择器 40px。控件使用白色表面、`--color-line1-2` 与 `--corner-2`;placeholder 消费 `--color-text1-10`。focus 使用主题色边界与外环,error 使用平台错误色并附文字。周期、分段、日期与筛选按真实任务成组等高排列。
224
+
225
+ ### 卡片与面板
226
+
227
+ 摘要卡使用 `--corner-4`、`--s-4 / --s-6` 内距和固定高度;主面板使用 `--corner-5`、`--s-6` 内距;辅助面板使用 `--corner-4 / --corner-5` 并与主面板同一边界语言。嵌套条目只使用浅填充、色轨或分隔线,禁止无限套卡。
228
+
229
+ ### 方形图标摘要条
230
+
231
+ 固定公式为“48-56px 方形图标块 / 两级文字 / 主值与行内变化”。图标块只使用主题色或真实独立分类色,白色线性图标 18-20px;主值消费 `metric-primary`。变化信息使用平台状态色加方向符号或文字,不能只靠颜色。
232
+
233
+ ### 复合焦点趋势场
234
+
235
+ 绘图区固定高度;底层为 `--oyd-theme-bar` 浅柱,中层最多两条 1px 中性对照线,顶层为 2.5px 主题主线。事件节点直径 8-12px,特殊焦点可使用 36-44px 圆形标记并与垂直虚线连接;tooltip 复用白色浮层。缺少真实对照或事件时删除对应层,不用装饰数据补齐。
236
+
237
+ ### 色轨事件与清单条目
238
+
239
+ 事件条目高 72-88px,使用 `--color-fill1-1`、`--corner-3`、左侧 3-4px 色轨、36-40px 方形图标底和两级文字;清单行高 72-92px,使用圆形选择标记、主标题、最多两行说明与弱分隔。类别色只在色轨和图标中出现,整条保持无彩。
240
+
241
+ ### 主题聚焦证据卡
242
+
243
+ 卡体高 220-280px,背景 `--oyd-theme-spotlight`,左侧为标题、`metric-focus` 主值、比较说明与头像叠层,右侧为 `--oyd-theme-object` 低对比抽象对象。文字使用白色,抽象对象面积不超过卡片 46%;无真实头像时删除头像组,不用虚拟人物补齐。
244
+
245
+ ### 图表或主内容面板
246
+
247
+ 图表使用固定绘图区、稀疏坐标标签、最多一个主题主序列与两个中性对照序列;同一图不得让四个分类色同时成为主线。图例和分段控件靠近标题区,tooltip 不遮挡焦点。键盘可逐点导航,提供数据摘要与表格替代。
248
+
249
+ ### 表格与列表
250
+
251
+ 结构化列表和表格表头 44-48px、数据行 60-72px;首列可用线性类型图标,人员或对象列可用 28-32px 头像,状态使用浅胶囊,尾部操作为 28px 图标按钮。长文本单行省略并提供完整值;容器内部滚动且表头可粘附。
252
+
253
+ ### 快捷入口(可见或推断)
254
+
255
+ 视觉材料的顶部主次操作可见,但未形成独立快捷入口区;独立入口默认 `confidence: inferred`、`render_policy: recipe_only`。若 PRD 明确要求,使用 68-84px 白色细描边条目、方形主题图标和两级文字;禁止默认彩色宫格。
256
+
257
+ ### 状态与交互
258
+
259
+ - 悬停:卡片边界加深至 `--color-line1-2`,列表行和事件条目切换到 `--color-fill1-2`,不发生位移。
260
+ - 按下:按钮消费 `--color-brand1-9`,可点击条目使用 1px 内缩反馈,不改变外部尺寸。
261
+ - 聚焦:控件、可点击行和图表节点显示 2px 主题色 focus ring;纯图标按钮必须有可访问名称。
262
+ - 加载:保持指标、主辅面板和绘图区固定高度,以中性骨架避免网格跳动。
263
+ - 空态与错误:保留原面板结构,提供简短说明与真实下一步操作,不把整张卡染成状态色。
264
+ - 禁用与选中:禁用同时降低文字、图标和边界对比;选中使用主题色、背景、图标或文字组合,不只依赖颜色。
265
+ - 动效:hover 120-160ms,tooltip 160-200ms,图表更新 240-320ms,使用 ease-out;`prefers-reduced-motion` 下关闭路径绘制、缩放与位移。
266
+
267
+ ## 项目应用
268
+
269
+ ### 项目上下文与主题应用
270
+
271
+ - 当前产品形态:{{EXPERIENCE_TOPOLOGY}}
272
+ - 主题在当前项目中的应用说明:{{PRODUCT_TOPOLOGY_APPLICATION}}
273
+
274
+ 产品形态只提供任务和内容上下文,不决定主题是否可用。原生页面与自定义页面共同继承近白画布、白色细描边模块、排版、间距、圆角和控件状态;自定义页面仅在内容契约成立时补充复合趋势、色轨条目、主辅双列与主题聚焦卡。
275
+
276
+ ### 页面模式
277
+
278
+ {{PAGE_PATTERN_SUMMARY}}
279
+
280
+ 页面模式决定任务、内容、信息架构和模块。本主题只规定视觉表达;没有时序、事件、清单或聚焦摘要时,页面保持 PRD 的列表、表单、详情或流程结构,只迁移模块边界、方形图标、排版、圆角与间距。
281
+
282
+ ### 逐页视觉应用
283
+
284
+ {{PAGE_APPLICATIONS}}
285
+
286
+ 实例化时只展开项目真实存在的页面;每页说明 `page_identity`、`global_actions`、`primary_metrics`、`primary_content_panel`、`supporting_panel`、`detail_table/detail_list` 的位置、跨度、高度、移动端顺序和采用的视觉 DNA。页面不必使用全部组件母体,但采用对应内容类型时必须遵守本文构图公式。
287
+
288
+ ### 素材要求
289
+
290
+ - 页面图片需求:{{PAGE_IMAGE_NEEDS}}
291
+ - 素材缺口:{{ASSET_GAPS}}
292
+ - 头像、图标、图表、缩略对象和辅助图形必须有真实授权来源;没有素材时使用中性占位或移除相应层,不编造人物、项目、事件、指标或图片地址。
293
+
294
+ ## 设计规范与禁忌
295
+
296
+ ### 必须做到
297
+
298
+ - 所有页面必须保留近白画布、白色细描边模块、清晰主次层级、小面积主题焦点和稳定间距。
299
+ - 摘要契约成立时保护方形图标、两级文字、主值与变化;主辅契约成立时保护 2:1 层级和等高拉伸,无辅助内容时主列占满。
300
+ - 复合趋势契约成立时保护浅柱、中性对照线、主题主线、事件节点和 tooltip;缺少真实层级时必须简化。
301
+ - 事件或清单契约成立时保护色轨、方形图标、两级文本或圆形选择标记;聚焦摘要契约成立时保护高对比主题面和真实头像降级。
302
+ - 图表固定高度、同类面板等高、父级 gap、内部溢出、三档响应式、键盘访问与完整状态必须落地。
303
+
304
+ ### 禁止项
305
+
306
+ - 禁止复制视觉材料中的业务内容,或让 DESIGN.md 覆盖 PRD 的内容决策。
307
+ - 禁止把输入主题色铺满背景或普通面板;主题大色面只允许出现在内容契约成立的聚焦卡。
308
+ - 禁止把固定三卡、2:1 分栏、辅列模块或顺序写成所有页面无条件执行的结构。
309
+ - 禁止为复合图编造柱、对照线、事件和月份;禁止为辅列编造日期、清单、人员或指标。
310
+ - 禁止把色轨扩展为整条彩底、让分类色承担主操作或平台状态、在同一图表中堆叠无关彩色序列。
311
+ - 禁止瀑布流、自由高度卡片、`align-items: start`、无固定高度图表、长内容撑破父级和零散 margin 拼接。
312
+ - 禁止毛玻璃、霓虹辉光、普遍强阴影、无依据装饰和与主题不一致的组件库默认样式。
313
+
314
+ ### 错误与正确
315
+
316
+ - 错误:摘要卡整卡使用不同高饱和底色;正确:白色卡体加小面积方形图标焦点和行内状态。
317
+ - 错误:把复合趋势简化为无层级的多色折线;正确:浅柱在底、中性线居中、主题主线与事件焦点在顶。
318
+ - 错误:为保持辅列生成不存在的日期、清单或聚焦指标;正确:内容契约成立时使用 2:1,否则主列占满。
319
+ - 错误:事件条目整行染色;正确:浅灰条目只用 3-4px 色轨和方形图标编码真实类别。
320
+ - 错误:无真实对象仍显示头像叠层;正确:移除头像组或使用 PRD 提供的合法回退。
321
+ - 错误:主题色铺满所有卡片;正确:主题色连接主操作、主线、当前选择和单个聚焦卡,其余表面保持中性。
322
+
323
+ ### AI 使用提示
324
+
325
+ 先读取 PRD,再解析 `{{PRIMARY_COLOR}}` 并生成全部实际 Brand Token 与主题派生图表/聚焦色。所有真实页面先继承近白画布、细描边白卡、方形图标、排版、间距和状态语言,再按内容契约选择主辅双列、复合焦点趋势、色轨事件、清单或主题聚焦卡。不得为复刻代表构图新增项目、事件、人员、图表序列、日期或操作;主题色只替换色相,不改变模块层级、复合图顺序、色轨机制和布局稳定性。
326
+
327
+ ### 交付自检
328
+
329
+ - [ ] 全部页面内容和模块是否来自 PRD,而非模板来源?
330
+ - [ ] 方形图标摘要是否等高,并保留图标、两级文字、主值和非纯颜色变化说明?
331
+ - [ ] 主辅双列是否只在主要与独立辅助内容同时存在时渲染,无匹配时是否回退单列?
332
+ - [ ] 复合趋势是否保持浅柱、中性对照线、主题主线、事件节点和 tooltip 的正确层级?
333
+ - [ ] 色轨事件是否仅编码真实等权类别,整条是否保持无彩?
334
+ - [ ] 主题聚焦卡是否只使用真实摘要和对象,抽象对象与头像是否正确降级?
335
+ - [ ] 每个视觉记忆组件是否都有 `content_contract`、`render_policy`、迁移目标和无匹配回退策略?
336
+ - [ ] 固定摘要数量、主辅比例、辅列和模块顺序是否具有内容契约,而非全页面硬规则?
337
+ - [ ] 未被 PRD 触发的组件是否没有强行渲染,视觉迁移是否没有新增业务内容?
338
+ - [ ] 主操作、主趋势、当前选择和焦点是否共享 `--color-brand1-6`,平台状态色是否保持独立语义?
339
+ - [ ] 独立分类色是否只承担真实等权类别,未替代主题色或平台状态色?
340
+ - [ ] `application-global` 的变量名和消费语义是否稳定,具体值是否依据本主题生成?
341
+ - [ ] `custom-page` 是否逐项通过全局语义复用检查,没有同值同义或角色重叠的重复 Token?
342
+ - [ ] 文字对比是否保持 `text1-4` 高于 `text1-10`、`text1-10` 高于 `text1-3`?
343
+ - [ ] `themeId`、描述、视觉 DNA、组件标题和正文总结是否没有绑定默认色相或页面类型?
344
+ - [ ] 描述中的中等密度、细描边、条件式双列和清晰焦点是否与 Token 及正文一致?
345
+ - [ ] 是否没有建立适用/不适用产品形态清单,所有页面是否共享全应用 Token 和基础组件语言?
346
+ - [ ] `{{PAGE_APPLICATIONS}}` 是否只展开项目真实存在的页面,没有枚举不存在的页面?
347
+ - [ ] 主题同色演变是否由 `--color-brand1-6` 派生,平台状态语义色是否未在 `custom-page` 重复声明?
348
+ - [ ] 所有灰色 Token 是否已分类;`neutral-gray` 是否满足三通道相等,主题派生色是否声明基底、比例和实例化要求?
349
+ - [ ] 同类面板是否等高,图表是否固定高度,长内容是否在内部处理?
350
+ - [ ] hover、active、focus、loading、empty、error、disabled、selected 是否完整且不引发布局跳动?
351
+ - [ ] 移动端折叠、触控目标、键盘访问、对比度、非纯颜色状态与 reduced motion 是否达标?
352
+ - [ ] 最终项目 `design.md` 是否替换全部占位符并写入七个 Brand Token 的实际色值?