@maboussoleaidant/design-system 0.1.11 → 0.1.13

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.
@@ -214,10 +214,12 @@
214
214
 
215
215
  /* ===========================================
216
216
  HEADING PRESETS (Congenial)
217
+ Wrappé dans @layer components pour être overridable par utilities
217
218
  =========================================== */
218
219
 
219
- /* XXL - 48px Bold */
220
+ @layer components {
220
221
 
222
+ /* XXL - 48px Bold */
221
223
  .mba-heading-xxl {
222
224
  font-family: var(--mba-font-family-heading);
223
225
  font-size: var(--mba-font-size-xxl);
@@ -226,7 +228,6 @@
226
228
  }
227
229
 
228
230
  /* XL - 32px Bold */
229
-
230
231
  .mba-heading-xl {
231
232
  font-family: var(--mba-font-family-heading);
232
233
  font-size: var(--mba-font-size-xl);
@@ -235,7 +236,6 @@
235
236
  }
236
237
 
237
238
  /* MD - 24px Bold (Figma: extra-bold, mais Congenial ExtraBold non dispo) */
238
-
239
239
  .mba-heading-md {
240
240
  font-family: var(--mba-font-family-heading);
241
241
  font-size: var(--mba-font-size-md);
@@ -244,7 +244,6 @@
244
244
  }
245
245
 
246
246
  /* SM - 18px Bold */
247
-
248
247
  .mba-heading-sm {
249
248
  font-family: var(--mba-font-family-heading);
250
249
  font-size: var(--mba-font-size-sm);
@@ -253,7 +252,6 @@
253
252
  }
254
253
 
255
254
  /* XS - 16px Bold */
256
-
257
255
  .mba-heading-xs {
258
256
  font-family: var(--mba-font-family-heading);
259
257
  font-size: var(--mba-font-size-xs);
@@ -262,7 +260,6 @@
262
260
  }
263
261
 
264
262
  /* XXS - 14px Bold */
265
-
266
263
  .mba-heading-xxs {
267
264
  font-family: var(--mba-font-family-heading);
268
265
  font-size: var(--mba-font-size-xxs);
@@ -275,7 +272,6 @@
275
272
  =========================================== */
276
273
 
277
274
  /* XXL - 48px */
278
-
279
275
  .mba-text-xxl {
280
276
  font-family: var(--mba-font-family-text);
281
277
  font-size: var(--mba-font-size-xxl);
@@ -284,7 +280,6 @@
284
280
  }
285
281
 
286
282
  /* XL - 32px */
287
-
288
283
  .mba-text-xl {
289
284
  font-family: var(--mba-font-family-text);
290
285
  font-size: var(--mba-font-size-xl);
@@ -293,7 +288,6 @@
293
288
  }
294
289
 
295
290
  /* MD - 24px */
296
-
297
291
  .mba-text-md {
298
292
  font-family: var(--mba-font-family-text);
299
293
  font-size: var(--mba-font-size-md);
@@ -302,7 +296,6 @@
302
296
  }
303
297
 
304
298
  /* SM - 18px */
305
-
306
299
  .mba-text-sm {
307
300
  font-family: var(--mba-font-family-text);
308
301
  font-size: var(--mba-font-size-sm);
@@ -311,7 +304,6 @@
311
304
  }
312
305
 
313
306
  /* XS - 16px (Base) */
314
-
315
307
  .mba-text-xs {
316
308
  font-family: var(--mba-font-family-text);
317
309
  font-size: var(--mba-font-size-xs);
@@ -320,7 +312,6 @@
320
312
  }
321
313
 
322
314
  /* XXS - 14px */
323
-
324
315
  .mba-text-xxs {
325
316
  font-family: var(--mba-font-family-text);
326
317
  font-size: var(--mba-font-size-xxs);
@@ -328,6 +319,10 @@
328
319
  line-height: var(--mba-leading-normal);
329
320
  }
330
321
 
322
+ }
323
+
324
+ /* end @layer components */
325
+
331
326
  /**
332
327
  * MBA Design System - Espacements
333
328
  *
@@ -723,8 +718,13 @@
723
718
  *
724
719
  * Reset CSS basé sur Tailwind Preflight / modern-normalize
725
720
  * https://tailwindcss.com/docs/preflight
721
+ *
722
+ * Wrappé dans @layer base pour permettre aux utilities Tailwind
723
+ * de l'overrider sans avoir besoin de !important
726
724
  */
727
725
 
726
+ @layer base {
727
+
728
728
  *,
729
729
  ::before,
730
730
  ::after {
@@ -956,6 +956,10 @@ video {
956
956
  display: none;
957
957
  }
958
958
 
959
+ }
960
+
961
+ /* end @layer base */
962
+
959
963
  /**
960
964
  * MBA Design System - Base Typography
961
965
  *
@@ -1498,6 +1502,64 @@ a:hover {
1498
1502
  }
1499
1503
  }
1500
1504
 
1505
+ /**
1506
+ * MBA Design System - Links
1507
+ *
1508
+ * Composant de lien avec icône
1509
+ * L'underline au hover s'applique uniquement au texte, pas à l'icône
1510
+ *
1511
+ * Classes:
1512
+ * - .mba-link - Lien de base avec icône
1513
+ *
1514
+ * Structure HTML:
1515
+ * <a href="#" class="mba-link">
1516
+ * <span class="mba-link__text">En lire plus</span>
1517
+ * <span class="material-symbols-rounded">arrow_forward</span>
1518
+ * </a>
1519
+ */
1520
+
1521
+ .mba-link {
1522
+ display: inline-flex;
1523
+ align-items: center;
1524
+ gap: var(--mba-space-xs);
1525
+ font-family: var(--mba-font-family-text);
1526
+ font-size: var(--mba-font-size-xs);
1527
+ font-weight: var(--mba-font-weight-semibold);
1528
+ color: var(--mba-color-primary-500);
1529
+ text-decoration: none;
1530
+ transition: color 0.2s ease;
1531
+ }
1532
+
1533
+ .mba-link:hover {
1534
+ color: var(--mba-color-primary-800);
1535
+ }
1536
+
1537
+ /* Underline uniquement sur le texte, pas l'icône */
1538
+
1539
+ .mba-link__text {
1540
+ text-decoration: none;
1541
+ transition: text-decoration 0.2s ease;
1542
+ }
1543
+
1544
+ .mba-link:hover .mba-link__text {
1545
+ text-decoration: underline;
1546
+ }
1547
+
1548
+ /* Icône */
1549
+
1550
+ .mba-link .material-symbols-rounded {
1551
+ font-size: 20px;
1552
+ text-decoration: none;
1553
+ }
1554
+
1555
+ /* Focus state */
1556
+
1557
+ .mba-link:focus-visible {
1558
+ outline: none;
1559
+ box-shadow: var(--mba-focus-ring);
1560
+ border-radius: var(--mba-radius-2xs);
1561
+ }
1562
+
1501
1563
  /**
1502
1564
  * MBA Design System - Cards
1503
1565
  *
@@ -1771,6 +1833,134 @@ a:hover {
1771
1833
  }
1772
1834
  }
1773
1835
 
1836
+ /* ===========================================
1837
+ ARTICLE CARD (avec image)
1838
+ Image en haut, tag, titre, texte, lien
1839
+ =========================================== */
1840
+
1841
+ .mba-article-card {
1842
+ display: flex;
1843
+ flex-direction: column;
1844
+ background-color: var(--mba-color-white);
1845
+ border-radius: var(--mba-radius-sm);
1846
+ overflow: hidden;
1847
+ box-shadow: var(--mba-shadow-xs);
1848
+ transition: box-shadow 0.25s ease-in-out, transform 0.25s ease-in-out;
1849
+ }
1850
+
1851
+ .mba-article-card:hover {
1852
+ box-shadow: var(--mba-shadow-sm);
1853
+ transform: translateY(-2px);
1854
+ }
1855
+
1856
+ /* Image container (pour positionner le tag) */
1857
+
1858
+ .mba-article-card__image-wrapper {
1859
+ position: relative;
1860
+ }
1861
+
1862
+ .mba-article-card__image {
1863
+ display: block;
1864
+ width: 100%;
1865
+ height: 152px;
1866
+ object-fit: cover;
1867
+ border-radius: var(--mba-radius-sm) var(--mba-radius-sm) 0 0;
1868
+ }
1869
+
1870
+ /* Tag/badge sur l'image */
1871
+
1872
+ .mba-article-card__tag {
1873
+ position: absolute;
1874
+ bottom: 0;
1875
+ left: 0;
1876
+ padding: var(--mba-space-xxs) var(--mba-space-xs);
1877
+ background-color: var(--mba-color-brick);
1878
+ color: var(--mba-color-white);
1879
+ font-family: var(--mba-font-family-text);
1880
+ font-size: var(--mba-font-size-xs);
1881
+ font-weight: var(--mba-font-weight-semibold);
1882
+ border-radius: 0 var(--mba-radius-xs) 0 0;
1883
+ }
1884
+
1885
+ .mba-article-card__content {
1886
+ display: flex;
1887
+ flex-direction: column;
1888
+ flex: 1;
1889
+ padding: var(--mba-space-sm) var(--mba-space-sm) 0;
1890
+ gap: var(--mba-space-xs);
1891
+ }
1892
+
1893
+ .mba-article-card__title {
1894
+ font-family: var(--mba-font-family-text);
1895
+ font-size: var(--mba-font-size-sm);
1896
+ font-weight: var(--mba-font-weight-bold);
1897
+ color: var(--mba-color-primary-800);
1898
+ margin: 0;
1899
+ }
1900
+
1901
+ .mba-article-card__text {
1902
+ font-family: var(--mba-font-family-text);
1903
+ font-size: var(--mba-font-size-xs);
1904
+ font-weight: var(--mba-font-weight-regular);
1905
+ color: var(--mba-color-text);
1906
+ line-height: var(--mba-leading-normal);
1907
+ margin: 0;
1908
+ }
1909
+
1910
+ /* Footer avec lien */
1911
+
1912
+ .mba-article-card__footer {
1913
+ display: flex;
1914
+ justify-content: flex-end;
1915
+ padding: 0 var(--mba-space-sm) var(--mba-space-sm);
1916
+ margin-top: var(--mba-space-md);
1917
+ }
1918
+
1919
+ .mba-article-card__link {
1920
+ display: inline-flex;
1921
+ align-items: center;
1922
+ gap: var(--mba-space-xs);
1923
+ font-family: var(--mba-font-family-text);
1924
+ font-size: var(--mba-font-size-xs);
1925
+ font-weight: var(--mba-font-weight-semibold);
1926
+ color: var(--mba-color-primary-500);
1927
+ text-decoration: none;
1928
+ transition: color 0.2s ease;
1929
+ }
1930
+
1931
+ .mba-article-card__link:hover {
1932
+ color: var(--mba-color-primary-800);
1933
+ }
1934
+
1935
+ .mba-article-card__link:hover .mba-article-card__link-text {
1936
+ text-decoration: underline;
1937
+ }
1938
+
1939
+ .mba-article-card__link .material-symbols-rounded {
1940
+ font-size: 20px;
1941
+ }
1942
+
1943
+ /* Grid pour article cards */
1944
+
1945
+ .mba-article-card-grid {
1946
+ display: grid;
1947
+ gap: var(--mba-space-md);
1948
+ grid-template-columns: 1fr;
1949
+ width: 100%;
1950
+ }
1951
+
1952
+ @media (min-width: 600px) {
1953
+ .mba-article-card-grid {
1954
+ grid-template-columns: repeat(2, 1fr);
1955
+ }
1956
+ }
1957
+
1958
+ @media (min-width: 900px) {
1959
+ .mba-article-card-grid {
1960
+ grid-template-columns: repeat(3, 1fr);
1961
+ }
1962
+ }
1963
+
1774
1964
  /**
1775
1965
  * MBA Design System - Arrow Buttons
1776
1966
  *
@@ -2186,6 +2376,45 @@ a:hover {
2186
2376
  pointer-events: none;
2187
2377
  }
2188
2378
 
2379
+ /* ===========================================
2380
+ DOTS PAGINATION (Carrousel)
2381
+ Indicateurs de slide sous forme de points
2382
+ =========================================== */
2383
+
2384
+ .mba-dots {
2385
+ display: inline-flex;
2386
+ align-items: center;
2387
+ gap: var(--mba-space-xs);
2388
+ padding: 0;
2389
+ margin: 0;
2390
+ list-style: none;
2391
+ }
2392
+
2393
+ .mba-dot {
2394
+ width: 40px;
2395
+ height: 8px;
2396
+ border-radius: var(--mba-radius-full);
2397
+ background-color: var(--mba-color-grey-300);
2398
+ border: none;
2399
+ padding: 0;
2400
+ cursor: pointer;
2401
+ transition: background-color 0.25s ease-in-out;
2402
+ }
2403
+
2404
+ .mba-dot:hover:not(.is-active) {
2405
+ background-color: var(--mba-color-grey-400);
2406
+ }
2407
+
2408
+ .mba-dot:focus-visible {
2409
+ outline: none;
2410
+ box-shadow: var(--mba-focus-ring);
2411
+ }
2412
+
2413
+ .mba-dot.is-active {
2414
+ background-color: var(--mba-color-primary-500);
2415
+ cursor: default;
2416
+ }
2417
+
2189
2418
  /**
2190
2419
  * MBA Design System - Inputs
2191
2420
  *
@@ -2820,6 +3049,7 @@ button.mba-input-icon__icon:hover {
2820
3049
  * - .mba-section--wave-bottom - Wave en bas
2821
3050
  * - .mba-section--wave-both - Waves en haut ET en bas
2822
3051
  * - .mba-section--wave-sm - Petite wave (24px au lieu de 43px)
3052
+ * - .mba-section--wave-inset - Padding ajusté pour que le contenu commence après la wave
2823
3053
  *
2824
3054
  * Usage:
2825
3055
  * <section class="mba-section mba-section--lavender mba-section--wave-both">
@@ -2842,13 +3072,34 @@ button.mba-input-icon__icon:hover {
2842
3072
  z-index: 1;
2843
3073
  max-width: 1280px;
2844
3074
  margin: 0 auto;
2845
- padding: var(--mba-space-xl) var(--mba-space-md);
3075
+ padding: var(--mba-space-xxl) 0;
2846
3076
  }
2847
3077
 
2848
- @media (min-width: 768px) {
2849
- .mba-section__content {
2850
- padding: var(--mba-space-xxl) var(--mba-space-lg);
2851
- }
3078
+ /* ===========================================
3079
+ WAVE INSET (opt-in)
3080
+ Ajoute du padding pour que le contenu commence après la wave
3081
+ =========================================== */
3082
+
3083
+ .mba-section--wave-inset.mba-section--wave-top .mba-section__content,
3084
+ .mba-section--wave-inset.mba-section--wave-both .mba-section__content {
3085
+ padding-top: calc(var(--mba-wave-height) + var(--mba-space-xxl));
3086
+ }
3087
+
3088
+ .mba-section--wave-inset.mba-section--wave-bottom .mba-section__content,
3089
+ .mba-section--wave-inset.mba-section--wave-both .mba-section__content {
3090
+ padding-bottom: calc(var(--mba-wave-height) + var(--mba-space-xxl));
3091
+ }
3092
+
3093
+ /* Wave inset pour petites waves */
3094
+
3095
+ .mba-section--wave-inset.mba-section--wave-sm.mba-section--wave-top .mba-section__content,
3096
+ .mba-section--wave-inset.mba-section--wave-sm.mba-section--wave-both .mba-section__content {
3097
+ padding-top: calc(var(--mba-wave-sm-height) + var(--mba-space-xxl));
3098
+ }
3099
+
3100
+ .mba-section--wave-inset.mba-section--wave-sm.mba-section--wave-bottom .mba-section__content,
3101
+ .mba-section--wave-inset.mba-section--wave-sm.mba-section--wave-both .mba-section__content {
3102
+ padding-bottom: calc(var(--mba-wave-sm-height) + var(--mba-space-xxl));
2852
3103
  }
2853
3104
 
2854
3105
  /* ===========================================