@jonathankablan/noraivoire-core 0.1.1 → 0.1.2

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 (39) hide show
  1. package/LICENSE +4 -2
  2. package/README.md +1 -1
  3. package/dist/flutter/noraivoire.dart +4 -4
  4. package/dist/flutter/noraivoire_fx.dart +1 -1
  5. package/dist/fx/fx-scroll.css +1 -1
  6. package/dist/fx/fx-scroll.js +1 -1
  7. package/dist/fx/fx-text.css +1 -1
  8. package/dist/fx/fx-text.js +1 -1
  9. package/dist/integrity.json +78 -78
  10. package/dist/llms-full.txt +1 -1
  11. package/dist/manifest.json +1 -1
  12. package/dist/noraivoire.auto.js +1 -1
  13. package/dist/noraivoire.css +3 -3
  14. package/dist/noraivoire.engine.d.ts +1 -1
  15. package/dist/noraivoire.engine.js +1 -1
  16. package/dist/noraivoire.legacy.min.css +1 -1
  17. package/dist/noraivoire.min.css +1 -1
  18. package/dist/noraivoire.types.ts +2 -2
  19. package/dist/react-native/noraivoire-fx.tsx +1 -1
  20. package/dist/react-native/noraivoire.tsx +4 -4
  21. package/dist/symfony/src/Enum/NoraComponent.php +1 -1
  22. package/dist/symfony/src/Enum/NoraSize.php +1 -1
  23. package/dist/symfony/src/Enum/NoraTone.php +1 -1
  24. package/dist/symfony/src/NoraManifest.php +3 -3
  25. package/dist/symfony/templates/components/Nora/Avatar.html.twig +1 -1
  26. package/dist/symfony/templates/components/Nora/Badge.html.twig +1 -1
  27. package/dist/symfony/templates/components/Nora/Btn.html.twig +1 -1
  28. package/dist/symfony/templates/components/Nora/Card.html.twig +1 -1
  29. package/dist/symfony/templates/components/Nora/Checkbox.html.twig +1 -1
  30. package/dist/symfony/templates/components/Nora/Field.html.twig +1 -1
  31. package/dist/symfony/templates/components/Nora/Input.html.twig +1 -1
  32. package/dist/symfony/templates/components/Nora/Link.html.twig +1 -1
  33. package/dist/symfony/templates/components/Nora/Media.html.twig +1 -1
  34. package/dist/symfony/templates/components/Nora/Navbar.html.twig +1 -1
  35. package/dist/symfony/templates/components/Nora/Radio.html.twig +1 -1
  36. package/dist/symfony/templates/components/Nora/Select.html.twig +1 -1
  37. package/dist/symfony/templates/components/Nora/Switch.html.twig +1 -1
  38. package/dist/symfony/templates/components/Nora/Textarea.html.twig +1 -1
  39. package/package.json +1 -1
package/LICENSE CHANGED
@@ -10,8 +10,10 @@ modèles (templates), sa documentation, ses jeux de tests et ses éléments grap
10
10
  1. ABSENCE DE LICENCE OPEN SOURCE
11
11
  Le Logiciel n'est pas distribué sous une licence open source. Aucun droit
12
12
  n'est concédé implicitement, par estoppel ou autrement. La simple mise à
13
- disposition du Logiciel, y compris dans un dépôt privé ou un registre de
14
- paquets privé, ne vaut pas concession de licence.
13
+ disposition du Logiciel, y compris dans un dépôt ou un registre de
14
+ paquets, public ou privé (notamment le registre npm public), et la
15
+ possibilité technique de le télécharger ou de l'installer ne valent pas
16
+ concession de licence.
15
17
 
16
18
  2. USAGE AUTORISÉ
17
19
  Tout usage du Logiciel est subordonné à un contrat de licence écrit et signé
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @jonathankablan/noraivoire-core
2
2
 
3
- Sorties compilées de **NoraIvoire** 0.1.1, langage de design multi-plateforme : une même spec produit la CSS, le moteur d'effets web, les widgets Flutter, les composants React Native, les types TypeScript, le manifest machine et `llms-full.txt` pour les agents IA. Zéro dépendance.
3
+ Sorties compilées de **NoraIvoire** 0.1.2, langage de design multi-plateforme : une même spec produit la CSS, le moteur d'effets web, les widgets Flutter, les composants React Native, les types TypeScript, le manifest machine et `llms-full.txt` pour les agents IA. Zéro dépendance.
4
4
 
5
5
  ```bash
6
6
  npm install @jonathankablan/noraivoire-core
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (dart) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (dart) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
  // ignore_for_file: lines_longer_than_80_chars
@@ -13,7 +13,7 @@ import 'package:flutter/material.dart';
13
13
  import 'package:flutter/services.dart';
14
14
 
15
15
  /// Version de la spec NoraIvoire ayant produit ce fichier.
16
- const String noraVersion = '0.1.1';
16
+ const String noraVersion = '0.1.2';
17
17
 
18
18
  enum NoraTone { primary, neutral, danger, success, warning }
19
19
 
@@ -62,7 +62,7 @@ class NoraColors {
62
62
  });
63
63
 
64
64
  static const light = NoraColors(
65
- primary: Color(0xFFC94A0B),
65
+ primary: Color(0xFFC1470B),
66
66
  onPrimary: Color(0xFFFFFFFF),
67
67
  neutral: Color(0xFF3B3F46),
68
68
  onNeutral: Color(0xFFFFFFFF),
@@ -70,7 +70,7 @@ class NoraColors {
70
70
  onDanger: Color(0xFFFFFFFF),
71
71
  success: Color(0xFF1B7F3B),
72
72
  onSuccess: Color(0xFFFFFFFF),
73
- warning: Color(0xFFB35C00),
73
+ warning: Color(0xFFAC5800),
74
74
  onWarning: Color(0xFFFFFFFF),
75
75
  surface: Color(0xFFFFFFFF),
76
76
  surface2: Color(0xFFF4F5F7),
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (dart) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (dart) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
  // Effets optionnels (paquets fx-*). À copier à côté de noraivoire.dart.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * NoraIvoire 0.1.1 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
2
+ * NoraIvoire 0.1.2 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
3
3
  * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  */
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * NoraIvoire 0.1.1 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
2
+ * NoraIvoire 0.1.2 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
3
3
  * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  */
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
 
@@ -1,214 +1,214 @@
1
1
  {
2
2
  "name": "NoraIvoire",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "files": {
5
5
  "noraivoire.css": {
6
- "sha256": "aeec4bcd55265bf5f6a405600a1b5ebe91b24d691fad37978dbca9c79adc02e7",
7
- "sri": "sha384-aKgjkAz+wGDY9/Quz4deK4Db5wRxbkiw2w4HInJhciWBUsHeVYiQYLZ4aRz7PwhJ",
6
+ "sha256": "8185304a67ea886477afa8165de35a6c03d0501da9281e6de735d806a5e5b3d5",
7
+ "sri": "sha384-yHR9FXXfC578BOrRP/5O5zlN2kT48+paCX0HG2rILFZ8K50FFZgkHWrxqv9VvDVz",
8
8
  "bytes": 38151,
9
- "gzip": 6880
9
+ "gzip": 6882
10
10
  },
11
11
  "noraivoire.min.css": {
12
- "sha256": "ef9892164a93a88d63a8c819b97ea868104be66a3e438a82f9e1db03988f5747",
13
- "sri": "sha384-K5dTNuPexm5FvC/GD+1Vur0hpQVJO+ZRDV9TCHToHUUeSbt9U0MEH0WsRTYJQXWK",
12
+ "sha256": "449eda5451a4ceab13e627ad2e32436febf4a377ab2a95d250568d7e278d4fe2",
13
+ "sri": "sha384-xyNUwxDM908lUlzzFGnBU6oj9+TXcCkIBc+kN3+HIoqJMduDd8PvQD5jC06nJJ49",
14
14
  "bytes": 33433,
15
15
  "gzip": 6466
16
16
  },
17
17
  "noraivoire.legacy.min.css": {
18
- "sha256": "c797b32a937eafc586d52ada28114c6fc284b66fb72d399f65eb0be0b481a2d2",
19
- "sri": "sha384-p6h70t3KcVsrlVjVmIf/qGvYKGDCi1ZA0JCp0EUENuoETUV2qg3CASUOvOrQ1niE",
18
+ "sha256": "f53eff2d3c87a7ed3b6fe89ca7bc26197352c1200c5112a596c9fc8cbeb33672",
19
+ "sri": "sha384-taF1EpTwMzmBPbiXKECAYK63tpqrR5fAsJDaqGnBzC6Ztvra84EzuMzi8HCndbzR",
20
20
  "bytes": 33186,
21
- "gzip": 6375
21
+ "gzip": 6376
22
22
  },
23
23
  "noraivoire.engine.js": {
24
- "sha256": "1c4fa8b258c43f9aed062edff490ae4fa5fce723725634a506ba7de64aadc54d",
25
- "sri": "sha384-3fWUHazm0wXEB4wWCimlEMZAbnCX1Owt9qCr2Ae5Rjag5vpYnOPWwdDWe6QuBHvU",
24
+ "sha256": "ce917cf7550e5d112607f337ff1a26ce15ece6fb6ad8fea64321566640de205f",
25
+ "sri": "sha384-HIv6ewBID8K15wU1ekbY0i7JvVBZaZhP9RNvJa5TemZw10Z8UHQLBIMqnZNviFMb",
26
26
  "bytes": 9774,
27
27
  "gzip": 3385
28
28
  },
29
29
  "noraivoire.auto.js": {
30
- "sha256": "db6359ad5a4fe744764173fda60e1d17c661ca1dd8952acc7a992932226ea1b5",
31
- "sri": "sha384-GfxNJSBiuQRfFHcKdNK7PTdJF84+dXNxMtgp/RjgNYkKVF2RirvcXG2vlX+Gu1p3",
30
+ "sha256": "583149eb372e7454643e0c6db7b5ef1c993c6a89e62b9fadc3a35511abe96101",
31
+ "sri": "sha384-bEhm++iwTvGdrpmTN3t/edeUAbCBHZYg+QfQ3K+756q8OqX14EfN/lz/cmDnwcwQ",
32
32
  "bytes": 489,
33
33
  "gzip": 364
34
34
  },
35
35
  "noraivoire.engine.d.ts": {
36
- "sha256": "8076b05078d9a9947f7357487ec7e3338c8524cd12130b51e50ef12e8018bc1b",
37
- "sri": "sha384-UbuWRXrsI5hR5V2DLcI71v8V7Y83esQH5Ov/BRuMJa+fkXfRJq5OlRmJk25ZY48T",
36
+ "sha256": "521e30b437bfb3502443737a69199b9627cf00f98ae2df25a090956d637a89c2",
37
+ "sri": "sha384-Kj8/jvEv8ShZUJ5dpBVjTtGb9GYpZj9WsdQtqWuHGFrj9T1+ZZ4y7b1OA58udRPQ",
38
38
  "bytes": 1430,
39
39
  "gzip": 658
40
40
  },
41
41
  "noraivoire.types.ts": {
42
- "sha256": "71bc643a7259b95dca9ea34c6554dc78b18b5196dac59b4120da09f13ba01073",
43
- "sri": "sha384-vuVnUWvw6FhdKaxmv7dt7BpDok6wfncol7shyOLayqxhc71fHaYDZG7QSPFKaS96",
42
+ "sha256": "c6d678ca78d5d5e63a11c2b691a6f09eb8d927bf713d63a0e041be22b8c2eca2",
43
+ "sri": "sha384-+lgUlA+jcL3pAdxvnKOwQlQ6XOxR/ogI6olvQ+drrQS/7rf8qtsYOJXqyrGQ1t6w",
44
44
  "bytes": 2087,
45
- "gzip": 967
45
+ "gzip": 968
46
46
  },
47
47
  "flutter/noraivoire.dart": {
48
- "sha256": "a9206de9b1bea1b0c0f9edc485576e21343b6bf3a0eeaa1b692ac10756d13409",
49
- "sri": "sha384-QiRRNRvx9IuDJ2CZfr0IepzgNQqmjV27r7vI8NcxUoxwKhqjt6sK5ZSL+YDwG7DR",
48
+ "sha256": "46f67d3abc4fef45b786f19b0a12d19c9aa9727db2804e0b75ce8cd11a520e83",
49
+ "sri": "sha384-lX+L2kbO8rxKsCCq13I6B73apBqy6oSPEvpjXm9q2HD5EfUQaMJPGWYdOTFuN63V",
50
50
  "bytes": 64230,
51
- "gzip": 12127
51
+ "gzip": 12128
52
52
  },
53
53
  "react-native/noraivoire.tsx": {
54
- "sha256": "0ce5e95d735c1d6b37746cb731370d97bc0e980472111159af6c064565b5802c",
55
- "sri": "sha384-b/cypuVF5rRYbmduDuRF/jOMuuUXYht4fpICSfdLslLwmNAEaXmp5QUCzsI+/b8w",
54
+ "sha256": "e252afdb2e357277acea5cb16d7bc4d33a5492a6e48493cf8c67463e9bf749cf",
55
+ "sri": "sha384-DuMnC+SgekyCWnkxDl+o3wYQhOFEB0JNPGkUiIvMyzWO8BKiNMDrRoC59EH3mTJo",
56
56
  "bytes": 53212,
57
- "gzip": 11167
57
+ "gzip": 11168
58
58
  },
59
59
  "symfony/src/NoraManifest.php": {
60
- "sha256": "9fb276be09daa51a8f116f067213dd6a77ebf652ffdbe246aeadfcf47c2f6d6f",
61
- "sri": "sha384-IhvoDftLgO3UuzEfLBESkqW2KrPmRy51Ge2k/VPkPxgb5u8zNfR68k6hT6P0VwBm",
60
+ "sha256": "b4fb87f2453abf697fda0c79064e16e95c1e597f51f57a228b0f369ae4826d1d",
61
+ "sri": "sha384-D9jC3eqtMxA7bm3YmgszRqilKyXKt/CBw6l6dPik7Kfl8jSs4jVhAcFelH6i9y9C",
62
62
  "bytes": 6061,
63
63
  "gzip": 1242
64
64
  },
65
65
  "symfony/src/Enum/NoraTone.php": {
66
- "sha256": "2ab0468d2878c602fbd66c365a9e3faacba79d25c3a0a86ef6043411987008a9",
67
- "sri": "sha384-uPFfQQFpskrZkqOEOz3QGQoS9EcnZzITzWSKh5j9ZpAF8NJRpZ1HChlvbA++ygUe",
66
+ "sha256": "0bc98bb192d4bd95da52ab4fba16d6a483705f89bc20c1badddad1b436fd9331",
67
+ "sri": "sha384-53GOBfEQPMfGxUWuufKHkYlaNIQmxDMll1qEg/HeXAemnUppELRYTD3pgn2T/jDr",
68
68
  "bytes": 1052,
69
69
  "gzip": 616
70
70
  },
71
71
  "symfony/src/Enum/NoraSize.php": {
72
- "sha256": "4e902d7db00d89e2ac3aa19561180ffffb8a1c521c2781353027c8f04af9e9b8",
73
- "sri": "sha384-XQ5uHhzthsWAxQv8nmV3MNKTTkg+RPya6ydL+s3GPfAh8ohtQjzCNtclpqEKPGrM",
72
+ "sha256": "fd85b8247c045aa262bf86aeea7b4a001c9633fa18c59f713646fb6fc10aa287",
73
+ "sri": "sha384-E0kGHg8mp2zwknXLmAm/z5Z36Wb1QMI4pAVr1PxajcfUJIa8RXW3IsvZJTluGYtw",
74
74
  "bytes": 1083,
75
75
  "gzip": 633
76
76
  },
77
77
  "symfony/src/Enum/NoraComponent.php": {
78
- "sha256": "1a6c4aae900c93fbac7c1e7ea1d362ed8d0b3e32df89de40a708dc697bdc7dc7",
79
- "sri": "sha384-zqDjNpVGm+qmQd8LD41MUJcNX/u65r/96ArXORbSTB4hkVHwaqV2UVDpvT81DxsY",
78
+ "sha256": "33560db4697980d129416d9eb55ff84a8d2e8ecfa26a50ce2c709fd329bf2049",
79
+ "sri": "sha384-9U84DvHmOFptMioqr6JIn9u1tshIS6HKl1rHlIaEH6BLjvLpiHELXlFylC81YTJu",
80
80
  "bytes": 947,
81
81
  "gzip": 537
82
82
  },
83
83
  "symfony/templates/components/Nora/Avatar.html.twig": {
84
- "sha256": "b776be65660e4c1258f5b2724224de432ce1dccdccb94e3562fe64865608f86c",
85
- "sri": "sha384-qjfWrgyUXR0rwNdYmiRl3fOY+79gpIuJon0+51E9ePnRLSOI/3OjfNwuE4MsSsiO",
84
+ "sha256": "5105cd74edf9254476343fc789c4e2f7db403a70d84892e5f4e1557e1bf6b7d9",
85
+ "sri": "sha384-ViQ5yDUjoGjv7u79fGZKHzPPVJCCPNcKcsgcst1u2IVniLdvrpCDD9PnxG4kfqoB",
86
86
  "bytes": 1048,
87
87
  "gzip": 577
88
88
  },
89
89
  "symfony/templates/components/Nora/Badge.html.twig": {
90
- "sha256": "0fbe77df39494f09eeea6121343ab85dc89e5e4a10c160a0d1f4fce6afa5b0f8",
91
- "sri": "sha384-IgkUlRCDowHI5NeI/HG+TMbya55j++aDxk0krhwyiWhUDLla6p0JEvRsJyrZU5pq",
90
+ "sha256": "be0e2756ef02488bf4eb65268ec6b11bedde32da3c75d2c131bf1d9324de7696",
91
+ "sri": "sha384-IunjrOsC1NhBLFn874ZYSMFm9TqVctVyzlWNRqCtmNlUs28ZQZioHThl7FOxtKUG",
92
92
  "bytes": 845,
93
93
  "gzip": 531
94
94
  },
95
95
  "symfony/templates/components/Nora/Btn.html.twig": {
96
- "sha256": "d688e85d25f2f238c29c29953bdca989da0eb6f29d08b7baa283822e054386dd",
97
- "sri": "sha384-UQN944vY/f3K9OWU1zVGkcjf6Mwp6RFXA6nFxukma9ZekDbtfGQWppLKrnHDffOC",
96
+ "sha256": "3abff4f8cd8e8195b0b0beedeab52ceb7f7127def361ede61595b6e801c63a55",
97
+ "sri": "sha384-9ABLBgYVUwDzBPPNpKzGc3InBc40TBdtHXYZJ7jPioNrIri0uOxFCf2yez68IkEV",
98
98
  "bytes": 1482,
99
99
  "gzip": 724
100
100
  },
101
101
  "symfony/templates/components/Nora/Card.html.twig": {
102
- "sha256": "4b4fb75521ab7b593a5d485c554496398d011caa1df608feb73404a8a90c8119",
103
- "sri": "sha384-sAgg2jzbeeAr/7UUMion+67S99wdk/hzUv96480lAWI95YehRWJHJXnnG38w1jAE",
102
+ "sha256": "66fda083e2030bdc7f6873e75d48d1dc56f4e196ec23e9ce850f1c60e4432c2a",
103
+ "sri": "sha384-FqQj+TBfUCdkpEFArJz/vjY2ylOGhvtVnRH2H/0q6hHsJ+hwBWA57kJGsSJmWmna",
104
104
  "bytes": 1339,
105
105
  "gzip": 607
106
106
  },
107
107
  "symfony/templates/components/Nora/Checkbox.html.twig": {
108
- "sha256": "31d3983dee1a7c6e329a4ea9a2d34e2e3fce85dba0790cc91f7bf7303caaa1ee",
109
- "sri": "sha384-yK8cO8Mj4dPFLzwX+vsof0MucurQ98l2Fdo23EgTzeDm3uIbgPQykxwbURdulbtS",
108
+ "sha256": "6c684cb744addf9b6003e4a8131a12890c17943f2d47c0bf631179a6eb8ddbb5",
109
+ "sri": "sha384-6HajpECXS+z2WDiTXWf452IiYga/E9+b1g4L2LrUH8uDZFU8cMK6k4XizIAw1DRF",
110
110
  "bytes": 862,
111
111
  "gzip": 537
112
112
  },
113
113
  "symfony/templates/components/Nora/Field.html.twig": {
114
- "sha256": "15c1b9d1df97d008d29375c73cc00f2a77da5747b96f4eaebd47cef2de8ff9e1",
115
- "sri": "sha384-M4Bt4dEjNFpo9lUw82z71PvXbvZMtyHVOg2OgZY88oXPj2/H07Vkao/b4wEBkwaM",
114
+ "sha256": "19214e9de270cdb62de0ae6ac42558c5b621450c9d283e663929c58e235fbe3f",
115
+ "sri": "sha384-Z25bp6JScLW7F2g4Bh7h3HaJR5aVseZKY44F+1Nfsq6I328K2syimz0ofbv5kNbc",
116
116
  "bytes": 2684,
117
117
  "gzip": 1143
118
118
  },
119
119
  "symfony/templates/components/Nora/Input.html.twig": {
120
- "sha256": "4b42950015e86c640194a35f8586f6fdc657242699d0c7dcae67182a3597d153",
121
- "sri": "sha384-q7zWqMvL71gdtZEVYN5nlBCIMYYoirTUoI4V4DM1+PQdfWwQS3aCboVFu0wax/Nm",
120
+ "sha256": "3b573585990e047797cdf570f7e2b5a065f83f56035cc4e938d3defd9b031638",
121
+ "sri": "sha384-Kbw60ZVOShi4fpxHYa4vKe3J7rCZ2v+BfysY9ODiEAF91Gu6bXpQAXKtZivASuP9",
122
122
  "bytes": 769,
123
123
  "gzip": 484
124
124
  },
125
125
  "symfony/templates/components/Nora/Link.html.twig": {
126
- "sha256": "8cefaa1a82693dd309d94dbc143a6f75c46e5ec9cdcfee48161422bef97be694",
127
- "sri": "sha384-4ZJ0hbOmk/bqrbUBT2DVu5X/2TolyHG9mM9wJb2lvJ/pXnX7crevPw2WDRsGj3HZ",
126
+ "sha256": "3267caf104a7b97f67666080aee8ce84cc41a306a08994ab7b2876efa0fa24f4",
127
+ "sri": "sha384-aAI1B0Hs6wEdOVfDuUys8xiepz6JNlGvgqfbyawCuOnPWGuat4xO1aR8yT6bMME1",
128
128
  "bytes": 1253,
129
129
  "gzip": 658
130
130
  },
131
131
  "symfony/templates/components/Nora/Media.html.twig": {
132
- "sha256": "c3a313a0c9153f71186238030e13f50222bf35a7da5698a02cc0d9794842e1f8",
133
- "sri": "sha384-MfJ39yXdxV4UouTX4VWds0oHnWMAsgJaIJphd+hYIuOAfNCFA0ONuw300XhVKP4h",
132
+ "sha256": "1c0b70251826a92954e6a96a1c03c8842f1d6bff2426683c08d33b2acec51e65",
133
+ "sri": "sha384-cXs5D4h5Pu/GjmPHx5ZhOQyiuhtdrOVHWXUVUVgXQCm2v9ioGHkrUSFcyNilQu+t",
134
134
  "bytes": 1072,
135
- "gzip": 585
135
+ "gzip": 584
136
136
  },
137
137
  "symfony/templates/components/Nora/Navbar.html.twig": {
138
- "sha256": "c2f7dd719e30810e6e4ee07ccfe19dd727ca0217e815cb0157b604c2bec59a92",
139
- "sri": "sha384-F2M4LAq6hhJlhjnsKIDxd948qB+u/T0jqyK7ll0OKWx0kh7yQly6SNWk8YZniTgX",
138
+ "sha256": "cb98b385dc6fcd31a2762f7821265242f8682e92caa6e68bd8a33a850a559eb7",
139
+ "sri": "sha384-2BUOeWPkyY0C/uEj9Tntiv5Og9zm6dsVvOk2uEArVxqZt85ETgxqnukOB6z6urnv",
140
140
  "bytes": 809,
141
141
  "gzip": 510
142
142
  },
143
143
  "symfony/templates/components/Nora/Radio.html.twig": {
144
- "sha256": "0ae1c772438094aeb3cc8cdb0312716a8eda3c4c0d9833c280e8bd4212e9c76a",
145
- "sri": "sha384-qPSHRRzU24d5/12ghG9H7I1Jy+UeSMzio7aMBUKdIQjQLJTR6Erxyj97VEU+IYKP",
144
+ "sha256": "94219c2e8b993b71c1baca515bc78361460da422131bab1adba9151617e79b91",
145
+ "sri": "sha384-4I1O9TYxWWUHQvIWnODGr47Ihfl8KNTX25KCr0xY5gdaiuBKoAfN1DBjGLZOKcOf",
146
146
  "bytes": 853,
147
147
  "gzip": 533
148
148
  },
149
149
  "symfony/templates/components/Nora/Select.html.twig": {
150
- "sha256": "720b852192c7dd9f709d0b520e9543e2afb7a319c09dd0fb1973e25a8d322667",
151
- "sri": "sha384-ao6poB3QibibzhU/y06g4YCMO7NzVy/B+eCa4M+qJBy0Sd0zmj5wmcgJnE+J0J0U",
150
+ "sha256": "148c2cb78da7097e84050fd0e465db05bb549b833cd8d1490923fd7b8aec38c2",
151
+ "sri": "sha384-41onPmFXkbuopfwJVeotexLTCfbSsxTlneIwyPsGQFiR/W0nGeyqgeAGsYmcspPa",
152
152
  "bytes": 815,
153
153
  "gzip": 510
154
154
  },
155
155
  "symfony/templates/components/Nora/Switch.html.twig": {
156
- "sha256": "908e881014dfb3304f92dd1cc953575726bf80db2549d7db62ec019dbc896d03",
157
- "sri": "sha384-MtMtDCyKTLLn0o/F9QtuaOUHCKnk4nbuIFrKOQXAJ4H9QgE/9mM3fvqFguWf+oPv",
156
+ "sha256": "2723ff2466cb35a66c7bee9ec61858f04437917e0603200ce22e5ab0d540629c",
157
+ "sri": "sha384-0OSrw6SC0q/cdRZzpdBpAQ2f8QcYwDMAwWHVEVQG56rZx7uIz5YOi9MTMyQb1VLc",
158
158
  "bytes": 856,
159
159
  "gzip": 535
160
160
  },
161
161
  "symfony/templates/components/Nora/Textarea.html.twig": {
162
- "sha256": "b19b4d041784f7d105b5c54036a26d78b7996ffe7917ee5ecba6d70dfe347e7b",
163
- "sri": "sha384-9gAvbCzigemifGo3SKyByjNk9kMOio8Wu5YI2nmgulT/ma/IiRzrZcr/Xp0TD5i8",
162
+ "sha256": "392c8bea6b8b5009974fd8139984ffdbdaa9f04ee9d084edff417f55d0964e96",
163
+ "sri": "sha384-CDFFrVO8v2vFDp77ZLHkMcwNViBnzKQD3oabKdgouDjzT2dBuHqgt2mkfFkwOubr",
164
164
  "bytes": 825,
165
165
  "gzip": 512
166
166
  },
167
167
  "manifest.json": {
168
- "sha256": "9e3665948411c505d23532d6d15bc59caeb28e6469f180af598b16908660b611",
169
- "sri": "sha384-T/J2aViGnR1MUyIBLZUM5nTsUk7Gr8DTopgiLX5zyBfztnwWokf5VMbpOhGUUy99",
168
+ "sha256": "261a0f02420e59588d5b1c2d3f3f375dd5d8c4c3f7b73f5276f0cd3c30e0ac4f",
169
+ "sri": "sha384-sfKii/TJ2Mfo7zMZvBSK+trft/wmepHfawaG2qn8/+R8pMai74I/rbHa8DEYXpA/",
170
170
  "bytes": 29097,
171
171
  "gzip": 5758
172
172
  },
173
173
  "llms-full.txt": {
174
- "sha256": "058c4379bb492aaf4e93257d185785ac1c10a7b88695988a77b269487a3d4ca1",
175
- "sri": "sha384-SZU8i6Y+63UnzZy3nYoPXsigokpR6tD+sDoFO96bVeAUilKe8E30DCVRyfK9AEE6",
174
+ "sha256": "1b05391f1d60461d30ce18a3e259e3802bcd15200267e28d7a8571b2e07cf427",
175
+ "sri": "sha384-+TIA5j9/n4U79Wd/XHFDVHhbHE1AmLo7AZ9KF52aZuBab/KKsO6xKTeaWI1v+lvH",
176
176
  "bytes": 16080,
177
177
  "gzip": 4786
178
178
  },
179
179
  "fx/fx-scroll.js": {
180
- "sha256": "f4fd09fa9f74feed69d7e06f5fedc1ad117c1e87b20fb711b901218434e8c1d7",
181
- "sri": "sha384-gq0qf+hMRs9uV5HjWGIpUq2WC8CE81o/Kb6LQzXO4w8SiZ3E4OsHtW7l2B6y+zim",
180
+ "sha256": "9dd2a584efb24a077b4c39fa4014013eac90685b8ab6a2a791d191b3746a26e6",
181
+ "sri": "sha384-HXxGXxh9xlOR5OawA/zAaWHuMk1OBoxhyu38aJb3zGBK8bduxtZgdzHtSLrvJFmE",
182
182
  "bytes": 3705,
183
183
  "gzip": 1373
184
184
  },
185
185
  "fx/fx-scroll.css": {
186
- "sha256": "fbacdb59c8479c92ecac1b8fa0681098259364991c331b0252df6a9911f979c2",
187
- "sri": "sha384-6Al4RQj3pYcYtNYbjdkmkETafVnCLLexuCY6wnCwrfzf8Qdqttvyix28QwbhJ7Tj",
186
+ "sha256": "8de26f7c22c5813e61675512d22f151213aba65b2c2a5337bf340065f8e8053b",
187
+ "sri": "sha384-nZBqhyMn4j/d+DutngEX5f+g9u3xcRZTVEL2AyvFcrb3d66VY8ArsXCknKhini4z",
188
188
  "bytes": 1066,
189
189
  "gzip": 574
190
190
  },
191
191
  "fx/fx-text.js": {
192
- "sha256": "4707fcc7ea3456fd3239f71d4779b632c97783667639814f97e40deced900f3d",
193
- "sri": "sha384-+9c/gAkTM91JnEeB9WEqALqyRjqlwKYZ3h+jA7K26iVwPlZddHWMVzOO0m4lVMZy",
192
+ "sha256": "a3368b94921fdfbb071dafd3bd941bb784821f751b810117388a390c11d852b2",
193
+ "sri": "sha384-jmJHTRc9wmEy/V3/bmkOO1br6X/3Bwqxsm8kgtVbC/VDHStPqqoD9clAAg+sBicR",
194
194
  "bytes": 3872,
195
195
  "gzip": 1598
196
196
  },
197
197
  "fx/fx-text.css": {
198
- "sha256": "e67f14c29a94f5e15ad52aee76759778545b87980e35243c1fe75ca950ea9dfc",
199
- "sri": "sha384-iCIprwOH4WrnsL8kFkAsRGRMZt9y23pfmKRSZM/lWIlQNCKpW/6Ensu2LXX7EWBm",
198
+ "sha256": "84468dfe3576ab1e863947e4afb2d1bca2a39396f646b18030f96a7963464eec",
199
+ "sri": "sha384-duEN4c4vzoHkATt7O576zuuGcmqGjnlOefWGBb5UUfUEZl1WBhIat3x9E5boFnQ7",
200
200
  "bytes": 1155,
201
- "gzip": 632
201
+ "gzip": 631
202
202
  },
203
203
  "flutter/noraivoire_fx.dart": {
204
- "sha256": "f1eca1d29555b1cfb83db65960235ef0231be0348013229e220009769d5e9e82",
205
- "sri": "sha384-sg+MpMVw6wZBHfrDFLxB0vdjUVlUBrN63cuia6Hz03SQ05ygdZic6Z/ilEUtBBN1",
204
+ "sha256": "7f7ab8a11fc4ae8bcf41239cc9c152a3a0993463cf62fa729da6c825ad163848",
205
+ "sri": "sha384-+TAUHw8YnI7bPs50F1T8+PHuHnER5l5bFmRodjOHYNlKT2+282MrbMUFBTWtPhdO",
206
206
  "bytes": 4204,
207
207
  "gzip": 1807
208
208
  },
209
209
  "react-native/noraivoire-fx.tsx": {
210
- "sha256": "48dc5c80e97378af7d40ac193521cbe6071dd4a41b1272f107dcd74b8e5be615",
211
- "sri": "sha384-q1E4Wcmrh5lhocF7GIaY99ASdKTzMGsOeYpw323nfxo9G1SQLTaYg18G1FoIv2GC",
210
+ "sha256": "8e910114029c24186acc259d15c2d54ae5457adaaa43def8ff67a3a21832283b",
211
+ "sri": "sha384-wNAIHqgecbp2brKDZN5NiqOcqn36O0jR0rYi5cF9YeXYRgQFfB0wH4en8yGryBsP",
212
212
  "bytes": 3464,
213
213
  "gzip": 1641
214
214
  }
@@ -1,4 +1,4 @@
1
- # NoraIvoire 0.1.1
1
+ # NoraIvoire 0.1.2
2
2
 
3
3
  > Langage de design universel : une spec → CSS (HTML, Twig, JSP, React, Next.js, Vue, Angular), Flutter et React Native.
4
4
  > Logiciel propriétaire © Jonathan KABLAN. Ce fichier est le contrat complet de l'API : n'utilise RIEN qui n'y figure pas.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://noraivoire.local/schema/manifest-1.json",
3
3
  "name": "NoraIvoire",
4
- "version": "0.1.1",
4
+ "version": "0.1.2",
5
5
  "license": "UNLICENSED — propriétaire, © Jonathan KABLAN",
6
6
  "grammar": {
7
7
  "component": ".{composant}",
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * NoraIvoire 0.1.1 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
2
+ * NoraIvoire 0.1.2 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
3
3
  * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  */
@@ -17,7 +17,7 @@
17
17
  @layer nora.tokens {
18
18
  :root {
19
19
  color-scheme: light dark;
20
- --nora-color-primary: #C94A0B;
20
+ --nora-color-primary: #C1470B;
21
21
  --nora-color-on-primary: #FFFFFF;
22
22
  --nora-color-neutral: #3B3F46;
23
23
  --nora-color-on-neutral: #FFFFFF;
@@ -25,7 +25,7 @@
25
25
  --nora-color-on-danger: #FFFFFF;
26
26
  --nora-color-success: #1B7F3B;
27
27
  --nora-color-on-success: #FFFFFF;
28
- --nora-color-warning: #B35C00;
28
+ --nora-color-warning: #AC5800;
29
29
  --nora-color-on-warning: #FFFFFF;
30
30
  --nora-color-surface: #FFFFFF;
31
31
  --nora-color-surface-2: #F4F5F7;
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
  export type NoraOptionSchema = Record<string, { type: 'number'; default: number; min?: number; max?: number } | { type: 'boolean'; default: boolean }>;
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
 
@@ -1 +1 @@
1
- /*! * NoraIvoire 0.1.1 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main. * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés. * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite. */ *, *::before, *::after{box-sizing: border-box}:where(body, h1, h2, h3, h4, p, figure, blockquote, dl, dd){margin: 0}:where(img, picture, video, canvas, svg){display: block;max-inline-size: 100%}:where(input, button, textarea, select){font: inherit}:where(p, h1, h2, h3){overflow-wrap: break-word}:root{color-scheme: light dark;--nora-color-primary: #C94A0B;--nora-color-on-primary: #FFFFFF;--nora-color-neutral: #3B3F46;--nora-color-on-neutral: #FFFFFF;--nora-color-danger: #C92A2A;--nora-color-on-danger: #FFFFFF;--nora-color-success: #1B7F3B;--nora-color-on-success: #FFFFFF;--nora-color-warning: #B35C00;--nora-color-on-warning: #FFFFFF;--nora-color-surface: #FFFFFF;--nora-color-surface-2: #F4F5F7;--nora-color-text: #16181D;--nora-color-text-muted: #5C626B;--nora-color-border: #DDE0E4;--nora-color-focus: #1C7ED6;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF;--nora-space-0: 0rem;--nora-space-1: 0.25rem;--nora-space-2: 0.5rem;--nora-space-3: 0.75rem;--nora-space-4: 1rem;--nora-space-6: 1.5rem;--nora-space-8: 2rem;--nora-space-12: 3rem;--nora-radius-none: 0px;--nora-radius-sm: 4px;--nora-radius-md: 8px;--nora-radius-lg: 16px;--nora-radius-full: 9999px;--nora-font-sm: 0.875rem;--nora-font-md: 1rem;--nora-font-lg: 1.125rem;--nora-font-xl: 1.5rem;--nora-duration-fast: 150ms;--nora-duration-base: 250ms;--nora-duration-slow: 400ms}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}}:root[data-theme="dark"]{--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}:where(body){font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font-size: var(--nora-font-md);line-height: 1.5;color: var(--nora-color-text);background: var(--nora-color-surface);-webkit-font-smoothing: antialiased}:where(:focus-visible){outline: 2px solid var(--nora-color-focus);outline-offset: 2px}@media (prefers-reduced-motion: reduce){:where(*, *::before, *::after){animation-duration: 0.01ms;animation-iteration-count: 1;transition-duration: 0.01ms;scroll-behavior: auto}}:where(.container){inline-size: min(100% - 2rem, 72rem);margin-inline: auto}:where(.stack){display: flex;flex-direction: column;gap: var(--stack-gap, var(--nora-space-4))}:where(.cluster){display: flex;flex-wrap: wrap;align-items: center;gap: var(--cluster-gap, var(--nora-space-2))}:where(.grid-auto){display: grid;gap: var(--grid-gap, var(--nora-space-4));grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--grid-min, 16rem)), 1fr))}:where(.cq){container-type: inline-size}:where(.avatar){--avatar-bg: var(--nora-color-neutral);--avatar-fg: var(--nora-color-on-neutral);--avatar-radius: var(--nora-radius-full);--avatar-ring: var(--nora-color-surface);--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-md);--avatar-box: 2.5rem;display: inline-flex;align-items: center;justify-content: center;flex: none;vertical-align: middle;inline-size: var(--avatar-box);block-size: var(--avatar-box);border-radius: var(--avatar-radius);overflow: hidden;background-color: var(--avatar-bg);color: var(--avatar-fg);font-size: var(--avatar-font);font-weight: 600;line-height: 1;text-transform: uppercase;object-fit: cover;user-select: none}:where(.avatar[data-tone="primary"]){--avatar-bg: var(--nora-color-primary);--avatar-fg: var(--nora-color-on-primary)}:where(.avatar[data-tone="danger"]){--avatar-bg: var(--nora-color-danger);--avatar-fg: var(--nora-color-on-danger)}:where(.avatar[data-tone="success"]){--avatar-bg: var(--nora-color-success);--avatar-fg: var(--nora-color-on-success)}:where(.avatar[data-tone="warning"]){--avatar-bg: var(--nora-color-warning);--avatar-fg: var(--nora-color-on-warning)}:where(.avatar[data-size="sm"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-sm);--avatar-box: 2rem}:where(.avatar[data-size="lg"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-xl);--avatar-box: 4rem}:where(.avatar-group){display: inline-flex;align-items: center}:where(.avatar-group > .avatar){box-shadow: 0 0 0 2px var(--avatar-ring)}:where(.avatar-group > .avatar + .avatar){margin-inline-start: calc(var(--avatar-box) * -0.25)}@media (forced-colors: active){:where(.avatar){border: 1px solid CanvasText}}:where(.badge){--badge-bg: var(--nora-color-neutral);--badge-fg: var(--nora-color-on-neutral);--badge-radius: var(--nora-radius-full);--badge-pad-y: 0.125rem;--badge-pad-x: 0.5rem;--badge-font: var(--nora-font-sm);padding-block: var(--badge-pad-y);padding-inline: var(--badge-pad-x);font-size: var(--badge-font);background: var(--badge-bg);color: var(--badge-fg);border-radius: var(--badge-radius);display: inline-flex;align-items: center;inline-size: fit-content;font-weight: 600;line-height: 1;white-space: nowrap}:where(.badge[data-tone="primary"]){--badge-bg: var(--nora-color-primary);--badge-fg: var(--nora-color-on-primary)}:where(.badge[data-tone="danger"]){--badge-bg: var(--nora-color-danger);--badge-fg: var(--nora-color-on-danger)}:where(.badge[data-tone="success"]){--badge-bg: var(--nora-color-success);--badge-fg: var(--nora-color-on-success)}:where(.badge[data-tone="warning"]){--badge-bg: var(--nora-color-warning);--badge-fg: var(--nora-color-on-warning)}:where(.badge[data-size="md"]){--badge-pad-y: 0.25rem;--badge-pad-x: 0.75rem;--badge-font: var(--nora-font-md)}:where(.btn){--btn-bg: var(--nora-color-primary);--btn-fg: var(--nora-color-on-primary);--btn-radius: var(--nora-radius-md);--btn-pad-y: 0.625rem;--btn-pad-x: 1.25rem;--btn-font: var(--nora-font-md);padding-block: var(--btn-pad-y);padding-inline: var(--btn-pad-x);font-size: var(--btn-font);background: var(--btn-bg);color: var(--btn-fg);border-radius: var(--btn-radius);display: inline-flex;align-items: center;justify-content: center;gap: 0.5em;min-block-size: 44px;min-inline-size: 44px;border: 0;font-weight: 600;line-height: 1.2;text-decoration: none;cursor: pointer;user-select: none;-webkit-tap-highlight-color: transparent;transition: background-color var(--nora-duration-fast) ease, transform var(--nora-duration-fast) ease}:where(.btn[data-tone="neutral"]){--btn-bg: var(--nora-color-neutral);--btn-fg: var(--nora-color-on-neutral)}:where(.btn[data-tone="danger"]){--btn-bg: var(--nora-color-danger);--btn-fg: var(--nora-color-on-danger)}:where(.btn[data-tone="success"]){--btn-bg: var(--nora-color-success);--btn-fg: var(--nora-color-on-success)}:where(.btn[data-tone="warning"]){--btn-bg: var(--nora-color-warning);--btn-fg: var(--nora-color-on-warning)}:where(.btn[data-size="sm"]){--btn-pad-y: 0.375rem;--btn-pad-x: 0.75rem;--btn-font: var(--nora-font-sm)}:where(.btn[data-size="lg"]){--btn-pad-y: 0.875rem;--btn-pad-x: 1.75rem;--btn-font: var(--nora-font-lg)}:where(.btn:hover:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 6%)}:where(.btn:active:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 12%);transform: scale(0.97)}:where(.btn:disabled, .btn[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.card){--card-bg: var(--nora-color-surface);--card-fg: var(--nora-color-text);--card-radius: var(--nora-radius-lg);--card-border: var(--nora-color-border);--card-pad-y: 1rem;--card-pad-x: 1rem;--card-font: var(--nora-font-md);padding-block: var(--card-pad-y);padding-inline: var(--card-pad-x);font-size: var(--card-font);background: var(--card-bg);color: var(--card-fg);border-radius: var(--card-radius);display: block;border: 1px solid var(--card-border)}:where(.card[data-size="sm"]){--card-pad-y: 0.75rem;--card-pad-x: 0.75rem;--card-font: var(--nora-font-sm)}:where(.card[data-size="lg"]){--card-pad-y: 1.5rem;--card-pad-x: 1.5rem;--card-font: var(--nora-font-md)}:where(.checkbox){--checkbox-bg: var(--nora-color-surface);--checkbox-fg: var(--nora-color-text);--checkbox-radius: var(--nora-radius-sm);--checkbox-border: var(--nora-color-text-muted);--checkbox-accent: var(--nora-color-primary);--checkbox-on-accent: var(--nora-color-on-primary);--checkbox-focus: var(--nora-color-focus);--checkbox-invalid: var(--nora-color-danger);--checkbox-pad-y: 0.375rem;--checkbox-pad-x: 0.625rem;--checkbox-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--checkbox-pad-x);min-block-size: 44px;padding-block: var(--checkbox-pad-y);font-size: var(--checkbox-font);line-height: 1.3;color: var(--checkbox-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.checkbox[data-tone="neutral"]){--checkbox-accent: var(--nora-color-neutral);--checkbox-on-accent: var(--nora-color-on-neutral)}:where(.checkbox[data-tone="danger"]){--checkbox-accent: var(--nora-color-danger);--checkbox-on-accent: var(--nora-color-on-danger)}:where(.checkbox[data-tone="success"]){--checkbox-accent: var(--nora-color-success);--checkbox-on-accent: var(--nora-color-on-success)}:where(.checkbox[data-tone="warning"]){--checkbox-accent: var(--nora-color-warning);--checkbox-on-accent: var(--nora-color-on-warning)}:where(.checkbox[data-size="sm"]){--checkbox-pad-y: 0.25rem;--checkbox-pad-x: 0.5rem;--checkbox-font: var(--nora-font-sm)}:where(.checkbox[data-size="lg"]){--checkbox-pad-y: 0.5rem;--checkbox-pad-x: 0.75rem;--checkbox-font: var(--nora-font-lg)}:where(.checkbox) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--checkbox-bg);border: 2px solid var(--checkbox-border);border-radius: var(--checkbox-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.checkbox) > :where(input)::before{content: "";inline-size: 0.7em;block-size: 0.7em;background: var(--checkbox-on-accent);clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.checkbox) > :where(input:indeterminate)::before{clip-path: inset(40% 0);transform: scale(1)}:where(.checkbox) > :where(input:checked)::before{transform: scale(1)}:where(.checkbox) > :where(input:checked, input:indeterminate){background-color: var(--checkbox-accent);border-color: var(--checkbox-accent)}:where(.checkbox) > :where(input:focus-visible){outline: 2px solid var(--checkbox-focus);outline-offset: 2px}:where(.checkbox) > :where(input[aria-invalid="true"]){border-color: var(--checkbox-invalid)}:where(.checkbox:has(> input:disabled), .checkbox[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.checkbox) > :where(input){appearance: auto}}:where(.field){--field-fg: var(--nora-color-text);--field-muted: var(--nora-color-text-muted);--field-invalid: var(--nora-color-danger);--field-pad-y: 0.375rem;--field-pad-x: 0rem;--field-font: var(--nora-font-md);display: flex;flex-direction: column;gap: var(--field-pad-y);min-inline-size: 0;margin: 0;padding: 0;border: 0;font-size: var(--field-font);color: var(--field-fg)}:where(.field[data-size="sm"]){--field-pad-y: 0.25rem;--field-pad-x: 0rem;--field-font: var(--nora-font-sm)}:where(.field[data-size="lg"]){--field-pad-y: 0.5rem;--field-pad-x: 0rem;--field-font: var(--nora-font-lg)}:where(.field-label){font-weight: 600;line-height: 1.3;padding: 0}:where(.field-help){margin: 0;font-size: 0.875em;color: var(--field-muted)}:where(.field-error){margin: 0;font-size: 0.875em;font-weight: 600;color: var(--field-invalid)}:where(.field-error:empty){display: none}:where(.field:has(:disabled):not(:has(:enabled))) > :where(.field-label){opacity: 0.5}:where(.input){--input-bg: var(--nora-color-surface);--input-fg: var(--nora-color-text);--input-radius: var(--nora-radius-md);--input-border: var(--nora-color-text-muted);--input-muted: var(--nora-color-text-muted);--input-focus: var(--nora-color-focus);--input-invalid: var(--nora-color-danger);--input-pad-y: 0.625rem;--input-pad-x: 0.75rem;--input-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--input-pad-y);padding-inline: var(--input-pad-x);font-size: var(--input-font);line-height: 1.4;color: var(--input-fg);background-color: var(--input-bg);border: 1px solid var(--input-border);border-radius: var(--input-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease}:where(.input[data-size="sm"]){--input-pad-y: 0.375rem;--input-pad-x: 0.625rem;--input-font: var(--nora-font-sm)}:where(.input[data-size="lg"]){--input-pad-y: 0.75rem;--input-pad-x: 1rem;--input-font: var(--nora-font-lg)}:where(.input)::placeholder{color: var(--input-muted);opacity: 1}:where(.input:focus-visible){outline: 2px solid var(--input-focus);outline-offset: 1px;border-color: var(--input-focus)}:where(.input[aria-invalid="true"]){border-color: var(--input-invalid)}:where(.input[aria-invalid="true"]:focus-visible){outline-color: var(--input-invalid)}:where(.input:disabled, .input[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.link){--link-fg: var(--nora-color-primary);--link-visited: var(--nora-color-text-muted);--link-focus: var(--nora-color-focus);--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-md);color: var(--link-fg);text-decoration-line: underline;text-decoration-thickness: 1px;text-underline-offset: 0.2em;border-radius: 2px;cursor: pointer;transition: text-decoration-thickness var(--nora-duration-fast) ease, color var(--nora-duration-fast) ease}:where(.link[data-tone="neutral"]){--link-fg: var(--nora-color-neutral)}:where(.link[data-tone="danger"]){--link-fg: var(--nora-color-danger)}:where(.link[data-tone="success"]){--link-fg: var(--nora-color-success)}:where(.link[data-tone="warning"]){--link-fg: var(--nora-color-warning)}:where(.link[data-size="sm"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-sm)}:where(.link[data-size="lg"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-lg)}:where(.link[data-size]){font-size: var(--link-font)}:where(.link:hover){text-decoration-thickness: 2px}:where(.link:focus-visible){outline: 2px solid var(--link-focus);outline-offset: 2px;text-decoration-thickness: 2px}:where(.link[data-visited]:visited){color: var(--link-visited)}:where(.link[target="_blank"], .link[rel~="external"])::after{content: "\2197";content: "\2197" / "";display: inline-block;margin-inline-start: 0.15em;text-decoration: none}:where(.link[target="_blank"]:dir(rtl), .link[rel~="external"]:dir(rtl))::after{content: "\2196";content: "\2196" / ""}:where(.media){--media-bg: var(--nora-color-surface-2);--media-fg: var(--nora-color-text-muted);--media-radius: var(--nora-radius-lg);--media-scrim: var(--nora-color-scrim);--media-on-scrim: var(--nora-color-on-scrim);--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 16 / 9;display: grid;margin: 0;min-inline-size: 0;isolation: isolate}:where(.media[data-size="standard"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 4 / 3}:where(.media[data-size="square"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 1 / 1}:where(.media[data-size="portrait"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 3 / 4}:where(.media) > :where(img, picture, video, svg, canvas, iframe){grid-area: 1 / 1;display: block;inline-size: 100%;block-size: auto;aspect-ratio: var(--media-ratio);object-fit: cover;border-radius: var(--media-radius);background-color: var(--media-bg);overflow: hidden}:where(.media) > :where(picture) > :where(img){inline-size: 100%;block-size: 100%;object-fit: cover}:where(.media-overlay){grid-area: 1 / 1;align-self: end;z-index: 1;padding-block: 3em var(--media-pad-y);padding-inline: var(--media-pad-x);color: var(--media-on-scrim);font-weight: 600;text-shadow: 0 1px 2px rgb(0 0 0 / 0.45);background: linear-gradient(to top, color-mix(in srgb, var(--media-scrim) 85%, transparent), transparent);border-end-start-radius: var(--media-radius);border-end-end-radius: var(--media-radius)}@media (forced-colors: active){:where(.media-overlay){background: Canvas;color: CanvasText;text-shadow: none}}:where(.media-caption){padding-block-start: var(--media-pad-y);font-size: var(--media-font);color: var(--media-fg)}:where(.navbar){--navbar-bg: var(--nora-color-surface);--navbar-fg: var(--nora-color-text);--navbar-muted: var(--nora-color-text-muted);--navbar-border: var(--nora-color-border);--navbar-active: var(--nora-color-primary);--navbar-focus: var(--nora-color-focus);--navbar-pad-y: 0.5rem;--navbar-pad-x: 1rem;--navbar-font: var(--nora-font-md);display: flex;flex-wrap: wrap;align-items: center;column-gap: var(--navbar-pad-x);row-gap: var(--navbar-pad-y);padding-block: var(--navbar-pad-y);padding-inline: var(--navbar-pad-x);font-size: var(--navbar-font);color: var(--navbar-fg);background-color: var(--navbar-bg);border-block-end: 1px solid var(--navbar-border)}:where(.navbar[data-size="sm"]){--navbar-pad-y: 0.25rem;--navbar-pad-x: 0.75rem;--navbar-font: var(--nora-font-sm)}:where(.navbar[data-size="lg"]){--navbar-pad-y: 0.75rem;--navbar-pad-x: 1.5rem;--navbar-font: var(--nora-font-lg)}:where(.navbar-brand){display: inline-flex;align-items: center;gap: 0.5em;min-block-size: 44px;margin-inline-end: auto;font-weight: 700;font-size: 1.125em;color: inherit;text-decoration: none}:where(.navbar-menu){display: flex;align-items: center;gap: 0.25em;min-inline-size: 0;margin: 0;padding: 0;list-style: none;overflow-x: auto;scroll-snap-type: x proximity;scrollbar-width: thin}:where(.navbar-menu) > :where(li){flex: none;scroll-snap-align: start}:where(.navbar-menu) :where(a){display: inline-flex;align-items: center;min-block-size: 44px;padding-inline: 0.75em;color: var(--navbar-muted);font-weight: 500;text-decoration: none;white-space: nowrap;border-radius: var(--nora-radius-md);transition: color var(--nora-duration-fast) ease, background-color var(--nora-duration-fast) ease}:where(.navbar-menu) :where(a:hover){color: var(--navbar-fg);background-color: color-mix(in srgb, var(--navbar-fg) 6%, transparent)}:where(.navbar-menu) :where(a:focus-visible){outline: 2px solid var(--navbar-focus);outline-offset: -2px}:where(.navbar-menu) :where(a[aria-current="page"]){color: var(--navbar-active);font-weight: 600;box-shadow: inset 0 -2px 0 var(--navbar-active)}@media (max-width: 40rem){:where(.navbar-menu){order: 3;flex-basis: 100%}}@media (forced-colors: active){:where(.navbar-menu) :where(a[aria-current="page"]){text-decoration: underline;text-decoration-thickness: 2px}}:where(.navbar-actions){display: flex;flex-wrap: wrap;align-items: center;gap: 0.5em}:where(.radio){--radio-bg: var(--nora-color-surface);--radio-fg: var(--nora-color-text);--radio-radius: var(--nora-radius-full);--radio-border: var(--nora-color-text-muted);--radio-accent: var(--nora-color-primary);--radio-on-accent: var(--nora-color-on-primary);--radio-focus: var(--nora-color-focus);--radio-invalid: var(--nora-color-danger);--radio-pad-y: 0.375rem;--radio-pad-x: 0.625rem;--radio-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--radio-pad-x);min-block-size: 44px;padding-block: var(--radio-pad-y);font-size: var(--radio-font);line-height: 1.3;color: var(--radio-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.radio[data-tone="neutral"]){--radio-accent: var(--nora-color-neutral);--radio-on-accent: var(--nora-color-on-neutral)}:where(.radio[data-tone="danger"]){--radio-accent: var(--nora-color-danger);--radio-on-accent: var(--nora-color-on-danger)}:where(.radio[data-tone="success"]){--radio-accent: var(--nora-color-success);--radio-on-accent: var(--nora-color-on-success)}:where(.radio[data-tone="warning"]){--radio-accent: var(--nora-color-warning);--radio-on-accent: var(--nora-color-on-warning)}:where(.radio[data-size="sm"]){--radio-pad-y: 0.25rem;--radio-pad-x: 0.5rem;--radio-font: var(--nora-font-sm)}:where(.radio[data-size="lg"]){--radio-pad-y: 0.5rem;--radio-pad-x: 0.75rem;--radio-font: var(--nora-font-lg)}:where(.radio) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--radio-bg);border: 2px solid var(--radio-border);border-radius: var(--radio-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.radio) > :where(input)::before{content: "";inline-size: 0.5em;block-size: 0.5em;border-radius: 50%;background: var(--radio-on-accent);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.radio) > :where(input:checked)::before{transform: scale(1)}:where(.radio) > :where(input:checked){background-color: var(--radio-accent);border-color: var(--radio-accent)}:where(.radio) > :where(input:focus-visible){outline: 2px solid var(--radio-focus);outline-offset: 2px}:where(.radio) > :where(input[aria-invalid="true"]){border-color: var(--radio-invalid)}:where(.radio:has(> input:disabled), .radio[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.radio) > :where(input){appearance: auto}}:where(.select){--select-bg: var(--nora-color-surface);--select-fg: var(--nora-color-text);--select-radius: var(--nora-radius-md);--select-border: var(--nora-color-text-muted);--select-muted: var(--nora-color-text-muted);--select-focus: var(--nora-color-focus);--select-invalid: var(--nora-color-danger);--select-pad-y: 0.625rem;--select-pad-x: 0.75rem;--select-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--select-pad-y);padding-inline: var(--select-pad-x);font-size: var(--select-font);line-height: 1.4;color: var(--select-fg);background-color: var(--select-bg);border: 1px solid var(--select-border);border-radius: var(--select-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;appearance: none;padding-inline-end: calc(var(--select-pad-x) + 1.25em);background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);background-position: calc(100% - var(--select-pad-x) - 0.375em) 50%, calc(100% - var(--select-pad-x)) 50%;background-size: 0.375em 0.375em;background-repeat: no-repeat}:where(.select[data-size="sm"]){--select-pad-y: 0.375rem;--select-pad-x: 0.625rem;--select-font: var(--nora-font-sm)}:where(.select[data-size="lg"]){--select-pad-y: 0.75rem;--select-pad-x: 1rem;--select-font: var(--nora-font-lg)}:where(.select[multiple], .select[size]){background-image: none;padding-inline-end: var(--select-pad-x)}:where(.select)::placeholder{color: var(--select-muted);opacity: 1}:where(.select:focus-visible){outline: 2px solid var(--select-focus);outline-offset: 1px;border-color: var(--select-focus)}:where(.select[aria-invalid="true"]){border-color: var(--select-invalid)}:where(.select[aria-invalid="true"]:focus-visible){outline-color: var(--select-invalid)}:where(.select:disabled, .select[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.switch){--switch-bg: var(--nora-color-surface);--switch-fg: var(--nora-color-text);--switch-radius: var(--nora-radius-full);--switch-border: var(--nora-color-text-muted);--switch-accent: var(--nora-color-primary);--switch-on-accent: var(--nora-color-on-primary);--switch-focus: var(--nora-color-focus);--switch-invalid: var(--nora-color-danger);--switch-pad-y: 0.375rem;--switch-pad-x: 0.625rem;--switch-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--switch-pad-x);min-block-size: 44px;padding-block: var(--switch-pad-y);font-size: var(--switch-font);line-height: 1.3;color: var(--switch-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.switch[data-tone="neutral"]){--switch-accent: var(--nora-color-neutral);--switch-on-accent: var(--nora-color-on-neutral)}:where(.switch[data-tone="danger"]){--switch-accent: var(--nora-color-danger);--switch-on-accent: var(--nora-color-on-danger)}:where(.switch[data-tone="success"]){--switch-accent: var(--nora-color-success);--switch-on-accent: var(--nora-color-on-success)}:where(.switch[data-tone="warning"]){--switch-accent: var(--nora-color-warning);--switch-on-accent: var(--nora-color-on-warning)}:where(.switch[data-size="sm"]){--switch-pad-y: 0.25rem;--switch-pad-x: 0.5rem;--switch-font: var(--nora-font-sm)}:where(.switch[data-size="lg"]){--switch-pad-y: 0.5rem;--switch-pad-x: 0.75rem;--switch-font: var(--nora-font-lg)}:where(.switch) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-flex;align-items: center;inline-size: 2.25em;block-size: 1.25em;background-color: var(--switch-border);border: 2px solid var(--switch-border);border-radius: var(--switch-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.switch) > :where(input)::before{content: "";inline-size: calc(1.25em - 8px);block-size: calc(1.25em - 8px);margin-inline-start: 2px;border-radius: 50%;background: var(--switch-bg);transition: transform var(--nora-duration-fast) ease}:where(.switch) > :where(input:checked)::before{transform: translateX(1em);background: var(--switch-on-accent)}:where(.switch:dir(rtl)) > :where(input:checked)::before{transform: translateX(-1em)}:where(.switch) > :where(input:checked){background-color: var(--switch-accent);border-color: var(--switch-accent)}:where(.switch) > :where(input:focus-visible){outline: 2px solid var(--switch-focus);outline-offset: 2px}:where(.switch) > :where(input[aria-invalid="true"]){border-color: var(--switch-invalid)}:where(.switch:has(> input:disabled), .switch[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.switch) > :where(input){appearance: auto}}:where(.textarea){--textarea-bg: var(--nora-color-surface);--textarea-fg: var(--nora-color-text);--textarea-radius: var(--nora-radius-md);--textarea-border: var(--nora-color-text-muted);--textarea-muted: var(--nora-color-text-muted);--textarea-focus: var(--nora-color-focus);--textarea-invalid: var(--nora-color-danger);--textarea-pad-y: 0.625rem;--textarea-pad-x: 0.75rem;--textarea-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 6rem;padding-block: var(--textarea-pad-y);padding-inline: var(--textarea-pad-x);font-size: var(--textarea-font);line-height: 1.4;color: var(--textarea-fg);background-color: var(--textarea-bg);border: 1px solid var(--textarea-border);border-radius: var(--textarea-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;resize: vertical}:where(.textarea[data-size="sm"]){--textarea-pad-y: 0.375rem;--textarea-pad-x: 0.625rem;--textarea-font: var(--nora-font-sm)}:where(.textarea[data-size="lg"]){--textarea-pad-y: 0.75rem;--textarea-pad-x: 1rem;--textarea-font: var(--nora-font-lg)}:where(.textarea)::placeholder{color: var(--textarea-muted);opacity: 1}:where(.textarea:focus-visible){outline: 2px solid var(--textarea-focus);outline-offset: 1px;border-color: var(--textarea-focus)}:where(.textarea[aria-invalid="true"]){border-color: var(--textarea-invalid)}:where(.textarea[aria-invalid="true"]:focus-visible){outline-color: var(--textarea-invalid)}:where(.textarea:disabled, .textarea[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}.fx-glass{background: var(--nora-color-surface)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.fx-glass{background: color-mix(in srgb, var(--nora-color-surface) 60%, transparent);-webkit-backdrop-filter: blur(16px) saturate(140%);backdrop-filter: blur(16px) saturate(140%)}}@keyframes nora-reveal{from{opacity: 0;transform: translateY(24px)}to{opacity: 1;transform: none}}@supports (animation-timeline: view()){[data-fx~="reveal"]{animation: nora-reveal linear both;animation-timeline: view();animation-range: entry 0% cover 30%}}@supports not (animation-timeline: view()){:root[data-nora-engine] [data-fx~="reveal"]{transition: opacity 400ms ease, transform 400ms ease}:root[data-nora-engine] [data-fx~="reveal"]:not([data-fx-visible]){opacity: 0;transform: translateY(24px)}}[data-fx~="tilt"]{position: relative;transform: perspective(800px) rotateX(var(--fx-rx, 0deg)) rotateY(var(--fx-ry, 0deg));transition: transform 150ms ease-out;transform-style: preserve-3d}[data-fx~="tilt"][data-fx-glare]::after{content: "";position: absolute;inset: 0;border-radius: inherit;pointer-events: none;background: radial-gradient(circle at var(--fx-gx, 50%) var(--fx-gy, 50%), rgb(255 255 255 / 0.28), transparent 60%);opacity: var(--fx-glare-o, 0);transition: opacity 200ms ease}@media (prefers-reduced-motion: reduce){[data-fx~="reveal"], [data-fx~="tilt"]{transform: none;animation: none;opacity: 1}}.p-0{padding: var(--nora-space-0)}.px-0{padding-inline: var(--nora-space-0)}.py-0{padding-block: var(--nora-space-0)}.m-0{margin: var(--nora-space-0)}.mx-0{margin-inline: var(--nora-space-0)}.my-0{margin-block: var(--nora-space-0)}.gap-0{gap: var(--nora-space-0)}.p-1{padding: var(--nora-space-1)}.px-1{padding-inline: var(--nora-space-1)}.py-1{padding-block: var(--nora-space-1)}.m-1{margin: var(--nora-space-1)}.mx-1{margin-inline: var(--nora-space-1)}.my-1{margin-block: var(--nora-space-1)}.gap-1{gap: var(--nora-space-1)}.p-2{padding: var(--nora-space-2)}.px-2{padding-inline: var(--nora-space-2)}.py-2{padding-block: var(--nora-space-2)}.m-2{margin: var(--nora-space-2)}.mx-2{margin-inline: var(--nora-space-2)}.my-2{margin-block: var(--nora-space-2)}.gap-2{gap: var(--nora-space-2)}.p-3{padding: var(--nora-space-3)}.px-3{padding-inline: var(--nora-space-3)}.py-3{padding-block: var(--nora-space-3)}.m-3{margin: var(--nora-space-3)}.mx-3{margin-inline: var(--nora-space-3)}.my-3{margin-block: var(--nora-space-3)}.gap-3{gap: var(--nora-space-3)}.p-4{padding: var(--nora-space-4)}.px-4{padding-inline: var(--nora-space-4)}.py-4{padding-block: var(--nora-space-4)}.m-4{margin: var(--nora-space-4)}.mx-4{margin-inline: var(--nora-space-4)}.my-4{margin-block: var(--nora-space-4)}.gap-4{gap: var(--nora-space-4)}.p-6{padding: var(--nora-space-6)}.px-6{padding-inline: var(--nora-space-6)}.py-6{padding-block: var(--nora-space-6)}.m-6{margin: var(--nora-space-6)}.mx-6{margin-inline: var(--nora-space-6)}.my-6{margin-block: var(--nora-space-6)}.gap-6{gap: var(--nora-space-6)}.p-8{padding: var(--nora-space-8)}.px-8{padding-inline: var(--nora-space-8)}.py-8{padding-block: var(--nora-space-8)}.m-8{margin: var(--nora-space-8)}.mx-8{margin-inline: var(--nora-space-8)}.my-8{margin-block: var(--nora-space-8)}.gap-8{gap: var(--nora-space-8)}.p-12{padding: var(--nora-space-12)}.px-12{padding-inline: var(--nora-space-12)}.py-12{padding-block: var(--nora-space-12)}.m-12{margin: var(--nora-space-12)}.mx-12{margin-inline: var(--nora-space-12)}.my-12{margin-block: var(--nora-space-12)}.gap-12{gap: var(--nora-space-12)}.mx-auto{margin-inline: auto}.rounded-none{border-radius: var(--nora-radius-none)}.rounded-sm{border-radius: var(--nora-radius-sm)}.rounded-md{border-radius: var(--nora-radius-md)}.rounded-lg{border-radius: var(--nora-radius-lg)}.rounded-full{border-radius: var(--nora-radius-full)}.text-sm{font-size: var(--nora-font-sm)}.text-md{font-size: var(--nora-font-md)}.text-lg{font-size: var(--nora-font-lg)}.text-xl{font-size: var(--nora-font-xl)}.text-muted{color: var(--nora-color-text-muted)}.text-center{text-align: center}.font-bold{font-weight: 700}.shadow-sm{box-shadow: 0 1px 2px rgb(0 0 0 / 0.08), 0 1px 3px rgb(0 0 0 / 0.06)}.shadow-lg{box-shadow: 0 10px 30px rgb(0 0 0 / 0.12), 0 4px 8px rgb(0 0 0 / 0.06)}.w-full{inline-size: 100%}.hidden{display: none}.sr-only{position: absolute;inline-size: 1px;block-size: 1px;padding: 0;margin: -1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap;border: 0}
1
+ /*! * NoraIvoire 0.1.2 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main. * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés. * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite. */ *, *::before, *::after{box-sizing: border-box}:where(body, h1, h2, h3, h4, p, figure, blockquote, dl, dd){margin: 0}:where(img, picture, video, canvas, svg){display: block;max-inline-size: 100%}:where(input, button, textarea, select){font: inherit}:where(p, h1, h2, h3){overflow-wrap: break-word}:root{color-scheme: light dark;--nora-color-primary: #C1470B;--nora-color-on-primary: #FFFFFF;--nora-color-neutral: #3B3F46;--nora-color-on-neutral: #FFFFFF;--nora-color-danger: #C92A2A;--nora-color-on-danger: #FFFFFF;--nora-color-success: #1B7F3B;--nora-color-on-success: #FFFFFF;--nora-color-warning: #AC5800;--nora-color-on-warning: #FFFFFF;--nora-color-surface: #FFFFFF;--nora-color-surface-2: #F4F5F7;--nora-color-text: #16181D;--nora-color-text-muted: #5C626B;--nora-color-border: #DDE0E4;--nora-color-focus: #1C7ED6;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF;--nora-space-0: 0rem;--nora-space-1: 0.25rem;--nora-space-2: 0.5rem;--nora-space-3: 0.75rem;--nora-space-4: 1rem;--nora-space-6: 1.5rem;--nora-space-8: 2rem;--nora-space-12: 3rem;--nora-radius-none: 0px;--nora-radius-sm: 4px;--nora-radius-md: 8px;--nora-radius-lg: 16px;--nora-radius-full: 9999px;--nora-font-sm: 0.875rem;--nora-font-md: 1rem;--nora-font-lg: 1.125rem;--nora-font-xl: 1.5rem;--nora-duration-fast: 150ms;--nora-duration-base: 250ms;--nora-duration-slow: 400ms}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}}:root[data-theme="dark"]{--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}:where(body){font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font-size: var(--nora-font-md);line-height: 1.5;color: var(--nora-color-text);background: var(--nora-color-surface);-webkit-font-smoothing: antialiased}:where(:focus-visible){outline: 2px solid var(--nora-color-focus);outline-offset: 2px}@media (prefers-reduced-motion: reduce){:where(*, *::before, *::after){animation-duration: 0.01ms;animation-iteration-count: 1;transition-duration: 0.01ms;scroll-behavior: auto}}:where(.container){inline-size: min(100% - 2rem, 72rem);margin-inline: auto}:where(.stack){display: flex;flex-direction: column;gap: var(--stack-gap, var(--nora-space-4))}:where(.cluster){display: flex;flex-wrap: wrap;align-items: center;gap: var(--cluster-gap, var(--nora-space-2))}:where(.grid-auto){display: grid;gap: var(--grid-gap, var(--nora-space-4));grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--grid-min, 16rem)), 1fr))}:where(.cq){container-type: inline-size}:where(.avatar){--avatar-bg: var(--nora-color-neutral);--avatar-fg: var(--nora-color-on-neutral);--avatar-radius: var(--nora-radius-full);--avatar-ring: var(--nora-color-surface);--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-md);--avatar-box: 2.5rem;display: inline-flex;align-items: center;justify-content: center;flex: none;vertical-align: middle;inline-size: var(--avatar-box);block-size: var(--avatar-box);border-radius: var(--avatar-radius);overflow: hidden;background-color: var(--avatar-bg);color: var(--avatar-fg);font-size: var(--avatar-font);font-weight: 600;line-height: 1;text-transform: uppercase;object-fit: cover;user-select: none}:where(.avatar[data-tone="primary"]){--avatar-bg: var(--nora-color-primary);--avatar-fg: var(--nora-color-on-primary)}:where(.avatar[data-tone="danger"]){--avatar-bg: var(--nora-color-danger);--avatar-fg: var(--nora-color-on-danger)}:where(.avatar[data-tone="success"]){--avatar-bg: var(--nora-color-success);--avatar-fg: var(--nora-color-on-success)}:where(.avatar[data-tone="warning"]){--avatar-bg: var(--nora-color-warning);--avatar-fg: var(--nora-color-on-warning)}:where(.avatar[data-size="sm"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-sm);--avatar-box: 2rem}:where(.avatar[data-size="lg"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-xl);--avatar-box: 4rem}:where(.avatar-group){display: inline-flex;align-items: center}:where(.avatar-group > .avatar){box-shadow: 0 0 0 2px var(--avatar-ring)}:where(.avatar-group > .avatar + .avatar){margin-inline-start: calc(var(--avatar-box) * -0.25)}@media (forced-colors: active){:where(.avatar){border: 1px solid CanvasText}}:where(.badge){--badge-bg: var(--nora-color-neutral);--badge-fg: var(--nora-color-on-neutral);--badge-radius: var(--nora-radius-full);--badge-pad-y: 0.125rem;--badge-pad-x: 0.5rem;--badge-font: var(--nora-font-sm);padding-block: var(--badge-pad-y);padding-inline: var(--badge-pad-x);font-size: var(--badge-font);background: var(--badge-bg);color: var(--badge-fg);border-radius: var(--badge-radius);display: inline-flex;align-items: center;inline-size: fit-content;font-weight: 600;line-height: 1;white-space: nowrap}:where(.badge[data-tone="primary"]){--badge-bg: var(--nora-color-primary);--badge-fg: var(--nora-color-on-primary)}:where(.badge[data-tone="danger"]){--badge-bg: var(--nora-color-danger);--badge-fg: var(--nora-color-on-danger)}:where(.badge[data-tone="success"]){--badge-bg: var(--nora-color-success);--badge-fg: var(--nora-color-on-success)}:where(.badge[data-tone="warning"]){--badge-bg: var(--nora-color-warning);--badge-fg: var(--nora-color-on-warning)}:where(.badge[data-size="md"]){--badge-pad-y: 0.25rem;--badge-pad-x: 0.75rem;--badge-font: var(--nora-font-md)}:where(.btn){--btn-bg: var(--nora-color-primary);--btn-fg: var(--nora-color-on-primary);--btn-radius: var(--nora-radius-md);--btn-pad-y: 0.625rem;--btn-pad-x: 1.25rem;--btn-font: var(--nora-font-md);padding-block: var(--btn-pad-y);padding-inline: var(--btn-pad-x);font-size: var(--btn-font);background: var(--btn-bg);color: var(--btn-fg);border-radius: var(--btn-radius);display: inline-flex;align-items: center;justify-content: center;gap: 0.5em;min-block-size: 44px;min-inline-size: 44px;border: 0;font-weight: 600;line-height: 1.2;text-decoration: none;cursor: pointer;user-select: none;-webkit-tap-highlight-color: transparent;transition: background-color var(--nora-duration-fast) ease, transform var(--nora-duration-fast) ease}:where(.btn[data-tone="neutral"]){--btn-bg: var(--nora-color-neutral);--btn-fg: var(--nora-color-on-neutral)}:where(.btn[data-tone="danger"]){--btn-bg: var(--nora-color-danger);--btn-fg: var(--nora-color-on-danger)}:where(.btn[data-tone="success"]){--btn-bg: var(--nora-color-success);--btn-fg: var(--nora-color-on-success)}:where(.btn[data-tone="warning"]){--btn-bg: var(--nora-color-warning);--btn-fg: var(--nora-color-on-warning)}:where(.btn[data-size="sm"]){--btn-pad-y: 0.375rem;--btn-pad-x: 0.75rem;--btn-font: var(--nora-font-sm)}:where(.btn[data-size="lg"]){--btn-pad-y: 0.875rem;--btn-pad-x: 1.75rem;--btn-font: var(--nora-font-lg)}:where(.btn:hover:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 6%)}:where(.btn:active:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 12%);transform: scale(0.97)}:where(.btn:disabled, .btn[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.card){--card-bg: var(--nora-color-surface);--card-fg: var(--nora-color-text);--card-radius: var(--nora-radius-lg);--card-border: var(--nora-color-border);--card-pad-y: 1rem;--card-pad-x: 1rem;--card-font: var(--nora-font-md);padding-block: var(--card-pad-y);padding-inline: var(--card-pad-x);font-size: var(--card-font);background: var(--card-bg);color: var(--card-fg);border-radius: var(--card-radius);display: block;border: 1px solid var(--card-border)}:where(.card[data-size="sm"]){--card-pad-y: 0.75rem;--card-pad-x: 0.75rem;--card-font: var(--nora-font-sm)}:where(.card[data-size="lg"]){--card-pad-y: 1.5rem;--card-pad-x: 1.5rem;--card-font: var(--nora-font-md)}:where(.checkbox){--checkbox-bg: var(--nora-color-surface);--checkbox-fg: var(--nora-color-text);--checkbox-radius: var(--nora-radius-sm);--checkbox-border: var(--nora-color-text-muted);--checkbox-accent: var(--nora-color-primary);--checkbox-on-accent: var(--nora-color-on-primary);--checkbox-focus: var(--nora-color-focus);--checkbox-invalid: var(--nora-color-danger);--checkbox-pad-y: 0.375rem;--checkbox-pad-x: 0.625rem;--checkbox-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--checkbox-pad-x);min-block-size: 44px;padding-block: var(--checkbox-pad-y);font-size: var(--checkbox-font);line-height: 1.3;color: var(--checkbox-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.checkbox[data-tone="neutral"]){--checkbox-accent: var(--nora-color-neutral);--checkbox-on-accent: var(--nora-color-on-neutral)}:where(.checkbox[data-tone="danger"]){--checkbox-accent: var(--nora-color-danger);--checkbox-on-accent: var(--nora-color-on-danger)}:where(.checkbox[data-tone="success"]){--checkbox-accent: var(--nora-color-success);--checkbox-on-accent: var(--nora-color-on-success)}:where(.checkbox[data-tone="warning"]){--checkbox-accent: var(--nora-color-warning);--checkbox-on-accent: var(--nora-color-on-warning)}:where(.checkbox[data-size="sm"]){--checkbox-pad-y: 0.25rem;--checkbox-pad-x: 0.5rem;--checkbox-font: var(--nora-font-sm)}:where(.checkbox[data-size="lg"]){--checkbox-pad-y: 0.5rem;--checkbox-pad-x: 0.75rem;--checkbox-font: var(--nora-font-lg)}:where(.checkbox) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--checkbox-bg);border: 2px solid var(--checkbox-border);border-radius: var(--checkbox-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.checkbox) > :where(input)::before{content: "";inline-size: 0.7em;block-size: 0.7em;background: var(--checkbox-on-accent);clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.checkbox) > :where(input:indeterminate)::before{clip-path: inset(40% 0);transform: scale(1)}:where(.checkbox) > :where(input:checked)::before{transform: scale(1)}:where(.checkbox) > :where(input:checked, input:indeterminate){background-color: var(--checkbox-accent);border-color: var(--checkbox-accent)}:where(.checkbox) > :where(input:focus-visible){outline: 2px solid var(--checkbox-focus);outline-offset: 2px}:where(.checkbox) > :where(input[aria-invalid="true"]){border-color: var(--checkbox-invalid)}:where(.checkbox:has(> input:disabled), .checkbox[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.checkbox) > :where(input){appearance: auto}}:where(.field){--field-fg: var(--nora-color-text);--field-muted: var(--nora-color-text-muted);--field-invalid: var(--nora-color-danger);--field-pad-y: 0.375rem;--field-pad-x: 0rem;--field-font: var(--nora-font-md);display: flex;flex-direction: column;gap: var(--field-pad-y);min-inline-size: 0;margin: 0;padding: 0;border: 0;font-size: var(--field-font);color: var(--field-fg)}:where(.field[data-size="sm"]){--field-pad-y: 0.25rem;--field-pad-x: 0rem;--field-font: var(--nora-font-sm)}:where(.field[data-size="lg"]){--field-pad-y: 0.5rem;--field-pad-x: 0rem;--field-font: var(--nora-font-lg)}:where(.field-label){font-weight: 600;line-height: 1.3;padding: 0}:where(.field-help){margin: 0;font-size: 0.875em;color: var(--field-muted)}:where(.field-error){margin: 0;font-size: 0.875em;font-weight: 600;color: var(--field-invalid)}:where(.field-error:empty){display: none}:where(.field:has(:disabled):not(:has(:enabled))) > :where(.field-label){opacity: 0.5}:where(.input){--input-bg: var(--nora-color-surface);--input-fg: var(--nora-color-text);--input-radius: var(--nora-radius-md);--input-border: var(--nora-color-text-muted);--input-muted: var(--nora-color-text-muted);--input-focus: var(--nora-color-focus);--input-invalid: var(--nora-color-danger);--input-pad-y: 0.625rem;--input-pad-x: 0.75rem;--input-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--input-pad-y);padding-inline: var(--input-pad-x);font-size: var(--input-font);line-height: 1.4;color: var(--input-fg);background-color: var(--input-bg);border: 1px solid var(--input-border);border-radius: var(--input-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease}:where(.input[data-size="sm"]){--input-pad-y: 0.375rem;--input-pad-x: 0.625rem;--input-font: var(--nora-font-sm)}:where(.input[data-size="lg"]){--input-pad-y: 0.75rem;--input-pad-x: 1rem;--input-font: var(--nora-font-lg)}:where(.input)::placeholder{color: var(--input-muted);opacity: 1}:where(.input:focus-visible){outline: 2px solid var(--input-focus);outline-offset: 1px;border-color: var(--input-focus)}:where(.input[aria-invalid="true"]){border-color: var(--input-invalid)}:where(.input[aria-invalid="true"]:focus-visible){outline-color: var(--input-invalid)}:where(.input:disabled, .input[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.link){--link-fg: var(--nora-color-primary);--link-visited: var(--nora-color-text-muted);--link-focus: var(--nora-color-focus);--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-md);color: var(--link-fg);text-decoration-line: underline;text-decoration-thickness: 1px;text-underline-offset: 0.2em;border-radius: 2px;cursor: pointer;transition: text-decoration-thickness var(--nora-duration-fast) ease, color var(--nora-duration-fast) ease}:where(.link[data-tone="neutral"]){--link-fg: var(--nora-color-neutral)}:where(.link[data-tone="danger"]){--link-fg: var(--nora-color-danger)}:where(.link[data-tone="success"]){--link-fg: var(--nora-color-success)}:where(.link[data-tone="warning"]){--link-fg: var(--nora-color-warning)}:where(.link[data-size="sm"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-sm)}:where(.link[data-size="lg"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-lg)}:where(.link[data-size]){font-size: var(--link-font)}:where(.link:hover){text-decoration-thickness: 2px}:where(.link:focus-visible){outline: 2px solid var(--link-focus);outline-offset: 2px;text-decoration-thickness: 2px}:where(.link[data-visited]:visited){color: var(--link-visited)}:where(.link[target="_blank"], .link[rel~="external"])::after{content: "\2197";content: "\2197" / "";display: inline-block;margin-inline-start: 0.15em;text-decoration: none}:where(.link[target="_blank"]:dir(rtl), .link[rel~="external"]:dir(rtl))::after{content: "\2196";content: "\2196" / ""}:where(.media){--media-bg: var(--nora-color-surface-2);--media-fg: var(--nora-color-text-muted);--media-radius: var(--nora-radius-lg);--media-scrim: var(--nora-color-scrim);--media-on-scrim: var(--nora-color-on-scrim);--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 16 / 9;display: grid;margin: 0;min-inline-size: 0;isolation: isolate}:where(.media[data-size="standard"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 4 / 3}:where(.media[data-size="square"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 1 / 1}:where(.media[data-size="portrait"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 3 / 4}:where(.media) > :where(img, picture, video, svg, canvas, iframe){grid-area: 1 / 1;display: block;inline-size: 100%;block-size: auto;aspect-ratio: var(--media-ratio);object-fit: cover;border-radius: var(--media-radius);background-color: var(--media-bg);overflow: hidden}:where(.media) > :where(picture) > :where(img){inline-size: 100%;block-size: 100%;object-fit: cover}:where(.media-overlay){grid-area: 1 / 1;align-self: end;z-index: 1;padding-block: 3em var(--media-pad-y);padding-inline: var(--media-pad-x);color: var(--media-on-scrim);font-weight: 600;text-shadow: 0 1px 2px rgb(0 0 0 / 0.45);background: linear-gradient(to top, color-mix(in srgb, var(--media-scrim) 85%, transparent), transparent);border-end-start-radius: var(--media-radius);border-end-end-radius: var(--media-radius)}@media (forced-colors: active){:where(.media-overlay){background: Canvas;color: CanvasText;text-shadow: none}}:where(.media-caption){padding-block-start: var(--media-pad-y);font-size: var(--media-font);color: var(--media-fg)}:where(.navbar){--navbar-bg: var(--nora-color-surface);--navbar-fg: var(--nora-color-text);--navbar-muted: var(--nora-color-text-muted);--navbar-border: var(--nora-color-border);--navbar-active: var(--nora-color-primary);--navbar-focus: var(--nora-color-focus);--navbar-pad-y: 0.5rem;--navbar-pad-x: 1rem;--navbar-font: var(--nora-font-md);display: flex;flex-wrap: wrap;align-items: center;column-gap: var(--navbar-pad-x);row-gap: var(--navbar-pad-y);padding-block: var(--navbar-pad-y);padding-inline: var(--navbar-pad-x);font-size: var(--navbar-font);color: var(--navbar-fg);background-color: var(--navbar-bg);border-block-end: 1px solid var(--navbar-border)}:where(.navbar[data-size="sm"]){--navbar-pad-y: 0.25rem;--navbar-pad-x: 0.75rem;--navbar-font: var(--nora-font-sm)}:where(.navbar[data-size="lg"]){--navbar-pad-y: 0.75rem;--navbar-pad-x: 1.5rem;--navbar-font: var(--nora-font-lg)}:where(.navbar-brand){display: inline-flex;align-items: center;gap: 0.5em;min-block-size: 44px;margin-inline-end: auto;font-weight: 700;font-size: 1.125em;color: inherit;text-decoration: none}:where(.navbar-menu){display: flex;align-items: center;gap: 0.25em;min-inline-size: 0;margin: 0;padding: 0;list-style: none;overflow-x: auto;scroll-snap-type: x proximity;scrollbar-width: thin}:where(.navbar-menu) > :where(li){flex: none;scroll-snap-align: start}:where(.navbar-menu) :where(a){display: inline-flex;align-items: center;min-block-size: 44px;padding-inline: 0.75em;color: var(--navbar-muted);font-weight: 500;text-decoration: none;white-space: nowrap;border-radius: var(--nora-radius-md);transition: color var(--nora-duration-fast) ease, background-color var(--nora-duration-fast) ease}:where(.navbar-menu) :where(a:hover){color: var(--navbar-fg);background-color: color-mix(in srgb, var(--navbar-fg) 6%, transparent)}:where(.navbar-menu) :where(a:focus-visible){outline: 2px solid var(--navbar-focus);outline-offset: -2px}:where(.navbar-menu) :where(a[aria-current="page"]){color: var(--navbar-active);font-weight: 600;box-shadow: inset 0 -2px 0 var(--navbar-active)}@media (max-width: 40rem){:where(.navbar-menu){order: 3;flex-basis: 100%}}@media (forced-colors: active){:where(.navbar-menu) :where(a[aria-current="page"]){text-decoration: underline;text-decoration-thickness: 2px}}:where(.navbar-actions){display: flex;flex-wrap: wrap;align-items: center;gap: 0.5em}:where(.radio){--radio-bg: var(--nora-color-surface);--radio-fg: var(--nora-color-text);--radio-radius: var(--nora-radius-full);--radio-border: var(--nora-color-text-muted);--radio-accent: var(--nora-color-primary);--radio-on-accent: var(--nora-color-on-primary);--radio-focus: var(--nora-color-focus);--radio-invalid: var(--nora-color-danger);--radio-pad-y: 0.375rem;--radio-pad-x: 0.625rem;--radio-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--radio-pad-x);min-block-size: 44px;padding-block: var(--radio-pad-y);font-size: var(--radio-font);line-height: 1.3;color: var(--radio-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.radio[data-tone="neutral"]){--radio-accent: var(--nora-color-neutral);--radio-on-accent: var(--nora-color-on-neutral)}:where(.radio[data-tone="danger"]){--radio-accent: var(--nora-color-danger);--radio-on-accent: var(--nora-color-on-danger)}:where(.radio[data-tone="success"]){--radio-accent: var(--nora-color-success);--radio-on-accent: var(--nora-color-on-success)}:where(.radio[data-tone="warning"]){--radio-accent: var(--nora-color-warning);--radio-on-accent: var(--nora-color-on-warning)}:where(.radio[data-size="sm"]){--radio-pad-y: 0.25rem;--radio-pad-x: 0.5rem;--radio-font: var(--nora-font-sm)}:where(.radio[data-size="lg"]){--radio-pad-y: 0.5rem;--radio-pad-x: 0.75rem;--radio-font: var(--nora-font-lg)}:where(.radio) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--radio-bg);border: 2px solid var(--radio-border);border-radius: var(--radio-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.radio) > :where(input)::before{content: "";inline-size: 0.5em;block-size: 0.5em;border-radius: 50%;background: var(--radio-on-accent);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.radio) > :where(input:checked)::before{transform: scale(1)}:where(.radio) > :where(input:checked){background-color: var(--radio-accent);border-color: var(--radio-accent)}:where(.radio) > :where(input:focus-visible){outline: 2px solid var(--radio-focus);outline-offset: 2px}:where(.radio) > :where(input[aria-invalid="true"]){border-color: var(--radio-invalid)}:where(.radio:has(> input:disabled), .radio[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.radio) > :where(input){appearance: auto}}:where(.select){--select-bg: var(--nora-color-surface);--select-fg: var(--nora-color-text);--select-radius: var(--nora-radius-md);--select-border: var(--nora-color-text-muted);--select-muted: var(--nora-color-text-muted);--select-focus: var(--nora-color-focus);--select-invalid: var(--nora-color-danger);--select-pad-y: 0.625rem;--select-pad-x: 0.75rem;--select-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--select-pad-y);padding-inline: var(--select-pad-x);font-size: var(--select-font);line-height: 1.4;color: var(--select-fg);background-color: var(--select-bg);border: 1px solid var(--select-border);border-radius: var(--select-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;appearance: none;padding-inline-end: calc(var(--select-pad-x) + 1.25em);background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);background-position: calc(100% - var(--select-pad-x) - 0.375em) 50%, calc(100% - var(--select-pad-x)) 50%;background-size: 0.375em 0.375em;background-repeat: no-repeat}:where(.select[data-size="sm"]){--select-pad-y: 0.375rem;--select-pad-x: 0.625rem;--select-font: var(--nora-font-sm)}:where(.select[data-size="lg"]){--select-pad-y: 0.75rem;--select-pad-x: 1rem;--select-font: var(--nora-font-lg)}:where(.select[multiple], .select[size]){background-image: none;padding-inline-end: var(--select-pad-x)}:where(.select)::placeholder{color: var(--select-muted);opacity: 1}:where(.select:focus-visible){outline: 2px solid var(--select-focus);outline-offset: 1px;border-color: var(--select-focus)}:where(.select[aria-invalid="true"]){border-color: var(--select-invalid)}:where(.select[aria-invalid="true"]:focus-visible){outline-color: var(--select-invalid)}:where(.select:disabled, .select[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.switch){--switch-bg: var(--nora-color-surface);--switch-fg: var(--nora-color-text);--switch-radius: var(--nora-radius-full);--switch-border: var(--nora-color-text-muted);--switch-accent: var(--nora-color-primary);--switch-on-accent: var(--nora-color-on-primary);--switch-focus: var(--nora-color-focus);--switch-invalid: var(--nora-color-danger);--switch-pad-y: 0.375rem;--switch-pad-x: 0.625rem;--switch-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--switch-pad-x);min-block-size: 44px;padding-block: var(--switch-pad-y);font-size: var(--switch-font);line-height: 1.3;color: var(--switch-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.switch[data-tone="neutral"]){--switch-accent: var(--nora-color-neutral);--switch-on-accent: var(--nora-color-on-neutral)}:where(.switch[data-tone="danger"]){--switch-accent: var(--nora-color-danger);--switch-on-accent: var(--nora-color-on-danger)}:where(.switch[data-tone="success"]){--switch-accent: var(--nora-color-success);--switch-on-accent: var(--nora-color-on-success)}:where(.switch[data-tone="warning"]){--switch-accent: var(--nora-color-warning);--switch-on-accent: var(--nora-color-on-warning)}:where(.switch[data-size="sm"]){--switch-pad-y: 0.25rem;--switch-pad-x: 0.5rem;--switch-font: var(--nora-font-sm)}:where(.switch[data-size="lg"]){--switch-pad-y: 0.5rem;--switch-pad-x: 0.75rem;--switch-font: var(--nora-font-lg)}:where(.switch) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-flex;align-items: center;inline-size: 2.25em;block-size: 1.25em;background-color: var(--switch-border);border: 2px solid var(--switch-border);border-radius: var(--switch-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.switch) > :where(input)::before{content: "";inline-size: calc(1.25em - 8px);block-size: calc(1.25em - 8px);margin-inline-start: 2px;border-radius: 50%;background: var(--switch-bg);transition: transform var(--nora-duration-fast) ease}:where(.switch) > :where(input:checked)::before{transform: translateX(1em);background: var(--switch-on-accent)}:where(.switch:dir(rtl)) > :where(input:checked)::before{transform: translateX(-1em)}:where(.switch) > :where(input:checked){background-color: var(--switch-accent);border-color: var(--switch-accent)}:where(.switch) > :where(input:focus-visible){outline: 2px solid var(--switch-focus);outline-offset: 2px}:where(.switch) > :where(input[aria-invalid="true"]){border-color: var(--switch-invalid)}:where(.switch:has(> input:disabled), .switch[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.switch) > :where(input){appearance: auto}}:where(.textarea){--textarea-bg: var(--nora-color-surface);--textarea-fg: var(--nora-color-text);--textarea-radius: var(--nora-radius-md);--textarea-border: var(--nora-color-text-muted);--textarea-muted: var(--nora-color-text-muted);--textarea-focus: var(--nora-color-focus);--textarea-invalid: var(--nora-color-danger);--textarea-pad-y: 0.625rem;--textarea-pad-x: 0.75rem;--textarea-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 6rem;padding-block: var(--textarea-pad-y);padding-inline: var(--textarea-pad-x);font-size: var(--textarea-font);line-height: 1.4;color: var(--textarea-fg);background-color: var(--textarea-bg);border: 1px solid var(--textarea-border);border-radius: var(--textarea-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;resize: vertical}:where(.textarea[data-size="sm"]){--textarea-pad-y: 0.375rem;--textarea-pad-x: 0.625rem;--textarea-font: var(--nora-font-sm)}:where(.textarea[data-size="lg"]){--textarea-pad-y: 0.75rem;--textarea-pad-x: 1rem;--textarea-font: var(--nora-font-lg)}:where(.textarea)::placeholder{color: var(--textarea-muted);opacity: 1}:where(.textarea:focus-visible){outline: 2px solid var(--textarea-focus);outline-offset: 1px;border-color: var(--textarea-focus)}:where(.textarea[aria-invalid="true"]){border-color: var(--textarea-invalid)}:where(.textarea[aria-invalid="true"]:focus-visible){outline-color: var(--textarea-invalid)}:where(.textarea:disabled, .textarea[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}.fx-glass{background: var(--nora-color-surface)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.fx-glass{background: color-mix(in srgb, var(--nora-color-surface) 60%, transparent);-webkit-backdrop-filter: blur(16px) saturate(140%);backdrop-filter: blur(16px) saturate(140%)}}@keyframes nora-reveal{from{opacity: 0;transform: translateY(24px)}to{opacity: 1;transform: none}}@supports (animation-timeline: view()){[data-fx~="reveal"]{animation: nora-reveal linear both;animation-timeline: view();animation-range: entry 0% cover 30%}}@supports not (animation-timeline: view()){:root[data-nora-engine] [data-fx~="reveal"]{transition: opacity 400ms ease, transform 400ms ease}:root[data-nora-engine] [data-fx~="reveal"]:not([data-fx-visible]){opacity: 0;transform: translateY(24px)}}[data-fx~="tilt"]{position: relative;transform: perspective(800px) rotateX(var(--fx-rx, 0deg)) rotateY(var(--fx-ry, 0deg));transition: transform 150ms ease-out;transform-style: preserve-3d}[data-fx~="tilt"][data-fx-glare]::after{content: "";position: absolute;inset: 0;border-radius: inherit;pointer-events: none;background: radial-gradient(circle at var(--fx-gx, 50%) var(--fx-gy, 50%), rgb(255 255 255 / 0.28), transparent 60%);opacity: var(--fx-glare-o, 0);transition: opacity 200ms ease}@media (prefers-reduced-motion: reduce){[data-fx~="reveal"], [data-fx~="tilt"]{transform: none;animation: none;opacity: 1}}.p-0{padding: var(--nora-space-0)}.px-0{padding-inline: var(--nora-space-0)}.py-0{padding-block: var(--nora-space-0)}.m-0{margin: var(--nora-space-0)}.mx-0{margin-inline: var(--nora-space-0)}.my-0{margin-block: var(--nora-space-0)}.gap-0{gap: var(--nora-space-0)}.p-1{padding: var(--nora-space-1)}.px-1{padding-inline: var(--nora-space-1)}.py-1{padding-block: var(--nora-space-1)}.m-1{margin: var(--nora-space-1)}.mx-1{margin-inline: var(--nora-space-1)}.my-1{margin-block: var(--nora-space-1)}.gap-1{gap: var(--nora-space-1)}.p-2{padding: var(--nora-space-2)}.px-2{padding-inline: var(--nora-space-2)}.py-2{padding-block: var(--nora-space-2)}.m-2{margin: var(--nora-space-2)}.mx-2{margin-inline: var(--nora-space-2)}.my-2{margin-block: var(--nora-space-2)}.gap-2{gap: var(--nora-space-2)}.p-3{padding: var(--nora-space-3)}.px-3{padding-inline: var(--nora-space-3)}.py-3{padding-block: var(--nora-space-3)}.m-3{margin: var(--nora-space-3)}.mx-3{margin-inline: var(--nora-space-3)}.my-3{margin-block: var(--nora-space-3)}.gap-3{gap: var(--nora-space-3)}.p-4{padding: var(--nora-space-4)}.px-4{padding-inline: var(--nora-space-4)}.py-4{padding-block: var(--nora-space-4)}.m-4{margin: var(--nora-space-4)}.mx-4{margin-inline: var(--nora-space-4)}.my-4{margin-block: var(--nora-space-4)}.gap-4{gap: var(--nora-space-4)}.p-6{padding: var(--nora-space-6)}.px-6{padding-inline: var(--nora-space-6)}.py-6{padding-block: var(--nora-space-6)}.m-6{margin: var(--nora-space-6)}.mx-6{margin-inline: var(--nora-space-6)}.my-6{margin-block: var(--nora-space-6)}.gap-6{gap: var(--nora-space-6)}.p-8{padding: var(--nora-space-8)}.px-8{padding-inline: var(--nora-space-8)}.py-8{padding-block: var(--nora-space-8)}.m-8{margin: var(--nora-space-8)}.mx-8{margin-inline: var(--nora-space-8)}.my-8{margin-block: var(--nora-space-8)}.gap-8{gap: var(--nora-space-8)}.p-12{padding: var(--nora-space-12)}.px-12{padding-inline: var(--nora-space-12)}.py-12{padding-block: var(--nora-space-12)}.m-12{margin: var(--nora-space-12)}.mx-12{margin-inline: var(--nora-space-12)}.my-12{margin-block: var(--nora-space-12)}.gap-12{gap: var(--nora-space-12)}.mx-auto{margin-inline: auto}.rounded-none{border-radius: var(--nora-radius-none)}.rounded-sm{border-radius: var(--nora-radius-sm)}.rounded-md{border-radius: var(--nora-radius-md)}.rounded-lg{border-radius: var(--nora-radius-lg)}.rounded-full{border-radius: var(--nora-radius-full)}.text-sm{font-size: var(--nora-font-sm)}.text-md{font-size: var(--nora-font-md)}.text-lg{font-size: var(--nora-font-lg)}.text-xl{font-size: var(--nora-font-xl)}.text-muted{color: var(--nora-color-text-muted)}.text-center{text-align: center}.font-bold{font-weight: 700}.shadow-sm{box-shadow: 0 1px 2px rgb(0 0 0 / 0.08), 0 1px 3px rgb(0 0 0 / 0.06)}.shadow-lg{box-shadow: 0 10px 30px rgb(0 0 0 / 0.12), 0 4px 8px rgb(0 0 0 / 0.06)}.w-full{inline-size: 100%}.hidden{display: none}.sr-only{position: absolute;inline-size: 1px;block-size: 1px;padding: 0;margin: -1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap;border: 0}
@@ -1 +1 @@
1
- /*! * NoraIvoire 0.1.1 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main. * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés. * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite. */ @layer nora.reset, nora.tokens, nora.base, nora.layout, nora.components, nora.effects, nora.utilities;@layer nora.reset{*, *::before, *::after{box-sizing: border-box}:where(body, h1, h2, h3, h4, p, figure, blockquote, dl, dd){margin: 0}:where(img, picture, video, canvas, svg){display: block;max-inline-size: 100%}:where(input, button, textarea, select){font: inherit}:where(p, h1, h2, h3){overflow-wrap: break-word}}@layer nora.tokens{:root{color-scheme: light dark;--nora-color-primary: #C94A0B;--nora-color-on-primary: #FFFFFF;--nora-color-neutral: #3B3F46;--nora-color-on-neutral: #FFFFFF;--nora-color-danger: #C92A2A;--nora-color-on-danger: #FFFFFF;--nora-color-success: #1B7F3B;--nora-color-on-success: #FFFFFF;--nora-color-warning: #B35C00;--nora-color-on-warning: #FFFFFF;--nora-color-surface: #FFFFFF;--nora-color-surface-2: #F4F5F7;--nora-color-text: #16181D;--nora-color-text-muted: #5C626B;--nora-color-border: #DDE0E4;--nora-color-focus: #1C7ED6;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF;--nora-space-0: 0rem;--nora-space-1: 0.25rem;--nora-space-2: 0.5rem;--nora-space-3: 0.75rem;--nora-space-4: 1rem;--nora-space-6: 1.5rem;--nora-space-8: 2rem;--nora-space-12: 3rem;--nora-radius-none: 0px;--nora-radius-sm: 4px;--nora-radius-md: 8px;--nora-radius-lg: 16px;--nora-radius-full: 9999px;--nora-font-sm: 0.875rem;--nora-font-md: 1rem;--nora-font-lg: 1.125rem;--nora-font-xl: 1.5rem;--nora-duration-fast: 150ms;--nora-duration-base: 250ms;--nora-duration-slow: 400ms}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}}:root[data-theme="dark"]{--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}}@layer nora.base{:where(body){font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font-size: var(--nora-font-md);line-height: 1.5;color: var(--nora-color-text);background: var(--nora-color-surface);-webkit-font-smoothing: antialiased}:where(:focus-visible){outline: 2px solid var(--nora-color-focus);outline-offset: 2px}@media (prefers-reduced-motion: reduce){:where(*, *::before, *::after){animation-duration: 0.01ms;animation-iteration-count: 1;transition-duration: 0.01ms;scroll-behavior: auto}}}@layer nora.layout{:where(.container){inline-size: min(100% - 2rem, 72rem);margin-inline: auto}:where(.stack){display: flex;flex-direction: column;gap: var(--stack-gap, var(--nora-space-4))}:where(.cluster){display: flex;flex-wrap: wrap;align-items: center;gap: var(--cluster-gap, var(--nora-space-2))}:where(.grid-auto){display: grid;gap: var(--grid-gap, var(--nora-space-4));grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--grid-min, 16rem)), 1fr))}:where(.cq){container-type: inline-size}}@layer nora.components{:where(.avatar){--avatar-bg: var(--nora-color-neutral);--avatar-fg: var(--nora-color-on-neutral);--avatar-radius: var(--nora-radius-full);--avatar-ring: var(--nora-color-surface);--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-md);--avatar-box: 2.5rem;display: inline-flex;align-items: center;justify-content: center;flex: none;vertical-align: middle;inline-size: var(--avatar-box);block-size: var(--avatar-box);border-radius: var(--avatar-radius);overflow: hidden;background-color: var(--avatar-bg);color: var(--avatar-fg);font-size: var(--avatar-font);font-weight: 600;line-height: 1;text-transform: uppercase;object-fit: cover;user-select: none}:where(.avatar[data-tone="primary"]){--avatar-bg: var(--nora-color-primary);--avatar-fg: var(--nora-color-on-primary)}:where(.avatar[data-tone="danger"]){--avatar-bg: var(--nora-color-danger);--avatar-fg: var(--nora-color-on-danger)}:where(.avatar[data-tone="success"]){--avatar-bg: var(--nora-color-success);--avatar-fg: var(--nora-color-on-success)}:where(.avatar[data-tone="warning"]){--avatar-bg: var(--nora-color-warning);--avatar-fg: var(--nora-color-on-warning)}:where(.avatar[data-size="sm"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-sm);--avatar-box: 2rem}:where(.avatar[data-size="lg"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-xl);--avatar-box: 4rem}:where(.avatar-group){display: inline-flex;align-items: center}:where(.avatar-group > .avatar){box-shadow: 0 0 0 2px var(--avatar-ring)}:where(.avatar-group > .avatar + .avatar){margin-inline-start: calc(var(--avatar-box) * -0.25)}@media (forced-colors: active){:where(.avatar){border: 1px solid CanvasText}}:where(.badge){--badge-bg: var(--nora-color-neutral);--badge-fg: var(--nora-color-on-neutral);--badge-radius: var(--nora-radius-full);--badge-pad-y: 0.125rem;--badge-pad-x: 0.5rem;--badge-font: var(--nora-font-sm);padding-block: var(--badge-pad-y);padding-inline: var(--badge-pad-x);font-size: var(--badge-font);background: var(--badge-bg);color: var(--badge-fg);border-radius: var(--badge-radius);display: inline-flex;align-items: center;inline-size: fit-content;font-weight: 600;line-height: 1;white-space: nowrap}:where(.badge[data-tone="primary"]){--badge-bg: var(--nora-color-primary);--badge-fg: var(--nora-color-on-primary)}:where(.badge[data-tone="danger"]){--badge-bg: var(--nora-color-danger);--badge-fg: var(--nora-color-on-danger)}:where(.badge[data-tone="success"]){--badge-bg: var(--nora-color-success);--badge-fg: var(--nora-color-on-success)}:where(.badge[data-tone="warning"]){--badge-bg: var(--nora-color-warning);--badge-fg: var(--nora-color-on-warning)}:where(.badge[data-size="md"]){--badge-pad-y: 0.25rem;--badge-pad-x: 0.75rem;--badge-font: var(--nora-font-md)}:where(.btn){--btn-bg: var(--nora-color-primary);--btn-fg: var(--nora-color-on-primary);--btn-radius: var(--nora-radius-md);--btn-pad-y: 0.625rem;--btn-pad-x: 1.25rem;--btn-font: var(--nora-font-md);padding-block: var(--btn-pad-y);padding-inline: var(--btn-pad-x);font-size: var(--btn-font);background: var(--btn-bg);color: var(--btn-fg);border-radius: var(--btn-radius);display: inline-flex;align-items: center;justify-content: center;gap: 0.5em;min-block-size: 44px;min-inline-size: 44px;border: 0;font-weight: 600;line-height: 1.2;text-decoration: none;cursor: pointer;user-select: none;-webkit-tap-highlight-color: transparent;transition: background-color var(--nora-duration-fast) ease, transform var(--nora-duration-fast) ease}:where(.btn[data-tone="neutral"]){--btn-bg: var(--nora-color-neutral);--btn-fg: var(--nora-color-on-neutral)}:where(.btn[data-tone="danger"]){--btn-bg: var(--nora-color-danger);--btn-fg: var(--nora-color-on-danger)}:where(.btn[data-tone="success"]){--btn-bg: var(--nora-color-success);--btn-fg: var(--nora-color-on-success)}:where(.btn[data-tone="warning"]){--btn-bg: var(--nora-color-warning);--btn-fg: var(--nora-color-on-warning)}:where(.btn[data-size="sm"]){--btn-pad-y: 0.375rem;--btn-pad-x: 0.75rem;--btn-font: var(--nora-font-sm)}:where(.btn[data-size="lg"]){--btn-pad-y: 0.875rem;--btn-pad-x: 1.75rem;--btn-font: var(--nora-font-lg)}:where(.btn:hover:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 6%)}:where(.btn:active:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 12%);transform: scale(0.97)}:where(.btn:disabled, .btn[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.card){--card-bg: var(--nora-color-surface);--card-fg: var(--nora-color-text);--card-radius: var(--nora-radius-lg);--card-border: var(--nora-color-border);--card-pad-y: 1rem;--card-pad-x: 1rem;--card-font: var(--nora-font-md);padding-block: var(--card-pad-y);padding-inline: var(--card-pad-x);font-size: var(--card-font);background: var(--card-bg);color: var(--card-fg);border-radius: var(--card-radius);display: block;border: 1px solid var(--card-border)}:where(.card[data-size="sm"]){--card-pad-y: 0.75rem;--card-pad-x: 0.75rem;--card-font: var(--nora-font-sm)}:where(.card[data-size="lg"]){--card-pad-y: 1.5rem;--card-pad-x: 1.5rem;--card-font: var(--nora-font-md)}:where(.checkbox){--checkbox-bg: var(--nora-color-surface);--checkbox-fg: var(--nora-color-text);--checkbox-radius: var(--nora-radius-sm);--checkbox-border: var(--nora-color-text-muted);--checkbox-accent: var(--nora-color-primary);--checkbox-on-accent: var(--nora-color-on-primary);--checkbox-focus: var(--nora-color-focus);--checkbox-invalid: var(--nora-color-danger);--checkbox-pad-y: 0.375rem;--checkbox-pad-x: 0.625rem;--checkbox-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--checkbox-pad-x);min-block-size: 44px;padding-block: var(--checkbox-pad-y);font-size: var(--checkbox-font);line-height: 1.3;color: var(--checkbox-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.checkbox[data-tone="neutral"]){--checkbox-accent: var(--nora-color-neutral);--checkbox-on-accent: var(--nora-color-on-neutral)}:where(.checkbox[data-tone="danger"]){--checkbox-accent: var(--nora-color-danger);--checkbox-on-accent: var(--nora-color-on-danger)}:where(.checkbox[data-tone="success"]){--checkbox-accent: var(--nora-color-success);--checkbox-on-accent: var(--nora-color-on-success)}:where(.checkbox[data-tone="warning"]){--checkbox-accent: var(--nora-color-warning);--checkbox-on-accent: var(--nora-color-on-warning)}:where(.checkbox[data-size="sm"]){--checkbox-pad-y: 0.25rem;--checkbox-pad-x: 0.5rem;--checkbox-font: var(--nora-font-sm)}:where(.checkbox[data-size="lg"]){--checkbox-pad-y: 0.5rem;--checkbox-pad-x: 0.75rem;--checkbox-font: var(--nora-font-lg)}:where(.checkbox) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--checkbox-bg);border: 2px solid var(--checkbox-border);border-radius: var(--checkbox-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.checkbox) > :where(input)::before{content: "";inline-size: 0.7em;block-size: 0.7em;background: var(--checkbox-on-accent);clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.checkbox) > :where(input:indeterminate)::before{clip-path: inset(40% 0);transform: scale(1)}:where(.checkbox) > :where(input:checked)::before{transform: scale(1)}:where(.checkbox) > :where(input:checked, input:indeterminate){background-color: var(--checkbox-accent);border-color: var(--checkbox-accent)}:where(.checkbox) > :where(input:focus-visible){outline: 2px solid var(--checkbox-focus);outline-offset: 2px}:where(.checkbox) > :where(input[aria-invalid="true"]){border-color: var(--checkbox-invalid)}:where(.checkbox:has(> input:disabled), .checkbox[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.checkbox) > :where(input){appearance: auto}}:where(.field){--field-fg: var(--nora-color-text);--field-muted: var(--nora-color-text-muted);--field-invalid: var(--nora-color-danger);--field-pad-y: 0.375rem;--field-pad-x: 0rem;--field-font: var(--nora-font-md);display: flex;flex-direction: column;gap: var(--field-pad-y);min-inline-size: 0;margin: 0;padding: 0;border: 0;font-size: var(--field-font);color: var(--field-fg)}:where(.field[data-size="sm"]){--field-pad-y: 0.25rem;--field-pad-x: 0rem;--field-font: var(--nora-font-sm)}:where(.field[data-size="lg"]){--field-pad-y: 0.5rem;--field-pad-x: 0rem;--field-font: var(--nora-font-lg)}:where(.field-label){font-weight: 600;line-height: 1.3;padding: 0}:where(.field-help){margin: 0;font-size: 0.875em;color: var(--field-muted)}:where(.field-error){margin: 0;font-size: 0.875em;font-weight: 600;color: var(--field-invalid)}:where(.field-error:empty){display: none}:where(.field:has(:disabled):not(:has(:enabled))) > :where(.field-label){opacity: 0.5}:where(.input){--input-bg: var(--nora-color-surface);--input-fg: var(--nora-color-text);--input-radius: var(--nora-radius-md);--input-border: var(--nora-color-text-muted);--input-muted: var(--nora-color-text-muted);--input-focus: var(--nora-color-focus);--input-invalid: var(--nora-color-danger);--input-pad-y: 0.625rem;--input-pad-x: 0.75rem;--input-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--input-pad-y);padding-inline: var(--input-pad-x);font-size: var(--input-font);line-height: 1.4;color: var(--input-fg);background-color: var(--input-bg);border: 1px solid var(--input-border);border-radius: var(--input-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease}:where(.input[data-size="sm"]){--input-pad-y: 0.375rem;--input-pad-x: 0.625rem;--input-font: var(--nora-font-sm)}:where(.input[data-size="lg"]){--input-pad-y: 0.75rem;--input-pad-x: 1rem;--input-font: var(--nora-font-lg)}:where(.input)::placeholder{color: var(--input-muted);opacity: 1}:where(.input:focus-visible){outline: 2px solid var(--input-focus);outline-offset: 1px;border-color: var(--input-focus)}:where(.input[aria-invalid="true"]){border-color: var(--input-invalid)}:where(.input[aria-invalid="true"]:focus-visible){outline-color: var(--input-invalid)}:where(.input:disabled, .input[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.link){--link-fg: var(--nora-color-primary);--link-visited: var(--nora-color-text-muted);--link-focus: var(--nora-color-focus);--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-md);color: var(--link-fg);text-decoration-line: underline;text-decoration-thickness: 1px;text-underline-offset: 0.2em;border-radius: 2px;cursor: pointer;transition: text-decoration-thickness var(--nora-duration-fast) ease, color var(--nora-duration-fast) ease}:where(.link[data-tone="neutral"]){--link-fg: var(--nora-color-neutral)}:where(.link[data-tone="danger"]){--link-fg: var(--nora-color-danger)}:where(.link[data-tone="success"]){--link-fg: var(--nora-color-success)}:where(.link[data-tone="warning"]){--link-fg: var(--nora-color-warning)}:where(.link[data-size="sm"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-sm)}:where(.link[data-size="lg"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-lg)}:where(.link[data-size]){font-size: var(--link-font)}:where(.link:hover){text-decoration-thickness: 2px}:where(.link:focus-visible){outline: 2px solid var(--link-focus);outline-offset: 2px;text-decoration-thickness: 2px}:where(.link[data-visited]:visited){color: var(--link-visited)}:where(.link[target="_blank"], .link[rel~="external"])::after{content: "\2197";content: "\2197" / "";display: inline-block;margin-inline-start: 0.15em;text-decoration: none}:where(.link[target="_blank"]:dir(rtl), .link[rel~="external"]:dir(rtl))::after{content: "\2196";content: "\2196" / ""}:where(.media){--media-bg: var(--nora-color-surface-2);--media-fg: var(--nora-color-text-muted);--media-radius: var(--nora-radius-lg);--media-scrim: var(--nora-color-scrim);--media-on-scrim: var(--nora-color-on-scrim);--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 16 / 9;display: grid;margin: 0;min-inline-size: 0;isolation: isolate}:where(.media[data-size="standard"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 4 / 3}:where(.media[data-size="square"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 1 / 1}:where(.media[data-size="portrait"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 3 / 4}:where(.media) > :where(img, picture, video, svg, canvas, iframe){grid-area: 1 / 1;display: block;inline-size: 100%;block-size: auto;aspect-ratio: var(--media-ratio);object-fit: cover;border-radius: var(--media-radius);background-color: var(--media-bg);overflow: hidden}:where(.media) > :where(picture) > :where(img){inline-size: 100%;block-size: 100%;object-fit: cover}:where(.media-overlay){grid-area: 1 / 1;align-self: end;z-index: 1;padding-block: 3em var(--media-pad-y);padding-inline: var(--media-pad-x);color: var(--media-on-scrim);font-weight: 600;text-shadow: 0 1px 2px rgb(0 0 0 / 0.45);background: linear-gradient(to top, color-mix(in srgb, var(--media-scrim) 85%, transparent), transparent);border-end-start-radius: var(--media-radius);border-end-end-radius: var(--media-radius)}@media (forced-colors: active){:where(.media-overlay){background: Canvas;color: CanvasText;text-shadow: none}}:where(.media-caption){padding-block-start: var(--media-pad-y);font-size: var(--media-font);color: var(--media-fg)}:where(.navbar){--navbar-bg: var(--nora-color-surface);--navbar-fg: var(--nora-color-text);--navbar-muted: var(--nora-color-text-muted);--navbar-border: var(--nora-color-border);--navbar-active: var(--nora-color-primary);--navbar-focus: var(--nora-color-focus);--navbar-pad-y: 0.5rem;--navbar-pad-x: 1rem;--navbar-font: var(--nora-font-md);display: flex;flex-wrap: wrap;align-items: center;column-gap: var(--navbar-pad-x);row-gap: var(--navbar-pad-y);padding-block: var(--navbar-pad-y);padding-inline: var(--navbar-pad-x);font-size: var(--navbar-font);color: var(--navbar-fg);background-color: var(--navbar-bg);border-block-end: 1px solid var(--navbar-border)}:where(.navbar[data-size="sm"]){--navbar-pad-y: 0.25rem;--navbar-pad-x: 0.75rem;--navbar-font: var(--nora-font-sm)}:where(.navbar[data-size="lg"]){--navbar-pad-y: 0.75rem;--navbar-pad-x: 1.5rem;--navbar-font: var(--nora-font-lg)}:where(.navbar-brand){display: inline-flex;align-items: center;gap: 0.5em;min-block-size: 44px;margin-inline-end: auto;font-weight: 700;font-size: 1.125em;color: inherit;text-decoration: none}:where(.navbar-menu){display: flex;align-items: center;gap: 0.25em;min-inline-size: 0;margin: 0;padding: 0;list-style: none;overflow-x: auto;scroll-snap-type: x proximity;scrollbar-width: thin}:where(.navbar-menu) > :where(li){flex: none;scroll-snap-align: start}:where(.navbar-menu) :where(a){display: inline-flex;align-items: center;min-block-size: 44px;padding-inline: 0.75em;color: var(--navbar-muted);font-weight: 500;text-decoration: none;white-space: nowrap;border-radius: var(--nora-radius-md);transition: color var(--nora-duration-fast) ease, background-color var(--nora-duration-fast) ease}:where(.navbar-menu) :where(a:hover){color: var(--navbar-fg);background-color: color-mix(in srgb, var(--navbar-fg) 6%, transparent)}:where(.navbar-menu) :where(a:focus-visible){outline: 2px solid var(--navbar-focus);outline-offset: -2px}:where(.navbar-menu) :where(a[aria-current="page"]){color: var(--navbar-active);font-weight: 600;box-shadow: inset 0 -2px 0 var(--navbar-active)}@media (max-width: 40rem){:where(.navbar-menu){order: 3;flex-basis: 100%}}@media (forced-colors: active){:where(.navbar-menu) :where(a[aria-current="page"]){text-decoration: underline;text-decoration-thickness: 2px}}:where(.navbar-actions){display: flex;flex-wrap: wrap;align-items: center;gap: 0.5em}:where(.radio){--radio-bg: var(--nora-color-surface);--radio-fg: var(--nora-color-text);--radio-radius: var(--nora-radius-full);--radio-border: var(--nora-color-text-muted);--radio-accent: var(--nora-color-primary);--radio-on-accent: var(--nora-color-on-primary);--radio-focus: var(--nora-color-focus);--radio-invalid: var(--nora-color-danger);--radio-pad-y: 0.375rem;--radio-pad-x: 0.625rem;--radio-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--radio-pad-x);min-block-size: 44px;padding-block: var(--radio-pad-y);font-size: var(--radio-font);line-height: 1.3;color: var(--radio-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.radio[data-tone="neutral"]){--radio-accent: var(--nora-color-neutral);--radio-on-accent: var(--nora-color-on-neutral)}:where(.radio[data-tone="danger"]){--radio-accent: var(--nora-color-danger);--radio-on-accent: var(--nora-color-on-danger)}:where(.radio[data-tone="success"]){--radio-accent: var(--nora-color-success);--radio-on-accent: var(--nora-color-on-success)}:where(.radio[data-tone="warning"]){--radio-accent: var(--nora-color-warning);--radio-on-accent: var(--nora-color-on-warning)}:where(.radio[data-size="sm"]){--radio-pad-y: 0.25rem;--radio-pad-x: 0.5rem;--radio-font: var(--nora-font-sm)}:where(.radio[data-size="lg"]){--radio-pad-y: 0.5rem;--radio-pad-x: 0.75rem;--radio-font: var(--nora-font-lg)}:where(.radio) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--radio-bg);border: 2px solid var(--radio-border);border-radius: var(--radio-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.radio) > :where(input)::before{content: "";inline-size: 0.5em;block-size: 0.5em;border-radius: 50%;background: var(--radio-on-accent);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.radio) > :where(input:checked)::before{transform: scale(1)}:where(.radio) > :where(input:checked){background-color: var(--radio-accent);border-color: var(--radio-accent)}:where(.radio) > :where(input:focus-visible){outline: 2px solid var(--radio-focus);outline-offset: 2px}:where(.radio) > :where(input[aria-invalid="true"]){border-color: var(--radio-invalid)}:where(.radio:has(> input:disabled), .radio[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.radio) > :where(input){appearance: auto}}:where(.select){--select-bg: var(--nora-color-surface);--select-fg: var(--nora-color-text);--select-radius: var(--nora-radius-md);--select-border: var(--nora-color-text-muted);--select-muted: var(--nora-color-text-muted);--select-focus: var(--nora-color-focus);--select-invalid: var(--nora-color-danger);--select-pad-y: 0.625rem;--select-pad-x: 0.75rem;--select-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--select-pad-y);padding-inline: var(--select-pad-x);font-size: var(--select-font);line-height: 1.4;color: var(--select-fg);background-color: var(--select-bg);border: 1px solid var(--select-border);border-radius: var(--select-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;appearance: none;padding-inline-end: calc(var(--select-pad-x) + 1.25em);background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);background-position: calc(100% - var(--select-pad-x) - 0.375em) 50%, calc(100% - var(--select-pad-x)) 50%;background-size: 0.375em 0.375em;background-repeat: no-repeat}:where(.select[data-size="sm"]){--select-pad-y: 0.375rem;--select-pad-x: 0.625rem;--select-font: var(--nora-font-sm)}:where(.select[data-size="lg"]){--select-pad-y: 0.75rem;--select-pad-x: 1rem;--select-font: var(--nora-font-lg)}:where(.select[multiple], .select[size]){background-image: none;padding-inline-end: var(--select-pad-x)}:where(.select)::placeholder{color: var(--select-muted);opacity: 1}:where(.select:focus-visible){outline: 2px solid var(--select-focus);outline-offset: 1px;border-color: var(--select-focus)}:where(.select[aria-invalid="true"]){border-color: var(--select-invalid)}:where(.select[aria-invalid="true"]:focus-visible){outline-color: var(--select-invalid)}:where(.select:disabled, .select[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.switch){--switch-bg: var(--nora-color-surface);--switch-fg: var(--nora-color-text);--switch-radius: var(--nora-radius-full);--switch-border: var(--nora-color-text-muted);--switch-accent: var(--nora-color-primary);--switch-on-accent: var(--nora-color-on-primary);--switch-focus: var(--nora-color-focus);--switch-invalid: var(--nora-color-danger);--switch-pad-y: 0.375rem;--switch-pad-x: 0.625rem;--switch-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--switch-pad-x);min-block-size: 44px;padding-block: var(--switch-pad-y);font-size: var(--switch-font);line-height: 1.3;color: var(--switch-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.switch[data-tone="neutral"]){--switch-accent: var(--nora-color-neutral);--switch-on-accent: var(--nora-color-on-neutral)}:where(.switch[data-tone="danger"]){--switch-accent: var(--nora-color-danger);--switch-on-accent: var(--nora-color-on-danger)}:where(.switch[data-tone="success"]){--switch-accent: var(--nora-color-success);--switch-on-accent: var(--nora-color-on-success)}:where(.switch[data-tone="warning"]){--switch-accent: var(--nora-color-warning);--switch-on-accent: var(--nora-color-on-warning)}:where(.switch[data-size="sm"]){--switch-pad-y: 0.25rem;--switch-pad-x: 0.5rem;--switch-font: var(--nora-font-sm)}:where(.switch[data-size="lg"]){--switch-pad-y: 0.5rem;--switch-pad-x: 0.75rem;--switch-font: var(--nora-font-lg)}:where(.switch) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-flex;align-items: center;inline-size: 2.25em;block-size: 1.25em;background-color: var(--switch-border);border: 2px solid var(--switch-border);border-radius: var(--switch-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.switch) > :where(input)::before{content: "";inline-size: calc(1.25em - 8px);block-size: calc(1.25em - 8px);margin-inline-start: 2px;border-radius: 50%;background: var(--switch-bg);transition: transform var(--nora-duration-fast) ease}:where(.switch) > :where(input:checked)::before{transform: translateX(1em);background: var(--switch-on-accent)}:where(.switch:dir(rtl)) > :where(input:checked)::before{transform: translateX(-1em)}:where(.switch) > :where(input:checked){background-color: var(--switch-accent);border-color: var(--switch-accent)}:where(.switch) > :where(input:focus-visible){outline: 2px solid var(--switch-focus);outline-offset: 2px}:where(.switch) > :where(input[aria-invalid="true"]){border-color: var(--switch-invalid)}:where(.switch:has(> input:disabled), .switch[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.switch) > :where(input){appearance: auto}}:where(.textarea){--textarea-bg: var(--nora-color-surface);--textarea-fg: var(--nora-color-text);--textarea-radius: var(--nora-radius-md);--textarea-border: var(--nora-color-text-muted);--textarea-muted: var(--nora-color-text-muted);--textarea-focus: var(--nora-color-focus);--textarea-invalid: var(--nora-color-danger);--textarea-pad-y: 0.625rem;--textarea-pad-x: 0.75rem;--textarea-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 6rem;padding-block: var(--textarea-pad-y);padding-inline: var(--textarea-pad-x);font-size: var(--textarea-font);line-height: 1.4;color: var(--textarea-fg);background-color: var(--textarea-bg);border: 1px solid var(--textarea-border);border-radius: var(--textarea-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;resize: vertical}:where(.textarea[data-size="sm"]){--textarea-pad-y: 0.375rem;--textarea-pad-x: 0.625rem;--textarea-font: var(--nora-font-sm)}:where(.textarea[data-size="lg"]){--textarea-pad-y: 0.75rem;--textarea-pad-x: 1rem;--textarea-font: var(--nora-font-lg)}:where(.textarea)::placeholder{color: var(--textarea-muted);opacity: 1}:where(.textarea:focus-visible){outline: 2px solid var(--textarea-focus);outline-offset: 1px;border-color: var(--textarea-focus)}:where(.textarea[aria-invalid="true"]){border-color: var(--textarea-invalid)}:where(.textarea[aria-invalid="true"]:focus-visible){outline-color: var(--textarea-invalid)}:where(.textarea:disabled, .textarea[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}}@layer nora.effects{.fx-glass{background: var(--nora-color-surface)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.fx-glass{background: color-mix(in srgb, var(--nora-color-surface) 60%, transparent);-webkit-backdrop-filter: blur(16px) saturate(140%);backdrop-filter: blur(16px) saturate(140%)}}@keyframes nora-reveal{from{opacity: 0;transform: translateY(24px)}to{opacity: 1;transform: none}}@supports (animation-timeline: view()){[data-fx~="reveal"]{animation: nora-reveal linear both;animation-timeline: view();animation-range: entry 0% cover 30%}}@supports not (animation-timeline: view()){:root[data-nora-engine] [data-fx~="reveal"]{transition: opacity 400ms ease, transform 400ms ease}:root[data-nora-engine] [data-fx~="reveal"]:not([data-fx-visible]){opacity: 0;transform: translateY(24px)}}[data-fx~="tilt"]{position: relative;transform: perspective(800px) rotateX(var(--fx-rx, 0deg)) rotateY(var(--fx-ry, 0deg));transition: transform 150ms ease-out;transform-style: preserve-3d}[data-fx~="tilt"][data-fx-glare]::after{content: "";position: absolute;inset: 0;border-radius: inherit;pointer-events: none;background: radial-gradient(circle at var(--fx-gx, 50%) var(--fx-gy, 50%), rgb(255 255 255 / 0.28), transparent 60%);opacity: var(--fx-glare-o, 0);transition: opacity 200ms ease}@media (prefers-reduced-motion: reduce){[data-fx~="reveal"], [data-fx~="tilt"]{transform: none;animation: none;opacity: 1}}}@layer nora.utilities{.p-0{padding: var(--nora-space-0)}.px-0{padding-inline: var(--nora-space-0)}.py-0{padding-block: var(--nora-space-0)}.m-0{margin: var(--nora-space-0)}.mx-0{margin-inline: var(--nora-space-0)}.my-0{margin-block: var(--nora-space-0)}.gap-0{gap: var(--nora-space-0)}.p-1{padding: var(--nora-space-1)}.px-1{padding-inline: var(--nora-space-1)}.py-1{padding-block: var(--nora-space-1)}.m-1{margin: var(--nora-space-1)}.mx-1{margin-inline: var(--nora-space-1)}.my-1{margin-block: var(--nora-space-1)}.gap-1{gap: var(--nora-space-1)}.p-2{padding: var(--nora-space-2)}.px-2{padding-inline: var(--nora-space-2)}.py-2{padding-block: var(--nora-space-2)}.m-2{margin: var(--nora-space-2)}.mx-2{margin-inline: var(--nora-space-2)}.my-2{margin-block: var(--nora-space-2)}.gap-2{gap: var(--nora-space-2)}.p-3{padding: var(--nora-space-3)}.px-3{padding-inline: var(--nora-space-3)}.py-3{padding-block: var(--nora-space-3)}.m-3{margin: var(--nora-space-3)}.mx-3{margin-inline: var(--nora-space-3)}.my-3{margin-block: var(--nora-space-3)}.gap-3{gap: var(--nora-space-3)}.p-4{padding: var(--nora-space-4)}.px-4{padding-inline: var(--nora-space-4)}.py-4{padding-block: var(--nora-space-4)}.m-4{margin: var(--nora-space-4)}.mx-4{margin-inline: var(--nora-space-4)}.my-4{margin-block: var(--nora-space-4)}.gap-4{gap: var(--nora-space-4)}.p-6{padding: var(--nora-space-6)}.px-6{padding-inline: var(--nora-space-6)}.py-6{padding-block: var(--nora-space-6)}.m-6{margin: var(--nora-space-6)}.mx-6{margin-inline: var(--nora-space-6)}.my-6{margin-block: var(--nora-space-6)}.gap-6{gap: var(--nora-space-6)}.p-8{padding: var(--nora-space-8)}.px-8{padding-inline: var(--nora-space-8)}.py-8{padding-block: var(--nora-space-8)}.m-8{margin: var(--nora-space-8)}.mx-8{margin-inline: var(--nora-space-8)}.my-8{margin-block: var(--nora-space-8)}.gap-8{gap: var(--nora-space-8)}.p-12{padding: var(--nora-space-12)}.px-12{padding-inline: var(--nora-space-12)}.py-12{padding-block: var(--nora-space-12)}.m-12{margin: var(--nora-space-12)}.mx-12{margin-inline: var(--nora-space-12)}.my-12{margin-block: var(--nora-space-12)}.gap-12{gap: var(--nora-space-12)}.mx-auto{margin-inline: auto}.rounded-none{border-radius: var(--nora-radius-none)}.rounded-sm{border-radius: var(--nora-radius-sm)}.rounded-md{border-radius: var(--nora-radius-md)}.rounded-lg{border-radius: var(--nora-radius-lg)}.rounded-full{border-radius: var(--nora-radius-full)}.text-sm{font-size: var(--nora-font-sm)}.text-md{font-size: var(--nora-font-md)}.text-lg{font-size: var(--nora-font-lg)}.text-xl{font-size: var(--nora-font-xl)}.text-muted{color: var(--nora-color-text-muted)}.text-center{text-align: center}.font-bold{font-weight: 700}.shadow-sm{box-shadow: 0 1px 2px rgb(0 0 0 / 0.08), 0 1px 3px rgb(0 0 0 / 0.06)}.shadow-lg{box-shadow: 0 10px 30px rgb(0 0 0 / 0.12), 0 4px 8px rgb(0 0 0 / 0.06)}.w-full{inline-size: 100%}.hidden{display: none}.sr-only{position: absolute;inline-size: 1px;block-size: 1px;padding: 0;margin: -1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap;border: 0}}
1
+ /*! * NoraIvoire 0.1.2 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main. * © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés. * Usage soumis au contrat de licence NoraIvoire. Redistribution interdite. */ @layer nora.reset, nora.tokens, nora.base, nora.layout, nora.components, nora.effects, nora.utilities;@layer nora.reset{*, *::before, *::after{box-sizing: border-box}:where(body, h1, h2, h3, h4, p, figure, blockquote, dl, dd){margin: 0}:where(img, picture, video, canvas, svg){display: block;max-inline-size: 100%}:where(input, button, textarea, select){font: inherit}:where(p, h1, h2, h3){overflow-wrap: break-word}}@layer nora.tokens{:root{color-scheme: light dark;--nora-color-primary: #C1470B;--nora-color-on-primary: #FFFFFF;--nora-color-neutral: #3B3F46;--nora-color-on-neutral: #FFFFFF;--nora-color-danger: #C92A2A;--nora-color-on-danger: #FFFFFF;--nora-color-success: #1B7F3B;--nora-color-on-success: #FFFFFF;--nora-color-warning: #AC5800;--nora-color-on-warning: #FFFFFF;--nora-color-surface: #FFFFFF;--nora-color-surface-2: #F4F5F7;--nora-color-text: #16181D;--nora-color-text-muted: #5C626B;--nora-color-border: #DDE0E4;--nora-color-focus: #1C7ED6;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF;--nora-space-0: 0rem;--nora-space-1: 0.25rem;--nora-space-2: 0.5rem;--nora-space-3: 0.75rem;--nora-space-4: 1rem;--nora-space-6: 1.5rem;--nora-space-8: 2rem;--nora-space-12: 3rem;--nora-radius-none: 0px;--nora-radius-sm: 4px;--nora-radius-md: 8px;--nora-radius-lg: 16px;--nora-radius-full: 9999px;--nora-font-sm: 0.875rem;--nora-font-md: 1rem;--nora-font-lg: 1.125rem;--nora-font-xl: 1.5rem;--nora-duration-fast: 150ms;--nora-duration-base: 250ms;--nora-duration-slow: 400ms}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}}:root[data-theme="dark"]{--nora-color-primary: #FF8A3D;--nora-color-on-primary: #1A0F08;--nora-color-neutral: #D5D8DD;--nora-color-on-neutral: #14161A;--nora-color-danger: #FF6B6B;--nora-color-on-danger: #1F0A0A;--nora-color-success: #51CF66;--nora-color-on-success: #08180C;--nora-color-warning: #FFC078;--nora-color-on-warning: #1E1204;--nora-color-surface: #16181D;--nora-color-surface-2: #1F2228;--nora-color-text: #EDEEF0;--nora-color-text-muted: #A0A6AF;--nora-color-border: #2E323A;--nora-color-focus: #74C0FC;--nora-color-scrim: #0B0C0F;--nora-color-on-scrim: #FFFFFF}}@layer nora.base{:where(body){font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;font-size: var(--nora-font-md);line-height: 1.5;color: var(--nora-color-text);background: var(--nora-color-surface);-webkit-font-smoothing: antialiased}:where(:focus-visible){outline: 2px solid var(--nora-color-focus);outline-offset: 2px}@media (prefers-reduced-motion: reduce){:where(*, *::before, *::after){animation-duration: 0.01ms;animation-iteration-count: 1;transition-duration: 0.01ms;scroll-behavior: auto}}}@layer nora.layout{:where(.container){inline-size: min(100% - 2rem, 72rem);margin-inline: auto}:where(.stack){display: flex;flex-direction: column;gap: var(--stack-gap, var(--nora-space-4))}:where(.cluster){display: flex;flex-wrap: wrap;align-items: center;gap: var(--cluster-gap, var(--nora-space-2))}:where(.grid-auto){display: grid;gap: var(--grid-gap, var(--nora-space-4));grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--grid-min, 16rem)), 1fr))}:where(.cq){container-type: inline-size}}@layer nora.components{:where(.avatar){--avatar-bg: var(--nora-color-neutral);--avatar-fg: var(--nora-color-on-neutral);--avatar-radius: var(--nora-radius-full);--avatar-ring: var(--nora-color-surface);--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-md);--avatar-box: 2.5rem;display: inline-flex;align-items: center;justify-content: center;flex: none;vertical-align: middle;inline-size: var(--avatar-box);block-size: var(--avatar-box);border-radius: var(--avatar-radius);overflow: hidden;background-color: var(--avatar-bg);color: var(--avatar-fg);font-size: var(--avatar-font);font-weight: 600;line-height: 1;text-transform: uppercase;object-fit: cover;user-select: none}:where(.avatar[data-tone="primary"]){--avatar-bg: var(--nora-color-primary);--avatar-fg: var(--nora-color-on-primary)}:where(.avatar[data-tone="danger"]){--avatar-bg: var(--nora-color-danger);--avatar-fg: var(--nora-color-on-danger)}:where(.avatar[data-tone="success"]){--avatar-bg: var(--nora-color-success);--avatar-fg: var(--nora-color-on-success)}:where(.avatar[data-tone="warning"]){--avatar-bg: var(--nora-color-warning);--avatar-fg: var(--nora-color-on-warning)}:where(.avatar[data-size="sm"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-sm);--avatar-box: 2rem}:where(.avatar[data-size="lg"]){--avatar-pad-y: 0rem;--avatar-pad-x: 0rem;--avatar-font: var(--nora-font-xl);--avatar-box: 4rem}:where(.avatar-group){display: inline-flex;align-items: center}:where(.avatar-group > .avatar){box-shadow: 0 0 0 2px var(--avatar-ring)}:where(.avatar-group > .avatar + .avatar){margin-inline-start: calc(var(--avatar-box) * -0.25)}@media (forced-colors: active){:where(.avatar){border: 1px solid CanvasText}}:where(.badge){--badge-bg: var(--nora-color-neutral);--badge-fg: var(--nora-color-on-neutral);--badge-radius: var(--nora-radius-full);--badge-pad-y: 0.125rem;--badge-pad-x: 0.5rem;--badge-font: var(--nora-font-sm);padding-block: var(--badge-pad-y);padding-inline: var(--badge-pad-x);font-size: var(--badge-font);background: var(--badge-bg);color: var(--badge-fg);border-radius: var(--badge-radius);display: inline-flex;align-items: center;inline-size: fit-content;font-weight: 600;line-height: 1;white-space: nowrap}:where(.badge[data-tone="primary"]){--badge-bg: var(--nora-color-primary);--badge-fg: var(--nora-color-on-primary)}:where(.badge[data-tone="danger"]){--badge-bg: var(--nora-color-danger);--badge-fg: var(--nora-color-on-danger)}:where(.badge[data-tone="success"]){--badge-bg: var(--nora-color-success);--badge-fg: var(--nora-color-on-success)}:where(.badge[data-tone="warning"]){--badge-bg: var(--nora-color-warning);--badge-fg: var(--nora-color-on-warning)}:where(.badge[data-size="md"]){--badge-pad-y: 0.25rem;--badge-pad-x: 0.75rem;--badge-font: var(--nora-font-md)}:where(.btn){--btn-bg: var(--nora-color-primary);--btn-fg: var(--nora-color-on-primary);--btn-radius: var(--nora-radius-md);--btn-pad-y: 0.625rem;--btn-pad-x: 1.25rem;--btn-font: var(--nora-font-md);padding-block: var(--btn-pad-y);padding-inline: var(--btn-pad-x);font-size: var(--btn-font);background: var(--btn-bg);color: var(--btn-fg);border-radius: var(--btn-radius);display: inline-flex;align-items: center;justify-content: center;gap: 0.5em;min-block-size: 44px;min-inline-size: 44px;border: 0;font-weight: 600;line-height: 1.2;text-decoration: none;cursor: pointer;user-select: none;-webkit-tap-highlight-color: transparent;transition: background-color var(--nora-duration-fast) ease, transform var(--nora-duration-fast) ease}:where(.btn[data-tone="neutral"]){--btn-bg: var(--nora-color-neutral);--btn-fg: var(--nora-color-on-neutral)}:where(.btn[data-tone="danger"]){--btn-bg: var(--nora-color-danger);--btn-fg: var(--nora-color-on-danger)}:where(.btn[data-tone="success"]){--btn-bg: var(--nora-color-success);--btn-fg: var(--nora-color-on-success)}:where(.btn[data-tone="warning"]){--btn-bg: var(--nora-color-warning);--btn-fg: var(--nora-color-on-warning)}:where(.btn[data-size="sm"]){--btn-pad-y: 0.375rem;--btn-pad-x: 0.75rem;--btn-font: var(--nora-font-sm)}:where(.btn[data-size="lg"]){--btn-pad-y: 0.875rem;--btn-pad-x: 1.75rem;--btn-font: var(--nora-font-lg)}:where(.btn:hover:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 6%)}:where(.btn:active:not(:disabled, [aria-disabled="true"])){background: color-mix(in srgb, var(--btn-bg), black 12%);transform: scale(0.97)}:where(.btn:disabled, .btn[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.card){--card-bg: var(--nora-color-surface);--card-fg: var(--nora-color-text);--card-radius: var(--nora-radius-lg);--card-border: var(--nora-color-border);--card-pad-y: 1rem;--card-pad-x: 1rem;--card-font: var(--nora-font-md);padding-block: var(--card-pad-y);padding-inline: var(--card-pad-x);font-size: var(--card-font);background: var(--card-bg);color: var(--card-fg);border-radius: var(--card-radius);display: block;border: 1px solid var(--card-border)}:where(.card[data-size="sm"]){--card-pad-y: 0.75rem;--card-pad-x: 0.75rem;--card-font: var(--nora-font-sm)}:where(.card[data-size="lg"]){--card-pad-y: 1.5rem;--card-pad-x: 1.5rem;--card-font: var(--nora-font-md)}:where(.checkbox){--checkbox-bg: var(--nora-color-surface);--checkbox-fg: var(--nora-color-text);--checkbox-radius: var(--nora-radius-sm);--checkbox-border: var(--nora-color-text-muted);--checkbox-accent: var(--nora-color-primary);--checkbox-on-accent: var(--nora-color-on-primary);--checkbox-focus: var(--nora-color-focus);--checkbox-invalid: var(--nora-color-danger);--checkbox-pad-y: 0.375rem;--checkbox-pad-x: 0.625rem;--checkbox-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--checkbox-pad-x);min-block-size: 44px;padding-block: var(--checkbox-pad-y);font-size: var(--checkbox-font);line-height: 1.3;color: var(--checkbox-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.checkbox[data-tone="neutral"]){--checkbox-accent: var(--nora-color-neutral);--checkbox-on-accent: var(--nora-color-on-neutral)}:where(.checkbox[data-tone="danger"]){--checkbox-accent: var(--nora-color-danger);--checkbox-on-accent: var(--nora-color-on-danger)}:where(.checkbox[data-tone="success"]){--checkbox-accent: var(--nora-color-success);--checkbox-on-accent: var(--nora-color-on-success)}:where(.checkbox[data-tone="warning"]){--checkbox-accent: var(--nora-color-warning);--checkbox-on-accent: var(--nora-color-on-warning)}:where(.checkbox[data-size="sm"]){--checkbox-pad-y: 0.25rem;--checkbox-pad-x: 0.5rem;--checkbox-font: var(--nora-font-sm)}:where(.checkbox[data-size="lg"]){--checkbox-pad-y: 0.5rem;--checkbox-pad-x: 0.75rem;--checkbox-font: var(--nora-font-lg)}:where(.checkbox) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--checkbox-bg);border: 2px solid var(--checkbox-border);border-radius: var(--checkbox-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.checkbox) > :where(input)::before{content: "";inline-size: 0.7em;block-size: 0.7em;background: var(--checkbox-on-accent);clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.checkbox) > :where(input:indeterminate)::before{clip-path: inset(40% 0);transform: scale(1)}:where(.checkbox) > :where(input:checked)::before{transform: scale(1)}:where(.checkbox) > :where(input:checked, input:indeterminate){background-color: var(--checkbox-accent);border-color: var(--checkbox-accent)}:where(.checkbox) > :where(input:focus-visible){outline: 2px solid var(--checkbox-focus);outline-offset: 2px}:where(.checkbox) > :where(input[aria-invalid="true"]){border-color: var(--checkbox-invalid)}:where(.checkbox:has(> input:disabled), .checkbox[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.checkbox) > :where(input){appearance: auto}}:where(.field){--field-fg: var(--nora-color-text);--field-muted: var(--nora-color-text-muted);--field-invalid: var(--nora-color-danger);--field-pad-y: 0.375rem;--field-pad-x: 0rem;--field-font: var(--nora-font-md);display: flex;flex-direction: column;gap: var(--field-pad-y);min-inline-size: 0;margin: 0;padding: 0;border: 0;font-size: var(--field-font);color: var(--field-fg)}:where(.field[data-size="sm"]){--field-pad-y: 0.25rem;--field-pad-x: 0rem;--field-font: var(--nora-font-sm)}:where(.field[data-size="lg"]){--field-pad-y: 0.5rem;--field-pad-x: 0rem;--field-font: var(--nora-font-lg)}:where(.field-label){font-weight: 600;line-height: 1.3;padding: 0}:where(.field-help){margin: 0;font-size: 0.875em;color: var(--field-muted)}:where(.field-error){margin: 0;font-size: 0.875em;font-weight: 600;color: var(--field-invalid)}:where(.field-error:empty){display: none}:where(.field:has(:disabled):not(:has(:enabled))) > :where(.field-label){opacity: 0.5}:where(.input){--input-bg: var(--nora-color-surface);--input-fg: var(--nora-color-text);--input-radius: var(--nora-radius-md);--input-border: var(--nora-color-text-muted);--input-muted: var(--nora-color-text-muted);--input-focus: var(--nora-color-focus);--input-invalid: var(--nora-color-danger);--input-pad-y: 0.625rem;--input-pad-x: 0.75rem;--input-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--input-pad-y);padding-inline: var(--input-pad-x);font-size: var(--input-font);line-height: 1.4;color: var(--input-fg);background-color: var(--input-bg);border: 1px solid var(--input-border);border-radius: var(--input-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease}:where(.input[data-size="sm"]){--input-pad-y: 0.375rem;--input-pad-x: 0.625rem;--input-font: var(--nora-font-sm)}:where(.input[data-size="lg"]){--input-pad-y: 0.75rem;--input-pad-x: 1rem;--input-font: var(--nora-font-lg)}:where(.input)::placeholder{color: var(--input-muted);opacity: 1}:where(.input:focus-visible){outline: 2px solid var(--input-focus);outline-offset: 1px;border-color: var(--input-focus)}:where(.input[aria-invalid="true"]){border-color: var(--input-invalid)}:where(.input[aria-invalid="true"]:focus-visible){outline-color: var(--input-invalid)}:where(.input:disabled, .input[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.link){--link-fg: var(--nora-color-primary);--link-visited: var(--nora-color-text-muted);--link-focus: var(--nora-color-focus);--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-md);color: var(--link-fg);text-decoration-line: underline;text-decoration-thickness: 1px;text-underline-offset: 0.2em;border-radius: 2px;cursor: pointer;transition: text-decoration-thickness var(--nora-duration-fast) ease, color var(--nora-duration-fast) ease}:where(.link[data-tone="neutral"]){--link-fg: var(--nora-color-neutral)}:where(.link[data-tone="danger"]){--link-fg: var(--nora-color-danger)}:where(.link[data-tone="success"]){--link-fg: var(--nora-color-success)}:where(.link[data-tone="warning"]){--link-fg: var(--nora-color-warning)}:where(.link[data-size="sm"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-sm)}:where(.link[data-size="lg"]){--link-pad-y: 0rem;--link-pad-x: 0rem;--link-font: var(--nora-font-lg)}:where(.link[data-size]){font-size: var(--link-font)}:where(.link:hover){text-decoration-thickness: 2px}:where(.link:focus-visible){outline: 2px solid var(--link-focus);outline-offset: 2px;text-decoration-thickness: 2px}:where(.link[data-visited]:visited){color: var(--link-visited)}:where(.link[target="_blank"], .link[rel~="external"])::after{content: "\2197";content: "\2197" / "";display: inline-block;margin-inline-start: 0.15em;text-decoration: none}:where(.link[target="_blank"]:dir(rtl), .link[rel~="external"]:dir(rtl))::after{content: "\2196";content: "\2196" / ""}:where(.media){--media-bg: var(--nora-color-surface-2);--media-fg: var(--nora-color-text-muted);--media-radius: var(--nora-radius-lg);--media-scrim: var(--nora-color-scrim);--media-on-scrim: var(--nora-color-on-scrim);--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 16 / 9;display: grid;margin: 0;min-inline-size: 0;isolation: isolate}:where(.media[data-size="standard"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 4 / 3}:where(.media[data-size="square"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 1 / 1}:where(.media[data-size="portrait"]){--media-pad-y: 0.5rem;--media-pad-x: 1rem;--media-font: var(--nora-font-sm);--media-ratio: 3 / 4}:where(.media) > :where(img, picture, video, svg, canvas, iframe){grid-area: 1 / 1;display: block;inline-size: 100%;block-size: auto;aspect-ratio: var(--media-ratio);object-fit: cover;border-radius: var(--media-radius);background-color: var(--media-bg);overflow: hidden}:where(.media) > :where(picture) > :where(img){inline-size: 100%;block-size: 100%;object-fit: cover}:where(.media-overlay){grid-area: 1 / 1;align-self: end;z-index: 1;padding-block: 3em var(--media-pad-y);padding-inline: var(--media-pad-x);color: var(--media-on-scrim);font-weight: 600;text-shadow: 0 1px 2px rgb(0 0 0 / 0.45);background: linear-gradient(to top, color-mix(in srgb, var(--media-scrim) 85%, transparent), transparent);border-end-start-radius: var(--media-radius);border-end-end-radius: var(--media-radius)}@media (forced-colors: active){:where(.media-overlay){background: Canvas;color: CanvasText;text-shadow: none}}:where(.media-caption){padding-block-start: var(--media-pad-y);font-size: var(--media-font);color: var(--media-fg)}:where(.navbar){--navbar-bg: var(--nora-color-surface);--navbar-fg: var(--nora-color-text);--navbar-muted: var(--nora-color-text-muted);--navbar-border: var(--nora-color-border);--navbar-active: var(--nora-color-primary);--navbar-focus: var(--nora-color-focus);--navbar-pad-y: 0.5rem;--navbar-pad-x: 1rem;--navbar-font: var(--nora-font-md);display: flex;flex-wrap: wrap;align-items: center;column-gap: var(--navbar-pad-x);row-gap: var(--navbar-pad-y);padding-block: var(--navbar-pad-y);padding-inline: var(--navbar-pad-x);font-size: var(--navbar-font);color: var(--navbar-fg);background-color: var(--navbar-bg);border-block-end: 1px solid var(--navbar-border)}:where(.navbar[data-size="sm"]){--navbar-pad-y: 0.25rem;--navbar-pad-x: 0.75rem;--navbar-font: var(--nora-font-sm)}:where(.navbar[data-size="lg"]){--navbar-pad-y: 0.75rem;--navbar-pad-x: 1.5rem;--navbar-font: var(--nora-font-lg)}:where(.navbar-brand){display: inline-flex;align-items: center;gap: 0.5em;min-block-size: 44px;margin-inline-end: auto;font-weight: 700;font-size: 1.125em;color: inherit;text-decoration: none}:where(.navbar-menu){display: flex;align-items: center;gap: 0.25em;min-inline-size: 0;margin: 0;padding: 0;list-style: none;overflow-x: auto;scroll-snap-type: x proximity;scrollbar-width: thin}:where(.navbar-menu) > :where(li){flex: none;scroll-snap-align: start}:where(.navbar-menu) :where(a){display: inline-flex;align-items: center;min-block-size: 44px;padding-inline: 0.75em;color: var(--navbar-muted);font-weight: 500;text-decoration: none;white-space: nowrap;border-radius: var(--nora-radius-md);transition: color var(--nora-duration-fast) ease, background-color var(--nora-duration-fast) ease}:where(.navbar-menu) :where(a:hover){color: var(--navbar-fg);background-color: color-mix(in srgb, var(--navbar-fg) 6%, transparent)}:where(.navbar-menu) :where(a:focus-visible){outline: 2px solid var(--navbar-focus);outline-offset: -2px}:where(.navbar-menu) :where(a[aria-current="page"]){color: var(--navbar-active);font-weight: 600;box-shadow: inset 0 -2px 0 var(--navbar-active)}@media (max-width: 40rem){:where(.navbar-menu){order: 3;flex-basis: 100%}}@media (forced-colors: active){:where(.navbar-menu) :where(a[aria-current="page"]){text-decoration: underline;text-decoration-thickness: 2px}}:where(.navbar-actions){display: flex;flex-wrap: wrap;align-items: center;gap: 0.5em}:where(.radio){--radio-bg: var(--nora-color-surface);--radio-fg: var(--nora-color-text);--radio-radius: var(--nora-radius-full);--radio-border: var(--nora-color-text-muted);--radio-accent: var(--nora-color-primary);--radio-on-accent: var(--nora-color-on-primary);--radio-focus: var(--nora-color-focus);--radio-invalid: var(--nora-color-danger);--radio-pad-y: 0.375rem;--radio-pad-x: 0.625rem;--radio-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--radio-pad-x);min-block-size: 44px;padding-block: var(--radio-pad-y);font-size: var(--radio-font);line-height: 1.3;color: var(--radio-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.radio[data-tone="neutral"]){--radio-accent: var(--nora-color-neutral);--radio-on-accent: var(--nora-color-on-neutral)}:where(.radio[data-tone="danger"]){--radio-accent: var(--nora-color-danger);--radio-on-accent: var(--nora-color-on-danger)}:where(.radio[data-tone="success"]){--radio-accent: var(--nora-color-success);--radio-on-accent: var(--nora-color-on-success)}:where(.radio[data-tone="warning"]){--radio-accent: var(--nora-color-warning);--radio-on-accent: var(--nora-color-on-warning)}:where(.radio[data-size="sm"]){--radio-pad-y: 0.25rem;--radio-pad-x: 0.5rem;--radio-font: var(--nora-font-sm)}:where(.radio[data-size="lg"]){--radio-pad-y: 0.5rem;--radio-pad-x: 0.75rem;--radio-font: var(--nora-font-lg)}:where(.radio) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-grid;place-content: center;inline-size: 1.25em;block-size: 1.25em;background-color: var(--radio-bg);border: 2px solid var(--radio-border);border-radius: var(--radio-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.radio) > :where(input)::before{content: "";inline-size: 0.5em;block-size: 0.5em;border-radius: 50%;background: var(--radio-on-accent);transform: scale(0);transition: transform var(--nora-duration-fast) ease}:where(.radio) > :where(input:checked)::before{transform: scale(1)}:where(.radio) > :where(input:checked){background-color: var(--radio-accent);border-color: var(--radio-accent)}:where(.radio) > :where(input:focus-visible){outline: 2px solid var(--radio-focus);outline-offset: 2px}:where(.radio) > :where(input[aria-invalid="true"]){border-color: var(--radio-invalid)}:where(.radio:has(> input:disabled), .radio[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.radio) > :where(input){appearance: auto}}:where(.select){--select-bg: var(--nora-color-surface);--select-fg: var(--nora-color-text);--select-radius: var(--nora-radius-md);--select-border: var(--nora-color-text-muted);--select-muted: var(--nora-color-text-muted);--select-focus: var(--nora-color-focus);--select-invalid: var(--nora-color-danger);--select-pad-y: 0.625rem;--select-pad-x: 0.75rem;--select-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 44px;padding-block: var(--select-pad-y);padding-inline: var(--select-pad-x);font-size: var(--select-font);line-height: 1.4;color: var(--select-fg);background-color: var(--select-bg);border: 1px solid var(--select-border);border-radius: var(--select-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;appearance: none;padding-inline-end: calc(var(--select-pad-x) + 1.25em);background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);background-position: calc(100% - var(--select-pad-x) - 0.375em) 50%, calc(100% - var(--select-pad-x)) 50%;background-size: 0.375em 0.375em;background-repeat: no-repeat}:where(.select[data-size="sm"]){--select-pad-y: 0.375rem;--select-pad-x: 0.625rem;--select-font: var(--nora-font-sm)}:where(.select[data-size="lg"]){--select-pad-y: 0.75rem;--select-pad-x: 1rem;--select-font: var(--nora-font-lg)}:where(.select[multiple], .select[size]){background-image: none;padding-inline-end: var(--select-pad-x)}:where(.select)::placeholder{color: var(--select-muted);opacity: 1}:where(.select:focus-visible){outline: 2px solid var(--select-focus);outline-offset: 1px;border-color: var(--select-focus)}:where(.select[aria-invalid="true"]){border-color: var(--select-invalid)}:where(.select[aria-invalid="true"]:focus-visible){outline-color: var(--select-invalid)}:where(.select:disabled, .select[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}:where(.switch){--switch-bg: var(--nora-color-surface);--switch-fg: var(--nora-color-text);--switch-radius: var(--nora-radius-full);--switch-border: var(--nora-color-text-muted);--switch-accent: var(--nora-color-primary);--switch-on-accent: var(--nora-color-on-primary);--switch-focus: var(--nora-color-focus);--switch-invalid: var(--nora-color-danger);--switch-pad-y: 0.375rem;--switch-pad-x: 0.625rem;--switch-font: var(--nora-font-md);display: inline-flex;align-items: center;gap: var(--switch-pad-x);min-block-size: 44px;padding-block: var(--switch-pad-y);font-size: var(--switch-font);line-height: 1.3;color: var(--switch-fg);cursor: pointer;-webkit-tap-highlight-color: transparent}:where(.switch[data-tone="neutral"]){--switch-accent: var(--nora-color-neutral);--switch-on-accent: var(--nora-color-on-neutral)}:where(.switch[data-tone="danger"]){--switch-accent: var(--nora-color-danger);--switch-on-accent: var(--nora-color-on-danger)}:where(.switch[data-tone="success"]){--switch-accent: var(--nora-color-success);--switch-on-accent: var(--nora-color-on-success)}:where(.switch[data-tone="warning"]){--switch-accent: var(--nora-color-warning);--switch-on-accent: var(--nora-color-on-warning)}:where(.switch[data-size="sm"]){--switch-pad-y: 0.25rem;--switch-pad-x: 0.5rem;--switch-font: var(--nora-font-sm)}:where(.switch[data-size="lg"]){--switch-pad-y: 0.5rem;--switch-pad-x: 0.75rem;--switch-font: var(--nora-font-lg)}:where(.switch) > :where(input){appearance: none;flex: none;margin: 0;padding: 0;cursor: inherit;display: inline-flex;align-items: center;inline-size: 2.25em;block-size: 1.25em;background-color: var(--switch-border);border: 2px solid var(--switch-border);border-radius: var(--switch-radius);transition: background-color var(--nora-duration-fast) ease, border-color var(--nora-duration-fast) ease}:where(.switch) > :where(input)::before{content: "";inline-size: calc(1.25em - 8px);block-size: calc(1.25em - 8px);margin-inline-start: 2px;border-radius: 50%;background: var(--switch-bg);transition: transform var(--nora-duration-fast) ease}:where(.switch) > :where(input:checked)::before{transform: translateX(1em);background: var(--switch-on-accent)}:where(.switch:dir(rtl)) > :where(input:checked)::before{transform: translateX(-1em)}:where(.switch) > :where(input:checked){background-color: var(--switch-accent);border-color: var(--switch-accent)}:where(.switch) > :where(input:focus-visible){outline: 2px solid var(--switch-focus);outline-offset: 2px}:where(.switch) > :where(input[aria-invalid="true"]){border-color: var(--switch-invalid)}:where(.switch:has(> input:disabled), .switch[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}@media (forced-colors: active){:where(.switch) > :where(input){appearance: auto}}:where(.textarea){--textarea-bg: var(--nora-color-surface);--textarea-fg: var(--nora-color-text);--textarea-radius: var(--nora-radius-md);--textarea-border: var(--nora-color-text-muted);--textarea-muted: var(--nora-color-text-muted);--textarea-focus: var(--nora-color-focus);--textarea-invalid: var(--nora-color-danger);--textarea-pad-y: 0.625rem;--textarea-pad-x: 0.75rem;--textarea-font: var(--nora-font-md);display: block;inline-size: 100%;min-block-size: 6rem;padding-block: var(--textarea-pad-y);padding-inline: var(--textarea-pad-x);font-size: var(--textarea-font);line-height: 1.4;color: var(--textarea-fg);background-color: var(--textarea-bg);border: 1px solid var(--textarea-border);border-radius: var(--textarea-radius);transition: border-color var(--nora-duration-fast) ease, outline-color var(--nora-duration-fast) ease;resize: vertical}:where(.textarea[data-size="sm"]){--textarea-pad-y: 0.375rem;--textarea-pad-x: 0.625rem;--textarea-font: var(--nora-font-sm)}:where(.textarea[data-size="lg"]){--textarea-pad-y: 0.75rem;--textarea-pad-x: 1rem;--textarea-font: var(--nora-font-lg)}:where(.textarea)::placeholder{color: var(--textarea-muted);opacity: 1}:where(.textarea:focus-visible){outline: 2px solid var(--textarea-focus);outline-offset: 1px;border-color: var(--textarea-focus)}:where(.textarea[aria-invalid="true"]){border-color: var(--textarea-invalid)}:where(.textarea[aria-invalid="true"]:focus-visible){outline-color: var(--textarea-invalid)}:where(.textarea:disabled, .textarea[aria-disabled="true"]){opacity: 0.5;cursor: not-allowed}}@layer nora.effects{.fx-glass{background: var(--nora-color-surface)}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.fx-glass{background: color-mix(in srgb, var(--nora-color-surface) 60%, transparent);-webkit-backdrop-filter: blur(16px) saturate(140%);backdrop-filter: blur(16px) saturate(140%)}}@keyframes nora-reveal{from{opacity: 0;transform: translateY(24px)}to{opacity: 1;transform: none}}@supports (animation-timeline: view()){[data-fx~="reveal"]{animation: nora-reveal linear both;animation-timeline: view();animation-range: entry 0% cover 30%}}@supports not (animation-timeline: view()){:root[data-nora-engine] [data-fx~="reveal"]{transition: opacity 400ms ease, transform 400ms ease}:root[data-nora-engine] [data-fx~="reveal"]:not([data-fx-visible]){opacity: 0;transform: translateY(24px)}}[data-fx~="tilt"]{position: relative;transform: perspective(800px) rotateX(var(--fx-rx, 0deg)) rotateY(var(--fx-ry, 0deg));transition: transform 150ms ease-out;transform-style: preserve-3d}[data-fx~="tilt"][data-fx-glare]::after{content: "";position: absolute;inset: 0;border-radius: inherit;pointer-events: none;background: radial-gradient(circle at var(--fx-gx, 50%) var(--fx-gy, 50%), rgb(255 255 255 / 0.28), transparent 60%);opacity: var(--fx-glare-o, 0);transition: opacity 200ms ease}@media (prefers-reduced-motion: reduce){[data-fx~="reveal"], [data-fx~="tilt"]{transform: none;animation: none;opacity: 1}}}@layer nora.utilities{.p-0{padding: var(--nora-space-0)}.px-0{padding-inline: var(--nora-space-0)}.py-0{padding-block: var(--nora-space-0)}.m-0{margin: var(--nora-space-0)}.mx-0{margin-inline: var(--nora-space-0)}.my-0{margin-block: var(--nora-space-0)}.gap-0{gap: var(--nora-space-0)}.p-1{padding: var(--nora-space-1)}.px-1{padding-inline: var(--nora-space-1)}.py-1{padding-block: var(--nora-space-1)}.m-1{margin: var(--nora-space-1)}.mx-1{margin-inline: var(--nora-space-1)}.my-1{margin-block: var(--nora-space-1)}.gap-1{gap: var(--nora-space-1)}.p-2{padding: var(--nora-space-2)}.px-2{padding-inline: var(--nora-space-2)}.py-2{padding-block: var(--nora-space-2)}.m-2{margin: var(--nora-space-2)}.mx-2{margin-inline: var(--nora-space-2)}.my-2{margin-block: var(--nora-space-2)}.gap-2{gap: var(--nora-space-2)}.p-3{padding: var(--nora-space-3)}.px-3{padding-inline: var(--nora-space-3)}.py-3{padding-block: var(--nora-space-3)}.m-3{margin: var(--nora-space-3)}.mx-3{margin-inline: var(--nora-space-3)}.my-3{margin-block: var(--nora-space-3)}.gap-3{gap: var(--nora-space-3)}.p-4{padding: var(--nora-space-4)}.px-4{padding-inline: var(--nora-space-4)}.py-4{padding-block: var(--nora-space-4)}.m-4{margin: var(--nora-space-4)}.mx-4{margin-inline: var(--nora-space-4)}.my-4{margin-block: var(--nora-space-4)}.gap-4{gap: var(--nora-space-4)}.p-6{padding: var(--nora-space-6)}.px-6{padding-inline: var(--nora-space-6)}.py-6{padding-block: var(--nora-space-6)}.m-6{margin: var(--nora-space-6)}.mx-6{margin-inline: var(--nora-space-6)}.my-6{margin-block: var(--nora-space-6)}.gap-6{gap: var(--nora-space-6)}.p-8{padding: var(--nora-space-8)}.px-8{padding-inline: var(--nora-space-8)}.py-8{padding-block: var(--nora-space-8)}.m-8{margin: var(--nora-space-8)}.mx-8{margin-inline: var(--nora-space-8)}.my-8{margin-block: var(--nora-space-8)}.gap-8{gap: var(--nora-space-8)}.p-12{padding: var(--nora-space-12)}.px-12{padding-inline: var(--nora-space-12)}.py-12{padding-block: var(--nora-space-12)}.m-12{margin: var(--nora-space-12)}.mx-12{margin-inline: var(--nora-space-12)}.my-12{margin-block: var(--nora-space-12)}.gap-12{gap: var(--nora-space-12)}.mx-auto{margin-inline: auto}.rounded-none{border-radius: var(--nora-radius-none)}.rounded-sm{border-radius: var(--nora-radius-sm)}.rounded-md{border-radius: var(--nora-radius-md)}.rounded-lg{border-radius: var(--nora-radius-lg)}.rounded-full{border-radius: var(--nora-radius-full)}.text-sm{font-size: var(--nora-font-sm)}.text-md{font-size: var(--nora-font-md)}.text-lg{font-size: var(--nora-font-lg)}.text-xl{font-size: var(--nora-font-xl)}.text-muted{color: var(--nora-color-text-muted)}.text-center{text-align: center}.font-bold{font-weight: 700}.shadow-sm{box-shadow: 0 1px 2px rgb(0 0 0 / 0.08), 0 1px 3px rgb(0 0 0 / 0.06)}.shadow-lg{box-shadow: 0 10px 30px rgb(0 0 0 / 0.12), 0 4px 8px rgb(0 0 0 / 0.06)}.w-full{inline-size: 100%}.hidden{display: none}.sr-only{position: absolute;inline-size: 1px;block-size: 1px;padding: 0;margin: -1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap;border: 0}}
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (ts) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (ts) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
  // Types web : React / Next.js (JSX), Vue (Volar) et Angular via ce module.
@@ -23,4 +23,4 @@ export function nora(component: NoraComponent, v: { tone?: NoraTone; size?: Nora
23
23
  return props;
24
24
  }
25
25
 
26
- export const noraManifestVersion = '0.1.1';
26
+ export const noraManifestVersion = '0.1.2';
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (tsx) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (tsx) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
  // Effets optionnels (paquets fx-*). À copier à côté de noraivoire.tsx.
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (tsx) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (tsx) depuis la spec. Ne pas modifier à la main.
2
2
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
3
3
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
4
4
  /* eslint-disable */
@@ -26,14 +26,14 @@ import {
26
26
  type ViewStyle,
27
27
  } from 'react-native';
28
28
 
29
- export const noraVersion = '0.1.1';
29
+ export const noraVersion = '0.1.2';
30
30
 
31
31
  export type NoraTone = 'primary' | 'neutral' | 'danger' | 'success' | 'warning';
32
32
  export type NoraSize = 'sm' | 'md' | 'lg' | 'wide' | 'standard' | 'square' | 'portrait';
33
33
 
34
34
  export const noraColors = {
35
35
  light: {
36
- primary: '#C94A0B',
36
+ primary: '#C1470B',
37
37
  onPrimary: '#FFFFFF',
38
38
  neutral: '#3B3F46',
39
39
  onNeutral: '#FFFFFF',
@@ -41,7 +41,7 @@ export const noraColors = {
41
41
  onDanger: '#FFFFFF',
42
42
  success: '#1B7F3B',
43
43
  onSuccess: '#FFFFFF',
44
- warning: '#B35C00',
44
+ warning: '#AC5800',
45
45
  onWarning: '#FFFFFF',
46
46
  surface: '#FFFFFF',
47
47
  surface2: '#F4F5F7',
@@ -1,6 +1,6 @@
1
1
  <?php
2
2
 
3
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
4
4
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
5
5
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
6
6
 
@@ -1,6 +1,6 @@
1
1
  <?php
2
2
 
3
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
4
4
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
5
5
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
6
6
 
@@ -1,6 +1,6 @@
1
1
  <?php
2
2
 
3
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
4
4
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
5
5
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
6
6
 
@@ -1,6 +1,6 @@
1
1
  <?php
2
2
 
3
- // NoraIvoire 0.1.1 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.2 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
4
4
  // © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
5
5
  // Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
6
6
 
@@ -8,10 +8,10 @@ declare(strict_types=1);
8
8
 
9
9
  namespace NoraIvoire\SymfonyBundle\Generated;
10
10
 
11
- /** Contrat NoraIvoire 0.1.1 exposé à PHP (lecture seule). */
11
+ /** Contrat NoraIvoire 0.1.2 exposé à PHP (lecture seule). */
12
12
  final class NoraManifest
13
13
  {
14
- public const VERSION = '0.1.1';
14
+ public const VERSION = '0.1.2';
15
15
 
16
16
  /** @var array<string, array{tones: list<string>, sizes: list<string>, defaults: array{tone: string, size: string}, elements: list<string>, shape: string, twig: string}> */
17
17
  public const COMPONENTS = [
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
@@ -1,5 +1,5 @@
1
1
  {#
2
- # NoraIvoire 0.1.1 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.2 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
3
3
  # © 2026 Jonathan KABLAN — Logiciel propriétaire, tous droits réservés.
4
4
  # Usage soumis au contrat de licence NoraIvoire. Redistribution interdite.
5
5
  #}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jonathankablan/noraivoire-core",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "license": "UNLICENSED",
5
5
  "description": "Sorties compilées NoraIvoire (CSS, moteur, Dart, TSX, manifest). Propriétaire.",
6
6
  "author": "Jonathan KABLAN",