@maboussoleaidant/design-system 0.1.5 → 0.1.6

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.
package/README.md CHANGED
@@ -23,24 +23,23 @@ Ou en import CSS :
23
23
  @import "@maboussoleaidant/design-system";
24
24
  ```
25
25
 
26
- ### Option 2 : Avec Tailwind JIT (recommandé pour les apps)
26
+ ### Option 2 : Avec Tailwind v4 (recommandé pour les apps)
27
27
 
28
- Pour les applications Angular/React/Astro qui utilisent Tailwind, **utilisez le JIT** pour avoir accès à toutes les classes Tailwind avec les tokens MBA :
28
+ Pour les applications Angular/React/Astro qui utilisent Tailwind v4, importez le **preset** pour avoir accès à toutes les classes Tailwind JIT avec les tokens MBA :
29
29
 
30
30
  ```css
31
31
  /* styles.css */
32
32
  @import "@maboussoleaidant/design-system";
33
33
  @import "tailwindcss";
34
-
35
- @theme {
36
- /* Copier le mapping depuis src/tailwind.css ou voir la doc Storybook */
37
- --color-primary-500: var(--mba-color-primary-500);
38
- --spacing-sm: var(--mba-space-sm);
39
- /* ... */
40
- }
34
+ @import "@maboussoleaidant/design-system/preset";
41
35
  ```
42
36
 
43
- > **Note :** Le fichier `mba-tailwind.css` pré-compilé ne contient que les classes Tailwind utilisées dans le Storybook du DS. Pour un projet réel, utilisez le JIT ci-dessus.
37
+ Cela vous donne accès à :
38
+ - Toutes les classes Tailwind générées par le JIT (h-screen, animate-spin, etc.)
39
+ - Les tokens MBA mappés : `bg-primary-500`, `p-sm`, `rounded-xs`, `shadow-md`, etc.
40
+ - Les composants `.mba-*` du Design System
41
+
42
+ > **Note :** Le fichier `mba-tailwind.css` est pré-compilé pour le Storybook uniquement. Utilisez le preset ci-dessus pour vos projets.
44
43
 
45
44
  ### Option 3 : Tokens uniquement
46
45
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maboussoleaidant/design-system",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "type": "module",
5
5
  "description": "Design System Ma Boussole Aidant - Tokens et composants CSS",
6
6
  "main": "dist/mba-design-system.css",
@@ -8,12 +8,15 @@
8
8
  ".": "./dist/mba-design-system.css",
9
9
  "./min": "./dist/mba-design-system.min.css",
10
10
  "./tokens": "./dist/mba-tokens-only.css",
11
+ "./preset": "./src/tailwind-preset.css",
11
12
  "./tailwind": "./dist/mba-tailwind.css",
12
13
  "./tailwind/min": "./dist/mba-tailwind.min.css"
13
14
  },
14
15
  "files": [
15
16
  "dist/",
16
17
  "src/assets/",
18
+ "src/tokens/",
19
+ "src/tailwind-preset.css",
17
20
  "README.md",
18
21
  "LICENSE"
19
22
  ],
@@ -0,0 +1,207 @@
1
+ /**
2
+ * MBA Design System - Tailwind v4 Preset
3
+ *
4
+ * Ce fichier contient le mapping des tokens MBA vers Tailwind.
5
+ * À importer APRÈS tailwindcss dans votre projet.
6
+ *
7
+ * Usage:
8
+ * @import "@maboussoleaidant/design-system";
9
+ * @import "tailwindcss";
10
+ * @import "@maboussoleaidant/design-system/preset";
11
+ *
12
+ * Cela vous donne accès à toutes les classes Tailwind JIT
13
+ * avec les valeurs du Design System MBA.
14
+ */
15
+
16
+ /* Import des tokens MBA (variables CSS) */
17
+ @import "./tokens/index.css";
18
+
19
+ /* ===========================================
20
+ MAPPING TOKENS MBA → TAILWIND VIA @theme
21
+ =========================================== */
22
+ @theme {
23
+ /* -----------------------------------------
24
+ COULEURS (uniquement les tokens Figma)
25
+ ----------------------------------------- */
26
+
27
+ /* Basics */
28
+ --color-white: var(--mba-color-white);
29
+ --color-black: var(--mba-color-black);
30
+
31
+ /* Grey (5 valeurs Figma) */
32
+ --color-grey-50: var(--mba-color-grey-50);
33
+ --color-grey-100: var(--mba-color-grey-100);
34
+ --color-grey-300: var(--mba-color-grey-300);
35
+ --color-grey-400: var(--mba-color-grey-400);
36
+ --color-grey-800: var(--mba-color-grey-800);
37
+
38
+ /* Primary - Violet (6 valeurs Figma) */
39
+ --color-primary-50: var(--mba-color-primary-50);
40
+ --color-primary-100: var(--mba-color-primary-100);
41
+ --color-primary-400: var(--mba-color-primary-400);
42
+ --color-primary-500: var(--mba-color-primary-500);
43
+ --color-primary-800: var(--mba-color-primary-800);
44
+ --color-primary-900: var(--mba-color-primary-900);
45
+
46
+ /* Secondary (1 valeur Figma) */
47
+ --color-secondary-500: var(--mba-color-secondary-500);
48
+
49
+ /* Primary Pro - Blue (5 valeurs Figma) */
50
+ --color-primary-pro-50: var(--mba-color-primary-pro-50);
51
+ --color-primary-pro-100: var(--mba-color-primary-pro-100);
52
+ --color-primary-pro-400: var(--mba-color-primary-pro-400);
53
+ --color-primary-pro-500: var(--mba-color-primary-pro-500);
54
+ --color-primary-pro-800: var(--mba-color-primary-pro-800);
55
+
56
+ /* Error (5 valeurs Figma) */
57
+ --color-error-100: var(--mba-color-error-100);
58
+ --color-error-300: var(--mba-color-error-300);
59
+ --color-error-400: var(--mba-color-error-400);
60
+ --color-error-500: var(--mba-color-error-500);
61
+ --color-error-800: var(--mba-color-error-800);
62
+
63
+ /* Success (5 valeurs Figma) */
64
+ --color-success-100: var(--mba-color-success-100);
65
+ --color-success-300: var(--mba-color-success-300);
66
+ --color-success-400: var(--mba-color-success-400);
67
+ --color-success-500: var(--mba-color-success-500);
68
+ --color-success-800: var(--mba-color-success-800);
69
+
70
+ /* Warning (6 valeurs Figma) */
71
+ --color-warning-50: var(--mba-color-warning-50);
72
+ --color-warning-100: var(--mba-color-warning-100);
73
+ --color-warning-300: var(--mba-color-warning-300);
74
+ --color-warning-400: var(--mba-color-warning-400);
75
+ --color-warning-500: var(--mba-color-warning-500);
76
+ --color-warning-800: var(--mba-color-warning-800);
77
+
78
+ /* Info (6 valeurs Figma) */
79
+ --color-info-50: var(--mba-color-info-50);
80
+ --color-info-100: var(--mba-color-info-100);
81
+ --color-info-300: var(--mba-color-info-300);
82
+ --color-info-400: var(--mba-color-info-400);
83
+ --color-info-500: var(--mba-color-info-500);
84
+ --color-info-800: var(--mba-color-info-800);
85
+
86
+ /* Custom - Brick, Forest, Rose */
87
+ --color-brick-light: var(--mba-color-brick-light);
88
+ --color-brick: var(--mba-color-brick);
89
+ --color-forest-light: var(--mba-color-forest-light);
90
+ --color-forest: var(--mba-color-forest);
91
+ --color-rose-light: var(--mba-color-rose-light);
92
+ --color-rose: var(--mba-color-rose);
93
+
94
+ /* Pastels */
95
+ --color-pastel-bleuet: var(--mba-color-pastel-bleuet);
96
+ --color-pastel-lavender: var(--mba-color-pastel-lavender);
97
+ --color-pastel-narcisse: var(--mba-color-pastel-narcisse);
98
+ --color-pastel-oranger: var(--mba-color-pastel-oranger);
99
+
100
+ /* Autres */
101
+ --color-beige: var(--mba-color-beige);
102
+
103
+ /* -----------------------------------------
104
+ FONTS
105
+ ----------------------------------------- */
106
+ --font-sans: var(--mba-font-family-text);
107
+ --font-heading: var(--mba-font-family-heading);
108
+ --font-mono: var(--mba-font-family-mono);
109
+
110
+ /* -----------------------------------------
111
+ FONT SIZES (Figma scale)
112
+ ----------------------------------------- */
113
+ --font-size-xxs: var(--mba-font-size-xxs);
114
+ --font-size-xs: var(--mba-font-size-xs);
115
+ --font-size-sm: var(--mba-font-size-sm);
116
+ --font-size-md: var(--mba-font-size-md);
117
+ --font-size-xl: var(--mba-font-size-xl);
118
+ --font-size-xxl: var(--mba-font-size-xxl);
119
+
120
+ /* -----------------------------------------
121
+ SPACING (Figma semantic scale)
122
+ ----------------------------------------- */
123
+ --spacing-0: var(--mba-space-0);
124
+ --spacing-px: var(--mba-space-px);
125
+ --spacing-xxs: var(--mba-space-xxs);
126
+ --spacing-xs: var(--mba-space-xs);
127
+ --spacing-sm: var(--mba-space-sm);
128
+ --spacing-md: var(--mba-space-md);
129
+ --spacing-lg: var(--mba-space-lg);
130
+ --spacing-xl: var(--mba-space-xl);
131
+ --spacing-xxl: var(--mba-space-xxl);
132
+
133
+ /* -----------------------------------------
134
+ SPACING (Tailwind numeric scale)
135
+ Pour w-*, h-*, size-*, min-w-*, etc.
136
+ ----------------------------------------- */
137
+ --spacing-1: 0.25rem;
138
+ --spacing-2: 0.5rem;
139
+ --spacing-3: 0.75rem;
140
+ --spacing-4: 1rem;
141
+ --spacing-5: 1.25rem;
142
+ --spacing-6: 1.5rem;
143
+ --spacing-7: 1.75rem;
144
+ --spacing-8: 2rem;
145
+ --spacing-9: 2.25rem;
146
+ --spacing-10: 2.5rem;
147
+ --spacing-11: 2.75rem;
148
+ --spacing-12: 3rem;
149
+ --spacing-14: 3.5rem;
150
+ --spacing-16: 4rem;
151
+ --spacing-20: 5rem;
152
+ --spacing-24: 6rem;
153
+ --spacing-28: 7rem;
154
+ --spacing-32: 8rem;
155
+ --spacing-36: 9rem;
156
+ --spacing-40: 10rem;
157
+ --spacing-44: 11rem;
158
+ --spacing-48: 12rem;
159
+ --spacing-52: 13rem;
160
+ --spacing-56: 14rem;
161
+ --spacing-60: 15rem;
162
+ --spacing-64: 16rem;
163
+ --spacing-72: 18rem;
164
+ --spacing-80: 20rem;
165
+ --spacing-96: 24rem;
166
+
167
+ /* -----------------------------------------
168
+ MAX-WIDTH (Tailwind standard scale)
169
+ Pour les conteneurs : max-w-sm, max-w-xl, etc.
170
+ ----------------------------------------- */
171
+ --max-width-xs: 20rem; /* 320px */
172
+ --max-width-sm: 24rem; /* 384px */
173
+ --max-width-md: 28rem; /* 448px */
174
+ --max-width-lg: 32rem; /* 512px */
175
+ --max-width-xl: 36rem; /* 576px */
176
+ --max-width-2xl: 42rem; /* 672px */
177
+ --max-width-3xl: 48rem; /* 768px */
178
+ --max-width-4xl: 56rem; /* 896px */
179
+ --max-width-5xl: 64rem; /* 1024px */
180
+ --max-width-6xl: 72rem; /* 1152px */
181
+ --max-width-7xl: 80rem; /* 1280px */
182
+ --max-width-full: 100%;
183
+ --max-width-none: none;
184
+
185
+ /* -----------------------------------------
186
+ BORDER RADIUS (Figma scale)
187
+ ----------------------------------------- */
188
+ --radius-none: var(--mba-radius-none);
189
+ --radius-2xs: var(--mba-radius-2xs);
190
+ --radius-xs: var(--mba-radius-xs);
191
+ --radius-sm: var(--mba-radius-sm);
192
+ --radius-md: var(--mba-radius-md);
193
+ --radius-lg: var(--mba-radius-lg);
194
+ --radius-xl: var(--mba-radius-xl);
195
+ --radius-xxl: var(--mba-radius-xxl);
196
+ --radius-full: var(--mba-radius-full);
197
+
198
+ /* -----------------------------------------
199
+ SHADOWS (Figma elevation)
200
+ ----------------------------------------- */
201
+ --shadow-none: var(--mba-shadow-none);
202
+ --shadow-xxs: var(--mba-shadow-xxs);
203
+ --shadow-xs: var(--mba-shadow-xs);
204
+ --shadow-sm: var(--mba-shadow-sm);
205
+ --shadow-md: var(--mba-shadow-md);
206
+ --shadow-inner: var(--mba-shadow-inner);
207
+ }
@@ -0,0 +1,29 @@
1
+ /**
2
+ * MBA Design System - Breakpoints
3
+ *
4
+ * Points de rupture responsive
5
+ * Note: Les custom properties ne fonctionnent pas dans @media queries,
6
+ * ces valeurs sont documentées ici pour référence et usage JS.
7
+ *
8
+ * Utiliser les classes Tailwind (sm:, md:, lg:, xl:, 2xl:)
9
+ * ou les @media queries directement.
10
+ */
11
+
12
+ :root {
13
+ /* Breakpoints pour référence (usage JS) */
14
+ --mba-breakpoint-sm: 640px;
15
+ --mba-breakpoint-md: 768px;
16
+ --mba-breakpoint-lg: 1024px;
17
+ --mba-breakpoint-xl: 1280px;
18
+ --mba-breakpoint-2xl: 1536px;
19
+ }
20
+
21
+ /*
22
+ Usage en CSS pur (les @media ne supportent pas les custom properties) :
23
+
24
+ @media (min-width: 640px) { ... } sm
25
+ @media (min-width: 768px) { ... } md
26
+ @media (min-width: 1024px) { ... } lg
27
+ @media (min-width: 1280px) { ... } xl
28
+ @media (min-width: 1536px) { ... } 2xl
29
+ */
@@ -0,0 +1,146 @@
1
+ /**
2
+ * MBA Design System - Couleurs
3
+ *
4
+ * Palette de couleurs extraite du Design System Figma
5
+ * Préfixe: --mba-color-
6
+ */
7
+
8
+ :root {
9
+ /* ===========================================
10
+ BASICS
11
+ =========================================== */
12
+ --mba-color-white: #FFFFFF;
13
+ --mba-color-black: #1C1C1D;
14
+
15
+ /* ===========================================
16
+ GREY (Neutral)
17
+ =========================================== */
18
+ --mba-color-grey-50: #F2F2F3;
19
+ --mba-color-grey-100: #D7D7DB;
20
+ --mba-color-grey-300: #B6B6BC;
21
+ --mba-color-grey-400: #71717A;
22
+ --mba-color-grey-800: #303034;
23
+
24
+ /* ===========================================
25
+ PRIMARY (Violet)
26
+ Couleur principale de la marque
27
+ =========================================== */
28
+ --mba-color-primary-50: #FFF6FF;
29
+ --mba-color-primary-100: #EDD7EF;
30
+ --mba-color-primary-400: #C097C3;
31
+ --mba-color-primary-500: #703973; /* Couleur déposée */
32
+ --mba-color-primary-800: #461C52;
33
+ --mba-color-primary-900: #2C1133;
34
+
35
+ /* ===========================================
36
+ SECONDARY
37
+ =========================================== */
38
+ --mba-color-secondary-500: #FDC785;
39
+
40
+ /* ===========================================
41
+ PRIMARY PRO (Blue)
42
+ Couleur pour l'offre Pro/Entreprise
43
+ =========================================== */
44
+ --mba-color-primary-pro-50: #F7FAFD;
45
+ --mba-color-primary-pro-100: #DFEDF7;
46
+ --mba-color-primary-pro-400: #6A88AA;
47
+ --mba-color-primary-pro-500: #395172;
48
+ --mba-color-primary-pro-800: #122042;
49
+
50
+ /* ===========================================
51
+ ALERT - ERROR / REQUIRED (Rouge)
52
+ =========================================== */
53
+ --mba-color-error-100: #FFDED1;
54
+ --mba-color-error-300: #F8B09E;
55
+ --mba-color-error-400: #D9514E;
56
+ --mba-color-error-500: #C1121F;
57
+ --mba-color-error-800: #6F052A;
58
+
59
+ /* ===========================================
60
+ ALERT - SUCCESS / VALIDATION (Vert)
61
+ =========================================== */
62
+ --mba-color-success-100: #E6FADE;
63
+ --mba-color-success-300: #B7E7AC;
64
+ --mba-color-success-400: #74C474;
65
+ --mba-color-success-500: #489E50;
66
+ --mba-color-success-800: #165B30;
67
+
68
+ /* ===========================================
69
+ ALERT - WARNING / IN PROGRESS (Jaune)
70
+ =========================================== */
71
+ --mba-color-warning-50: #FEFAEC;
72
+ --mba-color-warning-100: #FBF2CB;
73
+ --mba-color-warning-300: #F8E199;
74
+ --mba-color-warning-400: #D6A73D;
75
+ --mba-color-warning-500: #BC7F09;
76
+ --mba-color-warning-800: #6D3D02;
77
+
78
+ /* ===========================================
79
+ ALERT - INFO / NEUTRAL (Bleu)
80
+ =========================================== */
81
+ --mba-color-info-50: #F1FBFE;
82
+ --mba-color-info-100: #E2F6FC;
83
+ --mba-color-info-300: #C6EAF9;
84
+ --mba-color-info-400: #8ABDE0;
85
+ --mba-color-info-500: #649CCC;
86
+ --mba-color-info-800: #1F4076;
87
+
88
+ /* ===========================================
89
+ CUSTOM PALETTE - Brick
90
+ (Ultra light et dark - pour tags, articles, backgrounds)
91
+ =========================================== */
92
+ --mba-color-brick-light: #FCF4F0;
93
+ --mba-color-brick: #AC5118;
94
+
95
+ /* ===========================================
96
+ CUSTOM PALETTE - Forest
97
+ =========================================== */
98
+ --mba-color-forest-light: #DEF8EF;
99
+ --mba-color-forest: #16654C;
100
+
101
+ /* ===========================================
102
+ CUSTOM PALETTE - Rose
103
+ =========================================== */
104
+ --mba-color-rose-light: #FAEFF4;
105
+ --mba-color-rose: #B83C75;
106
+
107
+ /* ===========================================
108
+ CUSTOM PALETTE - Pastels (Nouveau)
109
+ Note: Non accessibles pour texte/titre
110
+ =========================================== */
111
+ --mba-color-pastel-bleuet: #EBF2FF;
112
+ --mba-color-pastel-lavender: #EEEDFF;
113
+ --mba-color-pastel-narcisse: #FFF6E4;
114
+ --mba-color-pastel-oranger: #FFF2EB;
115
+
116
+ /* ===========================================
117
+ CUSTOM - Beige (Background cards)
118
+ =========================================== */
119
+ --mba-color-beige: #F9F5F0;
120
+
121
+ /* ===========================================
122
+ GRADIENT
123
+ =========================================== */
124
+ --mba-gradient-sunset: linear-gradient(117deg, #C7E5FA 4.74%, #E9CDF3 49.92%, #FBE4C1 95.1%);
125
+
126
+ /* ===========================================
127
+ SEMANTIC COLORS
128
+ (Utilise uniquement les tokens Figma existants)
129
+ =========================================== */
130
+ --mba-color-background: var(--mba-color-white);
131
+ --mba-color-surface: var(--mba-color-grey-50);
132
+ --mba-color-surface-raised: var(--mba-color-white);
133
+ --mba-color-border: var(--mba-color-grey-100);
134
+ --mba-color-border-strong: var(--mba-color-grey-300);
135
+
136
+ --mba-color-text: var(--mba-color-black);
137
+ --mba-color-text-muted: var(--mba-color-grey-400);
138
+ --mba-color-text-subtle: var(--mba-color-grey-300);
139
+ --mba-color-text-inverse: var(--mba-color-white);
140
+
141
+ --mba-color-link: var(--mba-color-primary-500);
142
+ --mba-color-link-hover: var(--mba-color-primary-800);
143
+
144
+ /* Focus ring (accessibilité) */
145
+ --mba-focus-ring: 0 0 0 3px rgba(112, 57, 115, 0.25);
146
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * MBA Design System - Border Radius
3
+ *
4
+ * Échelle de rayons de bordure extraite du Design System Figma
5
+ * Préfixe: --mba-radius-
6
+ */
7
+
8
+ :root {
9
+ /* ===========================================
10
+ ÉCHELLE FIGMA
11
+ =========================================== */
12
+ --mba-radius-2xs: 0.25rem; /* 4px */
13
+ --mba-radius-xs: 0.5rem; /* 8px */
14
+ --mba-radius-sm: 1rem; /* 16px */
15
+ --mba-radius-md: 1.5rem; /* 24px */
16
+ --mba-radius-lg: 2rem; /* 32px */
17
+ --mba-radius-xl: 3rem; /* 48px */
18
+ --mba-radius-xxl: 4rem; /* 64px */
19
+
20
+ /* ===========================================
21
+ VALEURS UTILITAIRES
22
+ =========================================== */
23
+ --mba-radius-none: 0;
24
+ --mba-radius-full: 9999px;
25
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * MBA Design System - Ombres (Elevation)
3
+ *
4
+ * Échelle d'élévation extraite du Design System Figma
5
+ * Couleur de base: Grey 400 (#71717A / rgba(113, 113, 122))
6
+ * Préfixe: --mba-shadow-
7
+ */
8
+
9
+ :root {
10
+ /* ===========================================
11
+ ÉCHELLE FIGMA (Elevation)
12
+ Double couche: 4% + 8% opacité
13
+ =========================================== */
14
+
15
+ /* XXS - blur 4px */
16
+ --mba-shadow-xxs:
17
+ 0 2px 4px 0 rgba(113, 113, 122, 0.04),
18
+ 1px 2px 4px 0 rgba(113, 113, 122, 0.08);
19
+
20
+ /* XS - blur 8px */
21
+ --mba-shadow-xs:
22
+ 0 2px 8px 0 rgba(113, 113, 122, 0.04),
23
+ 1px 2px 8px 0 rgba(113, 113, 122, 0.08);
24
+
25
+ /* SM - blur 16px */
26
+ --mba-shadow-sm:
27
+ 0 2px 16px 0 rgba(113, 113, 122, 0.04),
28
+ 1px 2px 16px 0 rgba(113, 113, 122, 0.08);
29
+
30
+ /* MD - blur 24px */
31
+ --mba-shadow-md:
32
+ 0 2px 24px 0 rgba(113, 113, 122, 0.04),
33
+ 1px 2px 24px 0 rgba(113, 113, 122, 0.08);
34
+
35
+ /* ===========================================
36
+ VALEURS UTILITAIRES
37
+ =========================================== */
38
+ --mba-shadow-none: 0 0 #0000;
39
+ --mba-shadow-inner: inset 0 2px 4px 0 rgba(113, 113, 122, 0.08);
40
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * MBA Design System - Espacements
3
+ *
4
+ * Échelle d'espacements extraite du Design System Figma
5
+ * Préfixe: --mba-space-
6
+ */
7
+
8
+ :root {
9
+ /* ===========================================
10
+ ÉCHELLE FIGMA
11
+ =========================================== */
12
+ --mba-space-xxs: 0.25rem; /* 4px */
13
+ --mba-space-xs: 0.5rem; /* 8px */
14
+ --mba-space-sm: 1rem; /* 16px */
15
+ --mba-space-md: 1.5rem; /* 24px */
16
+ --mba-space-lg: 2rem; /* 32px */
17
+ --mba-space-xl: 3rem; /* 48px */
18
+ --mba-space-xxl: 4rem; /* 64px */
19
+
20
+ /* ===========================================
21
+ VALEURS UTILITAIRES
22
+ =========================================== */
23
+ --mba-space-0: 0;
24
+ --mba-space-px: 1px;
25
+ }
@@ -0,0 +1,34 @@
1
+ /**
2
+ * MBA Design System - Transitions
3
+ *
4
+ * Durées et easings pour les animations
5
+ */
6
+
7
+ :root {
8
+ /* ===========================================
9
+ DUREES
10
+ =========================================== */
11
+ --mba-duration-75: 75ms;
12
+ --mba-duration-100: 100ms;
13
+ --mba-duration-150: 150ms;
14
+ --mba-duration-200: 200ms;
15
+ --mba-duration-300: 300ms;
16
+ --mba-duration-500: 500ms;
17
+ --mba-duration-700: 700ms;
18
+ --mba-duration-1000: 1000ms;
19
+
20
+ /* ===========================================
21
+ EASINGS
22
+ =========================================== */
23
+ --mba-ease-linear: linear;
24
+ --mba-ease-in: cubic-bezier(0.4, 0, 1, 1);
25
+ --mba-ease-out: cubic-bezier(0, 0, 0.2, 1);
26
+ --mba-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
27
+
28
+ /* ===========================================
29
+ TRANSITIONS PRECONSTRUITES
30
+ =========================================== */
31
+ --mba-transition-fast: var(--mba-duration-150) var(--mba-ease-in-out);
32
+ --mba-transition-base: var(--mba-duration-200) var(--mba-ease-in-out);
33
+ --mba-transition-slow: var(--mba-duration-300) var(--mba-ease-in-out);
34
+ }
@@ -0,0 +1,157 @@
1
+ /**
2
+ * MBA Design System - Typographie
3
+ *
4
+ * Polices: Open Sans (textes) + Congenial (titres)
5
+ * Source: Design System Figma
6
+ */
7
+
8
+ :root {
9
+ /* ===========================================
10
+ FAMILLES DE POLICES
11
+ =========================================== */
12
+ --mba-font-family-text: "Open Sans", ui-sans-serif, system-ui, sans-serif;
13
+ --mba-font-family-heading: "Congenial", ui-sans-serif, system-ui, sans-serif;
14
+ --mba-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
15
+
16
+ /* ===========================================
17
+ TAILLES DE POLICE (Figma Scale)
18
+ =========================================== */
19
+ --mba-font-size-xxs: 0.875rem; /* 14px */
20
+ --mba-font-size-xs: 1rem; /* 16px */
21
+ --mba-font-size-sm: 1.125rem; /* 18px */
22
+ --mba-font-size-md: 1.5rem; /* 24px */
23
+ --mba-font-size-xl: 2rem; /* 32px */
24
+ --mba-font-size-xxl: 3rem; /* 48px */
25
+
26
+ /* ===========================================
27
+ FONT WEIGHTS
28
+ =========================================== */
29
+ --mba-font-weight-regular: 400;
30
+ --mba-font-weight-semibold: 600;
31
+ --mba-font-weight-bold: 700;
32
+ --mba-font-weight-extrabold: 800;
33
+
34
+ /* ===========================================
35
+ LINE HEIGHTS
36
+ =========================================== */
37
+ --mba-leading-none: 1;
38
+ --mba-leading-tight: 1.25;
39
+ --mba-leading-snug: 1.375;
40
+ --mba-leading-normal: 1.5;
41
+ --mba-leading-relaxed: 1.625;
42
+ --mba-leading-loose: 2;
43
+
44
+ /* ===========================================
45
+ LETTER SPACING
46
+ =========================================== */
47
+ --mba-tracking-tighter: -0.05em;
48
+ --mba-tracking-tight: -0.025em;
49
+ --mba-tracking-normal: 0em;
50
+ --mba-tracking-wide: 0.025em;
51
+ --mba-tracking-wider: 0.05em;
52
+ --mba-tracking-widest: 0.1em;
53
+ }
54
+
55
+ /* ===========================================
56
+ HEADING PRESETS (Congenial)
57
+ =========================================== */
58
+
59
+ /* XXL - 48px Bold */
60
+ .mba-heading-xxl {
61
+ font-family: var(--mba-font-family-heading);
62
+ font-size: var(--mba-font-size-xxl);
63
+ font-weight: var(--mba-font-weight-bold);
64
+ line-height: var(--mba-leading-tight);
65
+ }
66
+
67
+ /* XL - 32px Bold */
68
+ .mba-heading-xl {
69
+ font-family: var(--mba-font-family-heading);
70
+ font-size: var(--mba-font-size-xl);
71
+ font-weight: var(--mba-font-weight-bold);
72
+ line-height: var(--mba-leading-tight);
73
+ }
74
+
75
+ /* MD - 24px Bold (Figma: extra-bold, mais Congenial ExtraBold non dispo) */
76
+ .mba-heading-md {
77
+ font-family: var(--mba-font-family-heading);
78
+ font-size: var(--mba-font-size-md);
79
+ font-weight: var(--mba-font-weight-bold);
80
+ line-height: var(--mba-leading-snug);
81
+ }
82
+
83
+ /* SM - 18px Bold */
84
+ .mba-heading-sm {
85
+ font-family: var(--mba-font-family-heading);
86
+ font-size: var(--mba-font-size-sm);
87
+ font-weight: var(--mba-font-weight-bold);
88
+ line-height: var(--mba-leading-normal);
89
+ }
90
+
91
+ /* XS - 16px Bold */
92
+ .mba-heading-xs {
93
+ font-family: var(--mba-font-family-heading);
94
+ font-size: var(--mba-font-size-xs);
95
+ font-weight: var(--mba-font-weight-bold);
96
+ line-height: var(--mba-leading-normal);
97
+ }
98
+
99
+ /* XXS - 14px Bold */
100
+ .mba-heading-xxs {
101
+ font-family: var(--mba-font-family-heading);
102
+ font-size: var(--mba-font-size-xxs);
103
+ font-weight: var(--mba-font-weight-bold);
104
+ line-height: var(--mba-leading-normal);
105
+ }
106
+
107
+ /* ===========================================
108
+ TEXT PRESETS (Open Sans)
109
+ =========================================== */
110
+
111
+ /* XXL - 48px */
112
+ .mba-text-xxl {
113
+ font-family: var(--mba-font-family-text);
114
+ font-size: var(--mba-font-size-xxl);
115
+ font-weight: var(--mba-font-weight-regular);
116
+ line-height: var(--mba-leading-normal);
117
+ }
118
+
119
+ /* XL - 32px */
120
+ .mba-text-xl {
121
+ font-family: var(--mba-font-family-text);
122
+ font-size: var(--mba-font-size-xl);
123
+ font-weight: var(--mba-font-weight-regular);
124
+ line-height: var(--mba-leading-normal);
125
+ }
126
+
127
+ /* MD - 24px */
128
+ .mba-text-md {
129
+ font-family: var(--mba-font-family-text);
130
+ font-size: var(--mba-font-size-md);
131
+ font-weight: var(--mba-font-weight-regular);
132
+ line-height: var(--mba-leading-normal);
133
+ }
134
+
135
+ /* SM - 18px */
136
+ .mba-text-sm {
137
+ font-family: var(--mba-font-family-text);
138
+ font-size: var(--mba-font-size-sm);
139
+ font-weight: var(--mba-font-weight-regular);
140
+ line-height: var(--mba-leading-normal);
141
+ }
142
+
143
+ /* XS - 16px (Base) */
144
+ .mba-text-xs {
145
+ font-family: var(--mba-font-family-text);
146
+ font-size: var(--mba-font-size-xs);
147
+ font-weight: var(--mba-font-weight-regular);
148
+ line-height: var(--mba-leading-normal);
149
+ }
150
+
151
+ /* XXS - 14px */
152
+ .mba-text-xxs {
153
+ font-family: var(--mba-font-family-text);
154
+ font-size: var(--mba-font-size-xxs);
155
+ font-weight: var(--mba-font-weight-regular);
156
+ line-height: var(--mba-leading-normal);
157
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * MBA Design System - Tokens
3
+ *
4
+ * Point d'entrée pour tous les design tokens
5
+ */
6
+
7
+ @import "./_colors.css";
8
+ @import "./_typography.css";
9
+ @import "./_spacing.css";
10
+ @import "./_radius.css";
11
+ @import "./_shadows.css";
12
+ @import "./_transitions.css";
13
+ @import "./_breakpoints.css";