savant-code 0.0.22 → 0.0.24

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 (79) hide show
  1. package/README.md +5 -0
  2. package/launcher.js +192 -5
  3. package/package.json +3 -2
  4. package/savant-design-systems/SKILL.md +12 -0
  5. package/savant-design-systems/manifest.json +2541 -0
  6. package/savant-design-systems/resources/airbnb-design-analysis.json +983 -0
  7. package/savant-design-systems/resources/airtable-design-analysis.json +931 -0
  8. package/savant-design-systems/resources/apple-design-analysis.json +920 -0
  9. package/savant-design-systems/resources/binance-design-analysis.json +1068 -0
  10. package/savant-design-systems/resources/bmw-design-analysis.json +912 -0
  11. package/savant-design-systems/resources/bmw-m-design-analysis.json +824 -0
  12. package/savant-design-systems/resources/bugatti-design-analysis.json +746 -0
  13. package/savant-design-systems/resources/cal-com-design-analysis.json +913 -0
  14. package/savant-design-systems/resources/claude-design-analysis.json +1007 -0
  15. package/savant-design-systems/resources/clay-design-analysis.json +919 -0
  16. package/savant-design-systems/resources/clickhouse-design-analysis.json +926 -0
  17. package/savant-design-systems/resources/cohere-design-analysis.json +725 -0
  18. package/savant-design-systems/resources/coinbase-design-analysis.json +998 -0
  19. package/savant-design-systems/resources/composio-design-analysis.json +851 -0
  20. package/savant-design-systems/resources/cursor-design-analysis.json +934 -0
  21. package/savant-design-systems/resources/dell-1996-inspired.json +1042 -0
  22. package/savant-design-systems/resources/elevenlabs.json +551 -0
  23. package/savant-design-systems/resources/expo-design-analysis.json +879 -0
  24. package/savant-design-systems/resources/ferrari-design-analysis.json +874 -0
  25. package/savant-design-systems/resources/figma-design-analysis.json +928 -0
  26. package/savant-design-systems/resources/framer-design-analysis.json +891 -0
  27. package/savant-design-systems/resources/hashicorp-design-analysis.json +909 -0
  28. package/savant-design-systems/resources/hp-design-analysis.json +1077 -0
  29. package/savant-design-systems/resources/ibm-design-analysis.json +881 -0
  30. package/savant-design-systems/resources/intercom-design-analysis.json +876 -0
  31. package/savant-design-systems/resources/kraken.json +172 -0
  32. package/savant-design-systems/resources/lamborghini.json +335 -0
  33. package/savant-design-systems/resources/linear-design-analysis.json +890 -0
  34. package/savant-design-systems/resources/lovable.json +345 -0
  35. package/savant-design-systems/resources/mastercard.json +412 -0
  36. package/savant-design-systems/resources/meta-design-analysis.json +1121 -0
  37. package/savant-design-systems/resources/minimax-design-analysis.json +1220 -0
  38. package/savant-design-systems/resources/mintlify-design-analysis.json +1418 -0
  39. package/savant-design-systems/resources/miro-design-analysis.json +1364 -0
  40. package/savant-design-systems/resources/mistral-ai-design-analysis.json +1286 -0
  41. package/savant-design-systems/resources/mongodb-design-analysis.json +1276 -0
  42. package/savant-design-systems/resources/nike-design-analysis.json +938 -0
  43. package/savant-design-systems/resources/nintendo-com-2001-analysis.json +1082 -0
  44. package/savant-design-systems/resources/notion-design-analysis.json +1368 -0
  45. package/savant-design-systems/resources/nvidia-design-analysis.json +1023 -0
  46. package/savant-design-systems/resources/ollama-design-analysis.json +863 -0
  47. package/savant-design-systems/resources/opencode-design-analysis.json +806 -0
  48. package/savant-design-systems/resources/pinterest-design-analysis.json +953 -0
  49. package/savant-design-systems/resources/playstation-design-analysis.json +1053 -0
  50. package/savant-design-systems/resources/posthog-design-analysis.json +1146 -0
  51. package/savant-design-systems/resources/raycast.json +716 -0
  52. package/savant-design-systems/resources/renault-design-analysis.json +916 -0
  53. package/savant-design-systems/resources/replicate-design-analysis.json +986 -0
  54. package/savant-design-systems/resources/resend-design-analysis.json +942 -0
  55. package/savant-design-systems/resources/revolut-design-analysis.json +1008 -0
  56. package/savant-design-systems/resources/runwayml.json +291 -0
  57. package/savant-design-systems/resources/sanity.json +404 -0
  58. package/savant-design-systems/resources/sentri-inspired-design-analysis.json +953 -0
  59. package/savant-design-systems/resources/shopifi-inspired-design-analysis.json +921 -0
  60. package/savant-design-systems/resources/slacc-inspired-design-analysis.json +799 -0
  61. package/savant-design-systems/resources/spacex-inspired-design-analysis.json +598 -0
  62. package/savant-design-systems/resources/spotify.json +293 -0
  63. package/savant-design-systems/resources/starbucks.json +627 -0
  64. package/savant-design-systems/resources/stripi-inspired-design-analysis.json +805 -0
  65. package/savant-design-systems/resources/supabase.json +509 -0
  66. package/savant-design-systems/resources/superhumon-inspired-design-analysis.json +740 -0
  67. package/savant-design-systems/resources/tesla.json +333 -0
  68. package/savant-design-systems/resources/theverge.json +386 -0
  69. package/savant-design-systems/resources/together-ai-inspired-design-analysis.json +1099 -0
  70. package/savant-design-systems/resources/uber-inspired-design-analysis.json +1067 -0
  71. package/savant-design-systems/resources/vercel-inspired-design-analysis.json +1261 -0
  72. package/savant-design-systems/resources/vodafone-inspired-design-analysis.json +912 -0
  73. package/savant-design-systems/resources/voltagent-inspired-design-analysis.json +929 -0
  74. package/savant-design-systems/resources/warp-inspired-design-analysis.json +946 -0
  75. package/savant-design-systems/resources/webflow-inspired-design-analysis.json +1033 -0
  76. package/savant-design-systems/resources/wired-inspired-design-analysis.json +877 -0
  77. package/savant-design-systems/resources/wise-inspired-design-analysis.json +916 -0
  78. package/savant-design-systems/resources/xai-inspired-design-analysis.json +820 -0
  79. package/savant-design-systems/resources/zapier-inspired-design-analysis.json +915 -0
@@ -0,0 +1,946 @@
1
+ {
2
+ "schemaVersion": "1",
3
+ "id": "warp-inspired-design-analysis",
4
+ "displayName": "Warp-Inspired-design-analysis",
5
+ "description": "An inspired interpretation of Warp's design language — an agentic terminal-and-development-environment brand whose surface is a warm near-charcoal canvas (a tint warmer than pure black), broken only by clean Inter typography, the occasional Instrument Serif italic moment, and dense terminal-mockup imagery; CTAs are unusually understated, with shape geometry running tighter than most marketing sites.",
6
+ "source": "embedded",
7
+ "status": "curated-reference",
8
+ "targets": [
9
+ "terminal",
10
+ "react"
11
+ ],
12
+ "contentPath": "packages/design-systems/library/warp.design.md",
13
+ "sourceContentHash": "5b1201f7b1b4e72570d148d1f980fd1cb35e6e4122d48dd271787aa3538a25ad",
14
+ "normalizedContentHash": "039339b0d961ca0a11577b3a8a8d2c31cca63354041913012342bdd8a0300902",
15
+ "provenance": {
16
+ "sourceRepository": "VoltAgent/awesome-design-md",
17
+ "sourceRevision": "working-tree-curated-snapshot",
18
+ "sourcePath": "packages/design-systems/library/warp.design.md",
19
+ "license": "MIT"
20
+ },
21
+ "fonts": [
22
+ {
23
+ "family": "DM Mono",
24
+ "fallback": [
25
+ "system-ui",
26
+ "sans-serif"
27
+ ],
28
+ "redistributable": false
29
+ },
30
+ {
31
+ "family": "Georgia",
32
+ "fallback": [
33
+ "system-ui",
34
+ "sans-serif"
35
+ ],
36
+ "redistributable": false
37
+ },
38
+ {
39
+ "family": "Instrument Serif",
40
+ "fallback": [
41
+ "system-ui",
42
+ "sans-serif"
43
+ ],
44
+ "redistributable": false
45
+ },
46
+ {
47
+ "family": "Inter",
48
+ "fallback": [
49
+ "system-ui",
50
+ "sans-serif"
51
+ ],
52
+ "redistributable": false
53
+ },
54
+ {
55
+ "family": "Menlo",
56
+ "fallback": [
57
+ "system-ui",
58
+ "sans-serif"
59
+ ],
60
+ "redistributable": false
61
+ },
62
+ {
63
+ "family": "Roboto",
64
+ "fallback": [
65
+ "system-ui",
66
+ "sans-serif"
67
+ ],
68
+ "redistributable": false
69
+ },
70
+ {
71
+ "family": "Segoe UI",
72
+ "fallback": [
73
+ "system-ui",
74
+ "sans-serif"
75
+ ],
76
+ "redistributable": false
77
+ },
78
+ {
79
+ "family": "SFMono-Regular",
80
+ "fallback": [
81
+ "system-ui",
82
+ "sans-serif"
83
+ ],
84
+ "redistributable": false
85
+ },
86
+ {
87
+ "family": "Times New Roman",
88
+ "fallback": [
89
+ "system-ui",
90
+ "sans-serif"
91
+ ],
92
+ "redistributable": false
93
+ },
94
+ {
95
+ "family": "ui-monospace",
96
+ "fallback": [
97
+ "system-ui",
98
+ "sans-serif"
99
+ ],
100
+ "redistributable": false
101
+ }
102
+ ],
103
+ "tokens": {
104
+ "colors": {
105
+ "body": "#c9c0ad",
106
+ "body-strong": "#dad2c1",
107
+ "canvas": "#2b2622",
108
+ "canvas-soft": "#383330",
109
+ "hairline": "#3f3a36",
110
+ "ink": "#f7f5f0",
111
+ "mute": "#aea69c",
112
+ "on-primary": "#2b2622",
113
+ "primary": "#f7f5f0"
114
+ },
115
+ "typography": {
116
+ "display-xl": {
117
+ "fontFamily": "Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif",
118
+ "fontSize": "64px",
119
+ "fontWeight": 400,
120
+ "letterSpacing": "-1.6px",
121
+ "lineHeight": "70.4px"
122
+ },
123
+ "display-lg": {
124
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
125
+ "fontSize": "48px",
126
+ "fontWeight": 400,
127
+ "letterSpacing": "-1.2px",
128
+ "lineHeight": "52.8px"
129
+ },
130
+ "display-md": {
131
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
132
+ "fontSize": "32px",
133
+ "fontWeight": 500,
134
+ "letterSpacing": "-0.8px",
135
+ "lineHeight": "40px"
136
+ },
137
+ "display-sm": {
138
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
139
+ "fontSize": "24px",
140
+ "fontWeight": 500,
141
+ "letterSpacing": "-0.4px",
142
+ "lineHeight": "32px"
143
+ },
144
+ "display-serif": {
145
+ "fontFamily": "Instrument Serif, Georgia, \"Times New Roman\", serif",
146
+ "fontSize": "48px",
147
+ "fontWeight": 400,
148
+ "letterSpacing": "-0.5px",
149
+ "lineHeight": "52px"
150
+ },
151
+ "body-lg": {
152
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
153
+ "fontSize": "18px",
154
+ "fontWeight": 400,
155
+ "lineHeight": "28px"
156
+ },
157
+ "body-md": {
158
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
159
+ "fontSize": "16px",
160
+ "fontWeight": 400,
161
+ "lineHeight": "24px"
162
+ },
163
+ "body-md-strong": {
164
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
165
+ "fontSize": "16px",
166
+ "fontWeight": 500,
167
+ "lineHeight": "24px"
168
+ },
169
+ "body-sm": {
170
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
171
+ "fontSize": "14px",
172
+ "fontWeight": 400,
173
+ "lineHeight": "20px"
174
+ },
175
+ "body-sm-strong": {
176
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
177
+ "fontSize": "14px",
178
+ "fontWeight": 500,
179
+ "lineHeight": "20px"
180
+ },
181
+ "caption": {
182
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
183
+ "fontSize": "12px",
184
+ "fontWeight": 400,
185
+ "lineHeight": "16px"
186
+ },
187
+ "code": {
188
+ "fontFamily": "DM Mono, ui-monospace, SFMono-Regular, Menlo, monospace",
189
+ "fontSize": "13px",
190
+ "fontWeight": 400,
191
+ "lineHeight": "18px"
192
+ },
193
+ "code-md": {
194
+ "fontFamily": "DM Mono, ui-monospace, SFMono-Regular, Menlo, monospace",
195
+ "fontSize": "14px",
196
+ "fontWeight": 400,
197
+ "lineHeight": "20px"
198
+ },
199
+ "button-md": {
200
+ "fontFamily": "Inter, system-ui, -apple-system, sans-serif",
201
+ "fontSize": "14px",
202
+ "fontWeight": 500,
203
+ "lineHeight": "20px"
204
+ }
205
+ },
206
+ "spacing": {
207
+ "2xl": "32px",
208
+ "3xl": "48px",
209
+ "4xl": "64px",
210
+ "5xl": "96px",
211
+ "lg": "16px",
212
+ "md": "10px",
213
+ "sm": "8px",
214
+ "xl": "24px",
215
+ "xs": "4px",
216
+ "xxs": "2px"
217
+ },
218
+ "radius": {
219
+ "full": "9999px",
220
+ "lg": "6px",
221
+ "md": "4px",
222
+ "none": "0px",
223
+ "pill": "9999px",
224
+ "sm": "3px",
225
+ "xs": "2px",
226
+ "xxs": "1px"
227
+ },
228
+ "components": {
229
+ "nav-bar": {
230
+ "backgroundColor": "{colors.canvas}",
231
+ "padding": "{spacing.md} {spacing.xl}",
232
+ "textColor": "{colors.ink}",
233
+ "typography": "{typography.body-sm-strong}"
234
+ },
235
+ "nav-link": {
236
+ "backgroundColor": "{colors.canvas}",
237
+ "padding": "{spacing.xs} {spacing.md}",
238
+ "rounded": "{rounded.sm}",
239
+ "textColor": "{colors.ink}",
240
+ "typography": "{typography.body-sm-strong}"
241
+ },
242
+ "button-primary": {
243
+ "backgroundColor": "{colors.primary}",
244
+ "padding": "{spacing.sm} {spacing.lg}",
245
+ "rounded": "{rounded.sm}",
246
+ "textColor": "{colors.on-primary}",
247
+ "typography": "{typography.button-md}"
248
+ },
249
+ "button-secondary-ghost": {
250
+ "backgroundColor": "{colors.canvas}",
251
+ "padding": "{spacing.sm} {spacing.lg}",
252
+ "rounded": "{rounded.sm}",
253
+ "textColor": "{colors.ink}",
254
+ "typography": "{typography.button-md}"
255
+ },
256
+ "button-icon-circular": {
257
+ "backgroundColor": "{colors.canvas}",
258
+ "padding": "{spacing.xs}",
259
+ "rounded": "{rounded.full}",
260
+ "textColor": "{colors.ink}"
261
+ },
262
+ "text-input": {
263
+ "backgroundColor": "{colors.canvas-soft}",
264
+ "borderColor": "{colors.hairline}",
265
+ "padding": "{spacing.sm} {spacing.md}",
266
+ "rounded": "{rounded.sm}",
267
+ "textColor": "{colors.ink}",
268
+ "typography": "{typography.body-sm}"
269
+ },
270
+ "card-content": {
271
+ "backgroundColor": "{colors.canvas-soft}",
272
+ "borderColor": "{colors.hairline}",
273
+ "padding": "{spacing.xl}",
274
+ "rounded": "{rounded.md}",
275
+ "textColor": "{colors.ink}",
276
+ "typography": "{typography.body-md}"
277
+ },
278
+ "card-mockup": {
279
+ "backgroundColor": "{colors.canvas-soft}",
280
+ "borderColor": "{colors.hairline}",
281
+ "padding": "{spacing.lg}",
282
+ "rounded": "{rounded.md}",
283
+ "textColor": "{colors.ink}",
284
+ "typography": "{typography.code}"
285
+ },
286
+ "download-tile": {
287
+ "backgroundColor": "{colors.canvas-soft}",
288
+ "borderColor": "{colors.hairline}",
289
+ "padding": "{spacing.xl}",
290
+ "rounded": "{rounded.md}",
291
+ "textColor": "{colors.ink}",
292
+ "typography": "{typography.body-md-strong}"
293
+ },
294
+ "press-row": {
295
+ "backgroundColor": "{colors.canvas}",
296
+ "borderColor": "{colors.hairline}",
297
+ "padding": "{spacing.lg} 0",
298
+ "textColor": "{colors.body}",
299
+ "typography": "{typography.body-md}"
300
+ },
301
+ "job-row": {
302
+ "backgroundColor": "{colors.canvas}",
303
+ "borderColor": "{colors.hairline}",
304
+ "padding": "{spacing.lg} 0",
305
+ "textColor": "{colors.ink}",
306
+ "typography": "{typography.body-md-strong}"
307
+ },
308
+ "hero-band": {
309
+ "backgroundColor": "{colors.canvas}",
310
+ "padding": "{spacing.5xl} {spacing.xl}",
311
+ "textColor": "{colors.ink}",
312
+ "typography": "{typography.display-xl}"
313
+ },
314
+ "content-band": {
315
+ "backgroundColor": "{colors.canvas}",
316
+ "padding": "{spacing.5xl} {spacing.xl}",
317
+ "textColor": "{colors.ink}",
318
+ "typography": "{typography.display-md}"
319
+ },
320
+ "partner-logo-tile": {
321
+ "backgroundColor": "{colors.canvas-soft}",
322
+ "padding": "{spacing.lg}",
323
+ "rounded": "{rounded.md}",
324
+ "textColor": "{colors.ink}",
325
+ "typography": "{typography.body-md-strong}"
326
+ },
327
+ "testimonial-card": {
328
+ "backgroundColor": "{colors.canvas-soft}",
329
+ "borderColor": "{colors.hairline}",
330
+ "padding": "{spacing.xl}",
331
+ "rounded": "{rounded.md}",
332
+ "textColor": "{colors.ink}",
333
+ "typography": "{typography.body-md}"
334
+ },
335
+ "footer": {
336
+ "backgroundColor": "{colors.canvas}",
337
+ "padding": "{spacing.3xl} {spacing.xl}",
338
+ "textColor": "{colors.body}",
339
+ "typography": "{typography.body-sm}"
340
+ },
341
+ "ex-pricing-tier": {
342
+ "backgroundColor": "{colors.canvas-soft}",
343
+ "borderColor": "{colors.hairline}",
344
+ "description": "Default Pricing tier card. Re-uses feature-card chrome with brand canvas-soft surface.",
345
+ "padding": "{spacing.xl}",
346
+ "rounded": "{rounded.lg}",
347
+ "textColor": "{colors.ink}"
348
+ },
349
+ "ex-pricing-tier-featured": {
350
+ "backgroundColor": "{colors.ink}",
351
+ "description": "Featured/highlighted tier — polarity-flipped surface (dark fill + light text in light mode, light fill + dark text in dark mode).",
352
+ "padding": "{spacing.xl}",
353
+ "rounded": "{rounded.lg}",
354
+ "textColor": "{colors.on-primary}"
355
+ },
356
+ "ex-product-selector": {
357
+ "backgroundColor": "{colors.canvas-soft}",
358
+ "description": "What's Included summary card — re-purposed for SaaS / B2B verticals (NOT a literal product gallery).",
359
+ "padding": "{spacing.xl}",
360
+ "rounded": "{rounded.lg}"
361
+ },
362
+ "ex-cart-drawer": {
363
+ "backgroundColor": "{colors.canvas}",
364
+ "description": "Subscription summary — re-purposed for SaaS / B2B (line items per add-on, not literal cart).",
365
+ "item-divider": "{colors.hairline}",
366
+ "padding": "{spacing.xl}",
367
+ "rounded": "{rounded.lg}"
368
+ },
369
+ "ex-app-shell-row": {
370
+ "activeIndicator": "{colors.primary}",
371
+ "backgroundColor": "{colors.canvas}",
372
+ "description": "Sidebar nav row inside the App Shell example. Active state uses brand primary as the indicator.",
373
+ "padding": "{spacing.sm} {spacing.md}",
374
+ "rounded": "{rounded.sm}"
375
+ },
376
+ "ex-data-table-cell": {
377
+ "bodyTypography": "{typography.body-sm}",
378
+ "cellPadding": "{spacing.sm} {spacing.md}",
379
+ "description": "Default data-table th + td chrome. Header uses mono-caps eyebrow typography; body uses body-sm.",
380
+ "headerBackground": "{colors.canvas-soft}",
381
+ "headerTypography": "{typography.caption}",
382
+ "rowBorder": "{colors.hairline}"
383
+ },
384
+ "ex-auth-form-card": {
385
+ "backgroundColor": "{colors.canvas-soft}",
386
+ "description": "Sign-in / sign-up card. Re-uses feature-card chrome with text-input primitives inside.",
387
+ "padding": "{spacing.xl}",
388
+ "rounded": "{rounded.lg}"
389
+ },
390
+ "ex-modal-card": {
391
+ "backgroundColor": "{colors.canvas}",
392
+ "description": "Modal dialog surface — same chrome as feature-card with elevated shadow.",
393
+ "padding": "{spacing.xl}",
394
+ "rounded": "{rounded.lg}"
395
+ },
396
+ "ex-empty-state-card": {
397
+ "backgroundColor": "{colors.canvas-soft}",
398
+ "captionTypography": "{typography.body-md}",
399
+ "description": "Empty-state illustration frame.",
400
+ "padding": "{spacing.2xl}",
401
+ "rounded": "{rounded.lg}"
402
+ },
403
+ "ex-toast": {
404
+ "backgroundColor": "{colors.canvas}",
405
+ "description": "Toast notification surface — feature-card shape + medium shadow.",
406
+ "padding": "{spacing.sm} {spacing.md}",
407
+ "rounded": "{rounded.md}",
408
+ "typography": "{typography.body-sm}"
409
+ }
410
+ },
411
+ "extensions": {
412
+ "description": "An inspired interpretation of Warp's design language — an agentic terminal-and-development-environment brand whose surface is a warm near-charcoal canvas (a tint warmer than pure black), broken only by clean Inter typography, the occasional Instrument Serif italic moment, and dense terminal-mockup imagery; CTAs are unusually understated, with shape geometry running tighter than most marketing sites.",
413
+ "name": "Warp-Inspired-design-analysis",
414
+ "version": "alpha"
415
+ }
416
+ }
417
+ }
418
+
419
+ ---
420
+
421
+ ---
422
+ version: alpha
423
+ name: Warp-Inspired-design-analysis
424
+ description: An inspired interpretation of Warp's design language — an agentic terminal-and-development-environment brand whose surface is a warm near-charcoal canvas (a tint warmer than pure black), broken only by clean Inter typography, the occasional Instrument Serif italic moment, and dense terminal-mockup imagery; CTAs are unusually understated, with shape geometry running tighter than most marketing sites.
425
+
426
+ colors:
427
+ primary: "#f7f5f0"
428
+ on-primary: "#2b2622"
429
+ ink: "#f7f5f0"
430
+ body: "#c9c0ad"
431
+ body-strong: "#dad2c1"
432
+ mute: "#aea69c"
433
+ canvas: "#2b2622"
434
+ canvas-soft: "#383330"
435
+ hairline: "#3f3a36"
436
+
437
+ typography:
438
+ display-xl:
439
+ fontFamily: Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif
440
+ fontSize: 64px
441
+ fontWeight: 400
442
+ lineHeight: 70.4px
443
+ letterSpacing: -1.6px
444
+ display-lg:
445
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
446
+ fontSize: 48px
447
+ fontWeight: 400
448
+ lineHeight: 52.8px
449
+ letterSpacing: -1.2px
450
+ display-md:
451
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
452
+ fontSize: 32px
453
+ fontWeight: 500
454
+ lineHeight: 40px
455
+ letterSpacing: -0.8px
456
+ display-sm:
457
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
458
+ fontSize: 24px
459
+ fontWeight: 500
460
+ lineHeight: 32px
461
+ letterSpacing: -0.4px
462
+ display-serif:
463
+ fontFamily: Instrument Serif, Georgia, "Times New Roman", serif
464
+ fontSize: 48px
465
+ fontWeight: 400
466
+ lineHeight: 52px
467
+ letterSpacing: -0.5px
468
+ body-lg:
469
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
470
+ fontSize: 18px
471
+ fontWeight: 400
472
+ lineHeight: 28px
473
+ body-md:
474
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
475
+ fontSize: 16px
476
+ fontWeight: 400
477
+ lineHeight: 24px
478
+ body-md-strong:
479
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
480
+ fontSize: 16px
481
+ fontWeight: 500
482
+ lineHeight: 24px
483
+ body-sm:
484
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
485
+ fontSize: 14px
486
+ fontWeight: 400
487
+ lineHeight: 20px
488
+ body-sm-strong:
489
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
490
+ fontSize: 14px
491
+ fontWeight: 500
492
+ lineHeight: 20px
493
+ caption:
494
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
495
+ fontSize: 12px
496
+ fontWeight: 400
497
+ lineHeight: 16px
498
+ code:
499
+ fontFamily: DM Mono, ui-monospace, SFMono-Regular, Menlo, monospace
500
+ fontSize: 13px
501
+ fontWeight: 400
502
+ lineHeight: 18px
503
+ code-md:
504
+ fontFamily: DM Mono, ui-monospace, SFMono-Regular, Menlo, monospace
505
+ fontSize: 14px
506
+ fontWeight: 400
507
+ lineHeight: 20px
508
+ button-md:
509
+ fontFamily: Inter, system-ui, -apple-system, sans-serif
510
+ fontSize: 14px
511
+ fontWeight: 500
512
+ lineHeight: 20px
513
+
514
+ rounded:
515
+ none: 0px
516
+ xxs: 1px
517
+ xs: 2px
518
+ sm: 3px
519
+ md: 4px
520
+ lg: 6px
521
+ pill: 9999px
522
+ full: 9999px
523
+
524
+ spacing:
525
+ xxs: 2px
526
+ xs: 4px
527
+ sm: 8px
528
+ md: 10px
529
+ lg: 16px
530
+ xl: 24px
531
+ 2xl: 32px
532
+ 3xl: 48px
533
+ 4xl: 64px
534
+ 5xl: 96px
535
+
536
+ components:
537
+ nav-bar:
538
+ backgroundColor: "{colors.canvas}"
539
+ textColor: "{colors.ink}"
540
+ typography: "{typography.body-sm-strong}"
541
+ padding: "{spacing.md} {spacing.xl}"
542
+ nav-link:
543
+ backgroundColor: "{colors.canvas}"
544
+ textColor: "{colors.ink}"
545
+ typography: "{typography.body-sm-strong}"
546
+ rounded: "{rounded.sm}"
547
+ padding: "{spacing.xs} {spacing.md}"
548
+ button-primary:
549
+ backgroundColor: "{colors.primary}"
550
+ textColor: "{colors.on-primary}"
551
+ typography: "{typography.button-md}"
552
+ rounded: "{rounded.sm}"
553
+ padding: "{spacing.sm} {spacing.lg}"
554
+ button-secondary-ghost:
555
+ backgroundColor: "{colors.canvas}"
556
+ textColor: "{colors.ink}"
557
+ typography: "{typography.button-md}"
558
+ rounded: "{rounded.sm}"
559
+ padding: "{spacing.sm} {spacing.lg}"
560
+ button-icon-circular:
561
+ backgroundColor: "{colors.canvas}"
562
+ textColor: "{colors.ink}"
563
+ rounded: "{rounded.full}"
564
+ padding: "{spacing.xs}"
565
+ text-input:
566
+ backgroundColor: "{colors.canvas-soft}"
567
+ textColor: "{colors.ink}"
568
+ borderColor: "{colors.hairline}"
569
+ typography: "{typography.body-sm}"
570
+ rounded: "{rounded.sm}"
571
+ padding: "{spacing.sm} {spacing.md}"
572
+ card-content:
573
+ backgroundColor: "{colors.canvas-soft}"
574
+ textColor: "{colors.ink}"
575
+ borderColor: "{colors.hairline}"
576
+ typography: "{typography.body-md}"
577
+ rounded: "{rounded.md}"
578
+ padding: "{spacing.xl}"
579
+ card-mockup:
580
+ backgroundColor: "{colors.canvas-soft}"
581
+ textColor: "{colors.ink}"
582
+ borderColor: "{colors.hairline}"
583
+ typography: "{typography.code}"
584
+ rounded: "{rounded.md}"
585
+ padding: "{spacing.lg}"
586
+ download-tile:
587
+ backgroundColor: "{colors.canvas-soft}"
588
+ textColor: "{colors.ink}"
589
+ borderColor: "{colors.hairline}"
590
+ typography: "{typography.body-md-strong}"
591
+ rounded: "{rounded.md}"
592
+ padding: "{spacing.xl}"
593
+ press-row:
594
+ backgroundColor: "{colors.canvas}"
595
+ textColor: "{colors.body}"
596
+ borderColor: "{colors.hairline}"
597
+ typography: "{typography.body-md}"
598
+ padding: "{spacing.lg} 0"
599
+ job-row:
600
+ backgroundColor: "{colors.canvas}"
601
+ textColor: "{colors.ink}"
602
+ borderColor: "{colors.hairline}"
603
+ typography: "{typography.body-md-strong}"
604
+ padding: "{spacing.lg} 0"
605
+ hero-band:
606
+ backgroundColor: "{colors.canvas}"
607
+ textColor: "{colors.ink}"
608
+ typography: "{typography.display-xl}"
609
+ padding: "{spacing.5xl} {spacing.xl}"
610
+ content-band:
611
+ backgroundColor: "{colors.canvas}"
612
+ textColor: "{colors.ink}"
613
+ typography: "{typography.display-md}"
614
+ padding: "{spacing.5xl} {spacing.xl}"
615
+ partner-logo-tile:
616
+ backgroundColor: "{colors.canvas-soft}"
617
+ textColor: "{colors.ink}"
618
+ typography: "{typography.body-md-strong}"
619
+ rounded: "{rounded.md}"
620
+ padding: "{spacing.lg}"
621
+ testimonial-card:
622
+ backgroundColor: "{colors.canvas-soft}"
623
+ textColor: "{colors.ink}"
624
+ borderColor: "{colors.hairline}"
625
+ typography: "{typography.body-md}"
626
+ rounded: "{rounded.md}"
627
+ padding: "{spacing.xl}"
628
+ footer:
629
+ backgroundColor: "{colors.canvas}"
630
+ textColor: "{colors.body}"
631
+ typography: "{typography.body-sm}"
632
+ padding: "{spacing.3xl} {spacing.xl}"
633
+
634
+ # ─── Examples (illustrative) — auto-derived; resolve any TO_FILL markers below ───
635
+ ex-pricing-tier:
636
+ description: "Default Pricing tier card. Re-uses feature-card chrome with brand canvas-soft surface."
637
+ backgroundColor: "{colors.canvas-soft}"
638
+ textColor: "{colors.ink}"
639
+ borderColor: "{colors.hairline}"
640
+ rounded: "{rounded.lg}"
641
+ padding: "{spacing.xl}"
642
+ ex-pricing-tier-featured:
643
+ description: "Featured/highlighted tier — polarity-flipped surface (dark fill + light text in light mode, light fill + dark text in dark mode)."
644
+ backgroundColor: "{colors.ink}"
645
+ textColor: "{colors.on-primary}"
646
+ rounded: "{rounded.lg}"
647
+ padding: "{spacing.xl}"
648
+ ex-product-selector:
649
+ description: "What's Included summary card — re-purposed for SaaS / B2B verticals (NOT a literal product gallery)."
650
+ backgroundColor: "{colors.canvas-soft}"
651
+ rounded: "{rounded.lg}"
652
+ padding: "{spacing.xl}"
653
+ ex-cart-drawer:
654
+ description: "Subscription summary — re-purposed for SaaS / B2B (line items per add-on, not literal cart)."
655
+ backgroundColor: "{colors.canvas}"
656
+ rounded: "{rounded.lg}"
657
+ padding: "{spacing.xl}"
658
+ item-divider: "{colors.hairline}"
659
+ ex-app-shell-row:
660
+ description: "Sidebar nav row inside the App Shell example. Active state uses brand primary as the indicator."
661
+ backgroundColor: "{colors.canvas}"
662
+ activeIndicator: "{colors.primary}"
663
+ rounded: "{rounded.sm}"
664
+ padding: "{spacing.sm} {spacing.md}"
665
+ ex-data-table-cell:
666
+ description: "Default data-table th + td chrome. Header uses mono-caps eyebrow typography; body uses body-sm."
667
+ headerBackground: "{colors.canvas-soft}"
668
+ headerTypography: "{typography.caption}"
669
+ bodyTypography: "{typography.body-sm}"
670
+ cellPadding: "{spacing.sm} {spacing.md}"
671
+ rowBorder: "{colors.hairline}"
672
+ ex-auth-form-card:
673
+ description: "Sign-in / sign-up card. Re-uses feature-card chrome with text-input primitives inside."
674
+ backgroundColor: "{colors.canvas-soft}"
675
+ rounded: "{rounded.lg}"
676
+ padding: "{spacing.xl}"
677
+ ex-modal-card:
678
+ description: "Modal dialog surface — same chrome as feature-card with elevated shadow."
679
+ backgroundColor: "{colors.canvas}"
680
+ rounded: "{rounded.lg}"
681
+ padding: "{spacing.xl}"
682
+ ex-empty-state-card:
683
+ description: "Empty-state illustration frame."
684
+ backgroundColor: "{colors.canvas-soft}"
685
+ rounded: "{rounded.lg}"
686
+ padding: "{spacing.2xl}"
687
+ captionTypography: "{typography.body-md}"
688
+ ex-toast:
689
+ description: "Toast notification surface — feature-card shape + medium shadow."
690
+ backgroundColor: "{colors.canvas}"
691
+ rounded: "{rounded.md}"
692
+ padding: "{spacing.sm} {spacing.md}"
693
+ typography: "{typography.body-sm}"
694
+
695
+ ---
696
+
697
+
698
+ ## Overview
699
+
700
+ Warp is an "agentic development environment" — a terminal application that wraps an AI agent — and its marketing site mirrors the product's posture: a single dark band running the entire page, warmer than pure black (`{colors.canvas}` `#2b2622` carries a hint of brown-beige from the brand's oklch-defined warmth value), with copy set almost entirely in Inter. The page reads more like a developer's reading-mode editor than a marketing surface.
701
+
702
+ The decoration is restrained. Two terminal screenshots open the hero (split between the two main product modes — agent + terminal). A partner-logo strip (Anthropic / OpenAI / Google / Stanford) sits below the hero on a slightly warmer tile surface. A single testimonial card with a portrait photograph. A press-coverage list. Then the page closes with download tiles for Mac / Linux / Windows. There is no gradient, no atmospheric backdrop, no illustration system.
703
+
704
+ Type is the second decisive voice. Hero display sits at 64 px Inter weight 400 with `-1.6px` tracking — restrained for a hero, deliberately quiet. The brand carries DM Mono as its monospace face for code blocks, and Instrument Serif italics occasionally appear for editorial moments. Body text is 16 px Inter at line-height 1.5, very readable.
705
+
706
+ **Key Characteristics:**
707
+ - A single primary "color" — really an off-white `{colors.primary}` (`#f7f5f0`) — that doubles as text on canvas and as the button-primary fill. There is no chromatic brand accent.
708
+ - Warm dark canvas (`{colors.canvas}` `#2b2622`) is the only page surface. The brand's defining tone is the brown-warmth, not pure black.
709
+ - Extremely tight button radii — 3 / 4 px (1 / 2× the brand's `{rounded.md}` 4 px base) — the brand never uses generous pill shapes for CTAs. Only icon containers use `{rounded.full}`.
710
+ - Inter sans + DM Mono mono is the canonical pairing. Instrument Serif appears as a third editorial face for occasional italics.
711
+ - Terminal-mockup imagery is the brand's only consistent decorative system — no gradients, no atmospheric overlays.
712
+ - A subtle warm tint runs through every neutral; even body text and dividers carry a hint of warmth rather than neutral gray.
713
+
714
+ ## Colors
715
+
716
+ ### Brand & Accent
717
+ - **Off White Primary** (`{colors.primary}` — `#f7f5f0`): The brand's "primary" is a warm off-white. Used as button-primary fill, as default text on canvas, as the wordmark color. There is no chromatic brand accent — the off-white IS the brand's distinguishing tone.
718
+
719
+ ### Surface
720
+ - **Canvas** (`{colors.canvas}` — `#2b2622`): The warm dark page background. Resolved from `oklch(22.0% 0.004 84.6)`. Slightly browner than pure black, slightly warmer than a neutral gray — the warmth IS the brand's identity.
721
+ - **Canvas Soft** (`{colors.canvas-soft}` — `#383330`): A lighter warm-dark fill used for cards, mockup chrome, and partner-logo tiles.
722
+ - **Hairline** (`{colors.hairline}` — `#3f3a36`): 1 px solid divider on dark surfaces.
723
+
724
+ ### Text
725
+ - **Ink** (`{colors.ink}` — `#f7f5f0`): Default text on canvas — same off-white as the primary, intentionally unified.
726
+ - **Body Strong** (`{colors.body-strong}` — `#dad2c1`): Mid-emphasis body text.
727
+ - **Body** (`{colors.body}` — `#c9c0ad`): Secondary body text — captions, supporting copy, press-coverage rows.
728
+ - **Mute** (`{colors.mute}` — `#aea69c`): Lowest-priority text — timestamps, fine print, footer secondary lines. Resolved from `oklch(71.5% 0.008 84.6)`.
729
+
730
+ ### Semantic
731
+ The brand doesn't surface a separate error / warning / success palette in its marketing pages. Validation cues come from the unified off-white system; in-product semantic colors live in the terminal application proper.
732
+
733
+ ## Typography
734
+
735
+ ### Font Family
736
+ Three faces ladder the system:
737
+ 1. **Inter** for every display, body, button, link, and label role. Weights 400 / 500 are the working pair. Used with the brand's "Inter Fallback" custom face as the metric-compatible system fallback.
738
+ 2. **DM Mono** for terminal mockups, command snippets, and code blocks. Weight 400 only. Loaded as `--font-dm-mono`.
739
+ 3. **Instrument Serif** for occasional editorial italic moments — rare on the marketing surface, but documented as a third face for emphasised tagline-style phrases. **Abel** is also loaded as a fourth fallback for headline emphasis.
740
+
741
+ ### Hierarchy
742
+
743
+ | Token | Size | Weight | Line Height | Letter Spacing | Use |
744
+ |---|---|---|---|---|---|
745
+ | `{typography.display-xl}` | 64px | 400 | 70.4px | -1.6px | Hero headline ("Warp is the agentic development environment"). |
746
+ | `{typography.display-lg}` | 48px | 400 | 52.8px | -1.2px | Section headlines. |
747
+ | `{typography.display-md}` | 32px | 500 | 40px | -0.8px | Sub-section displays. |
748
+ | `{typography.display-sm}` | 24px | 500 | 32px | -0.4px | Card titles and lead emphasis. |
749
+ | `{typography.display-serif}` | 48px | 400 | 52px | -0.5px | Instrument Serif italic editorial moments. |
750
+ | `{typography.body-lg}` | 18px | 400 | 28px | 0 | Lead paragraphs. |
751
+ | `{typography.body-md}` | 16px | 400 | 24px | 0 | Default body. |
752
+ | `{typography.body-md-strong}` | 16px | 500 | 24px | 0 | Bold inline body. |
753
+ | `{typography.body-sm}` | 14px | 400 | 20px | 0 | Secondary body. |
754
+ | `{typography.body-sm-strong}` | 14px | 500 | 20px | 0 | Nav link / button labels. |
755
+ | `{typography.caption}` | 12px | 400 | 16px | 0 | Captions, fine print. |
756
+ | `{typography.code}` | 13px | 400 | 18px | 0 | Terminal mockup body. |
757
+ | `{typography.code-md}` | 14px | 400 | 20px | 0 | Inline command snippets. |
758
+ | `{typography.button-md}` | 14px | 500 | 20px | 0 | Button labels. |
759
+
760
+ ### Principles
761
+ - **Hero display at weight 400** — the brand reads as quietly confident, not as a billboard.
762
+ - **Negative tracking is part of the voice.** `-1.6 px` at 64 px hero, scaling down through display levels.
763
+ - **Inter for narrative, DM Mono for technical.** Strict role separation.
764
+
765
+ ### Note on Font Substitutes
766
+ All three faces are open or freely-loadable:
767
+ - **Inter** — load directly from Google Fonts or Vercel-hosted CDN.
768
+ - **DM Mono** — open-source on Google Fonts.
769
+ - **Instrument Serif** — open-source on Google Fonts.
770
+
771
+ ## Layout
772
+
773
+ ### Spacing System
774
+ - **Base unit**: 4 px (with occasional 10 px and 6 px values for button padding).
775
+ - **Tokens**: `{spacing.xxs}` 2 px · `{spacing.xs}` 4 px · `{spacing.sm}` 8 px · `{spacing.md}` 10 px · `{spacing.lg}` 16 px · `{spacing.xl}` 24 px · `{spacing.2xl}` 32 px · `{spacing.3xl}` 48 px · `{spacing.4xl}` 64 px · `{spacing.5xl}` 96 px.
776
+ - **Section padding**: hero / content bands use `{spacing.5xl}` 96 px on desktop.
777
+ - **Card interior**: cards sit at `{spacing.xl}` 24 px.
778
+
779
+ ### Grid & Container
780
+ - Marketing content centres at roughly 1200 px width.
781
+ - Hero: 2-column at desktop (split between two terminal screenshots), stacks at mobile.
782
+ - Partner logos: 5-up wrapping flex row.
783
+ - Download tiles: 3-up at desktop (Mac / Linux / Windows), 1-up at mobile.
784
+
785
+ ### Responsive Strategy
786
+
787
+ #### Breakpoints
788
+
789
+ | Name | Width | Key Changes |
790
+ |---|---|---|
791
+ | Mobile | < 768px | Hero stacks; 1-up grids; nav hamburger. |
792
+ | Tablet | 768–1023px | 2-up grids. |
793
+ | Desktop | ≥ 1024px | Full hero split; 3-up download tiles. |
794
+
795
+ #### Touch Targets
796
+ Buttons render at ~36 px tall (8 px vertical padding + 20 px line-height). Mobile inflates touch area through additional padding to meet WCAG 44 × 44 px floor.
797
+
798
+ #### Collapsing Strategy
799
+ - Nav: full link row + Sign in / Download right cluster at desktop. Hamburger at mobile.
800
+ - Hero terminal-mockup split: stacks vertically at mobile.
801
+ - Press / job rows: full-width single column; stay legible at all widths.
802
+
803
+ #### Image Behavior
804
+ - **Terminal mockups**: rendered as dark cards with the actual terminal UI inside (warm canvas + colored syntax). Aspect ratio ~3:2.
805
+ - **Partner logos**: monochrome SVGs on dark tile cards.
806
+ - **Testimonial portraits**: 1:1 square crop inside `{rounded.md}` card chrome.
807
+
808
+ ## Elevation & Depth
809
+
810
+ | Level | Treatment | Use |
811
+ |---|---|---|
812
+ | Level 0 — Flat | No shadow, no border. | Default for hero band. |
813
+ | Level 1 — Hairline | 1 px solid `{colors.hairline}` border on `{colors.canvas-soft}`. | Default card chrome. |
814
+ | Level 2 — Inset Card | Canvas-soft fill against canvas background with 1 px hairline. | Mockup cards, download tiles, testimonial cards. |
815
+
816
+ The brand uses surface-contrast and hairline borders for elevation; soft drop-shadows do not appear in the marketing surface.
817
+
818
+ ## Shapes
819
+
820
+ ### Border Radius Scale
821
+
822
+ | Token | Value | Use |
823
+ |---|---|---|
824
+ | `{rounded.none}` | 0px | Full-bleed bands. |
825
+ | `{rounded.xxs}` | 1px | Tightest in-text indicator. |
826
+ | `{rounded.xs}` | 2px | Inline very-small chips. |
827
+ | `{rounded.sm}` | 3px | Default button radius — extremely tight. |
828
+ | `{rounded.md}` | 4px | Card chrome (the brand's `--radius` base). |
829
+ | `{rounded.lg}` | 6px | Slightly larger cards. |
830
+ | `{rounded.pill}` | 9999px | Icon containers, status pills. |
831
+
832
+ ### Photography Geometry
833
+ - Terminal mockups: ~3:2 inside `{rounded.md}` card chrome.
834
+ - Partner logos: monochrome SVGs at consistent 24 px height inside tile cards.
835
+ - Testimonial portraits: 1:1 square inside `{rounded.md}`.
836
+
837
+ ## Components
838
+
839
+ ### Buttons
840
+
841
+ **`button-primary`** — the off-white CTA on dark canvas.
842
+ - Background `{colors.primary}` (off-white), text `{colors.on-primary}` (warm dark), label `{typography.button-md}`, padding `{spacing.sm} {spacing.lg}`, shape `{rounded.sm}` 3 px. Tight.
843
+
844
+ **`button-secondary-ghost`** — the ghost-style secondary used for nav and tertiary actions.
845
+ - Background `{colors.canvas}`, text `{colors.ink}`, no border, same typography / shape.
846
+
847
+ **`button-icon-circular`** — the circular icon container.
848
+ - Background `{colors.canvas}`, ink icon, shape `{rounded.full}`. Used for nav controls (search, theme).
849
+
850
+ ### Cards & Containers
851
+
852
+ **`card-content`** — the default content card on canvas-soft.
853
+ - Background `{colors.canvas-soft}`, text `{colors.ink}`, 1 px solid `{colors.hairline}`, padding `{spacing.xl}`, shape `{rounded.md}`.
854
+
855
+ **`card-mockup`** — the terminal-screenshot mockup card.
856
+ - Same chrome as `card-content` but body in `{typography.code}` (DM Mono) when text appears inside.
857
+
858
+ **`download-tile`** — the Mac / Linux / Windows download tile.
859
+ - Background `{colors.canvas-soft}`, text `{colors.ink}`, hairline border, padding `{spacing.xl}`, shape `{rounded.md}`. Hosts a platform icon + label + download CTA.
860
+
861
+ **`partner-logo-tile`** — the canvas-soft tile hosting a partner logo.
862
+ - Background `{colors.canvas-soft}`, monochrome logo SVG inside, padding `{spacing.lg}`, shape `{rounded.md}`.
863
+
864
+ **`testimonial-card`** — the single quote-style card with a portrait.
865
+ - Background `{colors.canvas-soft}`, text `{colors.ink}`, padding `{spacing.xl}`, shape `{rounded.md}`. Portrait 1:1 + body in `{typography.body-md}`.
866
+
867
+ **`press-row`** — the press-coverage list item.
868
+ - Background `{colors.canvas}` (no fill — sits on the canvas band), 1 px solid bottom border `{colors.hairline}`, body in `{typography.body-md}`, padding `{spacing.lg}` 0.
869
+
870
+ **`job-row`** — the "Join our team" list item (single row per open role).
871
+ - Background `{colors.canvas}`, 1 px solid bottom border, body in `{typography.body-md-strong}`, padding `{spacing.lg}` 0.
872
+
873
+ ### Inputs & Forms
874
+
875
+ **`text-input`** — the dark-canvas text input.
876
+ - Background `{colors.canvas-soft}`, text `{colors.ink}`, 1 px solid `{colors.hairline}`, body in `{typography.body-sm}`, padding `{spacing.sm} {spacing.md}`, shape `{rounded.sm}`.
877
+
878
+ ### Navigation
879
+
880
+ **`nav-bar`** — the sticky top nav.
881
+ - Background `{colors.canvas}`, text `{colors.ink}`, padding `{spacing.md} {spacing.xl}`.
882
+
883
+ **`nav-link`** — link items in nav.
884
+ - Background `{colors.canvas}`, text `{colors.ink}`, body in `{typography.body-sm-strong}`, padding `{spacing.xs} {spacing.md}`, shape `{rounded.sm}`.
885
+
886
+ **`footer`** — the footer band.
887
+ - Background `{colors.canvas}`, text `{colors.body}`, padding `{spacing.3xl} {spacing.xl}`. Body in `{typography.body-sm}`.
888
+
889
+ ### Signature Components
890
+
891
+ **`hero-band`** — the dark hero band hosting the 64-px Inter headline.
892
+ - Background `{colors.canvas}`, text `{colors.ink}`, padding `{spacing.5xl} {spacing.xl}`. Headline `{typography.display-xl}` (64 px / 400 / `-1.6 px`). Below: a 2-column terminal-mockup split.
893
+
894
+ **`content-band`** — the standard content band.
895
+ - Background `{colors.canvas}`, text `{colors.ink}`, padding `{spacing.5xl} {spacing.xl}`. Section headline `{typography.display-md}`.
896
+
897
+ ### Examples (illustrative)
898
+
899
+ > Auto-derived kit-mirror demonstration surfaces (`scripts/derive-examples-block.mjs`). Each `ex-*` entry references brand-native primitives so downstream consumers (`/preview-design`, `/generate-kit`) re-skin the same 10 surfaces consistently. `TO_FILL` markers indicate missing primitives — resolve in the LLM judgment pass.
900
+
901
+ **`ex-pricing-tier`** — Default Pricing tier card. Re-uses feature-card chrome with brand canvas-soft surface.
902
+ - Properties: `backgroundColor`, `textColor`, `borderColor`, `rounded`, `padding`
903
+
904
+ **`ex-pricing-tier-featured`** — Featured/highlighted tier — polarity-flipped surface (dark fill + light text in light mode, light fill + dark text in dark mode).
905
+ - Properties: `backgroundColor`, `textColor`, `rounded`, `padding`
906
+
907
+ **`ex-product-selector`** — What's Included summary card — re-purposed for SaaS / B2B verticals (NOT a literal product gallery).
908
+ - Properties: `backgroundColor`, `rounded`, `padding`
909
+
910
+ **`ex-cart-drawer`** — Subscription summary — re-purposed for SaaS / B2B (line items per add-on, not literal cart).
911
+ - Properties: `backgroundColor`, `rounded`, `padding`, `item-divider`
912
+
913
+ **`ex-app-shell-row`** — Sidebar nav row inside the App Shell example. Active state uses brand primary as the indicator.
914
+ - Properties: `backgroundColor`, `activeIndicator`, `rounded`, `padding`
915
+
916
+ **`ex-data-table-cell`** — Default data-table th + td chrome. Header uses mono-caps eyebrow typography; body uses body-sm.
917
+ - Properties: `headerBackground`, `headerTypography`, `bodyTypography`, `cellPadding`, `rowBorder`
918
+
919
+ **`ex-auth-form-card`** — Sign-in / sign-up card. Re-uses feature-card chrome with text-input primitives inside.
920
+ - Properties: `backgroundColor`, `rounded`, `padding`
921
+
922
+ **`ex-modal-card`** — Modal dialog surface — same chrome as feature-card with elevated shadow.
923
+ - Properties: `backgroundColor`, `rounded`, `padding`
924
+
925
+ **`ex-empty-state-card`** — Empty-state illustration frame.
926
+ - Properties: `backgroundColor`, `rounded`, `padding`, `captionTypography`
927
+
928
+ **`ex-toast`** — Toast notification surface — feature-card shape + medium shadow.
929
+ - Properties: `backgroundColor`, `rounded`, `padding`, `typography`
930
+
931
+
932
+ ## Do's and Don'ts
933
+
934
+ ### Do
935
+ - Reserve `{colors.primary}` off-white for primary CTA pills and default text. There is no chromatic accent.
936
+ - Use tight `{rounded.sm}` 3 px or `{rounded.md}` 4 px button radii. The brand never uses generous pills for CTAs.
937
+ - Set hero headlines in Inter weight 400 with `-1.6 px` tracking. The brand reads as quietly confident.
938
+ - Pair Inter (sentence-case) with DM Mono (code blocks, terminal mockups).
939
+ - Keep the warm-dark canvas tone — pure black breaks the brand's identity.
940
+
941
+ ### Don't
942
+ - Don't introduce a chromatic brand accent. The off-white-on-warm-dark IS the brand's voice.
943
+ - Don't render the hero headline in heavy weight (700+). The brand's display is intentionally light.
944
+ - Don't use generous pill CTAs. The brand's button radius is 3-4 px, almost rectangular.
945
+ - Don't replace the warm dark canvas with neutral gray or pure black. The warmth IS the brand.
946
+ - Don't drop a soft drop-shadow on cards. Hairlines + surface contrast carry elevation.