@equal-experts/kuat-react 0.13.0 → 0.13.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 (150) hide show
  1. package/agent-docs/AGENTS.md +10 -0
  2. package/agent-docs/README.md +17 -0
  3. package/agent-docs/bundle-manifest.json +63 -0
  4. package/agent-docs/components/_template.md +21 -0
  5. package/agent-docs/components/button-group.md +27 -0
  6. package/agent-docs/components/button.md +50 -0
  7. package/agent-docs/components/components.manifest.json +20 -0
  8. package/agent-docs/components/kuat-header.md +27 -0
  9. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/LOADING.md +166 -0
  10. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/accessibility.md +444 -0
  11. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/brand.md +99 -0
  12. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/content/README.md +28 -0
  13. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/content/formatting.md +93 -0
  14. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/content/numbers.md +69 -0
  15. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/content/punctuation.md +75 -0
  16. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/content/voice-and-tone.md +263 -0
  17. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/content/writing-style.md +91 -0
  18. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/design/README.md +28 -0
  19. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/design/borders.md +159 -0
  20. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/design/colours.md +173 -0
  21. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/design/design-language.md +116 -0
  22. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/design/spacing.md +130 -0
  23. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/design/typography.md +155 -0
  24. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/foundations/logo.md +151 -0
  25. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/content/README.md +26 -0
  26. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/content/blog-posts.md +33 -0
  27. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/content/marketing-content.md +65 -0
  28. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/content/seo.md +44 -0
  29. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/emails.md +74 -0
  30. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/scenarios/README.md +18 -0
  31. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/scenarios/marketing-pages.md +368 -0
  32. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/marketing/website.md +169 -0
  33. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/DEPRECATIONS.md +28 -0
  34. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/README.md +65 -0
  35. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/accessibility.md +402 -0
  36. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/component-decision-tree.md +263 -0
  37. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/component-registry.md +68 -0
  38. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/README.md +29 -0
  39. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/actions.md +51 -0
  40. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/confirmations.md +57 -0
  41. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/empty-states.md +43 -0
  42. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/errors.md +54 -0
  43. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/forms.md +74 -0
  44. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/content/product-content.md +138 -0
  45. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/design.md +207 -0
  46. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/emails.md +71 -0
  47. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/review-checklist.md +57 -0
  48. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/review-context.md +44 -0
  49. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/scenarios/README.md +82 -0
  50. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/scenarios/authentication.md +303 -0
  51. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/scenarios/dashboards.md +313 -0
  52. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/scenarios/documentation.md +333 -0
  53. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/scenarios/forms.md +361 -0
  54. package/agent-docs/external/kuat-agent-rules/kuat-docs/rules/types/web/product/technical.md +488 -0
  55. package/agent-docs/kuat-docs/rules/README.md +148 -0
  56. package/agent-docs/kuat-docs/rules/design/layouts.md +394 -0
  57. package/agent-docs/kuat-docs/rules/scenarios/README.md +83 -0
  58. package/agent-docs/kuat-docs/rules/scenarios/authentication.md +301 -0
  59. package/agent-docs/kuat-docs/rules/scenarios/dashboards.md +314 -0
  60. package/agent-docs/kuat-docs/rules/scenarios/documentation.md +333 -0
  61. package/agent-docs/kuat-docs/rules/scenarios/forms.md +359 -0
  62. package/agent-docs/kuat-docs/rules/scenarios/marketing-pages.md +367 -0
  63. package/agent-docs/manifest.json +9 -0
  64. package/agent-docs/rules/LOADING-consumer.md +27 -0
  65. package/dist/accordion.d.ts +2 -0
  66. package/dist/alert-dialog.d.ts +2 -0
  67. package/dist/badge.d.ts +3 -0
  68. package/dist/button-group.d.ts +2 -0
  69. package/dist/button.d.ts +3 -0
  70. package/dist/carousel.d.ts +2 -0
  71. package/dist/checkbox.d.ts +3 -0
  72. package/dist/components/ui/accordion/accordion.d.ts +7 -0
  73. package/dist/components/ui/accordion/index.d.ts +1 -0
  74. package/dist/components/ui/alert-dialog/alert-dialog.d.ts +20 -0
  75. package/dist/components/ui/alert-dialog/index.d.ts +1 -0
  76. package/dist/components/ui/badge/badge.d.ts +16 -0
  77. package/dist/components/ui/badge/index.d.ts +2 -0
  78. package/dist/components/ui/breadcrumb/Breadcrumb.d.ts +29 -0
  79. package/dist/components/ui/breadcrumb/breadcrumb-primitives.d.ts +19 -0
  80. package/dist/components/ui/breadcrumb/index.d.ts +4 -0
  81. package/dist/components/ui/button/button.d.ts +27 -0
  82. package/dist/components/ui/button/index.d.ts +2 -0
  83. package/dist/components/ui/button-group/button-group.d.ts +23 -0
  84. package/dist/components/ui/button-group/index.d.ts +2 -0
  85. package/dist/components/ui/carousel/carousel.d.ts +50 -0
  86. package/dist/components/ui/carousel/index.d.ts +2 -0
  87. package/dist/components/ui/checkbox/checkbox-field.d.ts +23 -0
  88. package/dist/components/ui/checkbox/checkbox.d.ts +5 -0
  89. package/dist/components/ui/checkbox/index.d.ts +4 -0
  90. package/dist/components/ui/content-card/content-card.d.ts +29 -0
  91. package/dist/components/ui/content-card/index.d.ts +2 -0
  92. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +27 -0
  93. package/dist/components/ui/dropdown-menu/index.d.ts +1 -0
  94. package/dist/components/ui/ee-logo-icon/ee-logo-icon.d.ts +11 -0
  95. package/dist/components/ui/ee-logo-icon/index.d.ts +2 -0
  96. package/dist/components/ui/field/field.d.ts +28 -0
  97. package/dist/components/ui/field/index.d.ts +2 -0
  98. package/dist/components/ui/icon-button/icon-button.d.ts +27 -0
  99. package/dist/components/ui/icon-button/index.d.ts +2 -0
  100. package/dist/components/ui/input/index.d.ts +2 -0
  101. package/dist/components/ui/input/input.d.ts +20 -0
  102. package/dist/components/ui/kuat-carousel/index.d.ts +2 -0
  103. package/dist/components/ui/kuat-carousel/kuat-carousel.d.ts +16 -0
  104. package/dist/components/ui/kuat-header/index.d.ts +4 -0
  105. package/dist/components/ui/kuat-header/kuat-header.d.ts +16 -0
  106. package/dist/components/ui/kuat-header/kuat-header.logic.d.ts +32 -0
  107. package/dist/components/ui/kuat-header/kuat-header.types.d.ts +91 -0
  108. package/dist/components/ui/kuat-logo-lockup/index.d.ts +2 -0
  109. package/dist/components/ui/kuat-logo-lockup/kuat-logo-lockup.d.ts +17 -0
  110. package/dist/components/ui/kuat-radial-progress/index.d.ts +2 -0
  111. package/dist/components/ui/kuat-radial-progress/kuat-radial-progress.d.ts +16 -0
  112. package/dist/components/ui/radio/index.d.ts +4 -0
  113. package/dist/components/ui/radio/radio-field.d.ts +25 -0
  114. package/dist/components/ui/radio/radio.d.ts +7 -0
  115. package/dist/components/ui/select/constants.d.ts +19 -0
  116. package/dist/components/ui/select/index.d.ts +3 -0
  117. package/dist/components/ui/select/select.d.ts +53 -0
  118. package/dist/components/ui/separator/index.d.ts +2 -0
  119. package/dist/components/ui/separator/separator.d.ts +9 -0
  120. package/dist/components/ui/sonner/index.d.ts +4 -0
  121. package/dist/components/ui/sonner/sonner-content.d.ts +15 -0
  122. package/dist/components/ui/sonner/sonner.d.ts +21 -0
  123. package/dist/components/ui/switch/index.d.ts +4 -0
  124. package/dist/components/ui/switch/switch-field.d.ts +23 -0
  125. package/dist/components/ui/switch/switch.d.ts +5 -0
  126. package/dist/components/ui/textarea/index.d.ts +2 -0
  127. package/dist/components/ui/textarea/textarea.d.ts +9 -0
  128. package/dist/components/ui/toggle/constants.d.ts +4 -0
  129. package/dist/components/ui/toggle/index.d.ts +6 -0
  130. package/dist/components/ui/toggle/toggle-group.d.ts +11 -0
  131. package/dist/components/ui/toggle/toggle.d.ts +9 -0
  132. package/dist/field.d.ts +3 -0
  133. package/dist/icon-button.d.ts +3 -0
  134. package/dist/index.d.ts +47 -0
  135. package/dist/input.d.ts +3 -0
  136. package/dist/kuat-carousel.d.ts +2 -0
  137. package/dist/kuat-radial-progress.d.ts +7 -0
  138. package/dist/lib/react-node-compat.d.ts +7 -0
  139. package/dist/lib/utils.d.ts +3 -0
  140. package/dist/radio.d.ts +3 -0
  141. package/dist/select.d.ts +3 -0
  142. package/dist/sonner.d.ts +1 -0
  143. package/dist/style.css +1 -1
  144. package/dist/style.css.d.ts +2 -0
  145. package/dist/switch.d.ts +1 -0
  146. package/dist/test/setup.d.ts +1 -0
  147. package/dist/textarea.d.ts +3 -0
  148. package/dist/toggle-group.d.ts +3 -0
  149. package/dist/toggle.d.ts +3 -0
  150. package/package.json +4 -2
@@ -0,0 +1,173 @@
1
+ # Colour Rules
2
+
3
+ Brand color specifications for Equal Experts. This document defines the brand colors, palette scales, and usage guidelines.
4
+
5
+ ---
6
+
7
+ ## Brand Colors
8
+
9
+ Equal Experts uses four core brand color palettes:
10
+
11
+ ### EE Blue (Primary)
12
+
13
+ **Purpose:** Trust, professionalism, technology
14
+ **Value:** `oklch(0.645 0.163 237.5)` / `#0066CC`
15
+
16
+ **Use for:**
17
+ - Primary actions and CTAs
18
+ - Brand identity elements
19
+ - Key highlights and focus states
20
+ - Links and interactive elements
21
+
22
+ ### Transform Teal (Secondary)
23
+
24
+ **Purpose:** Transformation, growth, innovation
25
+ **Value:** `oklch(0.645 0.120 185.0)`
26
+
27
+ **Use for:**
28
+ - Secondary actions
29
+ - Accent elements and badges
30
+ - Success indicators
31
+ - Data visualization (secondary)
32
+
33
+ ### Tech Blue (Supporting)
34
+
35
+ **Purpose:** Technical, professional, structural
36
+ **Value:** `oklch(0.435 0.090 240.0)`
37
+
38
+ **Use for:**
39
+ - Dark backgrounds
40
+ - Navigation areas
41
+ - Technical interfaces
42
+ - Depth and structure
43
+
44
+ ### Equal Ember (Accent)
45
+
46
+ **Purpose:** Energy, warmth, attention
47
+ **Value:** `oklch(0.625 0.200 65.0)`
48
+
49
+ **Use for:**
50
+ - Special highlights (use sparingly)
51
+ - Warning states
52
+ - Attention-grabbing elements
53
+ - Call-to-action emphasis
54
+
55
+ ---
56
+
57
+ ## Brand Color Palette Scale
58
+
59
+ Each brand color has a scale from 50 (lightest) to 950 (darkest):
60
+
61
+ | Range | Usage |
62
+ |-------|-------|
63
+ | 50-200 | Light backgrounds, subtle accents, hover states |
64
+ | 300-500 | Primary brand colors, main actions |
65
+ | 600-800 | Darker variants for depth and contrast |
66
+ | 900-950 | Maximum depth, dark mode, high contrast |
67
+
68
+ ---
69
+
70
+ ## Neutral Colors
71
+
72
+ For text, backgrounds, and UI elements:
73
+
74
+ | Color | Usage |
75
+ |-------|-------|
76
+ | White | Light backgrounds, text on dark |
77
+ | Slate-50 to Slate-200 | Light backgrounds, subtle borders |
78
+ | Slate-300 to Slate-500 | Secondary text, dividers |
79
+ | Slate-600 to Slate-800 | Primary text (light mode) |
80
+ | Slate-900 to Slate-950 | Headings, dark backgrounds |
81
+ | Black | Maximum contrast, specific uses |
82
+
83
+ ---
84
+
85
+ ## Color Format
86
+
87
+ All colors use **OKLCH** color space:
88
+
89
+ ```
90
+ oklch(lightness chroma hue)
91
+ ```
92
+
93
+ **Benefits:**
94
+ - Perceptual uniformity (equal changes = equal perception)
95
+ - Better color manipulation for consistent scales
96
+ - Modern format with excellent support
97
+
98
+ **Hex values** are provided for tools that don't support OKLCH.
99
+
100
+ ---
101
+
102
+ ## Light and Dark Mode
103
+
104
+ Colors should adapt for light and dark contexts:
105
+
106
+ **Light Mode (default):**
107
+ - Light backgrounds (white, light gray)
108
+ - Dark text (slate-900, slate-950)
109
+ - Brand colors at standard values
110
+
111
+ **Dark Mode:**
112
+ - Dark backgrounds (slate-900, slate-950)
113
+ - Light text (white, slate-100)
114
+ - Brand colors remain consistent
115
+ - Supporting colors adapt for contrast
116
+
117
+ ---
118
+
119
+ ## Accessibility Requirements
120
+
121
+ All color combinations must meet **WCAG AA** standards:
122
+
123
+ | Content Type | Minimum Contrast |
124
+ |--------------|------------------|
125
+ | Normal text (14px and below) | 4.5:1 |
126
+ | Large text (18px+ or 14px+ bold) | 3:1 |
127
+ | Graphical objects/borders | 3:1 |
128
+
129
+ **Approved Combinations:**
130
+ - Dark text on light backgrounds ✓
131
+ - White text on EE Blue ✓
132
+ - White text on Tech Blue ✓
133
+ - White text on Transform Teal ✓
134
+ - Dark text on Equal Ember (check contrast) ✓
135
+
136
+ ---
137
+
138
+ ## Usage Guidelines
139
+
140
+ ### Do's
141
+
142
+ 1. **Use brand colors consistently** - EE Blue for primary, Transform Teal for secondary
143
+ 2. **Pair colors correctly** - Ensure sufficient contrast for text
144
+ 3. **Support light and dark contexts** - Colors work in both modes
145
+ 4. **Respect brand hierarchy** - Primary for main actions, secondary for alternatives
146
+ 5. **Verify accessibility** - Always check contrast ratios
147
+
148
+ ### Don'ts
149
+
150
+ 1. **Don't use non-brand colors** - Stick to the defined palette
151
+ 2. **Don't mix brand colors inappropriately** - Each has a specific purpose
152
+ 3. **Don't break accessibility** - Always verify contrast ratios
153
+ 4. **Don't create custom variations** - Use only defined palette values
154
+ 5. **Don't use color alone to convey meaning** - Combine with text, icons, patterns
155
+
156
+ ---
157
+
158
+ ## Platform-Specific Implementation
159
+
160
+ For platform-specific color usage:
161
+
162
+ - **Web** - See [types/web/](../types/web/) for CSS variables and tokens
163
+ - **Slides** - See [types/slides/](../types/slides/)
164
+ - **Graphics** - See [types/graphics/](../types/graphics/)
165
+ - **Charts** - See [types/charts-data/](../types/charts-data/)
166
+
167
+ ---
168
+
169
+ ## Related Documentation
170
+
171
+ - [Brand Guidelines](./brand.md) - Brand principles
172
+ - [Typography](./typography.md) - Font colors and text styling
173
+ - [Logo](./logo.md) - Logo color variants
@@ -0,0 +1,116 @@
1
+ # Design Language
2
+
3
+ High-level design principles for Equal Experts. This document provides the foundation for all visual design decisions.
4
+
5
+ ---
6
+
7
+ ## Overview
8
+
9
+ The Equal Experts design language ensures consistent, accessible, and brand-compliant outputs across all media types - web, slides, graphics, photography, and more.
10
+
11
+ ---
12
+
13
+ ## Design Principles
14
+
15
+ ### 1. Consistency
16
+
17
+ Use design tokens everywhere. Never use arbitrary values for colors, spacing, or typography.
18
+
19
+ **Why:** Consistency builds brand recognition and reduces cognitive load.
20
+
21
+ ### 2. Accessibility
22
+
23
+ WCAG AA compliance minimum. All color combinations, interactive elements, and content must be accessible.
24
+
25
+ **Why:** Everyone should be able to access and use Equal Experts materials.
26
+
27
+ ### 3. Simplicity
28
+
29
+ Minimal borders, clear hierarchy through spacing. Prefer simple solutions over complex ones.
30
+
31
+ **Why:** Simplicity communicates confidence and professionalism.
32
+
33
+ ### 4. Clarity
34
+
35
+ Content-first design. Design serves content; never decorate at the expense of clarity.
36
+
37
+ **Why:** Clear communication is more valuable than visual flourish.
38
+
39
+ ### 5. Flexibility
40
+
41
+ Support different contexts - light/dark, print/digital, large/small formats.
42
+
43
+ **Why:** Brand materials must work across many platforms and use cases.
44
+
45
+ ---
46
+
47
+ ## Design Token Categories
48
+
49
+ | Category | What It Defines | Documentation |
50
+ |----------|-----------------|---------------|
51
+ | Colors | Brand colors, palette scales, usage | [colours.md](./colours.md) |
52
+ | Typography | Fonts, sizes, weights, hierarchy | [typography.md](./typography.md) |
53
+ | Spacing | Padding, margin, gaps, relationships | [spacing.md](./spacing.md) |
54
+ | Borders | Widths, styles, radius, colors | [borders.md](./borders.md) |
55
+ | Logo | Usage, sizing, variants, placement | [logo.md](../logo.md) |
56
+
57
+ ---
58
+
59
+ ## Accessibility Standards
60
+
61
+ The design language adheres to **WCAG 2.1 Level AA**:
62
+
63
+ | Requirement | Standard |
64
+ |-------------|----------|
65
+ | Text contrast | 4.5:1 minimum |
66
+ | Large text contrast | 3:1 minimum |
67
+ | Graphical object contrast | 3:1 minimum |
68
+ | Color alone | Never convey meaning through color alone |
69
+
70
+ ---
71
+
72
+ ## Best Practices Summary
73
+
74
+ ### Do's
75
+
76
+ 1. **Use brand colors** - EE Blue, Transform Teal, Tech Blue, Equal Ember
77
+ 2. **Follow the spacing scale** - Use defined values (4, 8, 16, 24, 32, 48px)
78
+ 3. **Use Lexend font** - It's the brand sans-serif
79
+ 4. **Test accessibility** - Verify contrast and readability
80
+ 5. **Use official assets** - Logo files from brand repository
81
+ 6. **Maintain hierarchy** - Clear visual structure
82
+
83
+ ### Don'ts
84
+
85
+ 1. **Don't use arbitrary values** - Always use tokens
86
+ 2. **Don't skip heading levels** - H1 → H2 → H3
87
+ 3. **Don't ignore contrast** - Verify all combinations
88
+ 4. **Don't modify brand assets** - Use as provided
89
+ 5. **Don't overcomplicate** - Simple is better
90
+ 6. **Don't prioritize decoration over clarity** - Content first
91
+
92
+ ---
93
+
94
+ ## Platform-Specific Rules
95
+
96
+ After understanding these general principles, load the appropriate type-specific rules:
97
+
98
+ | Platform | Directory | Description |
99
+ |----------|-----------|-------------|
100
+ | Web | [types/web/](../../types/web/) | Websites and web applications |
101
+ | Slides | [types/slides/](../../types/slides/) | Presentations |
102
+ | Photography | [types/photography/](../../types/photography/) | Photo guidelines |
103
+ | Graphics | [types/graphics/](../../types/graphics/) | Icons, illustrations, infographics |
104
+ | Charts/Data | [types/charts-data/](../../types/charts-data/) | Data visualization |
105
+
106
+ ---
107
+
108
+ ## Related Documentation
109
+
110
+ - [Brand Guidelines](../brand.md) - Brand principles and identity
111
+ - [Logo](../logo.md) - Logo usage guidelines
112
+ - [Colours](./colours.md) - Brand colors
113
+ - [Typography](./typography.md) - Fonts and type scale
114
+ - [Spacing](./spacing.md) - Spacing system
115
+ - [Borders](./borders.md) - Border philosophy
116
+ - [Content](../content/README.md) - Writing style and usage
@@ -0,0 +1,130 @@
1
+ # Spacing Rules
2
+
3
+ Spacing specifications for Equal Experts. This document defines the spacing scale, patterns, and usage guidelines.
4
+
5
+ ---
6
+
7
+ ## Overview
8
+
9
+ The design system uses a **4px base unit** for consistent, predictable spacing.
10
+
11
+ **Key Principle:** Use spacing as the primary tool for visual hierarchy and separation. Prefer spacing over borders when possible.
12
+
13
+ ---
14
+
15
+ ## Spacing Scale
16
+
17
+ Each unit = 4px:
18
+
19
+ | Unit | Pixels | Usage |
20
+ |------|--------|-------|
21
+ | 0 | 0px | No spacing |
22
+ | 0.5 | 2px | Tight spacing, fine adjustments |
23
+ | 1 | 4px | Minimal spacing, tight groups |
24
+ | 1.5 | 6px | Small spacing |
25
+ | 2 | 8px | Small spacing, compact layouts |
26
+ | 3 | 12px | Medium spacing |
27
+ | 4 | 16px | Standard spacing (default) |
28
+ | 5 | 20px | Medium-large spacing |
29
+ | 6 | 24px | Large spacing, section separation |
30
+ | 8 | 32px | Extra large, major sections |
31
+ | 10 | 40px | Very large spacing |
32
+ | 12 | 48px | Maximum spacing, page sections |
33
+ | 16 | 64px | Hero spacing, large sections |
34
+ | 20 | 80px | Maximum hero spacing |
35
+ | 24 | 96px | Ultra large spacing |
36
+
37
+ ---
38
+
39
+ ## Common Spacing Patterns
40
+
41
+ ### Content Padding
42
+
43
+ | Context | Spacing | Pixels |
44
+ |---------|---------|--------|
45
+ | Tight padding | 4 | 16px |
46
+ | Standard padding | 6 | 24px |
47
+ | Large padding | 8 | 32px |
48
+ | Hero/feature areas | 12-16 | 48-64px |
49
+
50
+ ### Section Spacing
51
+
52
+ | Type | Spacing | Pixels |
53
+ |------|---------|--------|
54
+ | Tight (related content) | 4 | 16px |
55
+ | Standard sections | 6 | 24px |
56
+ | Large sections | 8 | 32px |
57
+ | Major page sections | 12 | 48px |
58
+
59
+ ### Element Spacing
60
+
61
+ | Relationship | Spacing | Pixels |
62
+ |--------------|---------|--------|
63
+ | Tightly related elements | 2-4 | 8-16px |
64
+ | Related groups | 6-8 | 24-32px |
65
+ | Distinct sections | 12-16 | 48-64px |
66
+
67
+ ---
68
+
69
+ ## Spacing Relationships
70
+
71
+ Use consistent spacing relationships:
72
+
73
+ | Relationship | Spacing |
74
+ |--------------|---------|
75
+ | Tightly related elements | 8-16px |
76
+ | Component groups | 24-32px |
77
+ | Major sections | 48-64px |
78
+
79
+ **Rule of thumb:** Related items have smaller spacing; distinct sections have larger spacing.
80
+
81
+ ---
82
+
83
+ ## Usage Guidelines
84
+
85
+ ### Do's
86
+
87
+ 1. **Use the spacing scale** - Stick to defined values (4, 8, 12, 16, 24, 32, 48)
88
+ 2. **Prefer spacing over borders** - Create separation with space first
89
+ 3. **Maintain relationships** - Smaller spacing for related items, larger for sections
90
+ 4. **Be consistent** - Same spacing patterns for similar content
91
+ 5. **Use white space intentionally** - It creates visual breathing room
92
+
93
+ ### Don'ts
94
+
95
+ 1. **Don't use arbitrary values** - Never use random pixel values
96
+ 2. **Don't mix spacing systems** - Use only the defined scale
97
+ 3. **Don't overuse spacing** - Excessive spacing breaks visual flow
98
+ 4. **Don't ignore hierarchy** - Spacing communicates relationships
99
+ 5. **Don't be afraid of white space** - It improves readability
100
+
101
+ ---
102
+
103
+ ## Spacing vs Borders
104
+
105
+ **Prefer spacing when:**
106
+ - Creating separation between related content
107
+ - Establishing visual hierarchy
108
+ - Adding breathing room
109
+
110
+ **Use borders when:**
111
+ - Spacing alone is insufficient
112
+ - Defining interactive element boundaries
113
+ - Indicating state changes
114
+
115
+ ---
116
+
117
+ ## Platform-Specific Spacing
118
+
119
+ For platform-specific spacing guidance:
120
+
121
+ - **Web** - See [types/web/](../types/web/)
122
+ - **Slides** - See [types/slides/](../types/slides/)
123
+ - **Graphics** - See [types/graphics/](../types/graphics/)
124
+
125
+ ---
126
+
127
+ ## Related Documentation
128
+
129
+ - [Borders](./borders.md) - Border philosophy and specifications
130
+ - [Typography](./typography.md) - Text spacing
@@ -0,0 +1,155 @@
1
+ # Typography Rules
2
+
3
+ Typography specifications for Equal Experts. This document defines font families, type scale, and usage guidelines.
4
+
5
+ ---
6
+
7
+ ## Font Families
8
+
9
+ ### Sans Serif (Default)
10
+
11
+ **Font:** Lexend
12
+ **Fallback:** `Lexend, ui-sans-serif, sans-serif, system-ui`
13
+
14
+ **Use for:** All primary content - body text, headings, interface copy, presentations
15
+
16
+ ### Serif
17
+
18
+ **Font:** Lora
19
+ **Fallback:** `Lora, ui-serif, Georgia, serif`
20
+
21
+ **Use for:** Decorative text, special emphasis, editorial content (use sparingly)
22
+
23
+ ### Monospace
24
+
25
+ **Font:** JetBrains Mono
26
+ **Fallback:** `JetBrains Mono, ui-monospace, monospace`
27
+
28
+ **Use for:** Code blocks, technical content, data display
29
+
30
+ ---
31
+
32
+ ## Type Scale
33
+
34
+ | Name | Size | Line Height | Usage |
35
+ |------|------|-------------|-------|
36
+ | xs | 12px | 16px | Labels, captions, metadata |
37
+ | sm | 14px | 20px | Secondary text, small body |
38
+ | base | 16px | 24px | Body text (default) |
39
+ | lg | 18px | 28px | Large body, subheadings |
40
+ | xl | 20px | 28px | Section headings |
41
+ | 2xl | 24px | 32px | Page headings |
42
+ | 3xl | 30px | 36px | Large headings |
43
+ | 4xl | 36px | 40px | Display text |
44
+ | 5xl | 48px | 1 | Hero headings |
45
+ | 6xl | 60px | 1 | Large hero text |
46
+ | 7xl | 72px | 1 | Extra large display |
47
+ | 8xl | 96px | 1 | Maximum display |
48
+
49
+ ---
50
+
51
+ ## Font Weights
52
+
53
+ | Weight | Value | Usage |
54
+ |--------|-------|-------|
55
+ | light | 300 | Large display text, subtle emphasis |
56
+ | normal | 400 | Default body text |
57
+ | medium | 500 | Form inputs, UI labels, subtle emphasis |
58
+ | semibold | 600 | Headings, important labels |
59
+ | bold | 700 | Strong emphasis, primary headings |
60
+ | extrabold | 800 | Maximum emphasis (use sparingly) |
61
+
62
+ ### Recommended Weight Usage
63
+
64
+ - **Body Text:** 400 (normal)
65
+ - **Headings:** 600 (semibold) or 700 (bold)
66
+ - **Labels:** 500 (medium)
67
+ - **Display Text:** 300 (light) for large sizes, 700 (bold) for impact
68
+
69
+ ---
70
+
71
+ ## Typography Hierarchy
72
+
73
+ Establish clear visual hierarchy:
74
+
75
+ | Level | Size | Weight | Usage |
76
+ |-------|------|--------|-------|
77
+ | H1 | 4xl-5xl | bold | Main page/slide title |
78
+ | H2 | 2xl-3xl | semibold/bold | Section heading |
79
+ | H3 | xl-2xl | semibold | Subsection heading |
80
+ | Body | base | normal | Primary content |
81
+ | Supporting | sm | normal/medium | Secondary information |
82
+ | Labels/Captions | xs-sm | medium | Metadata, captions |
83
+
84
+ ---
85
+
86
+ ## Letter Spacing
87
+
88
+ | Name | Value | Usage |
89
+ |------|-------|-------|
90
+ | tighter | -0.05em | Tighter spacing |
91
+ | tight | -0.025em | Slightly tighter |
92
+ | normal | 0.01em | Default spacing |
93
+ | wide | +0.025em | Slightly wider |
94
+ | wider | +0.05em | Wider spacing |
95
+ | widest | +0.1em | Maximum spacing (all caps) |
96
+
97
+ ---
98
+
99
+ ## Line Height
100
+
101
+ | Name | Value | Usage |
102
+ |------|-------|-------|
103
+ | none | 1 | Tight spacing (large headings) |
104
+ | tight | 1.25 | Compact text |
105
+ | snug | 1.375 | Slightly tight |
106
+ | normal | 1.5 | Default body text |
107
+ | relaxed | 1.625 | Comfortable reading |
108
+ | loose | 2 | Generous spacing |
109
+
110
+ ---
111
+
112
+ ## Accessibility Requirements
113
+
114
+ - **Normal text:** Minimum 4.5:1 contrast ratio
115
+ - **Large text (18px+ or 14px+ bold):** Minimum 3:1 contrast ratio
116
+ - **Proper heading hierarchy:** H1 → H2 → H3 (no skipping levels)
117
+ - **Minimum body text size:** 12px
118
+
119
+ ---
120
+
121
+ ## Usage Guidelines
122
+
123
+ ### Do's
124
+
125
+ 1. **Use Lexend for primary content** - It's the brand font
126
+ 2. **Maintain hierarchy** - Visual styling matches content structure
127
+ 3. **Stick to the scale** - Use defined sizes, not arbitrary values
128
+ 4. **Ensure readability** - Sufficient contrast and line height
129
+ 5. **Be consistent** - Same styles for same content types
130
+
131
+ ### Don'ts
132
+
133
+ 1. **Don't use arbitrary sizes** - Stick to the type scale
134
+ 2. **Don't skip heading levels** - H1 → H3 is invalid
135
+ 3. **Don't use low-contrast colors** - Verify accessibility
136
+ 4. **Don't mix too many weights** - Keep it simple
137
+ 5. **Don't use sizes smaller than 12px** - Maintain readability
138
+
139
+ ---
140
+
141
+ ## Platform-Specific Typography
142
+
143
+ For platform-specific typography guidance:
144
+
145
+ - **Web** - See [types/web/](../types/web/)
146
+ - **Slides** - See [types/slides/](../types/slides/)
147
+ - **Graphics** - See [types/graphics/](../types/graphics/)
148
+
149
+ ---
150
+
151
+ ## Related Documentation
152
+
153
+ - [Brand Guidelines](./brand.md) - Brand principles
154
+ - [Colours](./colours.md) - Text colors
155
+ - [Spacing](./spacing.md) - Text spacing patterns