heraspec 0.1.12 → 0.1.14

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 (129) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +188 -103
  3. package/bin/heraspec.js +4805 -1122
  4. package/bin/heraspec.js.map +4 -4
  5. package/dist/core/templates/skills/CHANGELOG.md +117 -117
  6. package/dist/core/templates/skills/README-template.md +58 -58
  7. package/dist/core/templates/skills/README.md +38 -38
  8. package/dist/core/templates/skills/content-optimization-skill.md +104 -104
  9. package/dist/core/templates/skills/data/design-systems.csv +54 -0
  10. package/dist/core/templates/skills/data/pages-proposed.csv +21 -21
  11. package/dist/core/templates/skills/data/pages.csv +9 -9
  12. package/dist/core/templates/skills/data/typography.csv +57 -57
  13. package/dist/core/templates/skills/deploy-documentation-skill.md +408 -0
  14. package/dist/core/templates/skills/design-system-skill.md +176 -0
  15. package/dist/core/templates/skills/documents/templates/documentation-landing-page.html +63 -63
  16. package/dist/core/templates/skills/documents/templates/documentation.html +49 -49
  17. package/dist/core/templates/skills/documents/templates/landing-script.js +38 -38
  18. package/dist/core/templates/skills/documents/templates/landing-style.css +158 -158
  19. package/dist/core/templates/skills/documents/templates/script.js +56 -56
  20. package/dist/core/templates/skills/documents/templates/style.css +155 -155
  21. package/dist/core/templates/skills/documents/templates/technical-doc-template.md +16 -16
  22. package/dist/core/templates/skills/documents/templates/user-guide-template.md +16 -16
  23. package/dist/core/templates/skills/documents-skill.md +104 -104
  24. package/dist/core/templates/skills/e2e-test-skill.md +119 -119
  25. package/dist/core/templates/skills/git-embed-skill.md +57 -0
  26. package/dist/core/templates/skills/integration-test-skill.md +118 -118
  27. package/dist/core/templates/skills/knowledge/README.md +63 -0
  28. package/dist/core/templates/skills/knowledge/design-systems/airbnb/DESIGN.md +246 -0
  29. package/dist/core/templates/skills/knowledge/design-systems/airtable/DESIGN.md +89 -0
  30. package/dist/core/templates/skills/knowledge/design-systems/apple/DESIGN.md +313 -0
  31. package/dist/core/templates/skills/knowledge/design-systems/bmw/DESIGN.md +180 -0
  32. package/dist/core/templates/skills/knowledge/design-systems/cal/DESIGN.md +259 -0
  33. package/dist/core/templates/skills/knowledge/design-systems/claude/DESIGN.md +312 -0
  34. package/dist/core/templates/skills/knowledge/design-systems/clay/DESIGN.md +304 -0
  35. package/dist/core/templates/skills/knowledge/design-systems/clickhouse/DESIGN.md +281 -0
  36. package/dist/core/templates/skills/knowledge/design-systems/cohere/DESIGN.md +266 -0
  37. package/dist/core/templates/skills/knowledge/design-systems/coinbase/DESIGN.md +129 -0
  38. package/dist/core/templates/skills/knowledge/design-systems/composio/DESIGN.md +307 -0
  39. package/dist/core/templates/skills/knowledge/design-systems/cursor/DESIGN.md +309 -0
  40. package/dist/core/templates/skills/knowledge/design-systems/elevenlabs/DESIGN.md +265 -0
  41. package/dist/core/templates/skills/knowledge/design-systems/expo/DESIGN.md +281 -0
  42. package/dist/core/templates/skills/knowledge/design-systems/figma/DESIGN.md +220 -0
  43. package/dist/core/templates/skills/knowledge/design-systems/framer/DESIGN.md +246 -0
  44. package/dist/core/templates/skills/knowledge/design-systems/hashicorp/DESIGN.md +278 -0
  45. package/dist/core/templates/skills/knowledge/design-systems/ibm/DESIGN.md +332 -0
  46. package/dist/core/templates/skills/knowledge/design-systems/index.json +72 -0
  47. package/dist/core/templates/skills/knowledge/design-systems/intercom/DESIGN.md +146 -0
  48. package/dist/core/templates/skills/knowledge/design-systems/kraken/DESIGN.md +125 -0
  49. package/dist/core/templates/skills/knowledge/design-systems/linear.app/DESIGN.md +367 -0
  50. package/dist/core/templates/skills/knowledge/design-systems/lovable/DESIGN.md +298 -0
  51. package/dist/core/templates/skills/knowledge/design-systems/minimax/DESIGN.md +257 -0
  52. package/dist/core/templates/skills/knowledge/design-systems/mintlify/DESIGN.md +326 -0
  53. package/dist/core/templates/skills/knowledge/design-systems/miro/DESIGN.md +108 -0
  54. package/dist/core/templates/skills/knowledge/design-systems/mistral.ai/DESIGN.md +261 -0
  55. package/dist/core/templates/skills/knowledge/design-systems/mongodb/DESIGN.md +266 -0
  56. package/dist/core/templates/skills/knowledge/design-systems/notion/DESIGN.md +309 -0
  57. package/dist/core/templates/skills/knowledge/design-systems/nvidia/DESIGN.md +293 -0
  58. package/dist/core/templates/skills/knowledge/design-systems/ollama/DESIGN.md +267 -0
  59. package/dist/core/templates/skills/knowledge/design-systems/opencode.ai/DESIGN.md +281 -0
  60. package/dist/core/templates/skills/knowledge/design-systems/pinterest/DESIGN.md +230 -0
  61. package/dist/core/templates/skills/knowledge/design-systems/posthog/DESIGN.md +256 -0
  62. package/dist/core/templates/skills/knowledge/design-systems/raycast/DESIGN.md +268 -0
  63. package/dist/core/templates/skills/knowledge/design-systems/replicate/DESIGN.md +261 -0
  64. package/dist/core/templates/skills/knowledge/design-systems/resend/DESIGN.md +303 -0
  65. package/dist/core/templates/skills/knowledge/design-systems/revolut/DESIGN.md +185 -0
  66. package/dist/core/templates/skills/knowledge/design-systems/runwayml/DESIGN.md +244 -0
  67. package/dist/core/templates/skills/knowledge/design-systems/sanity/DESIGN.md +357 -0
  68. package/dist/core/templates/skills/knowledge/design-systems/sentry/DESIGN.md +262 -0
  69. package/dist/core/templates/skills/knowledge/design-systems/spacex/DESIGN.md +194 -0
  70. package/dist/core/templates/skills/knowledge/design-systems/spotify/DESIGN.md +246 -0
  71. package/dist/core/templates/skills/knowledge/design-systems/stripe/DESIGN.md +322 -0
  72. package/dist/core/templates/skills/knowledge/design-systems/supabase/DESIGN.md +255 -0
  73. package/dist/core/templates/skills/knowledge/design-systems/superhuman/DESIGN.md +252 -0
  74. package/dist/core/templates/skills/knowledge/design-systems/together.ai/DESIGN.md +263 -0
  75. package/dist/core/templates/skills/knowledge/design-systems/uber/DESIGN.md +295 -0
  76. package/dist/core/templates/skills/knowledge/design-systems/vercel/DESIGN.md +310 -0
  77. package/dist/core/templates/skills/knowledge/design-systems/voltagent/DESIGN.md +323 -0
  78. package/dist/core/templates/skills/knowledge/design-systems/warp/DESIGN.md +253 -0
  79. package/dist/core/templates/skills/knowledge/design-systems/webflow/DESIGN.md +92 -0
  80. package/dist/core/templates/skills/knowledge/design-systems/wise/DESIGN.md +173 -0
  81. package/dist/core/templates/skills/knowledge/design-systems/x.ai/DESIGN.md +257 -0
  82. package/dist/core/templates/skills/knowledge/design-systems/zapier/DESIGN.md +328 -0
  83. package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/profile.json +27 -0
  84. package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/structure.md +137 -0
  85. package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/profile.json +39 -0
  86. package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/structure.md +208 -0
  87. package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/profile.json +51 -0
  88. package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/structure.md +369 -0
  89. package/dist/core/templates/skills/knowledge/index.json +65 -0
  90. package/dist/core/templates/skills/module-codebase-skill.md +110 -110
  91. package/dist/core/templates/skills/plugin-directory-skill.md +396 -396
  92. package/dist/core/templates/skills/project-memory-skill.md +222 -0
  93. package/dist/core/templates/skills/project-memory-skill.vi.md +223 -0
  94. package/dist/core/templates/skills/scripts/CODE_EXPLANATION.md +394 -394
  95. package/dist/core/templates/skills/scripts/SEARCH_ALGORITHMS_COMPARISON.md +421 -421
  96. package/dist/core/templates/skills/scripts/SEARCH_MODES_GUIDE.md +238 -238
  97. package/dist/core/templates/skills/scripts/__pycache__/core.cpython-311.pyc +0 -0
  98. package/dist/core/templates/skills/scripts/core.py +391 -385
  99. package/dist/core/templates/skills/scripts/search.py +1 -1
  100. package/dist/core/templates/skills/smart-explore-skill.md +141 -0
  101. package/dist/core/templates/skills/sourcecode-analyzer-skill.md +210 -0
  102. package/dist/core/templates/skills/sourcecode-analyzer-skill.vi.md +210 -0
  103. package/dist/core/templates/skills/suggestion-skill.md +118 -118
  104. package/dist/core/templates/skills/templates/accessibility-checklist.md +40 -40
  105. package/dist/core/templates/skills/templates/example-prompt-full-theme.md +333 -333
  106. package/dist/core/templates/skills/templates/page-types-guide.md +338 -338
  107. package/dist/core/templates/skills/templates/pages-proposed-summary.md +273 -273
  108. package/dist/core/templates/skills/templates/pre-delivery-checklist.md +42 -42
  109. package/dist/core/templates/skills/templates/prompt-template-full-theme.md +313 -313
  110. package/dist/core/templates/skills/templates/responsive-design.md +40 -40
  111. package/dist/core/templates/skills/ui-ux-skill.md +595 -584
  112. package/dist/core/templates/skills/unit-test-skill.md +111 -111
  113. package/dist/core/templates/skills/ux-element/templates/Controller.php +50 -50
  114. package/dist/core/templates/skills/ux-element/templates/Shortcode.php +23 -23
  115. package/dist/core/templates/skills/ux-element/templates/Template.html +20 -20
  116. package/dist/core/templates/skills/ux-element/templates/Thumbnail.svg +8 -8
  117. package/dist/core/templates/skills/ux-element/templates/View.php +21 -21
  118. package/dist/core/templates/skills/ux-element-skill.md +83 -83
  119. package/dist/core/templates/skills/wordpress-plugin-check-skill.md +151 -76
  120. package/dist/core/templates/skills/wordpress-plugin-standard/templates/admin-dashboard.php +47 -47
  121. package/dist/core/templates/skills/wordpress-plugin-standard/templates/admin-settings.php +60 -60
  122. package/dist/core/templates/skills/wordpress-plugin-standard/templates/assets/admin-css.css +22 -22
  123. package/dist/core/templates/skills/wordpress-plugin-standard/templates/assets/admin-js.js +15 -15
  124. package/dist/core/templates/skills/wordpress-plugin-standard/templates/plugin-main.php +169 -169
  125. package/dist/core/templates/skills/wordpress-plugin-standard/templates/readme.txt +41 -41
  126. package/dist/core/templates/skills/wordpress-plugin-standard/templates/uninstall.php +21 -21
  127. package/dist/core/templates/skills/wordpress-plugin-standard-skill.md +100 -100
  128. package/dist/index.js +4068 -278
  129. package/package.json +75 -72
@@ -0,0 +1,304 @@
1
+ # Design System: Clay
2
+
3
+ ## 1. Visual Theme & Atmosphere
4
+
5
+ Clay's website is a warm, playful celebration of color that treats B2B data enrichment like a craft rather than an enterprise chore. The design language is built on a foundation of warm cream backgrounds (`#faf9f7`) and oat-toned borders (`#dad4c8`, `#eee9df`) that give every surface the tactile quality of handmade paper. Against this artisanal canvas, a vivid swatch palette explodes with personality — Matcha green, Slushie cyan, Lemon gold, Ube purple, Pomegranate pink, Blueberry navy, and Dragonfruit magenta — each named like flavors at a juice bar, not colors in an enterprise UI kit.
6
+
7
+ The typography is anchored by Roobert, a geometric sans-serif with character, loaded with an extensive set of OpenType stylistic sets (`"ss01"`, `"ss03"`, `"ss10"`, `"ss11"`, `"ss12"`) that give the text a distinctive, slightly quirky personality. At display scale (80px, weight 600), Roobert uses aggressive negative letter-spacing (-3.2px) that compresses headlines into punchy, billboard-like statements. Space Mono serves as the monospace companion for code and technical labels, completing the craft-meets-tech duality.
8
+
9
+ What makes Clay truly distinctive is its hover micro-animations: buttons on hover rotate slightly (`rotateZ(-8deg)`), translate upward (`translateY(-80%)`), change background to a contrasting swatch color, and cast a hard offset shadow (`rgb(0,0,0) -7px 7px`). This playful hover behavior — where a button literally tilts and jumps on interaction — creates a sense of physical delight that's rare in B2B software. Combined with generously rounded containers (24px–40px radius), dashed borders alongside solid ones, and a multi-layer shadow system that includes inset highlights, Clay feels like a design system that was made by people who genuinely enjoy making things.
10
+
11
+ **Key Characteristics:**
12
+ - Warm cream canvas (`#faf9f7`) with oat-toned borders (`#dad4c8`) — artisanal, not clinical
13
+ - Named swatch palette: Matcha, Slushie, Lemon, Ube, Pomegranate, Blueberry, Dragonfruit
14
+ - Roobert font with 5 OpenType stylistic sets — quirky geometric character
15
+ - Playful hover animations: rotateZ(-8deg) + translateY(-80%) + hard offset shadow
16
+ - Space Mono for code and technical labels
17
+ - Generous border radius: 24px cards, 40px sections, 1584px pills
18
+ - Mixed border styles: solid + dashed in the same interface
19
+ - Multi-layer shadow with inset highlight: `0px 1px 1px` + `-1px inset` + `-0.5px`
20
+
21
+ ## 2. Color Palette & Roles
22
+
23
+ ### Primary
24
+ - **Clay Black** (`#000000`): Text, headings, pricing card text, `--_theme--pricing-cards---text`
25
+ - **Pure White** (`#ffffff`): Card backgrounds, button backgrounds, inverse text
26
+ - **Warm Cream** (`#faf9f7`): Page background — the warm, paper-like canvas
27
+
28
+ ### Swatch Palette — Named Colors
29
+
30
+ **Matcha (Green)**
31
+ - **Matcha 300** (`#84e7a5`): `--_swatches---color--matcha-300`, light green accent
32
+ - **Matcha 600** (`#078a52`): `--_swatches---color--matcha-600`, mid green
33
+ - **Matcha 800** (`#02492a`): `--_swatches---color--matcha-800`, deep green for dark sections
34
+
35
+ **Slushie (Cyan)**
36
+ - **Slushie 500** (`#3bd3fd`): `--_swatches---color--slushie-500`, bright cyan accent
37
+ - **Slushie 800** (`#0089ad`): `--_swatches---color--slushie-800`, deep teal
38
+
39
+ **Lemon (Gold)**
40
+ - **Lemon 400** (`#f8cc65`): `--_swatches---color--lemon-400`, warm pale gold
41
+ - **Lemon 500** (`#fbbd41`): `--_swatches---color--lemon-500`, primary gold
42
+ - **Lemon 700** (`#d08a11`): `--_swatches---color--lemon-700`, deep amber
43
+ - **Lemon 800** (`#9d6a09`): `--_swatches---color--lemon-800`, dark amber
44
+
45
+ **Ube (Purple)**
46
+ - **Ube 300** (`#c1b0ff`): `--_swatches---color--ube-300`, soft lavender
47
+ - **Ube 800** (`#43089f`): `--_swatches---color--ube-800`, deep purple
48
+ - **Ube 900** (`#32037d`): `--_swatches---color--ube-900`, darkest purple
49
+
50
+ **Pomegranate (Pink/Red)**
51
+ - **Pomegranate 400** (`#fc7981`): `--_swatches---color--pomegranate-400`, warm coral-pink
52
+
53
+ **Blueberry (Navy Blue)**
54
+ - **Blueberry 800** (`#01418d`): `--_swatches---color--blueberry-800`, deep navy
55
+
56
+ ### Neutral Scale (Warm)
57
+ - **Warm Silver** (`#9f9b93`): Secondary/muted text, footer links
58
+ - **Warm Charcoal** (`#55534e`): Tertiary text, dark muted links
59
+ - **Dark Charcoal** (`#333333`): Link text on light backgrounds
60
+
61
+ ### Surface & Border
62
+ - **Oat Border** (`#dad4c8`): Primary border — warm, cream-toned structural lines
63
+ - **Oat Light** (`#eee9df`): Secondary lighter border
64
+ - **Cool Border** (`#e6e8ec`): Cool-toned border for contrast sections
65
+ - **Dark Border** (`#525a69`): Border on dark sections
66
+ - **Light Frost** (`#eff1f3`): Subtle button background (at 0% opacity on hover)
67
+
68
+ ### Badges
69
+ - **Badge Blue Bg** (`#f0f8ff`): Blue-tinted badge surface
70
+ - **Badge Blue Text** (`#3859f9`): Vivid blue badge text
71
+ - **Focus Ring** (`rgb(20, 110, 245) solid 2px`): Accessibility focus indicator
72
+
73
+ ### Shadows
74
+ - **Clay Shadow** (`rgba(0,0,0,0.1) 0px 1px 1px, rgba(0,0,0,0.04) 0px -1px 1px inset, rgba(0,0,0,0.05) 0px -0.5px 1px`): Multi-layer with inset highlight — the signature
75
+ - **Hard Offset** (`rgb(0,0,0) -7px 7px`): Hover state — playful hard shadow
76
+
77
+ ## 3. Typography Rules
78
+
79
+ ### Font Families
80
+ - **Primary**: `Roobert`, fallback: `Arial`
81
+ - **Monospace**: `Space Mono`
82
+ - **OpenType Features**: `"ss01"`, `"ss03"`, `"ss10"`, `"ss11"`, `"ss12"` on all Roobert text (display uses all 5; body/UI uses `"ss03"`, `"ss10"`, `"ss11"`, `"ss12"`)
83
+
84
+ ### Hierarchy
85
+
86
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
87
+ |------|------|------|--------|-------------|----------------|-------|
88
+ | Display Hero | Roobert | 80px (5.00rem) | 600 | 1.00 (tight) | -3.2px | All 5 stylistic sets |
89
+ | Display Secondary | Roobert | 60px (3.75rem) | 600 | 1.00 (tight) | -2.4px | All 5 stylistic sets |
90
+ | Section Heading | Roobert | 44px (2.75rem) | 600 | 1.10 (tight) | -0.88px to -1.32px | All 5 stylistic sets |
91
+ | Card Heading | Roobert | 32px (2.00rem) | 600 | 1.10 (tight) | -0.64px | All 5 stylistic sets |
92
+ | Feature Title | Roobert | 20px (1.25rem) | 600 | 1.40 | -0.4px | All 5 stylistic sets |
93
+ | Sub-heading | Roobert | 20px (1.25rem) | 500 | 1.50 | -0.16px | 4 stylistic sets (no ss01) |
94
+ | Body Large | Roobert | 20px (1.25rem) | 400 | 1.40 | normal | 4 stylistic sets |
95
+ | Body | Roobert | 18px (1.13rem) | 400 | 1.60 (relaxed) | -0.36px | 4 stylistic sets |
96
+ | Body Standard | Roobert | 16px (1.00rem) | 400 | 1.50 | normal | 4 stylistic sets |
97
+ | Body Medium | Roobert | 16px (1.00rem) | 500 | 1.20–1.40 | -0.16px to -0.32px | 4–5 stylistic sets |
98
+ | Button | Roobert | 16px (1.00rem) | 500 | 1.50 | -0.16px | 4 stylistic sets |
99
+ | Button Large | Roobert | 24px (1.50rem) | 400 | 1.50 | normal | 4 stylistic sets |
100
+ | Button Small | Roobert | 12.8px (0.80rem) | 500 | 1.50 | -0.128px | 4 stylistic sets |
101
+ | Nav Link | Roobert | 15px (0.94rem) | 500 | 1.60 (relaxed) | normal | 4 stylistic sets |
102
+ | Caption | Roobert | 14px (0.88rem) | 400 | 1.50–1.60 | -0.14px | 4 stylistic sets |
103
+ | Small | Roobert | 12px (0.75rem) | 400 | 1.50 | normal | 4 stylistic sets |
104
+ | Uppercase Label | Roobert | 12px (0.75rem) | 600 | 1.20 (tight) | 1.08px | `text-transform: uppercase`, 4 sets |
105
+ | Badge | Roobert | 9.6px | 600 | — | — | Pill badges |
106
+
107
+ ### Principles
108
+ - **Five stylistic sets as identity**: The combination of `"ss01"`, `"ss03"`, `"ss10"`, `"ss11"`, `"ss12"` on Roobert creates a distinctive typographic personality. `ss01` is reserved for headings and emphasis — body text omits it, creating a subtle hierarchy through glyph variation.
109
+ - **Aggressive display compression**: -3.2px at 80px, -2.4px at 60px — the most compressed display tracking alongside the most generous body spacing (1.60 line-height), creating dramatic contrast.
110
+ - **Weight 600 for headings, 500 for UI, 400 for body**: Clean three-tier system where each weight has a strict role.
111
+ - **Uppercase labels with positive tracking**: 12px uppercase at 1.08px letter-spacing creates the systematic wayfinding pattern.
112
+
113
+ ## 4. Component Stylings
114
+
115
+ ### Buttons
116
+
117
+ **Primary (Transparent with Hover Animation)**
118
+ - Background: transparent (`rgba(239, 241, 243, 0)`)
119
+ - Text: `#000000`
120
+ - Padding: 6.4px 12.8px
121
+ - Border: none (or `1px solid #717989` for outlined variant)
122
+ - Hover: background shifts to swatch color (e.g., `#434346`), text to white, `rotateZ(-8deg)`, `translateY(-80%)`, hard shadow `rgb(0,0,0) -7px 7px`
123
+ - Focus: `rgb(20, 110, 245) solid 2px` outline
124
+
125
+ **White Solid**
126
+ - Background: `#ffffff`
127
+ - Text: `#000000`
128
+ - Padding: 6.4px
129
+ - Hover: oat-200 swatch color, animated rotation + shadow
130
+ - Use: Primary CTA on colored sections
131
+
132
+ **Ghost Outlined**
133
+ - Background: transparent
134
+ - Text: `#000000`
135
+ - Padding: 8px
136
+ - Border: `1px solid #717989`
137
+ - Radius: 4px
138
+ - Hover: dragonfruit swatch color, white text, animated rotation
139
+
140
+ ### Cards & Containers
141
+ - Background: `#ffffff` on cream canvas
142
+ - Border: `1px solid #dad4c8` (warm oat) or `1px dashed #dad4c8`
143
+ - Radius: 12px (standard cards), 24px (feature cards/images), 40px (section containers/footer)
144
+ - Shadow: `rgba(0,0,0,0.1) 0px 1px 1px, rgba(0,0,0,0.04) 0px -1px 1px inset, rgba(0,0,0,0.05) 0px -0.5px 1px`
145
+ - Colorful section backgrounds using swatch palette (matcha, slushie, ube, lemon)
146
+
147
+ ### Inputs & Forms
148
+ - Text: `#000000`
149
+ - Border: `1px solid #717989`
150
+ - Radius: 4px
151
+ - Focus: `rgb(20, 110, 245) solid 2px` outline
152
+
153
+ ### Navigation
154
+ - Sticky top nav on cream background
155
+ - Roobert 15px weight 500 for nav links
156
+ - Clay logo left-aligned
157
+ - CTA buttons right-aligned with pill radius
158
+ - Border bottom: `1px solid #dad4c8`
159
+ - Mobile: hamburger collapse at 767px
160
+
161
+ ### Image Treatment
162
+ - Product screenshots in white cards with oat borders
163
+ - Colorful illustrated sections with swatch background colors
164
+ - 8px–24px radius on images
165
+ - Full-width colorful section backgrounds
166
+
167
+ ### Distinctive Components
168
+
169
+ **Swatch Color Sections**
170
+ - Full-width sections with swatch-colored backgrounds (matcha green, slushie cyan, ube purple, lemon gold)
171
+ - White text on dark swatches, black text on light swatches
172
+ - Each section tells a distinct product story through its color
173
+
174
+ **Playful Hover Buttons**
175
+ - Rotate -8deg + translate upward on hover
176
+ - Hard offset shadow (`-7px 7px`) instead of soft blur
177
+ - Background transitions to contrasting swatch color
178
+ - Creates a physical, toy-like interaction quality
179
+
180
+ **Dashed Border Elements**
181
+ - Dashed borders (`1px dashed #dad4c8`) alongside solid borders
182
+ - Used for secondary containers and decorative elements
183
+ - Adds a hand-drawn, craft-like quality
184
+
185
+ ## 5. Layout Principles
186
+
187
+ ### Spacing System
188
+ - Base unit: 8px
189
+ - Scale: 1px, 2px, 4px, 6.4px, 8px, 12px, 12.8px, 16px, 18px, 20px, 24px
190
+
191
+ ### Grid & Container
192
+ - Max content width centered
193
+ - Feature sections alternate between white cards and colorful swatch backgrounds
194
+ - Card grids: 2–3 columns on desktop
195
+ - Full-width colorful sections break the grid
196
+ - Footer with generous 40px radius container
197
+
198
+ ### Whitespace Philosophy
199
+ - **Warm, generous breathing**: The cream background provides a warm rest between content blocks. Spacing is generous but not austere — it feels inviting, like a well-set table.
200
+ - **Color as spatial rhythm**: The alternating swatch-colored sections create visual rhythm through hue rather than just whitespace. Each color section is its own "room."
201
+ - **Craft-like density inside cards**: Within cards, content is compact and well-organized, contrasting with the generous outer spacing.
202
+
203
+ ### Border Radius Scale
204
+ - Sharp (4px): Ghost buttons, inputs
205
+ - Standard (8px): Small cards, images, links
206
+ - Badge (11px): Tag badges
207
+ - Card (12px): Standard cards, buttons
208
+ - Feature (24px): Feature cards, images, panels
209
+ - Section (40px): Large sections, footer, containers
210
+ - Pill (1584px): CTAs, pill-shaped buttons
211
+
212
+ ## 6. Depth & Elevation
213
+
214
+ | Level | Treatment | Use |
215
+ |-------|-----------|-----|
216
+ | Flat (Level 0) | No shadow, cream canvas | Page background |
217
+ | Clay Shadow (Level 1) | `rgba(0,0,0,0.1) 0px 1px 1px, rgba(0,0,0,0.04) 0px -1px inset, rgba(0,0,0,0.05) 0px -0.5px` | Cards, buttons — multi-layer with inset highlight |
218
+ | Hover Hard (Level 2) | `rgb(0,0,0) -7px 7px` | Hover state — playful hard offset shadow |
219
+ | Focus (Level 3) | `rgb(20, 110, 245) solid 2px` | Keyboard focus ring |
220
+
221
+ **Shadow Philosophy**: Clay's shadow system is uniquely three-layered: a downward cast (`0px 1px 1px`), an upward inset highlight (`0px -1px 1px inset`), and a subtle edge (`0px -0.5px 1px`). This creates a "pressed into clay" quality where elements feel both raised AND embedded — like a clay tablet where content is stamped into the surface. The hover hard shadow (`-7px 7px`) is deliberately retro-graphic, referencing print-era drop shadows and adding physical playfulness.
222
+
223
+ ### Decorative Depth
224
+ - Full-width swatch-colored sections create dramatic depth through color contrast
225
+ - Dashed borders add visual texture alongside solid borders
226
+ - Product illustrations with warm, organic art style
227
+
228
+ ## 7. Do's and Don'ts
229
+
230
+ ### Do
231
+ - Use warm cream (`#faf9f7`) as the page background — the warmth is the identity
232
+ - Apply all 5 OpenType stylistic sets on Roobert headings: `"ss01", "ss03", "ss10", "ss11", "ss12"`
233
+ - Use the named swatch palette (Matcha, Slushie, Lemon, Ube, Pomegranate, Blueberry) for section backgrounds
234
+ - Apply the playful hover animation: `rotateZ(-8deg)`, `translateY(-80%)`, hard shadow `-7px 7px`
235
+ - Use warm oat borders (`#dad4c8`) — not neutral gray
236
+ - Mix solid and dashed borders for visual variety
237
+ - Use generous radius: 24px for cards, 40px for sections
238
+ - Use weight 600 exclusively for headings, 500 for UI, 400 for body
239
+
240
+ ### Don't
241
+ - Don't use cool gray backgrounds — the warm cream (`#faf9f7`) is non-negotiable
242
+ - Don't use neutral gray borders (`#ccc`, `#ddd`) — always use the warm oat tones
243
+ - Don't mix more than 2 swatch colors in the same section
244
+ - Don't skip the OpenType stylistic sets — they define Roobert's character
245
+ - Don't use subtle hover effects — the rotation + hard shadow is the signature interaction
246
+ - Don't use small border radius (<12px) on feature cards — the generous rounding is structural
247
+ - Don't use standard shadows (blur-based) — Clay uses hard offset and multi-layer inset
248
+ - Don't forget the uppercase labels with 1.08px tracking — they're the wayfinding system
249
+
250
+ ## 8. Responsive Behavior
251
+
252
+ ### Breakpoints
253
+ | Name | Width | Key Changes |
254
+ |------|-------|-------------|
255
+ | Mobile Small | <479px | Single column, tight padding |
256
+ | Mobile | 479–767px | Standard mobile, stacked layout |
257
+ | Tablet | 768–991px | 2-column grids, condensed nav |
258
+ | Desktop | 992px+ | Full layout, 3-column grids, expanded sections |
259
+
260
+ ### Touch Targets
261
+ - Buttons: minimum 6.4px + 12.8px padding for adequate touch area
262
+ - Nav links: 15px font with generous spacing
263
+ - Mobile: full-width buttons for easy tapping
264
+
265
+ ### Collapsing Strategy
266
+ - Hero: 80px → 60px → smaller display text
267
+ - Navigation: horizontal → hamburger at 767px
268
+ - Feature sections: multi-column → stacked
269
+ - Colorful sections: maintain full-width but compress padding
270
+ - Card grids: 3-column → 2-column → single column
271
+
272
+ ### Image Behavior
273
+ - Product screenshots scale proportionally
274
+ - Colorful section illustrations adapt to viewport width
275
+ - Rounded corners maintained across breakpoints
276
+
277
+ ## 9. Agent Prompt Guide
278
+
279
+ ### Quick Color Reference
280
+ - Background: Warm Cream (`#faf9f7`)
281
+ - Text: Clay Black (`#000000`)
282
+ - Secondary text: Warm Silver (`#9f9b93`)
283
+ - Border: Oat Border (`#dad4c8`)
284
+ - Green accent: Matcha 600 (`#078a52`)
285
+ - Cyan accent: Slushie 500 (`#3bd3fd`)
286
+ - Gold accent: Lemon 500 (`#fbbd41`)
287
+ - Purple accent: Ube 800 (`#43089f`)
288
+ - Pink accent: Pomegranate 400 (`#fc7981`)
289
+
290
+ ### Example Component Prompts
291
+ - "Create a hero on warm cream (#faf9f7) background. Headline at 80px Roobert weight 600, line-height 1.00, letter-spacing -3.2px, OpenType 'ss01 ss03 ss10 ss11 ss12', black text. Subtitle at 20px weight 400, line-height 1.40, #9f9b93 text. Two buttons: white solid pill (12px radius) and ghost outlined (4px radius, 1px solid #717989)."
292
+ - "Design a colorful section with Matcha 800 (#02492a) background. Heading at 44px Roobert weight 600, letter-spacing -1.32px, white text. Body at 18px weight 400, line-height 1.60, #84e7a5 text. White card inset with oat border (#dad4c8), 24px radius."
293
+ - "Build a button with playful hover: default transparent background, black text, 16px Roobert weight 500. On hover: background #434346, text white, transform rotateZ(-8deg) translateY(-80%), hard shadow rgb(0,0,0) -7px 7px."
294
+ - "Create a card: white background, 1px solid #dad4c8 border, 24px radius. Shadow: rgba(0,0,0,0.1) 0px 1px 1px, rgba(0,0,0,0.04) 0px -1px 1px inset. Title at 32px Roobert weight 600, letter-spacing -0.64px."
295
+ - "Design an uppercase label: 12px Roobert weight 600, text-transform uppercase, letter-spacing 1.08px, OpenType 'ss03 ss10 ss11 ss12'."
296
+
297
+ ### Iteration Guide
298
+ 1. Start with warm cream (#faf9f7) — never cool white
299
+ 2. Swatch colors are for full sections, not small accents — go bold with matcha, slushie, ube
300
+ 3. Oat borders (#dad4c8) everywhere — dashed variants for decoration
301
+ 4. OpenType stylistic sets are mandatory — they make Roobert look like Roobert
302
+ 5. Hover animations are the signature — rotation + hard shadow, not subtle fades
303
+ 6. Generous radius: 24px cards, 40px sections — nothing looks sharp or corporate
304
+ 7. Three weights: 600 (headings), 500 (UI), 400 (body) — strict roles
@@ -0,0 +1,281 @@
1
+ # Design System: ClickHouse
2
+
3
+ ## 1. Visual Theme & Atmosphere
4
+
5
+ ClickHouse's interface is a high-performance cockpit rendered in acid yellow-green on obsidian black — a design that screams "speed" before you read a single word. The entire experience lives in darkness: pure black backgrounds (`#000000`) with dark charcoal cards (`#414141` borders) creating a terminal-grade aesthetic where the only chromatic interruption is the signature neon yellow-green (`#faff69`) that slashes across CTAs, borders, and highlighted moments like a highlighter pen on a dark console.
6
+
7
+ The typography is aggressively heavy — Inter at weight 900 (Black) for the hero headline at 96px creates text blocks that feel like they have physical mass. This "database for AI" site communicates raw power through visual weight: thick type, high-contrast neon accents, and performance stats displayed as oversized numbers. There's nothing subtle about ClickHouse's design, and that's entirely the point — it mirrors the product's promise of extreme speed and performance.
8
+
9
+ What makes ClickHouse distinctive is the electrifying tension between the near-black canvas and the neon yellow-green accent. This color combination (`#faff69` on `#000000`) creates one of the highest-contrast pairings in any tech brand, making every CTA button, every highlighted card, and every accent border impossible to miss. Supporting this is a forest green (`#166534`) for secondary CTAs that adds depth to the action hierarchy without competing with the neon.
10
+
11
+ **Key Characteristics:**
12
+ - Pure black canvas (#000000) with neon yellow-green (#faff69) accent — maximum contrast
13
+ - Extra-heavy display typography: Inter at weight 900 (Black) up to 96px
14
+ - Dark charcoal card system with #414141 borders at 80% opacity
15
+ - Forest green (#166534) secondary CTA buttons
16
+ - Performance stats as oversized display numbers
17
+ - Uppercase labels with wide letter-spacing (1.4px) for navigation structure
18
+ - Active/pressed state shifts text to pale yellow (#f4f692)
19
+ - All links hover to neon yellow-green — unified interactive signal
20
+ - Inset shadows on select elements creating "pressed into the surface" depth
21
+
22
+ ## 2. Color Palette & Roles
23
+
24
+ ### Primary
25
+ - **Neon Volt** (`#faff69`): The signature brand color — a vivid acid yellow-green that's the sole chromatic accent on the black canvas. Used for primary CTAs, accent borders, link hovers, and highlighted moments.
26
+ - **Forest Green** (`#166534`): Secondary CTA color — a deep, saturated green for "Get Started" and primary action buttons that need distinction from the neon.
27
+ - **Dark Forest** (`#14572f`): A darker green variant for borders and secondary accents.
28
+
29
+ ### Secondary & Accent
30
+ - **Pale Yellow** (`#f4f692`): Active/pressed state text color — a softer, more muted version of Neon Volt for state feedback.
31
+ - **Border Olive** (`#4f5100`): A dark olive-yellow for ghost button borders — the neon's muted sibling.
32
+ - **Olive Dark** (`#161600`): The darkest neon-tinted color for subtle brand text.
33
+
34
+ ### Surface & Background
35
+ - **Pure Black** (`#000000`): The primary page background — absolute black for maximum contrast.
36
+ - **Near Black** (`#141414`): Button backgrounds and slightly elevated dark surfaces.
37
+ - **Charcoal** (`#414141`): The primary border color at 80% opacity — the workhorse for card and container containment.
38
+ - **Deep Charcoal** (`#343434`): Darker border variant for subtle division lines.
39
+ - **Hover Gray** (`#3a3a3a`): Button hover state background — slightly lighter than Near Black.
40
+
41
+ ### Neutrals & Text
42
+ - **Pure White** (`#ffffff`): Primary text on dark surfaces.
43
+ - **Silver** (`#a0a0a0`): Secondary body text and muted content.
44
+ - **Mid Gray** (`#585858` at 28%): Subtle gray overlay for depth effects.
45
+ - **Border Gray** (`#e5e7eb`): Light border variant (used in rare light contexts).
46
+
47
+ ### Gradient System
48
+ - **None in the traditional sense.** ClickHouse uses flat color blocks and high-contrast borders. The "gradient" is the contrast itself — neon yellow-green against pure black creates a visual intensity that gradients would dilute.
49
+
50
+ ## 3. Typography Rules
51
+
52
+ ### Font Family
53
+ - **Primary**: `Inter` (Next.js optimized variant `__Inter_d1b8ee`)
54
+ - **Secondary Display**: `Basier` (`__basier_a58b65`), with fallbacks: `Arial, Helvetica`
55
+ - **Code**: `Inconsolata` (`__Inconsolata_a25f62`)
56
+
57
+ ### Hierarchy
58
+
59
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
60
+ |------|------|------|--------|-------------|----------------|-------|
61
+ | Display Mega | Inter | 96px (6rem) | 900 | 1.00 (tight) | normal | Maximum impact, extra-heavy |
62
+ | Display / Hero | Inter | 72px (4.5rem) | 700 | 1.00 (tight) | normal | Section hero titles |
63
+ | Feature Heading | Basier | 36px (2.25rem) | 600 | 1.30 (tight) | normal | Feature section anchors |
64
+ | Sub-heading | Inter / Basier | 24px (1.5rem) | 600–700 | 1.17–1.38 | normal | Card headings |
65
+ | Feature Title | Inter / Basier | 20px (1.25rem) | 600–700 | 1.40 | normal | Small feature titles |
66
+ | Body Large | Inter | 18px (1.13rem) | 400–700 | 1.56 | normal | Intro paragraphs, button text |
67
+ | Body / Button | Inter | 16px (1rem) | 400–700 | 1.50 | normal | Standard body, nav, buttons |
68
+ | Caption | Inter | 14px (0.88rem) | 400–700 | 1.43 | normal | Metadata, descriptions, links |
69
+ | Uppercase Label | Inter | 14px (0.88rem) | 600 | 1.43 | 1.4px | Section overlines, wide-tracked |
70
+ | Code | Inconsolata | 16px (1rem) | 600 | 1.50 | normal | Code blocks, commands |
71
+ | Small | Inter | 12px (0.75rem) | 500 | 1.33 | normal | Smallest text |
72
+ | Micro | Inter | 11.2px (0.7rem) | 500 | 1.79 (relaxed) | normal | Tags, tiny labels |
73
+
74
+ ### Principles
75
+ - **Weight 900 is the weapon**: The display headline uses Inter Black (900) — a weight most sites never touch. Combined with 96px size, this creates text with a physical, almost architectural presence.
76
+ - **Full weight spectrum**: The system uses 400, 500, 600, 700, and 900 — covering the full gamut. Weight IS hierarchy.
77
+ - **Uppercase with maximum tracking**: Section overlines use 1.4px letter-spacing — wider than most systems — creating bold structural labels that stand out against the dense dark background.
78
+ - **Dual sans-serif**: Inter handles display and body; Basier handles feature section headings at 600 weight. This creates a subtle personality shift between "data/performance" (Inter) and "product/feature" (Basier) contexts.
79
+
80
+ ## 4. Component Stylings
81
+
82
+ ### Buttons
83
+
84
+ **Neon Primary**
85
+ - Background: Neon Volt (`#faff69`)
86
+ - Text: Near Black (`#151515`)
87
+ - Padding: 0px 16px
88
+ - Radius: sharp (4px)
89
+ - Border: `1px solid #faff69`
90
+ - Hover: background shifts to dark (`rgb(29, 29, 29)`), text stays
91
+ - Active: text shifts to Pale Yellow (`#f4f692`)
92
+ - The eye-catching CTA — neon on black
93
+
94
+ **Dark Solid**
95
+ - Background: Near Black (`#141414`)
96
+ - Text: Pure White (`#ffffff`)
97
+ - Padding: 12px 16px
98
+ - Radius: 4px or 8px
99
+ - Border: `1px solid #141414`
100
+ - Hover: bg shifts to Hover Gray (`#3a3a3a`), text to 80% opacity
101
+ - Active: text to Pale Yellow
102
+ - The standard action button
103
+
104
+ **Forest Green**
105
+ - Background: Forest Green (`#166534`)
106
+ - Text: Pure White (`#ffffff`)
107
+ - Padding: 12px 16px
108
+ - Border: `1px solid #141414`
109
+ - Hover: same dark shift
110
+ - Active: Pale Yellow text
111
+ - The "Get Started" / primary conversion button
112
+
113
+ **Ghost / Outlined**
114
+ - Background: transparent
115
+ - Text: Pure White (`#ffffff`)
116
+ - Padding: 0px 32px
117
+ - Radius: 4px
118
+ - Border: `1px solid #4f5100` (olive-tinted)
119
+ - Hover: dark bg shift
120
+ - Active: Pale Yellow text
121
+ - Secondary actions with neon-tinted border
122
+
123
+ **Pill Toggle**
124
+ - Background: transparent
125
+ - Radius: pill (9999px)
126
+ - Used for toggle/switch elements
127
+
128
+ ### Cards & Containers
129
+ - Background: transparent or Near Black
130
+ - Border: `1px solid rgba(65, 65, 65, 0.8)` — the signature charcoal containment
131
+ - Radius: 4px (small elements) or 8px (cards, containers)
132
+ - Shadow Level 1: subtle (`rgba(0,0,0,0.1) 0px 1px 3px, rgba(0,0,0,0.1) 0px 1px 2px -1px`)
133
+ - Shadow Level 2: medium (`rgba(0,0,0,0.1) 0px 10px 15px -3px, rgba(0,0,0,0.1) 0px 4px 6px -4px`)
134
+ - Shadow Level 3: inset (`rgba(0,0,0,0.06) 0px 4px 4px, rgba(0,0,0,0.14) 0px 4px 25px inset`) — the "pressed" effect
135
+ - Neon-highlighted cards: selected/active cards get neon yellow-green border or accent
136
+
137
+ ### Navigation
138
+ - Dark nav on black background
139
+ - Logo: ClickHouse wordmark + icon in yellow/neon
140
+ - Links: white text, hover to Neon Volt (#faff69)
141
+ - CTA: Neon Volt button or Forest Green button
142
+ - Uppercase labels for categories
143
+
144
+ ### Distinctive Components
145
+
146
+ **Performance Stats**
147
+ - Oversized numbers (72px+, weight 700–900)
148
+ - Brief descriptions beneath
149
+ - High-contrast neon accents on key metrics
150
+ - The primary visual proof of performance claims
151
+
152
+ **Neon-Highlighted Card**
153
+ - Standard dark card with neon yellow-green border highlight
154
+ - Creates "selected" or "featured" treatment
155
+ - The accent border makes the card pop against the dark canvas
156
+
157
+ **Code Blocks**
158
+ - Dark surface with Inconsolata at weight 600
159
+ - Neon and white syntax highlighting
160
+ - Terminal-like aesthetic
161
+
162
+ **Trust Bar**
163
+ - Company logos on dark background
164
+ - Monochrome/white logo treatment
165
+ - Horizontal layout
166
+
167
+ ## 5. Layout Principles
168
+
169
+ ### Spacing System
170
+ - Base unit: 8px
171
+ - Scale: 2px, 6px, 7px, 8px, 10px, 12px, 16px, 20px, 24px, 25px, 32px, 40px, 44px, 48px, 64px
172
+ - Button padding: 12px 16px (standard), 0px 16px (compact), 0px 32px (wide ghost)
173
+ - Section vertical spacing: generous (48–64px)
174
+
175
+ ### Grid & Container
176
+ - Max container width: up to 2200px (extra-wide) with responsive scaling
177
+ - Hero: full-width dark with massive typography
178
+ - Feature sections: multi-column card grids with dark borders
179
+ - Stats: horizontal metric bar
180
+ - Full-dark page — no light sections
181
+
182
+ ### Whitespace Philosophy
183
+ - **Dark void as canvas**: The pure black background provides infinite depth — elements float in darkness.
184
+ - **Dense information**: Feature cards and stats are packed with data, reflecting the database product's performance focus.
185
+ - **Neon highlights as wayfinding**: Yellow-green accents guide the eye through the dark interface like runway lights.
186
+
187
+ ### Border Radius Scale
188
+ - Sharp (4px): Buttons, badges, small elements, code blocks
189
+ - Comfortable (8px): Cards, containers, dividers
190
+ - Pill (9999px): Toggle buttons, status indicators
191
+
192
+ ## 6. Depth & Elevation
193
+
194
+ | Level | Treatment | Use |
195
+ |-------|-----------|-----|
196
+ | Flat (Level 0) | No shadow | Black background, text blocks |
197
+ | Bordered (Level 1) | `1px solid rgba(65,65,65,0.8)` | Standard cards, containers |
198
+ | Subtle (Level 2) | `0px 1px 3px rgba(0,0,0,0.1)` | Subtle card lift |
199
+ | Elevated (Level 3) | `0px 10px 15px -3px rgba(0,0,0,0.1)` | Feature cards, hover states |
200
+ | Pressed/Inset (Level 4) | `0px 4px 25px rgba(0,0,0,0.14) inset` | Active/pressed elements — "sunk into the surface" |
201
+ | Neon Highlight (Level 5) | Neon Volt border (`#faff69`) | Featured/selected cards, maximum emphasis |
202
+
203
+ **Shadow Philosophy**: ClickHouse uses shadows on a black canvas, where they're barely visible — they exist more for subtle dimensionality than obvious elevation. The most distinctive depth mechanism is the **inset shadow** (Level 4), which creates a "pressed into the surface" effect unique to ClickHouse. The neon border highlight (Level 5) is the primary attention-getting depth mechanism.
204
+
205
+ ## 7. Do's and Don'ts
206
+
207
+ ### Do
208
+ - Use Neon Volt (#faff69) as the sole chromatic accent — it must pop against pure black
209
+ - Use Inter at weight 900 for hero display text — the extreme weight IS the personality
210
+ - Keep everything on pure black (#000000) — never use dark gray as the page background
211
+ - Use charcoal borders (rgba(65,65,65,0.8)) for all card containment
212
+ - Apply Forest Green (#166534) for primary CTA buttons — distinct from neon for action hierarchy
213
+ - Show performance stats as oversized display numbers — it's the core visual argument
214
+ - Use uppercase with wide letter-spacing (1.4px) for section labels
215
+ - Apply Pale Yellow (#f4f692) for active/pressed text states
216
+ - Link hovers should ALWAYS shift to Neon Volt — unified interactive feedback
217
+
218
+ ### Don't
219
+ - Don't introduce additional colors — the palette is strictly black, neon, green, and gray
220
+ - Don't use the neon as a background fill — it's an accent and border color only (except on CTA buttons)
221
+ - Don't reduce display weight below 700 — heavy weight is core to the personality
222
+ - Don't use light/white backgrounds anywhere — the entire experience is dark
223
+ - Don't round corners beyond 8px — the sharp geometry reflects database precision
224
+ - Don't use soft/diffused shadows on black — they're invisible. Use border-based depth instead
225
+ - Don't skip the inset shadow on active states — the "pressed" effect is distinctive
226
+ - Don't use warm neutrals — all grays are perfectly neutral
227
+
228
+ ## 8. Responsive Behavior
229
+
230
+ ### Breakpoints
231
+ | Name | Width | Key Changes |
232
+ |------|-------|-------------|
233
+ | Mobile | <640px | Single column, stacked cards |
234
+ | Small Tablet | 640–768px | Minor adjustments |
235
+ | Tablet | 768–1024px | 2-column grids |
236
+ | Desktop | 1024–1280px | Standard layout |
237
+ | Large Desktop | 1280–1536px | Expanded content |
238
+ | Ultra-wide | 1536–2200px | Maximum container width |
239
+
240
+ ### Touch Targets
241
+ - Buttons with 12px 16px padding minimum
242
+ - Card surfaces as touch targets
243
+ - Adequate nav link spacing
244
+
245
+ ### Collapsing Strategy
246
+ - **Hero text**: 96px → 72px → 48px → 36px
247
+ - **Feature grids**: Multi-column → 2 → 1 column
248
+ - **Stats**: Horizontal → stacked
249
+ - **Navigation**: Full → hamburger
250
+
251
+ ### Image Behavior
252
+ - Product screenshots maintain aspect ratio
253
+ - Code blocks use horizontal scroll on narrow screens
254
+ - All images on dark backgrounds
255
+
256
+ ## 9. Agent Prompt Guide
257
+
258
+ ### Quick Color Reference
259
+ - Brand Accent: "Neon Volt (#faff69)"
260
+ - Page Background: "Pure Black (#000000)"
261
+ - CTA Green: "Forest Green (#166534)"
262
+ - Card Border: "Charcoal (rgba(65,65,65,0.8))"
263
+ - Primary Text: "Pure White (#ffffff)"
264
+ - Secondary Text: "Silver (#a0a0a0)"
265
+ - Active State: "Pale Yellow (#f4f692)"
266
+ - Button Surface: "Near Black (#141414)"
267
+
268
+ ### Example Component Prompts
269
+ - "Create a hero section on Pure Black (#000000) with a massive headline at 96px Inter weight 900, line-height 1.0. Pure White text. Add a Neon Volt (#faff69) CTA button (dark text, 4px radius, 0px 16px padding) and a ghost button (transparent, 1px solid #4f5100 border)."
270
+ - "Design a feature card on black with 1px solid rgba(65,65,65,0.8) border and 8px radius. Title at 24px Inter weight 700, body at 16px in Silver (#a0a0a0). Add a neon-highlighted variant with 1px solid #faff69 border."
271
+ - "Build a performance stats bar: large numbers at 72px Inter weight 700 in Pure White. Brief descriptions at 14px in Silver. On black background."
272
+ - "Create a Forest Green (#166534) CTA button: white text, 12px 16px padding, 4px radius, 1px solid #141414 border. Hover: bg shifts to #3a3a3a, text to 80% opacity."
273
+ - "Design an uppercase section label: 14px Inter weight 600, letter-spacing 1.4px, uppercase. Silver (#a0a0a0) text on black background."
274
+
275
+ ### Iteration Guide
276
+ 1. Keep everything on pure black — no dark gray alternatives
277
+ 2. Neon Volt (#faff69) is for accents and CTAs only — never large backgrounds
278
+ 3. Weight 900 for hero, 700 for headings, 600 for labels, 400-500 for body
279
+ 4. Active states use Pale Yellow (#f4f692) — not just opacity changes
280
+ 5. All links hover to Neon Volt — consistent interactive feedback
281
+ 6. Charcoal borders (rgba(65,65,65,0.8)) are the primary depth mechanism