get-shit-pretty 0.7.0 → 0.7.1

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 (106) hide show
  1. package/README.md +13 -28
  2. package/gsp/agents/gsp-accessibility-auditor.md +1 -60
  3. package/gsp/agents/gsp-brand-auditor.md +1 -61
  4. package/gsp/agents/gsp-brand-creative-director.md +10 -0
  5. package/gsp/agents/gsp-brand-engineer.md +1 -122
  6. package/gsp/agents/gsp-brand-researcher.md +11 -0
  7. package/gsp/agents/gsp-brand-strategist.md +1 -65
  8. package/gsp/agents/gsp-project-builder.md +17 -0
  9. package/gsp/agents/gsp-project-critic.md +11 -0
  10. package/gsp/agents/gsp-project-designer.md +11 -0
  11. package/gsp/agents/gsp-project-researcher.md +1 -74
  12. package/gsp/agents/gsp-project-reviewer.md +12 -0
  13. package/gsp/hooks/hooks.json +10 -28
  14. package/gsp/skills/get-shit-pretty/SKILL.md +2 -5
  15. package/gsp/skills/gsp-accessibility/SKILL.md +0 -1
  16. package/gsp/skills/gsp-accessibility-audit/SKILL.md +9 -8
  17. package/gsp/skills/gsp-accessibility-audit/methodology/gsp-accessibility-auditor.md +59 -0
  18. package/gsp/skills/gsp-add-reference/SKILL.md +0 -1
  19. package/gsp/skills/gsp-art/SKILL.md +13 -10
  20. package/gsp/skills/gsp-brand-audit/SKILL.md +4 -2
  21. package/gsp/skills/gsp-brand-audit/methodology/gsp-brand-auditor.md +61 -0
  22. package/gsp/skills/gsp-brand-brief/SKILL.md +129 -0
  23. package/gsp/skills/gsp-brand-guidelines/SKILL.md +13 -11
  24. package/gsp/skills/gsp-brand-guidelines/methodology/gsp-brand-engineer.md +122 -0
  25. package/gsp/skills/gsp-brand-identity/SKILL.md +12 -11
  26. package/gsp/{agents/gsp-creative-director.md → skills/gsp-brand-identity/methodology/gsp-brand-creative-director.md} +0 -9
  27. package/gsp/skills/gsp-brand-refine/SKILL.md +0 -1
  28. package/gsp/skills/gsp-brand-research/SKILL.md +13 -13
  29. package/gsp/{agents/gsp-researcher.md → skills/gsp-brand-research/methodology/gsp-brand-researcher.md} +0 -10
  30. package/gsp/skills/gsp-brand-strategy/SKILL.md +14 -14
  31. package/gsp/skills/gsp-brand-strategy/methodology/gsp-brand-strategist.md +65 -0
  32. package/gsp/skills/gsp-brand-sync/SKILL.md +60 -10
  33. package/gsp/skills/gsp-color/SKILL.md +0 -1
  34. package/gsp/skills/gsp-design-system/SKILL.md +0 -1
  35. package/gsp/skills/gsp-doctor/SKILL.md +0 -1
  36. package/gsp/skills/gsp-help/SKILL.md +0 -2
  37. package/gsp/skills/gsp-icons/SKILL.md +0 -1
  38. package/gsp/skills/gsp-logo/SKILL.md +0 -1
  39. package/gsp/skills/gsp-phase-transition/SKILL.md +0 -3
  40. package/gsp/skills/gsp-pretty/SKILL.md +25 -24
  41. package/gsp/skills/gsp-progress/SKILL.md +0 -1
  42. package/gsp/skills/gsp-project-brief/SKILL.md +51 -22
  43. package/gsp/skills/gsp-project-build/SKILL.md +18 -14
  44. package/gsp/{agents/gsp-builder.md → skills/gsp-project-build/methodology/gsp-project-builder.md} +0 -16
  45. package/gsp/skills/gsp-project-critique/SKILL.md +13 -13
  46. package/gsp/{agents/gsp-critic.md → skills/gsp-project-critique/methodology/gsp-project-critic.md} +0 -11
  47. package/gsp/skills/gsp-project-design/SKILL.md +9 -6
  48. package/gsp/{agents/gsp-designer.md → skills/gsp-project-design/methodology/gsp-project-designer.md} +0 -11
  49. package/gsp/skills/gsp-project-research/SKILL.md +4 -2
  50. package/gsp/skills/gsp-project-research/methodology/gsp-project-researcher.md +73 -0
  51. package/gsp/skills/gsp-project-review/SKILL.md +8 -5
  52. package/gsp/{agents/gsp-reviewer.md → skills/gsp-project-review/methodology/gsp-project-reviewer.md} +0 -12
  53. package/gsp/skills/gsp-scaffold/SKILL.md +0 -1
  54. package/gsp/skills/gsp-start/SKILL.md +59 -210
  55. package/gsp/skills/gsp-style/SKILL.md +1 -2
  56. package/gsp/skills/gsp-style/styles/academia.md +751 -787
  57. package/gsp/skills/gsp-style/styles/art-deco.md +316 -352
  58. package/gsp/skills/gsp-style/styles/bauhaus.md +189 -225
  59. package/gsp/skills/gsp-style/styles/bold-typography.md +433 -469
  60. package/gsp/skills/gsp-style/styles/botanical.md +141 -177
  61. package/gsp/skills/gsp-style/styles/claymorphism.md +377 -413
  62. package/gsp/skills/gsp-style/styles/cyberpunk.md +419 -455
  63. package/gsp/skills/gsp-style/styles/enterprise.md +224 -260
  64. package/gsp/skills/gsp-style/styles/flat-design.md +119 -155
  65. package/gsp/skills/gsp-style/styles/fluent.md +0 -31
  66. package/gsp/skills/gsp-style/styles/glassmorphism.md +0 -36
  67. package/gsp/skills/gsp-style/styles/humanist-literary.md +0 -28
  68. package/gsp/skills/gsp-style/styles/industrial.md +406 -438
  69. package/gsp/skills/gsp-style/styles/kinetic.md +531 -563
  70. package/gsp/skills/gsp-style/styles/liquid-glass.md +0 -36
  71. package/gsp/skills/gsp-style/styles/luxury.md +402 -438
  72. package/gsp/skills/gsp-style/styles/material.md +555 -591
  73. package/gsp/skills/gsp-style/styles/maximalism.md +875 -911
  74. package/gsp/skills/gsp-style/styles/minimal-dark.md +442 -478
  75. package/gsp/skills/gsp-style/styles/modern-dark.md +390 -426
  76. package/gsp/skills/gsp-style/styles/monochrome.md +472 -504
  77. package/gsp/skills/gsp-style/styles/neubrutalism.md +354 -390
  78. package/gsp/skills/gsp-style/styles/neumorphism.md +195 -231
  79. package/gsp/skills/gsp-style/styles/newsprint.md +529 -565
  80. package/gsp/skills/gsp-style/styles/organic.md +177 -213
  81. package/gsp/skills/gsp-style/styles/playful-geometric.md +211 -247
  82. package/gsp/skills/gsp-style/styles/professional.md +503 -539
  83. package/gsp/skills/gsp-style/styles/retro.md +664 -700
  84. package/gsp/skills/gsp-style/styles/saas.md +490 -526
  85. package/gsp/skills/gsp-style/styles/sketch.md +189 -225
  86. package/gsp/skills/gsp-style/styles/swiss-minimalist.md +195 -227
  87. package/gsp/skills/gsp-style/styles/terminal.md +99 -135
  88. package/gsp/skills/gsp-style/styles/vaporwave.md +356 -392
  89. package/gsp/skills/gsp-style/styles/web3.md +337 -373
  90. package/gsp/skills/gsp-typography/SKILL.md +0 -1
  91. package/gsp/skills/gsp-update/SKILL.md +0 -1
  92. package/gsp/skills/gsp-visuals/SKILL.md +0 -1
  93. package/gsp/templates/branding/config.json +1 -1
  94. package/gsp/templates/exports-index.md +0 -7
  95. package/gsp/templates/projects/config.json +1 -1
  96. package/gsp/templates/projects/roadmap.md +0 -7
  97. package/gsp/templates/projects/state.md +0 -4
  98. package/package.json +1 -1
  99. package/scripts/lint-check.sh +1 -1
  100. package/gsp/agents/gsp-ascii-artist.md +0 -66
  101. package/gsp/agents/gsp-brand-syncer.md +0 -126
  102. package/gsp/agents/gsp-campaign-director.md +0 -79
  103. package/gsp/agents/gsp-scoper.md +0 -85
  104. package/gsp/skills/gsp-launch/SKILL.md +0 -97
  105. package/gsp/skills/gsp-start/questioning.md +0 -87
  106. package/gsp/templates/phases/launch.md +0 -55
@@ -1,247 +1,211 @@
1
- <role>
2
- You are an expert frontend engineer, UI/UX designer, visual design specialist, and typography expert. Your goal is to help the user integrate a design system into an existing codebase in a way that is visually consistent, maintainable, and idiomatic to their tech stack.
3
-
4
- Before proposing or writing any code, first build a clear mental model of the current system:
5
-
6
- - Identify the tech stack (e.g. React, Next.js, Vue, Tailwind, shadcn/ui, etc.).
7
- - Understand the existing design tokens (colors, spacing, typography, radii, shadows), global styles, and utility patterns.
8
- - Review the current component architecture (atoms/molecules/organisms, layout primitives, etc.) and naming conventions.
9
- - Note any constraints (legacy CSS, design library in use, performance or bundle-size considerations).
10
-
11
- Ask the user focused questions to understand the user's goals. Do they want:
12
-
13
- - a specific component or page redesigned in the new style,
14
- - existing components refactored to the new system, or
15
- - new pages/features built entirely in the new style?
16
-
17
- Once you understand the context and scope, do the following:
18
-
19
- - Propose a concise implementation plan that follows best practices, prioritizing:
20
- - centralizing design tokens,
21
- - reusability and composability of components,
22
- - minimizing duplication and one-off styles,
23
- - long-term maintainability and clear naming.
24
- - When writing code, match the user’s existing patterns (folder structure, naming, styling approach, and component patterns).
25
- - Explain your reasoning briefly as you go, so the user understands *why* you’re making certain architectural or design choices.
26
-
27
- Always aim to:
28
-
29
- - Preserve or improve accessibility.
30
- - Maintain visual consistency with the provided design system.
31
- - Leave the codebase in a cleaner, more coherent state than you found it.
32
- - Ensure layouts are responsive and usable across devices.
33
- - Make deliberate, creative design choices (layout, motion, interaction details, and typography) that express the design system’s personality instead of producing a generic or boilerplate UI.
34
-
35
- </role>
36
-
37
- <design-system>
38
- # Playful Geometric Design System
39
-
40
- ## Design Philosophy
41
-
42
- **Playful Geometric** is the antidote to sterile, corporate minimalism. It creates an emotional connection through **optimism, clarity, and tactile fun**.
43
-
44
- The core concept is **"Stable Grid, Wild Decoration"**. The content itself (text, forms) lives in clean, readable areas, but the world around it is alive with movement and shape. It references the **Memphis Group** (80s) but cleans it up for modern digital screens—removing the chaos while keeping the energy.
45
-
46
- ### The Vibe
47
-
48
- **Friendly. Tactile. Pop. Energetic.**
49
- It feels like a playground or a well-organized sticker book. It invites clicking. It smiles at you.
50
-
51
- ### Visual Signatures
52
-
53
- - **Primitive Shapes**: Circles, triangles, squares, pill shapes, and squiggles used as background elements, masks, or icons.
54
- - **Hard Shadows**: Elements often have a hard, offset drop shadow (no blur) giving a sticker or cut-out paper feel.
55
- - **Pattern Fills**: Polka dots, grid lines, and diagonal stripes used to fill shapes or backgrounds.
56
- - **Varied Radii**: Mixing fully rounded corners with sharp ones to create "leaf" shapes or asymmetric blobs.
57
-
58
- ---
59
-
60
- ## Design Token System
61
-
62
- ### Colors (Light Mode)
63
-
64
- A punchy, high-saturation palette anchored by strong neutrals.
65
-
66
- ```
67
- background: #FFFDF5 // Warm Cream/Off-White (Paper feel)
68
- foreground: #1E293B // Slate 800 (Softer than black)
69
- muted: #F1F5F9 // Slate 100
70
- mutedForeground: #64748B // Slate 500
71
- accent: #8B5CF6 // Vivid Violet (Primary Brand)
72
- accentForeground: #FFFFFF // White
73
- secondary: #F472B6 // Hot Pink (Playful pop)
74
- tertiary: #FBBF24 // Amber/Yellow (Optimism)
75
- quaternary: #34D399 // Emerald/Mint (Freshness)
76
- border: #E2E8F0 // Slate 200
77
- input: #FFFFFF // White
78
- card: #FFFFFF // White
79
- ring: #8B5CF6 // Violet Focus
80
- ```
81
-
82
- **Usage Rule**: Use `accent` for primary actions. Use `secondary`, `tertiary`, and `quaternary` rotationally for decorative shapes, icons, or emphasized words to create a "confetti" effect.
83
-
84
- ### Typography
85
-
86
- **Headings**: `"Outfit", system-ui, sans-serif`
87
-
88
- - A geometric sans with character. Rounded corners on letters make it friendly.
89
- - **Weights**: Bold (700) or ExtraBold (800).
90
-
91
- **Body**: `"Plus Jakarta Sans", system-ui, sans-serif`
92
-
93
- - Highly legible, modern, geometric but humanist.
94
- - **Weights**: Regular (400), Medium (500).
95
-
96
- **Scale Ratio**: 1.25 (Major Third) - melodic and harmonious.
97
-
98
- ### Radius & Border
99
-
100
- ```
101
- radius-sm: 8px
102
- radius-md: 16px
103
- radius-lg: 24px
104
- radius-full: 9999px
105
- border-width: 2px // Chunky borders by default
106
- ```
107
-
108
- **Special "Blob" Radius**: `rounded-tl-2xl rounded-tr-2xl rounded-br-2xl rounded-bl-none` (Speech bubble style) or `rounded-t-full rounded-b-none` (Arch).
109
-
110
- ### Shadows & Effects
111
-
112
- **The "Pop" Shadow (Hard Shadow)**:
113
-
114
- ```
115
- box-shadow: 4px 4px 0px 0px #1E293B; // Dark hard shadow
116
- box-shadow-hover: 6px 6px 0px 0px #1E293B; // Lift effect
117
- box-shadow-active: 2px 2px 0px 0px #1E293B; // Press effect
118
- ```
119
-
120
- No blur. Solid offset colors.
121
-
122
- ### Textures & Patterns
123
-
124
- - **Dot Grid**: A background of small dots (`bg-[url(...)]`) in strict formation.
125
- - **Squiggles**: SVG paths used as section dividers or underlining for headings.
126
- - **Confetti**: Small SVG shapes (triangles, circles) absolutely positioned behind main content blocks.
127
-
128
- ---
129
-
130
- ## Component Stylings
131
-
132
- ### Buttons
133
-
134
- **Primary Button ("The Candy Button")**:
135
-
136
- ```
137
- - Bg: accent (#8B5CF6)
138
- - Text: white, font-weight: 700
139
- - Radius: rounded-full (Pill)
140
- - Border: 2px solid #1E293B (Dark border around color)
141
- - Shadow: 4px 4px 0px #1E293B (Hard shadow)
142
- - Hover: translate-x-[-2px] translate-y-[-2px], shadow extends to 6px 6px
143
- - Active: translate-x-[2px] translate-y-[2px], shadow shrinks to 2px 2px
144
- - Icon: ArrowRight, circular background (white) inside button
145
- ```
146
-
147
- **Secondary Button**:
148
-
149
- ```
150
- - Bg: transparent
151
- - Text: foreground
152
- - Border: 2px solid #1E293B
153
- - Radius: rounded-full
154
- - Shadow: none
155
- - Hover: bg-tertiary (#FBBF24) - Fills with yellow on hover
156
- ```
157
-
158
- ### Cards
159
-
160
- **The "Sticker" Card**:
161
-
162
- ```
163
- - Bg: white
164
- - Border: 2px solid #1E293B
165
- - Radius: rounded-xl
166
- - Shadow: 8px 8px 0px #E2E8F0 (Soft hard shadow) or #F472B6 (Pink shadow for featured)
167
- - Hover: Rotate -1deg, Scale 1.02 (Wiggle effect)
168
- - Title: Bold Outfit font
169
- - Icon: Floating circle div with centered icon, sitting half-in/half-out of the top border.
170
- ```
171
-
172
- ### Inputs
173
-
174
- ```
175
- - Bg: white
176
- - Border: 2px solid #CBD5E1
177
- - Radius: rounded-lg
178
- - Text: foreground
179
- - Shadow: 4px 4px 0px transparent (hidden initially)
180
- - Focus: Border accent, Shadow 4px 4px 0px accent (Hard color shadow on focus)
181
- - Label: Bold, uppercase, small tracking-wide.
182
- ```
183
-
184
- ---
185
-
186
- ## Layout Strategy
187
-
188
- ### General
189
-
190
- - **Container**: `max-w-6xl` (Generous width).
191
- - **Spacing**: `py-24` (96px). Spacious but not empty; filled with patterns.
192
- - **Grid**: 12-column logic, but grouped into big blocks (6/6 or 4/4/4).
193
-
194
- ### Unique Section Layouts
195
-
196
- 1. **Hero**:
197
- - Text left, Image right.
198
- - **Decoration**: A massive yellow circle behind the text. A dotted pattern behind the image. The image itself has a "blob" mask (CSS clip-path or border-radius manipulation).
199
- 2. **Features**:
200
- - Grid of 3.
201
- - **Decoration**: Each card is connected by a dashed SVG line drawn in the background.
202
- - Alternating colors for card headers (Violet, Pink, Yellow).
203
- 3. **Pricing**:
204
- - The middle card is scaled up (1.1) and has a massive yellow star badge "MOST POPULAR" rotated 15deg.
205
-
206
- ---
207
-
208
- ## Effects & Animation
209
-
210
- **Feel**: Bouncy, Elastic, Fun.
211
-
212
- - **Hover**: `transition-all duration-300 ease-[cubic-bezier(0.34,1.56,0.64,1)]` (Overshoot/Bounciness).
213
- - **Entrance**: Elements shouldn't just fade in; they should **pop** in (Scale 0->1 with bounce).
214
- - **Marquee**: Use infinite scrolling text for client logos or keywords.
215
- - **Wiggle**: Keyframe animation `rotate: 0deg -> 3deg -> -3deg -> 0deg` on hover for icons.
216
-
217
- ---
218
-
219
- ## Iconography
220
-
221
- **Lucide React** settings:
222
-
223
- - **Stroke Width**: `2.5px` (Bold/Chunky).
224
- - **Style**: Round line caps, round line joins.
225
- - **Color**: Often white inside a colored circle, or the dark foreground color.
226
- - **Usage**: Enclosed in shapes. Never floating alone. A "Check" icon isn't just a check; it's a check inside a green circle.
227
-
228
- ---
229
-
230
- ## Responsive Strategy
231
-
232
- - **Mobile**:
233
- - Stack everything.
234
- - Reduce "pop" shadows to 2px to save space.
235
- - Turn horizontal squiggle lines into vertical dividers.
236
- - Keep buttons big and tappable (min 48px height).
237
- - Hide complex background floating shapes that might overlap text.
238
-
239
- ---
240
-
241
- ## Accessibility & Best Practices
242
-
243
- - **Contrast**: The text is slate-800 on off-white/white, which is AAA.
244
- - **Color**: Never rely *only* on color. Use shapes and text labels.
245
- - **Motion**: Respect `prefers-reduced-motion`. Disable the "bounce" and "wiggle" effects if preferred.
246
- - **Focus**: The focus state is high-contrast (thick colored border + hard shadow).
247
- `</design-system>`
1
+ <design-system>
2
+ # Playful Geometric Design System
3
+
4
+ ## Design Philosophy
5
+
6
+ **Playful Geometric** is the antidote to sterile, corporate minimalism. It creates an emotional connection through **optimism, clarity, and tactile fun**.
7
+
8
+ The core concept is **"Stable Grid, Wild Decoration"**. The content itself (text, forms) lives in clean, readable areas, but the world around it is alive with movement and shape. It references the **Memphis Group** (80s) but cleans it up for modern digital screens—removing the chaos while keeping the energy.
9
+
10
+ ### The Vibe
11
+
12
+ **Friendly. Tactile. Pop. Energetic.**
13
+ It feels like a playground or a well-organized sticker book. It invites clicking. It smiles at you.
14
+
15
+ ### Visual Signatures
16
+
17
+ - **Primitive Shapes**: Circles, triangles, squares, pill shapes, and squiggles used as background elements, masks, or icons.
18
+ - **Hard Shadows**: Elements often have a hard, offset drop shadow (no blur) giving a sticker or cut-out paper feel.
19
+ - **Pattern Fills**: Polka dots, grid lines, and diagonal stripes used to fill shapes or backgrounds.
20
+ - **Varied Radii**: Mixing fully rounded corners with sharp ones to create "leaf" shapes or asymmetric blobs.
21
+
22
+ ---
23
+
24
+ ## Design Token System
25
+
26
+ ### Colors (Light Mode)
27
+
28
+ A punchy, high-saturation palette anchored by strong neutrals.
29
+
30
+ ```
31
+ background: #FFFDF5 // Warm Cream/Off-White (Paper feel)
32
+ foreground: #1E293B // Slate 800 (Softer than black)
33
+ muted: #F1F5F9 // Slate 100
34
+ mutedForeground: #64748B // Slate 500
35
+ accent: #8B5CF6 // Vivid Violet (Primary Brand)
36
+ accentForeground: #FFFFFF // White
37
+ secondary: #F472B6 // Hot Pink (Playful pop)
38
+ tertiary: #FBBF24 // Amber/Yellow (Optimism)
39
+ quaternary: #34D399 // Emerald/Mint (Freshness)
40
+ border: #E2E8F0 // Slate 200
41
+ input: #FFFFFF // White
42
+ card: #FFFFFF // White
43
+ ring: #8B5CF6 // Violet Focus
44
+ ```
45
+
46
+ **Usage Rule**: Use `accent` for primary actions. Use `secondary`, `tertiary`, and `quaternary` rotationally for decorative shapes, icons, or emphasized words to create a "confetti" effect.
47
+
48
+ ### Typography
49
+
50
+ **Headings**: `"Outfit", system-ui, sans-serif`
51
+
52
+ - A geometric sans with character. Rounded corners on letters make it friendly.
53
+ - **Weights**: Bold (700) or ExtraBold (800).
54
+
55
+ **Body**: `"Plus Jakarta Sans", system-ui, sans-serif`
56
+
57
+ - Highly legible, modern, geometric but humanist.
58
+ - **Weights**: Regular (400), Medium (500).
59
+
60
+ **Scale Ratio**: 1.25 (Major Third) - melodic and harmonious.
61
+
62
+ ### Radius & Border
63
+
64
+ ```
65
+ radius-sm: 8px
66
+ radius-md: 16px
67
+ radius-lg: 24px
68
+ radius-full: 9999px
69
+ border-width: 2px // Chunky borders by default
70
+ ```
71
+
72
+ **Special "Blob" Radius**: `rounded-tl-2xl rounded-tr-2xl rounded-br-2xl rounded-bl-none` (Speech bubble style) or `rounded-t-full rounded-b-none` (Arch).
73
+
74
+ ### Shadows & Effects
75
+
76
+ **The "Pop" Shadow (Hard Shadow)**:
77
+
78
+ ```
79
+ box-shadow: 4px 4px 0px 0px #1E293B; // Dark hard shadow
80
+ box-shadow-hover: 6px 6px 0px 0px #1E293B; // Lift effect
81
+ box-shadow-active: 2px 2px 0px 0px #1E293B; // Press effect
82
+ ```
83
+
84
+ No blur. Solid offset colors.
85
+
86
+ ### Textures & Patterns
87
+
88
+ - **Dot Grid**: A background of small dots (`bg-[url(...)]`) in strict formation.
89
+ - **Squiggles**: SVG paths used as section dividers or underlining for headings.
90
+ - **Confetti**: Small SVG shapes (triangles, circles) absolutely positioned behind main content blocks.
91
+
92
+ ---
93
+
94
+ ## Component Stylings
95
+
96
+ ### Buttons
97
+
98
+ **Primary Button ("The Candy Button")**:
99
+
100
+ ```
101
+ - Bg: accent (#8B5CF6)
102
+ - Text: white, font-weight: 700
103
+ - Radius: rounded-full (Pill)
104
+ - Border: 2px solid #1E293B (Dark border around color)
105
+ - Shadow: 4px 4px 0px #1E293B (Hard shadow)
106
+ - Hover: translate-x-[-2px] translate-y-[-2px], shadow extends to 6px 6px
107
+ - Active: translate-x-[2px] translate-y-[2px], shadow shrinks to 2px 2px
108
+ - Icon: ArrowRight, circular background (white) inside button
109
+ ```
110
+
111
+ **Secondary Button**:
112
+
113
+ ```
114
+ - Bg: transparent
115
+ - Text: foreground
116
+ - Border: 2px solid #1E293B
117
+ - Radius: rounded-full
118
+ - Shadow: none
119
+ - Hover: bg-tertiary (#FBBF24) - Fills with yellow on hover
120
+ ```
121
+
122
+ ### Cards
123
+
124
+ **The "Sticker" Card**:
125
+
126
+ ```
127
+ - Bg: white
128
+ - Border: 2px solid #1E293B
129
+ - Radius: rounded-xl
130
+ - Shadow: 8px 8px 0px #E2E8F0 (Soft hard shadow) or #F472B6 (Pink shadow for featured)
131
+ - Hover: Rotate -1deg, Scale 1.02 (Wiggle effect)
132
+ - Title: Bold Outfit font
133
+ - Icon: Floating circle div with centered icon, sitting half-in/half-out of the top border.
134
+ ```
135
+
136
+ ### Inputs
137
+
138
+ ```
139
+ - Bg: white
140
+ - Border: 2px solid #CBD5E1
141
+ - Radius: rounded-lg
142
+ - Text: foreground
143
+ - Shadow: 4px 4px 0px transparent (hidden initially)
144
+ - Focus: Border accent, Shadow 4px 4px 0px accent (Hard color shadow on focus)
145
+ - Label: Bold, uppercase, small tracking-wide.
146
+ ```
147
+
148
+ ---
149
+
150
+ ## Layout Strategy
151
+
152
+ ### General
153
+
154
+ - **Container**: `max-w-6xl` (Generous width).
155
+ - **Spacing**: `py-24` (96px). Spacious but not empty; filled with patterns.
156
+ - **Grid**: 12-column logic, but grouped into big blocks (6/6 or 4/4/4).
157
+
158
+ ### Unique Section Layouts
159
+
160
+ 1. **Hero**:
161
+ - Text left, Image right.
162
+ - **Decoration**: A massive yellow circle behind the text. A dotted pattern behind the image. The image itself has a "blob" mask (CSS clip-path or border-radius manipulation).
163
+ 2. **Features**:
164
+ - Grid of 3.
165
+ - **Decoration**: Each card is connected by a dashed SVG line drawn in the background.
166
+ - Alternating colors for card headers (Violet, Pink, Yellow).
167
+ 3. **Pricing**:
168
+ - The middle card is scaled up (1.1) and has a massive yellow star badge "MOST POPULAR" rotated 15deg.
169
+
170
+ ---
171
+
172
+ ## Effects & Animation
173
+
174
+ **Feel**: Bouncy, Elastic, Fun.
175
+
176
+ - **Hover**: `transition-all duration-300 ease-[cubic-bezier(0.34,1.56,0.64,1)]` (Overshoot/Bounciness).
177
+ - **Entrance**: Elements shouldn't just fade in; they should **pop** in (Scale 0->1 with bounce).
178
+ - **Marquee**: Use infinite scrolling text for client logos or keywords.
179
+ - **Wiggle**: Keyframe animation `rotate: 0deg -> 3deg -> -3deg -> 0deg` on hover for icons.
180
+
181
+ ---
182
+
183
+ ## Iconography
184
+
185
+ **Lucide React** settings:
186
+
187
+ - **Stroke Width**: `2.5px` (Bold/Chunky).
188
+ - **Style**: Round line caps, round line joins.
189
+ - **Color**: Often white inside a colored circle, or the dark foreground color.
190
+ - **Usage**: Enclosed in shapes. Never floating alone. A "Check" icon isn't just a check; it's a check inside a green circle.
191
+
192
+ ---
193
+
194
+ ## Responsive Strategy
195
+
196
+ - **Mobile**:
197
+ - Stack everything.
198
+ - Reduce "pop" shadows to 2px to save space.
199
+ - Turn horizontal squiggle lines into vertical dividers.
200
+ - Keep buttons big and tappable (min 48px height).
201
+ - Hide complex background floating shapes that might overlap text.
202
+
203
+ ---
204
+
205
+ ## Accessibility & Best Practices
206
+
207
+ - **Contrast**: The text is slate-800 on off-white/white, which is AAA.
208
+ - **Color**: Never rely *only* on color. Use shapes and text labels.
209
+ - **Motion**: Respect `prefers-reduced-motion`. Disable the "bounce" and "wiggle" effects if preferred.
210
+ - **Focus**: The focus state is high-contrast (thick colored border + hard shadow).
211
+ `</design-system>`