@nurix/etna 0.19.2 → 0.19.4

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 (122) hide show
  1. package/data/harness-index.json +1 -1
  2. package/data/harnesses/code/CLAUDE.md +2 -2
  3. package/data/harnesses/code/harness.json +2 -2
  4. package/data/harnesses/code/rules/frontend.md +3 -3
  5. package/data/harnesses/code/skills/design/SKILL.md +20 -8
  6. package/data/harnesses/code/skills/design/data/catalog/rules.csv +10 -5
  7. package/data/harnesses/code/skills/design/data/combinations/Readme.md +8 -4
  8. package/data/harnesses/code/skills/design/data/combinations/accent-presets.md +113 -0
  9. package/data/harnesses/code/skills/design/data/combinations/fonts-known.json +11 -0
  10. package/data/harnesses/code/skills/design/data/combinations/manifest.json +57 -10
  11. package/data/harnesses/code/skills/design/data/combinations/motion.csv +10 -0
  12. package/data/harnesses/code/skills/design/data/combinations/palettes.csv +92 -49
  13. package/data/harnesses/code/skills/design/data/combinations/styles.csv +67 -54
  14. package/data/harnesses/code/skills/design/data/combinations/typography.csv +64 -61
  15. package/data/harnesses/code/skills/design/data/design-md/library/expo.md +4 -4
  16. package/data/harnesses/code/skills/design/data/design-md/library/lovable.md +5 -5
  17. package/data/harnesses/code/skills/design/data/design-md/library/minimax.md +6 -6
  18. package/data/harnesses/code/skills/design/data/design-md/library/notion.md +4 -4
  19. package/data/harnesses/code/skills/design/data/design-md/library/runwayml.md +4 -4
  20. package/data/harnesses/code/skills/design/data/design-md/library/sentry.md +2 -2
  21. package/data/harnesses/code/skills/design/data/design-md/library/slack.md +6 -6
  22. package/data/harnesses/code/skills/design/data/design-md/library/webflow.md +5 -5
  23. package/data/harnesses/code/skills/design/data/design-md/nurix.md +11 -7
  24. package/data/harnesses/code/skills/design/data/design-tokens/SCHEMA.md +256 -141
  25. package/data/harnesses/code/skills/design/data/design-tokens/airbnb/design.tokens.json +309 -1
  26. package/data/harnesses/code/skills/design/data/design-tokens/airtable/design.tokens.json +309 -1
  27. package/data/harnesses/code/skills/design/data/design-tokens/anthropic-claude/design.tokens.json +309 -1
  28. package/data/harnesses/code/skills/design/data/design-tokens/apple/design.tokens.json +309 -1
  29. package/data/harnesses/code/skills/design/data/design-tokens/binance/design.tokens.json +309 -1
  30. package/data/harnesses/code/skills/design/data/design-tokens/bmw/design.tokens.json +309 -1
  31. package/data/harnesses/code/skills/design/data/design-tokens/cal/design.tokens.json +313 -1
  32. package/data/harnesses/code/skills/design/data/design-tokens/clay/design.tokens.json +309 -1
  33. package/data/harnesses/code/skills/design/data/design-tokens/clickhouse/design.tokens.json +309 -1
  34. package/data/harnesses/code/skills/design/data/design-tokens/cohere/design.tokens.json +309 -1
  35. package/data/harnesses/code/skills/design/data/design-tokens/coinbase/design.tokens.json +309 -1
  36. package/data/harnesses/code/skills/design/data/design-tokens/composio/design.tokens.json +309 -1
  37. package/data/harnesses/code/skills/design/data/design-tokens/cursor/design.tokens.json +309 -1
  38. package/data/harnesses/code/skills/design/data/design-tokens/elevenlabs/design.tokens.json +313 -1
  39. package/data/harnesses/code/skills/design/data/design-tokens/expo/design.tokens.json +309 -1
  40. package/data/harnesses/code/skills/design/data/design-tokens/figma/design.tokens.json +313 -1
  41. package/data/harnesses/code/skills/design/data/design-tokens/framer/design.tokens.json +309 -1
  42. package/data/harnesses/code/skills/design/data/design-tokens/goldens.json +123 -123
  43. package/data/harnesses/code/skills/design/data/design-tokens/hashicorp/design.tokens.json +309 -1
  44. package/data/harnesses/code/skills/design/data/design-tokens/ibm/design.tokens.json +309 -1
  45. package/data/harnesses/code/skills/design/data/design-tokens/intercom/design.tokens.json +309 -1
  46. package/data/harnesses/code/skills/design/data/design-tokens/kraken/design.tokens.json +313 -1
  47. package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.resolver.json +1 -1
  48. package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.tokens.dark.json +10 -0
  49. package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.tokens.json +309 -1
  50. package/data/harnesses/code/skills/design/data/design-tokens/lovable/design.tokens.json +313 -1
  51. package/data/harnesses/code/skills/design/data/design-tokens/meta/design.tokens.json +313 -1
  52. package/data/harnesses/code/skills/design/data/design-tokens/minimax/design.tokens.json +309 -1
  53. package/data/harnesses/code/skills/design/data/design-tokens/mintlify/design.tokens.json +309 -1
  54. package/data/harnesses/code/skills/design/data/design-tokens/miro/design.tokens.json +313 -1
  55. package/data/harnesses/code/skills/design/data/design-tokens/mistral-ai/design.tokens.json +309 -1
  56. package/data/harnesses/code/skills/design/data/design-tokens/mongodb/design.tokens.json +313 -1
  57. package/data/harnesses/code/skills/design/data/design-tokens/notion/design.tokens.json +309 -1
  58. package/data/harnesses/code/skills/design/data/design-tokens/nurix/design.tokens.json +307 -2
  59. package/data/harnesses/code/skills/design/data/design-tokens/nvidia/design.tokens.json +309 -1
  60. package/data/harnesses/code/skills/design/data/design-tokens/ollama/design.tokens.json +309 -1
  61. package/data/harnesses/code/skills/design/data/design-tokens/opencode-ai/design.tokens.json +309 -1
  62. package/data/harnesses/code/skills/design/data/design-tokens/posthog/design.tokens.json +309 -1
  63. package/data/harnesses/code/skills/design/data/design-tokens/raycast/design.tokens.json +309 -1
  64. package/data/harnesses/code/skills/design/data/design-tokens/replicate/design.tokens.json +309 -1
  65. package/data/harnesses/code/skills/design/data/design-tokens/resend/design.resolver.json +1 -1
  66. package/data/harnesses/code/skills/design/data/design-tokens/resend/design.tokens.dark.json +10 -0
  67. package/data/harnesses/code/skills/design/data/design-tokens/resend/design.tokens.json +309 -1
  68. package/data/harnesses/code/skills/design/data/design-tokens/revolut/design.tokens.json +309 -1
  69. package/data/harnesses/code/skills/design/data/design-tokens/runwayml/design.tokens.json +310 -2
  70. package/data/harnesses/code/skills/design/data/design-tokens/sanity/design.tokens.json +313 -1
  71. package/data/harnesses/code/skills/design/data/design-tokens/sentry/design.tokens.json +309 -1
  72. package/data/harnesses/code/skills/design/data/design-tokens/shopify/design.tokens.json +309 -1
  73. package/data/harnesses/code/skills/design/data/design-tokens/slack/design.tokens.json +309 -1
  74. package/data/harnesses/code/skills/design/data/design-tokens/spacex/design.tokens.json +309 -1
  75. package/data/harnesses/code/skills/design/data/design-tokens/spotify/design.tokens.json +313 -1
  76. package/data/harnesses/code/skills/design/data/design-tokens/stripe/design.tokens.json +313 -1
  77. package/data/harnesses/code/skills/design/data/design-tokens/supabase/design.tokens.json +309 -1
  78. package/data/harnesses/code/skills/design/data/design-tokens/superhuman/design.tokens.json +313 -1
  79. package/data/harnesses/code/skills/design/data/design-tokens/tesla/design.tokens.json +309 -1
  80. package/data/harnesses/code/skills/design/data/design-tokens/theverge/design.tokens.json +309 -1
  81. package/data/harnesses/code/skills/design/data/design-tokens/together-ai/design.tokens.json +313 -1
  82. package/data/harnesses/code/skills/design/data/design-tokens/uber/design.tokens.json +309 -1
  83. package/data/harnesses/code/skills/design/data/design-tokens/vercel/design.tokens.json +309 -1
  84. package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.resolver.json +1 -1
  85. package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.tokens.dark.json +10 -0
  86. package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.tokens.json +309 -1
  87. package/data/harnesses/code/skills/design/data/design-tokens/warp/design.tokens.json +309 -1
  88. package/data/harnesses/code/skills/design/data/design-tokens/webflow/design.tokens.json +309 -1
  89. package/data/harnesses/code/skills/design/data/design-tokens/wired/design.tokens.json +309 -1
  90. package/data/harnesses/code/skills/design/data/design-tokens/wise/design.tokens.json +309 -1
  91. package/data/harnesses/code/skills/design/data/design-tokens/x-ai/design.tokens.json +309 -1
  92. package/data/harnesses/code/skills/design/data/design-tokens/zapier/design.tokens.json +309 -1
  93. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/command-center.tsx +25 -25
  94. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/create-edit.tsx +18 -18
  95. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/dashboard.tsx +82 -105
  96. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/entity-detail.tsx +97 -93
  97. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/list-detail.tsx +16 -15
  98. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/log-stream.tsx +34 -34
  99. package/data/harnesses/code/skills/design/data/operator-pack/surface-catalog.md +5 -5
  100. package/data/harnesses/code/skills/design/references/create.md +49 -7
  101. package/data/harnesses/code/skills/design/references/diagnosis.md +3 -3
  102. package/data/harnesses/code/skills/design/references/hard-rules.md +25 -3
  103. package/data/harnesses/code/skills/design/references/improve.md +32 -3
  104. package/data/harnesses/code/skills/design/references/interaction.md +3 -3
  105. package/data/harnesses/code/skills/design/references/introspect.md +1 -1
  106. package/data/harnesses/code/skills/design/references/lifecycle.md +2 -2
  107. package/data/harnesses/code/skills/design/references/personality.md +280 -133
  108. package/data/harnesses/code/skills/design/references/structure.md +22 -1
  109. package/data/harnesses/code/skills/design/scripts/convert-design-md.mjs +306 -26
  110. package/data/harnesses/code/skills/design/scripts/derive-personality.mjs +596 -104
  111. package/data/harnesses/code/skills/design/scripts/lib/checks.mjs +200 -11
  112. package/data/harnesses/code/skills/design/scripts/lib/vocabulary.mjs +65 -0
  113. package/data/harnesses/code/skills/design/scripts/phase-gate.mjs +95 -11
  114. package/data/harnesses/code/skills/design/scripts/preship-sweep.mjs +50 -5
  115. package/data/harnesses/code/skills/design/scripts/render-rung.mjs +214 -14
  116. package/data/harnesses/code/skills/design/scripts/scaffold.mjs +242 -25
  117. package/data/harnesses/code/skills/design/scripts/self-integrity.mjs +81 -6
  118. package/data/harnesses/code/skills/design/scripts/snapshot-goldens.mjs +101 -5
  119. package/data/harnesses/code/skills/design/scripts/validate-combinations.mjs +142 -17
  120. package/data/harnesses/etna/CLAUDE.md +1 -1
  121. package/data/harnesses/etna/harness.json +2 -2
  122. package/package.json +1 -1
@@ -2,11 +2,12 @@
2
2
  "$description": "Tesla — radical-subtraction minimalism, translated for operators\n[verbosity] derived: Tesla's radical subtraction — minimal chrome, terse labels, UI that gets out of the way\n[feedback] derived: Tesla's interactions are strictly color-only (no scale/translate); minimal zeroes the press-scale to honor that, ring stays visible\n[density-tier] derived: marketing whitespace-as-luxury stays behind; the engineered-uniform chrome carries as standard, neither cramped nor spacious",
3
3
  "$extensions": {
4
4
  "com.nurix.design": {
5
- "schema": "design-tokens/v1",
5
+ "schema": "design-tokens/v2",
6
6
  "dtcg": "2025.10",
7
7
  "product": "Tesla",
8
8
  "provenance": "library",
9
9
  "sourced": "2026-07-04",
10
+ "theme-default": "light",
10
11
  "product-traits": [
11
12
  "inventory",
12
13
  "configurator",
@@ -185,6 +186,14 @@
185
186
  }
186
187
  }
187
188
  },
189
+ "stagger-unit": {
190
+ "$type": "duration",
191
+ "$value": {
192
+ "value": 30,
193
+ "unit": "ms"
194
+ },
195
+ "$description": "derived: v1→v2 migration — the 30ms default stagger base (0–60ms legal)"
196
+ },
188
197
  "contrast-boost": {
189
198
  "$type": "number",
190
199
  "$value": 1,
@@ -562,6 +571,16 @@
562
571
  }
563
572
  }
564
573
  },
574
+ "surface-raised": {
575
+ "$type": "color",
576
+ "$value": "{color.card}",
577
+ "$description": "derived: v1→v2 migration — light aliases card; dark looks carry the surface-lightness ladder"
578
+ },
579
+ "surface-overlay": {
580
+ "$type": "color",
581
+ "$value": "{color.popover}",
582
+ "$description": "derived: v1→v2 migration — light aliases popover; dark looks carry the surface-lightness ladder"
583
+ },
565
584
  "popover": {
566
585
  "$type": "color",
567
586
  "$value": {
@@ -955,6 +974,295 @@
955
974
  "letterSpacing": 0
956
975
  },
957
976
  "$description": "eyebrow / meta"
977
+ },
978
+ "display": {
979
+ "$type": "typography",
980
+ "$value": {
981
+ "fontFamily": "{typography.family.heading}",
982
+ "fontSize": {
983
+ "value": 42,
984
+ "unit": "px"
985
+ },
986
+ "lineHeight": 1.25,
987
+ "fontWeight": "{primitive.font-weight-strong}",
988
+ "letterSpacing": "{primitive.heading-tracking}"
989
+ },
990
+ "$description": "derived: v1→v2 migration — provisional display step (h1 × 1.75, strong weight)",
991
+ "$extensions": {
992
+ "com.nurix.design": {
993
+ "hint": "display step unset — resolve from the product's design.md or leave for budget-time"
994
+ }
995
+ }
996
+ }
997
+ }
998
+ },
999
+ "elevation": {
1000
+ "sm": {
1001
+ "$type": "shadow",
1002
+ "$value": [
1003
+ {
1004
+ "color": {
1005
+ "colorSpace": "srgb",
1006
+ "components": [
1007
+ 0.05882,
1008
+ 0.0902,
1009
+ 0.16471
1010
+ ],
1011
+ "hex": "#0f172a",
1012
+ "alpha": 0.1
1013
+ },
1014
+ "offsetX": {
1015
+ "value": 0,
1016
+ "unit": "px"
1017
+ },
1018
+ "offsetY": {
1019
+ "value": 1,
1020
+ "unit": "px"
1021
+ },
1022
+ "blur": {
1023
+ "value": 3,
1024
+ "unit": "px"
1025
+ },
1026
+ "spread": {
1027
+ "value": 0,
1028
+ "unit": "px"
1029
+ }
1030
+ },
1031
+ {
1032
+ "color": {
1033
+ "colorSpace": "srgb",
1034
+ "components": [
1035
+ 0.05882,
1036
+ 0.0902,
1037
+ 0.16471
1038
+ ],
1039
+ "hex": "#0f172a",
1040
+ "alpha": 0.1
1041
+ },
1042
+ "offsetX": {
1043
+ "value": 0,
1044
+ "unit": "px"
1045
+ },
1046
+ "offsetY": {
1047
+ "value": 1,
1048
+ "unit": "px"
1049
+ },
1050
+ "blur": {
1051
+ "value": 2,
1052
+ "unit": "px"
1053
+ },
1054
+ "spread": {
1055
+ "value": -1,
1056
+ "unit": "px"
1057
+ }
1058
+ }
1059
+ ],
1060
+ "$description": "derived: v1 shadow-intensity migration",
1061
+ "$extensions": {
1062
+ "com.nurix.design": {
1063
+ "css": "0 1px 3px 0 rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 1px 2px -1px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1064
+ }
1065
+ }
1066
+ },
1067
+ "md": {
1068
+ "$type": "shadow",
1069
+ "$value": [
1070
+ {
1071
+ "color": {
1072
+ "colorSpace": "srgb",
1073
+ "components": [
1074
+ 0.05882,
1075
+ 0.0902,
1076
+ 0.16471
1077
+ ],
1078
+ "hex": "#0f172a",
1079
+ "alpha": 0.1
1080
+ },
1081
+ "offsetX": {
1082
+ "value": 0,
1083
+ "unit": "px"
1084
+ },
1085
+ "offsetY": {
1086
+ "value": 4,
1087
+ "unit": "px"
1088
+ },
1089
+ "blur": {
1090
+ "value": 6,
1091
+ "unit": "px"
1092
+ },
1093
+ "spread": {
1094
+ "value": -1,
1095
+ "unit": "px"
1096
+ }
1097
+ },
1098
+ {
1099
+ "color": {
1100
+ "colorSpace": "srgb",
1101
+ "components": [
1102
+ 0.05882,
1103
+ 0.0902,
1104
+ 0.16471
1105
+ ],
1106
+ "hex": "#0f172a",
1107
+ "alpha": 0.1
1108
+ },
1109
+ "offsetX": {
1110
+ "value": 0,
1111
+ "unit": "px"
1112
+ },
1113
+ "offsetY": {
1114
+ "value": 2,
1115
+ "unit": "px"
1116
+ },
1117
+ "blur": {
1118
+ "value": 4,
1119
+ "unit": "px"
1120
+ },
1121
+ "spread": {
1122
+ "value": -2,
1123
+ "unit": "px"
1124
+ }
1125
+ }
1126
+ ],
1127
+ "$description": "derived: v1 shadow-intensity migration",
1128
+ "$extensions": {
1129
+ "com.nurix.design": {
1130
+ "css": "0 4px 6px -1px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 2px 4px -2px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1131
+ }
1132
+ }
1133
+ },
1134
+ "lg": {
1135
+ "$type": "shadow",
1136
+ "$value": [
1137
+ {
1138
+ "color": {
1139
+ "colorSpace": "srgb",
1140
+ "components": [
1141
+ 0.05882,
1142
+ 0.0902,
1143
+ 0.16471
1144
+ ],
1145
+ "hex": "#0f172a",
1146
+ "alpha": 0.1
1147
+ },
1148
+ "offsetX": {
1149
+ "value": 0,
1150
+ "unit": "px"
1151
+ },
1152
+ "offsetY": {
1153
+ "value": 10,
1154
+ "unit": "px"
1155
+ },
1156
+ "blur": {
1157
+ "value": 15,
1158
+ "unit": "px"
1159
+ },
1160
+ "spread": {
1161
+ "value": -3,
1162
+ "unit": "px"
1163
+ }
1164
+ },
1165
+ {
1166
+ "color": {
1167
+ "colorSpace": "srgb",
1168
+ "components": [
1169
+ 0.05882,
1170
+ 0.0902,
1171
+ 0.16471
1172
+ ],
1173
+ "hex": "#0f172a",
1174
+ "alpha": 0.1
1175
+ },
1176
+ "offsetX": {
1177
+ "value": 0,
1178
+ "unit": "px"
1179
+ },
1180
+ "offsetY": {
1181
+ "value": 4,
1182
+ "unit": "px"
1183
+ },
1184
+ "blur": {
1185
+ "value": 6,
1186
+ "unit": "px"
1187
+ },
1188
+ "spread": {
1189
+ "value": -4,
1190
+ "unit": "px"
1191
+ }
1192
+ }
1193
+ ],
1194
+ "$description": "derived: v1 shadow-intensity migration",
1195
+ "$extensions": {
1196
+ "com.nurix.design": {
1197
+ "css": "0 10px 15px -3px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 4px 6px -4px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1198
+ }
1199
+ }
1200
+ },
1201
+ "overlay": {
1202
+ "$type": "shadow",
1203
+ "$value": [
1204
+ {
1205
+ "color": {
1206
+ "colorSpace": "srgb",
1207
+ "components": [
1208
+ 0.05882,
1209
+ 0.0902,
1210
+ 0.16471
1211
+ ],
1212
+ "hex": "#0f172a",
1213
+ "alpha": 0.1
1214
+ },
1215
+ "offsetX": {
1216
+ "value": 0,
1217
+ "unit": "px"
1218
+ },
1219
+ "offsetY": {
1220
+ "value": 20,
1221
+ "unit": "px"
1222
+ },
1223
+ "blur": {
1224
+ "value": 25,
1225
+ "unit": "px"
1226
+ },
1227
+ "spread": {
1228
+ "value": -5,
1229
+ "unit": "px"
1230
+ }
1231
+ },
1232
+ {
1233
+ "color": {
1234
+ "colorSpace": "srgb",
1235
+ "components": [
1236
+ 0.05882,
1237
+ 0.0902,
1238
+ 0.16471
1239
+ ],
1240
+ "hex": "#0f172a",
1241
+ "alpha": 0.1
1242
+ },
1243
+ "offsetX": {
1244
+ "value": 0,
1245
+ "unit": "px"
1246
+ },
1247
+ "offsetY": {
1248
+ "value": 8,
1249
+ "unit": "px"
1250
+ },
1251
+ "blur": {
1252
+ "value": 10,
1253
+ "unit": "px"
1254
+ },
1255
+ "spread": {
1256
+ "value": -6,
1257
+ "unit": "px"
1258
+ }
1259
+ }
1260
+ ],
1261
+ "$description": "derived: v1 shadow-intensity migration",
1262
+ "$extensions": {
1263
+ "com.nurix.design": {
1264
+ "css": "0 20px 25px -5px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 8px 10px -6px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1265
+ }
958
1266
  }
959
1267
  }
960
1268
  }
@@ -2,11 +2,12 @@
2
2
  "$description": "The Verge — the operator reading\n[verbosity] derived: the mono-label voice likes visible labels, kickers, and tags\n[density-tier] derived: an editorial-paced brand read to an honest operator tier; the console density is available per-archetype",
3
3
  "$extensions": {
4
4
  "com.nurix.design": {
5
- "schema": "design-tokens/v1",
5
+ "schema": "design-tokens/v2",
6
6
  "dtcg": "2025.10",
7
7
  "product": "The Verge",
8
8
  "provenance": "library",
9
9
  "sourced": "2026-07-04",
10
+ "theme-default": "light",
10
11
  "product-traits": [
11
12
  "log-stream",
12
13
  "dashboard",
@@ -185,6 +186,14 @@
185
186
  }
186
187
  }
187
188
  },
189
+ "stagger-unit": {
190
+ "$type": "duration",
191
+ "$value": {
192
+ "value": 30,
193
+ "unit": "ms"
194
+ },
195
+ "$description": "derived: v1→v2 migration — the 30ms default stagger base (0–60ms legal)"
196
+ },
188
197
  "contrast-boost": {
189
198
  "$type": "number",
190
199
  "$value": 1,
@@ -571,6 +580,16 @@
571
580
  }
572
581
  }
573
582
  },
583
+ "surface-raised": {
584
+ "$type": "color",
585
+ "$value": "{color.card}",
586
+ "$description": "derived: v1→v2 migration — light aliases card; dark looks carry the surface-lightness ladder"
587
+ },
588
+ "surface-overlay": {
589
+ "$type": "color",
590
+ "$value": "{color.popover}",
591
+ "$description": "derived: v1→v2 migration — light aliases popover; dark looks carry the surface-lightness ladder"
592
+ },
574
593
  "popover": {
575
594
  "$type": "color",
576
595
  "$value": {
@@ -971,6 +990,295 @@
971
990
  }
972
991
  }
973
992
  }
993
+ },
994
+ "display": {
995
+ "$type": "typography",
996
+ "$value": {
997
+ "fontFamily": "{typography.family.heading}",
998
+ "fontSize": {
999
+ "value": 46,
1000
+ "unit": "px"
1001
+ },
1002
+ "lineHeight": 1.1,
1003
+ "fontWeight": "{primitive.font-weight-strong}",
1004
+ "letterSpacing": "{primitive.heading-tracking}"
1005
+ },
1006
+ "$description": "derived: v1→v2 migration — provisional display step (h1 × 1.75, strong weight)",
1007
+ "$extensions": {
1008
+ "com.nurix.design": {
1009
+ "hint": "display step unset — resolve from the product's design.md or leave for budget-time"
1010
+ }
1011
+ }
1012
+ }
1013
+ }
1014
+ },
1015
+ "elevation": {
1016
+ "sm": {
1017
+ "$type": "shadow",
1018
+ "$value": [
1019
+ {
1020
+ "color": {
1021
+ "colorSpace": "srgb",
1022
+ "components": [
1023
+ 0.05882,
1024
+ 0.0902,
1025
+ 0.16471
1026
+ ],
1027
+ "hex": "#0f172a",
1028
+ "alpha": 0.1
1029
+ },
1030
+ "offsetX": {
1031
+ "value": 0,
1032
+ "unit": "px"
1033
+ },
1034
+ "offsetY": {
1035
+ "value": 1,
1036
+ "unit": "px"
1037
+ },
1038
+ "blur": {
1039
+ "value": 3,
1040
+ "unit": "px"
1041
+ },
1042
+ "spread": {
1043
+ "value": 0,
1044
+ "unit": "px"
1045
+ }
1046
+ },
1047
+ {
1048
+ "color": {
1049
+ "colorSpace": "srgb",
1050
+ "components": [
1051
+ 0.05882,
1052
+ 0.0902,
1053
+ 0.16471
1054
+ ],
1055
+ "hex": "#0f172a",
1056
+ "alpha": 0.1
1057
+ },
1058
+ "offsetX": {
1059
+ "value": 0,
1060
+ "unit": "px"
1061
+ },
1062
+ "offsetY": {
1063
+ "value": 1,
1064
+ "unit": "px"
1065
+ },
1066
+ "blur": {
1067
+ "value": 2,
1068
+ "unit": "px"
1069
+ },
1070
+ "spread": {
1071
+ "value": -1,
1072
+ "unit": "px"
1073
+ }
1074
+ }
1075
+ ],
1076
+ "$description": "derived: v1 shadow-intensity migration",
1077
+ "$extensions": {
1078
+ "com.nurix.design": {
1079
+ "css": "0 1px 3px 0 rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 1px 2px -1px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1080
+ }
1081
+ }
1082
+ },
1083
+ "md": {
1084
+ "$type": "shadow",
1085
+ "$value": [
1086
+ {
1087
+ "color": {
1088
+ "colorSpace": "srgb",
1089
+ "components": [
1090
+ 0.05882,
1091
+ 0.0902,
1092
+ 0.16471
1093
+ ],
1094
+ "hex": "#0f172a",
1095
+ "alpha": 0.1
1096
+ },
1097
+ "offsetX": {
1098
+ "value": 0,
1099
+ "unit": "px"
1100
+ },
1101
+ "offsetY": {
1102
+ "value": 4,
1103
+ "unit": "px"
1104
+ },
1105
+ "blur": {
1106
+ "value": 6,
1107
+ "unit": "px"
1108
+ },
1109
+ "spread": {
1110
+ "value": -1,
1111
+ "unit": "px"
1112
+ }
1113
+ },
1114
+ {
1115
+ "color": {
1116
+ "colorSpace": "srgb",
1117
+ "components": [
1118
+ 0.05882,
1119
+ 0.0902,
1120
+ 0.16471
1121
+ ],
1122
+ "hex": "#0f172a",
1123
+ "alpha": 0.1
1124
+ },
1125
+ "offsetX": {
1126
+ "value": 0,
1127
+ "unit": "px"
1128
+ },
1129
+ "offsetY": {
1130
+ "value": 2,
1131
+ "unit": "px"
1132
+ },
1133
+ "blur": {
1134
+ "value": 4,
1135
+ "unit": "px"
1136
+ },
1137
+ "spread": {
1138
+ "value": -2,
1139
+ "unit": "px"
1140
+ }
1141
+ }
1142
+ ],
1143
+ "$description": "derived: v1 shadow-intensity migration",
1144
+ "$extensions": {
1145
+ "com.nurix.design": {
1146
+ "css": "0 4px 6px -1px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 2px 4px -2px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1147
+ }
1148
+ }
1149
+ },
1150
+ "lg": {
1151
+ "$type": "shadow",
1152
+ "$value": [
1153
+ {
1154
+ "color": {
1155
+ "colorSpace": "srgb",
1156
+ "components": [
1157
+ 0.05882,
1158
+ 0.0902,
1159
+ 0.16471
1160
+ ],
1161
+ "hex": "#0f172a",
1162
+ "alpha": 0.1
1163
+ },
1164
+ "offsetX": {
1165
+ "value": 0,
1166
+ "unit": "px"
1167
+ },
1168
+ "offsetY": {
1169
+ "value": 10,
1170
+ "unit": "px"
1171
+ },
1172
+ "blur": {
1173
+ "value": 15,
1174
+ "unit": "px"
1175
+ },
1176
+ "spread": {
1177
+ "value": -3,
1178
+ "unit": "px"
1179
+ }
1180
+ },
1181
+ {
1182
+ "color": {
1183
+ "colorSpace": "srgb",
1184
+ "components": [
1185
+ 0.05882,
1186
+ 0.0902,
1187
+ 0.16471
1188
+ ],
1189
+ "hex": "#0f172a",
1190
+ "alpha": 0.1
1191
+ },
1192
+ "offsetX": {
1193
+ "value": 0,
1194
+ "unit": "px"
1195
+ },
1196
+ "offsetY": {
1197
+ "value": 4,
1198
+ "unit": "px"
1199
+ },
1200
+ "blur": {
1201
+ "value": 6,
1202
+ "unit": "px"
1203
+ },
1204
+ "spread": {
1205
+ "value": -4,
1206
+ "unit": "px"
1207
+ }
1208
+ }
1209
+ ],
1210
+ "$description": "derived: v1 shadow-intensity migration",
1211
+ "$extensions": {
1212
+ "com.nurix.design": {
1213
+ "css": "0 10px 15px -3px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 4px 6px -4px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1214
+ }
1215
+ }
1216
+ },
1217
+ "overlay": {
1218
+ "$type": "shadow",
1219
+ "$value": [
1220
+ {
1221
+ "color": {
1222
+ "colorSpace": "srgb",
1223
+ "components": [
1224
+ 0.05882,
1225
+ 0.0902,
1226
+ 0.16471
1227
+ ],
1228
+ "hex": "#0f172a",
1229
+ "alpha": 0.1
1230
+ },
1231
+ "offsetX": {
1232
+ "value": 0,
1233
+ "unit": "px"
1234
+ },
1235
+ "offsetY": {
1236
+ "value": 20,
1237
+ "unit": "px"
1238
+ },
1239
+ "blur": {
1240
+ "value": 25,
1241
+ "unit": "px"
1242
+ },
1243
+ "spread": {
1244
+ "value": -5,
1245
+ "unit": "px"
1246
+ }
1247
+ },
1248
+ {
1249
+ "color": {
1250
+ "colorSpace": "srgb",
1251
+ "components": [
1252
+ 0.05882,
1253
+ 0.0902,
1254
+ 0.16471
1255
+ ],
1256
+ "hex": "#0f172a",
1257
+ "alpha": 0.1
1258
+ },
1259
+ "offsetX": {
1260
+ "value": 0,
1261
+ "unit": "px"
1262
+ },
1263
+ "offsetY": {
1264
+ "value": 8,
1265
+ "unit": "px"
1266
+ },
1267
+ "blur": {
1268
+ "value": 10,
1269
+ "unit": "px"
1270
+ },
1271
+ "spread": {
1272
+ "value": -6,
1273
+ "unit": "px"
1274
+ }
1275
+ }
1276
+ ],
1277
+ "$description": "derived: v1 shadow-intensity migration",
1278
+ "$extensions": {
1279
+ "com.nurix.design": {
1280
+ "css": "0 20px 25px -5px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity))), 0 8px 10px -6px rgb(15 23 42 / calc(0.10 * var(--shadow-intensity)))"
1281
+ }
974
1282
  }
975
1283
  }
976
1284
  }