oxycode-skills 1.0.0

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 (30) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +143 -0
  3. package/index.js +17 -0
  4. package/package.json +49 -0
  5. package/skills/anti-slop/README.md +106 -0
  6. package/skills/anti-slop/SKILL.md +311 -0
  7. package/skills/anti-slop/examples/before-after.md +380 -0
  8. package/skills/anti-slop/references/quality-rubric.md +313 -0
  9. package/skills/anti-slop/references/slop-patterns.md +433 -0
  10. package/skills/component-architect/README.md +186 -0
  11. package/skills/component-architect/SKILL.md +644 -0
  12. package/skills/component-architect/examples/component-patterns.md +569 -0
  13. package/skills/component-architect/references/atomic-design.md +516 -0
  14. package/skills/design-audit/README.md +114 -0
  15. package/skills/design-audit/SKILL.md +305 -0
  16. package/skills/design-audit/examples/audit-report.md +424 -0
  17. package/skills/design-audit/references/scoring-rubric.md +498 -0
  18. package/skills/design-md/README.md +106 -0
  19. package/skills/design-md/SKILL.md +262 -0
  20. package/skills/design-md/examples/bad-design.md +195 -0
  21. package/skills/design-md/examples/good-design.md +250 -0
  22. package/skills/design-md/references/design-md-spec.md +267 -0
  23. package/skills/design-md/scripts/validate.sh +134 -0
  24. package/skills/ui-builder/README.md +169 -0
  25. package/skills/ui-builder/SKILL.md +357 -0
  26. package/skills/ui-builder/examples/dashboard.md +323 -0
  27. package/skills/ui-builder/examples/landing-page.md +396 -0
  28. package/skills/ui-builder/references/component-patterns.md +396 -0
  29. package/skills/ui-builder/references/layout-system.md +423 -0
  30. package/skills/ui-builder/references/polish-checklist.md +221 -0
@@ -0,0 +1,262 @@
1
+ # design-md
2
+
3
+ ## Description
4
+
5
+ Generate and validate DESIGN.md files following Google's open-source design system standard. DESIGN.md defines design tokens (colors, typography, spacing, shadows) that ensure consistent UI across projects.
6
+
7
+ ## Trigger
8
+
9
+ Use this skill when:
10
+ - User asks to create a design system
11
+ - User wants to generate DESIGN.md
12
+ - User needs to validate an existing DESIGN.md
13
+ - User says "create design tokens" or "set up design system"
14
+
15
+ ## Instructions
16
+
17
+ ### Step 1: Understand the Project
18
+
19
+ Before generating DESIGN.md, understand:
20
+ - Project type (dashboard, landing page, ecommerce, etc.)
21
+ - Brand colors (if provided)
22
+ - Target audience
23
+ - Platform (web, mobile, both)
24
+
25
+ ### Step 2: Generate DESIGN.md
26
+
27
+ Create a DESIGN.md file with these sections:
28
+
29
+ ```markdown
30
+ # [Project Name] Design System
31
+
32
+ ## Overview
33
+ Brief description of the design system.
34
+
35
+ ## Colors
36
+
37
+ ### Primary Palette
38
+ - primary-50: #eff6ff
39
+ - primary-100: #dbeafe
40
+ - primary-200: #bfdbfe
41
+ - primary-300: #93c5fd
42
+ - primary-400: #60a5fa
43
+ - primary-500: #3b82f6
44
+ - primary-600: #2563eb
45
+ - primary-700: #1d4ed8
46
+ - primary-800: #1e40af
47
+ - primary-900: #1e3a8a
48
+
49
+ ### Neutral Palette
50
+ - neutral-50: #fafafa
51
+ - neutral-100: #f4f4f5
52
+ - neutral-200: #e4e4e7
53
+ - neutral-300: #d4d4d8
54
+ - neutral-400: #a1a1aa
55
+ - neutral-500: #71717a
56
+ - neutral-600: #52525b
57
+ - neutral-700: #3f3f46
58
+ - neutral-800: #27272a
59
+ - neutral-900: #18181b
60
+
61
+ ### Semantic Colors
62
+ - success: #22c55e
63
+ - warning: #f59e0b
64
+ - error: #ef4444
65
+ - info: #3b82f6
66
+
67
+ ## Typography
68
+
69
+ ### Font Family
70
+ - Headings: Inter, system-ui, sans-serif
71
+ - Body: Inter, system-ui, sans-serif
72
+ - Mono: JetBrains Mono, monospace
73
+
74
+ ### Type Scale
75
+ - display-lg: 36px / 40px / 700 weight
76
+ - display-md: 30px / 36px / 700 weight
77
+ - display-sm: 24px / 32px / 600 weight
78
+ - heading-lg: 20px / 28px / 600 weight
79
+ - heading-md: 16px / 24px / 600 weight
80
+ - heading-sm: 14px / 20px / 600 weight
81
+ - body-lg: 16px / 24px / 400 weight
82
+ - body-md: 14px / 20px / 400 weight
83
+ - body-sm: 12px / 16px / 400 weight
84
+ - code: 14px / 20px / 400 weight
85
+
86
+ ## Spacing
87
+
88
+ - xs: 4px
89
+ - sm: 8px
90
+ - md: 16px
91
+ - lg: 24px
92
+ - xl: 32px
93
+ - 2xl: 48px
94
+ - 3xl: 64px
95
+
96
+ ## Borders
97
+
98
+ - radius-sm: 4px
99
+ - radius-md: 8px
100
+ - radius-lg: 12px
101
+ - radius-xl: 16px
102
+ - radius-full: 9999px
103
+
104
+ ## Shadows
105
+
106
+ - shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05)
107
+ - shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)
108
+ - shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)
109
+ - shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)
110
+
111
+ ## Breakpoints
112
+
113
+ - sm: 640px
114
+ - md: 768px
115
+ - lg: 1024px
116
+ - xl: 1280px
117
+ - 2xl: 1536px
118
+
119
+ ## Components
120
+
121
+ ### Button
122
+ - Primary: primary-600 bg, white text, radius-md
123
+ - Secondary: neutral-100 bg, neutral-900 text, radius-md
124
+ - Ghost: transparent bg, neutral-600 text, radius-md
125
+
126
+ ### Card
127
+ - Background: white
128
+ - Border: neutral-200
129
+ - Radius: lg
130
+ - Shadow: md
131
+ - Padding: lg
132
+
133
+ ### Input
134
+ - Background: white
135
+ - Border: neutral-300
136
+ - Focus border: primary-500
137
+ - Radius: md
138
+ - Padding: sm md
139
+
140
+ ### Navigation
141
+ - Background: white
142
+ - Border bottom: neutral-200
143
+ - Height: 64px
144
+ ```
145
+
146
+ ### Step 3: Validate DESIGN.md
147
+
148
+ Check the DESIGN.md for:
149
+ - All required sections present
150
+ - Color values are valid hex
151
+ - Typography has font families and sizes
152
+ - Spacing is consistent
153
+ - Breakpoints are standard
154
+
155
+ ### Step 4: Convert to Tailwind Config
156
+
157
+ Generate a tailwind.config.js that uses the DESIGN.md tokens:
158
+
159
+ ```javascript
160
+ /** @type {import('tailwindcss').Config} */
161
+ module.exports = {
162
+ content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'],
163
+ theme: {
164
+ extend: {
165
+ colors: {
166
+ primary: {
167
+ 50: '#eff6ff',
168
+ 100: '#dbeafe',
169
+ // ... all values from DESIGN.md
170
+ },
171
+ neutral: {
172
+ 50: '#fafafa',
173
+ // ... all values from DESIGN.md
174
+ },
175
+ },
176
+ fontFamily: {
177
+ sans: ['Inter', 'system-ui', 'sans-serif'],
178
+ mono: ['JetBrains Mono', 'monospace'],
179
+ },
180
+ fontSize: {
181
+ 'display-lg': ['36px', { lineHeight: '40px', fontWeight: '700' }],
182
+ // ... all values from DESIGN.md
183
+ },
184
+ spacing: {
185
+ xs: '4px',
186
+ sm: '8px',
187
+ md: '16px',
188
+ lg: '24px',
189
+ xl: '32px',
190
+ '2xl': '48px',
191
+ '3xl': '64px',
192
+ },
193
+ borderRadius: {
194
+ sm: '4px',
195
+ md: '8px',
196
+ lg: '12px',
197
+ xl: '16px',
198
+ full: '9999px',
199
+ },
200
+ boxShadow: {
201
+ sm: '0 1px 2px 0 rgb(0 0 0 / 0.05)',
202
+ md: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',
203
+ lg: '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',
204
+ xl: '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',
205
+ },
206
+ },
207
+ },
208
+ plugins: [],
209
+ }
210
+ ```
211
+
212
+ ## Examples
213
+
214
+ ### Example 1: Dashboard Design System
215
+
216
+ **Input:**
217
+ "Create a design system for a dark-themed analytics dashboard"
218
+
219
+ **Output:**
220
+ ```markdown
221
+ # Analytics Dashboard Design System
222
+
223
+ ## Colors
224
+ - background: #09090b (zinc-950)
225
+ - surface: #18181b (zinc-900)
226
+ - border: #27272a (zinc-800)
227
+ - text-primary: #fafafa (zinc-50)
228
+ - text-secondary: #a1a1aa (zinc-400)
229
+ - accent: #3b82f6 (blue-500)
230
+ ```
231
+
232
+ ### Example 2: Ecommerce Design System
233
+
234
+ **Input:**
235
+ "Generate a design system for a modern ecommerce site"
236
+
237
+ **Output:**
238
+ ```markdown
239
+ # Ecommerce Design System
240
+
241
+ ## Colors
242
+ - background: #ffffff (white)
243
+ - surface: #f9fafb (gray-50)
244
+ - border: #e5e7eb (gray-200)
245
+ - primary: #111827 (gray-900)
246
+ - accent: #2563eb (blue-600)
247
+ - success: #059669 (emerald-600)
248
+ ```
249
+
250
+ ## References
251
+
252
+ - [Google DESIGN.md Spec](https://github.com/google-labs-code/design.md)
253
+ - [Tailwind CSS Documentation](https://tailwindcss.com/docs)
254
+ - [shadcn/ui](https://ui.shadcn.com/)
255
+
256
+ ## Validation Rules
257
+
258
+ 1. **Colors**: Must be valid hex (#RRGGBB or #RRGGBBAA)
259
+ 2. **Typography**: Must include font-family, size, line-height, weight
260
+ 3. **Spacing**: Must be consistent unit (px, rem, or em)
261
+ 4. **Breakpoints**: Must follow mobile-first approach
262
+ 5. **Components**: Must define variant styles
@@ -0,0 +1,195 @@
1
+ # Bad DESIGN.md Examples (What NOT To Do)
2
+
3
+ ## ❌ Example 1: Incomplete Design System
4
+
5
+ ```markdown
6
+ # My Design System
7
+
8
+ ## Colors
9
+ - blue: #3b82f6
10
+ - red: #ef4444
11
+ - green: #22c55e
12
+
13
+ ## Font
14
+ - font: Inter
15
+ ```
16
+
17
+ ### Why This Is Bad:
18
+ ❌ No color hierarchy (no shades)
19
+ ❌ No semantic meaning for colors
20
+ ❌ No typography scale
21
+ ❌ No spacing system
22
+ ❌ No component definitions
23
+ ❌ Missing essential sections
24
+
25
+ ---
26
+
27
+ ## ❌ Example 2: Too Many Colors
28
+
29
+ ```markdown
30
+ # Rainbow Design System
31
+
32
+ ## Colors
33
+ - red: #ff0000
34
+ - orange: #ff8800
35
+ - yellow: #ffff00
36
+ - green: #00ff00
37
+ - cyan: #00ffff
38
+ - blue: #0000ff
39
+ - purple: #8800ff
40
+ - pink: #ff00ff
41
+ - maroon: #800000
42
+ - olive: #808000
43
+ - lime: #00ff00
44
+ - aqua: #00ffff
45
+ - teal: #008080
46
+ - navy: #000080
47
+ - fuchsia: #ff00ff
48
+ ```
49
+
50
+ ### Why This Is Bad:
51
+ ❌ Too many colors (overwhelming)
52
+ ❌ No primary/secondary hierarchy
53
+ ❌ No semantic meaning
54
+ ❌ Hard to maintain
55
+ ❌ Inconsistent naming
56
+
57
+ ---
58
+
59
+ ## ❌ Example 3: Inconsistent Spacing
60
+
61
+ ```markdown
62
+ # Spacing System
63
+
64
+ ## Sizes
65
+ - tiny: 3px
66
+ - small: 7px
67
+ - medium: 15px
68
+ - large: 23px
69
+ - huge: 41px
70
+ - massive: 67px
71
+ ```
72
+
73
+ ### Why This Is Bad:
74
+ ❌ Inconsistent values (not on a grid)
75
+ ❌ Arbitrary names
76
+ ❌ Not following standard scale (4, 8, 16, 24, etc.)
77
+ ❌ Hard to remember
78
+
79
+ ---
80
+
81
+ ## ❌ Example 4: No Typography Scale
82
+
83
+ ```markdown
84
+ # Typography
85
+
86
+ ## Font
87
+ - font: Inter
88
+
89
+ ## Sizes
90
+ - small: 12px
91
+ - medium: 16px
92
+ - large: 20px
93
+ - extra large: 24px
94
+ - huge: 32px
95
+ ```
96
+
97
+ ### Why This Is Bad:
98
+ ❌ No line-height defined
99
+ ❌ No font-weight defined
100
+ ❌ No font-family for different contexts
101
+ ❌ Not following type scale ratio
102
+ ❌ Missing code/mono font
103
+
104
+ ---
105
+
106
+ ## ❌ Example 5: Missing Dark Theme
107
+
108
+ ```markdown
109
+ # Light Theme Only
110
+
111
+ ## Colors
112
+ - background: #ffffff
113
+ - text: #000000
114
+ - primary: #007bff
115
+ - secondary: #6c757d
116
+ ```
117
+
118
+ ### Why This Is Bad:
119
+ ❌ No dark theme support
120
+ ❌ No semantic colors (success, error, warning)
121
+ ❌ No neutral palette
122
+ ❌ Limited use cases
123
+
124
+ ---
125
+
126
+ ## ❌ Example 6: Random Breakpoints
127
+
128
+ ```markdown
129
+ # Breakpoints
130
+
131
+ ## Sizes
132
+ - xs: 320px
133
+ - sm: 480px
134
+ - md: 600px
135
+ - lg: 768px
136
+ - xl: 900px
137
+ - xxl: 1024px
138
+ - xxxl: 1200px
139
+ - huge: 1440px
140
+ ```
141
+
142
+ ### Why This Is Bad:
143
+ ❌ Non-standard breakpoints
144
+ ❌ Too many breakpoints
145
+ ❌ Not mobile-first
146
+ ❌ Hard to remember
147
+ ❌ Inconsistent naming
148
+
149
+ ---
150
+
151
+ ## ❌ Example 7: No Component Tokens
152
+
153
+ ```markdown
154
+ # Design System
155
+
156
+ ## Colors
157
+ - primary: #3b82f6
158
+ - background: #ffffff
159
+
160
+ ## Typography
161
+ - font: Inter
162
+ - size: 16px
163
+ ```
164
+
165
+ ### Why This Is Bad:
166
+ ❌ No component-specific tokens
167
+ ❌ No button styles
168
+ ❌ No card styles
169
+ ❌ No input styles
170
+ ❌ Forces developers to guess
171
+
172
+ ---
173
+
174
+ ## Summary: What Makes a Bad DESIGN.md
175
+
176
+ | Issue | Impact |
177
+ |-------|--------|
178
+ | Missing sections | Incomplete design system |
179
+ | Too many colors | Visual chaos |
180
+ | Inconsistent spacing | Unpredictable layouts |
181
+ | No typography scale | Inconsistent text |
182
+ | No dark theme | Limited use cases |
183
+ | Random breakpoints | Responsive chaos |
184
+ | No component tokens | Developer confusion |
185
+
186
+ ---
187
+
188
+ ## How To Fix
189
+
190
+ 1. **Add all required sections** (Colors, Typography, Spacing, etc.)
191
+ 2. **Use consistent naming** (primary-500, neutral-100, etc.)
192
+ 3. **Follow standard scales** (4, 8, 16, 24 for spacing)
193
+ 4. **Include dark theme** (background-dark, text-dark, etc.)
194
+ 5. **Define component tokens** (button-primary, card-bg, etc.)
195
+ 6. **Use standard breakpoints** (sm: 640, md: 768, lg: 1024)
@@ -0,0 +1,250 @@
1
+ # Good DESIGN.md Examples
2
+
3
+ ## Example 1: Dark Dashboard
4
+
5
+ ```markdown
6
+ # Analytics Dashboard Design System
7
+
8
+ ## Overview
9
+ Dark-themed analytics dashboard for data visualization.
10
+ Optimized for long viewing sessions with reduced eye strain.
11
+
12
+ ## Colors
13
+
14
+ ### Background
15
+ - background-primary: #09090b (zinc-950)
16
+ - background-secondary: #18181b (zinc-900)
17
+ - background-tertiary: #27272a (zinc-800)
18
+
19
+ ### Text
20
+ - text-primary: #fafafa (zinc-50)
21
+ - text-secondary: #a1a1aa (zinc-400)
22
+ - text-tertiary: #71717a (zinc-500)
23
+
24
+ ### Borders
25
+ - border-primary: #27272a (zinc-800)
26
+ - border-secondary: #3f3f46 (zinc-700)
27
+
28
+ ### Accent
29
+ - accent-primary: #3b82f6 (blue-500)
30
+ - accent-hover: #2563eb (blue-600)
31
+
32
+ ### Semantic
33
+ - success: #22c55e (green-500)
34
+ - warning: #f59e0b (amber-500)
35
+ - error: #ef4444 (red-500)
36
+
37
+ ## Typography
38
+
39
+ ### Font Family
40
+ - headings: Inter, system-ui, sans-serif
41
+ - body: Inter, system-ui, sans-serif
42
+ - mono: JetBrains Mono, monospace
43
+
44
+ ### Type Scale
45
+ - display: 30px / 36px / 700 weight
46
+ - heading-lg: 20px / 28px / 600 weight
47
+ - heading-md: 16px / 24px / 600 weight
48
+ - heading-sm: 14px / 20px / 600 weight
49
+ - body-lg: 16px / 24px / 400 weight
50
+ - body-md: 14px / 20px / 400 weight
51
+ - body-sm: 12px / 16px / 400 weight
52
+ - code: 14px / 20px / 400 weight
53
+
54
+ ## Spacing
55
+ - xs: 4px
56
+ - sm: 8px
57
+ - md: 16px
58
+ - lg: 24px
59
+ - xl: 32px
60
+
61
+ ## Borders
62
+ - radius-sm: 4px
63
+ - radius-md: 8px
64
+ - radius-lg: 12px
65
+
66
+ ## Breakpoints
67
+ - sm: 640px
68
+ - md: 768px
69
+ - lg: 1024px
70
+ ```
71
+
72
+ ### Why This Is Good:
73
+ ✅ Clear color hierarchy (primary, secondary, tertiary)
74
+ ✅ Consistent spacing scale
75
+ ✅ Proper typography with weights
76
+ ✅ Dark theme optimized
77
+ ✅ Semantic colors defined
78
+
79
+ ---
80
+
81
+ ## Example 2: Light SaaS Landing Page
82
+
83
+ ```markdown
84
+ # SaaS Landing Page Design System
85
+
86
+ ## Overview
87
+ Clean, modern landing page for B2B SaaS product.
88
+ Focus on trust signals and conversion.
89
+
90
+ ## Colors
91
+
92
+ ### Background
93
+ - background: #ffffff (white)
94
+ - background-alt: #f9fafb (gray-50)
95
+
96
+ ### Text
97
+ - text-primary: #111827 (gray-900)
98
+ - text-secondary: #6b7280 (gray-500)
99
+ - text-tertiary: #9ca3af (gray-400)
100
+
101
+ ### Primary
102
+ - primary: #2563eb (blue-600)
103
+ - primary-hover: #1d4ed8 (blue-700)
104
+
105
+ ### Secondary
106
+ - secondary: #f3f4f6 (gray-100)
107
+ - secondary-hover: #e5e7eb (gray-200)
108
+
109
+ ### Border
110
+ - border: #e5e7eb (gray-200)
111
+
112
+ ### Semantic
113
+ - success: #059669 (emerald-600)
114
+ - warning: #d97706 (amber-600)
115
+ - error: #dc2626 (red-600)
116
+
117
+ ## Typography
118
+
119
+ ### Font Family
120
+ - headings: Inter, system-ui, sans-serif
121
+ - body: Inter, system-ui, sans-serif
122
+
123
+ ### Type Scale
124
+ - display: 48px / 56px / 700 weight
125
+ - heading-lg: 30px / 36px / 700 weight
126
+ - heading-md: 24px / 32px / 600 weight
127
+ - heading-sm: 20px / 28px / 600 weight
128
+ - body-lg: 18px / 28px / 400 weight
129
+ - body-md: 16px / 24px / 400 weight
130
+ - body-sm: 14px / 20px / 400 weight
131
+
132
+ ## Spacing
133
+ - xs: 4px
134
+ - sm: 8px
135
+ - md: 16px
136
+ - lg: 24px
137
+ - xl: 32px
138
+ - 2xl: 48px
139
+ - 3xl: 64px
140
+ - 4xl: 96px
141
+
142
+ ## Borders
143
+ - radius-sm: 4px
144
+ - radius-md: 8px
145
+ - radius-lg: 12px
146
+ - radius-xl: 16px
147
+ - radius-full: 9999px
148
+
149
+ ## Shadows
150
+ - shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05)
151
+ - shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)
152
+ - shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)
153
+
154
+ ## Breakpoints
155
+ - sm: 640px
156
+ - md: 768px
157
+ - lg: 1024px
158
+ - xl: 1280px
159
+
160
+ ## Components
161
+
162
+ ### Button
163
+ - Primary: primary bg, white text, radius-full, padding 12px 24px
164
+ - Secondary: secondary bg, text-primary text, radius-full, padding 12px 24px
165
+ - Ghost: transparent bg, text-primary text, radius-full, padding 12px 24px
166
+
167
+ ### Card
168
+ - Background: white
169
+ - Border: border
170
+ - Radius: lg
171
+ - Shadow: md
172
+ - Padding: lg
173
+
174
+ ### Badge
175
+ - Background: primary with 10% opacity
176
+ - Text: primary
177
+ - Radius: full
178
+ - Padding: 4px 12px
179
+ ```
180
+
181
+ ### Why This Is Good:
182
+ ✅ Light theme optimized
183
+ ✅ Clear visual hierarchy
184
+ ✅ Generous spacing for landing page
185
+ ✅ Component variants defined
186
+ ✅ Conversion-focused (trust signals)
187
+
188
+ ---
189
+
190
+ ## Example 3: Mobile-First App
191
+
192
+ ```markdown
193
+ # Mobile App Design System
194
+
195
+ ## Overview
196
+ iOS/Android mobile app design system.
197
+ Optimized for touch interactions and small screens.
198
+
199
+ ## Colors
200
+
201
+ ### Background
202
+ - background: #ffffff (white)
203
+ - background-secondary: #f9fafb (gray-50)
204
+
205
+ ### Text
206
+ - text-primary: #111827 (gray-900)
207
+ - text-secondary: #6b7280 (gray-500)
208
+
209
+ ### Primary
210
+ - primary: #8b5cf6 (violet-500)
211
+ - primary-hover: #7c3aed (violet-600)
212
+
213
+ ### Border
214
+ - border: #e5e7eb (gray-200)
215
+
216
+ ## Typography
217
+
218
+ ### Font Family
219
+ - body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif
220
+
221
+ ### Type Scale
222
+ - heading-lg: 28px / 34px / 700 weight
223
+ - heading-md: 22px / 28px / 600 weight
224
+ - heading-sm: 18px / 24px / 600 weight
225
+ - body-lg: 17px / 24px / 400 weight
226
+ - body-md: 15px / 22px / 400 weight
227
+ - body-sm: 13px / 18px / 400 weight
228
+
229
+ ## Spacing
230
+ - xs: 4px
231
+ - sm: 8px
232
+ - md: 16px
233
+ - lg: 24px
234
+ - xl: 32px
235
+
236
+ ## Touch Targets
237
+ - minimum: 44px x 44px
238
+ - comfortable: 48px x 48px
239
+
240
+ ## Breakpoints
241
+ - sm: 375px (iPhone SE)
242
+ - md: 390px (iPhone 14)
243
+ - lg: 428px (iPhone 14 Pro Max)
244
+ ```
245
+
246
+ ### Why This Is Good:
247
+ ✅ Mobile-specific touch targets
248
+ ✅ System font stack for performance
249
+ ✅ Larger body text for readability
250
+ ✅ Proper spacing for thumbs