@jonathankablan/noraivoire-core 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +1 -1
  2. package/dist/flutter/noraivoire.dart +2 -2
  3. package/dist/flutter/noraivoire_fx.dart +1 -1
  4. package/dist/fx/fx-scroll.css +1 -1
  5. package/dist/fx/fx-scroll.js +1 -1
  6. package/dist/fx/fx-text.css +1 -1
  7. package/dist/fx/fx-text.js +1 -1
  8. package/dist/integrity.json +75 -75
  9. package/dist/llms-full.txt +1 -1
  10. package/dist/manifest.json +1 -1
  11. package/dist/noraivoire.auto.js +1 -1
  12. package/dist/noraivoire.css +1 -1
  13. package/dist/noraivoire.engine.d.ts +1 -1
  14. package/dist/noraivoire.engine.js +1 -1
  15. package/dist/noraivoire.legacy.min.css +1 -1
  16. package/dist/noraivoire.min.css +1 -1
  17. package/dist/noraivoire.types.ts +2 -2
  18. package/dist/react-native/noraivoire-fx.tsx +1 -1
  19. package/dist/react-native/noraivoire.tsx +2 -2
  20. package/dist/symfony/src/Enum/NoraComponent.php +1 -1
  21. package/dist/symfony/src/Enum/NoraSize.php +1 -1
  22. package/dist/symfony/src/Enum/NoraTone.php +1 -1
  23. package/dist/symfony/src/NoraManifest.php +3 -3
  24. package/dist/symfony/templates/components/Nora/Avatar.html.twig +1 -1
  25. package/dist/symfony/templates/components/Nora/Badge.html.twig +1 -1
  26. package/dist/symfony/templates/components/Nora/Btn.html.twig +1 -1
  27. package/dist/symfony/templates/components/Nora/Card.html.twig +1 -1
  28. package/dist/symfony/templates/components/Nora/Checkbox.html.twig +1 -1
  29. package/dist/symfony/templates/components/Nora/Field.html.twig +1 -1
  30. package/dist/symfony/templates/components/Nora/Input.html.twig +1 -1
  31. package/dist/symfony/templates/components/Nora/Link.html.twig +1 -1
  32. package/dist/symfony/templates/components/Nora/Media.html.twig +1 -1
  33. package/dist/symfony/templates/components/Nora/Navbar.html.twig +1 -1
  34. package/dist/symfony/templates/components/Nora/Radio.html.twig +1 -1
  35. package/dist/symfony/templates/components/Nora/Select.html.twig +1 -1
  36. package/dist/symfony/templates/components/Nora/Switch.html.twig +1 -1
  37. package/dist/symfony/templates/components/Nora/Textarea.html.twig +1 -1
  38. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @jonathankablan/noraivoire-core
2
2
 
3
- Sorties compilées de **NoraIvoire** 0.1.0, 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.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.
4
4
 
5
5
  ```bash
6
6
  npm install @jonathankablan/noraivoire-core
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.0 — fichier GÉNÉRÉ (dart) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0';
16
+ const String noraVersion = '0.1.1';
17
17
 
18
18
  enum NoraTone { primary, neutral, danger, success, warning }
19
19
 
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.0 — fichier GÉNÉRÉ (dart) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
2
+ * NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
2
+ * NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0",
3
+ "version": "0.1.1",
4
4
  "files": {
5
5
  "noraivoire.css": {
6
- "sha256": "d4940fc5e972196ae5c8a7b8eb4c5b00914cf59c4d26a201fada3fff92dfba73",
7
- "sri": "sha384-qHFndoVMy2+0HzN6hk0PPoPU4rTWsmPfPFwBzvJT1TbWZGO5v2Wit7wjJBT5w/dH",
6
+ "sha256": "aeec4bcd55265bf5f6a405600a1b5ebe91b24d691fad37978dbca9c79adc02e7",
7
+ "sri": "sha384-aKgjkAz+wGDY9/Quz4deK4Db5wRxbkiw2w4HInJhciWBUsHeVYiQYLZ4aRz7PwhJ",
8
8
  "bytes": 38151,
9
9
  "gzip": 6880
10
10
  },
11
11
  "noraivoire.min.css": {
12
- "sha256": "0efb759ac2a08fb977c90ab5e2cc6379313fe3c34045e7bac1f406b869592077",
13
- "sri": "sha384-yXxa7R/nyeiCZCsOZPofzCyDZXNq5t5PRRhcGQ15+BPbzE94uoiWH7uaRc4aBIMj",
12
+ "sha256": "ef9892164a93a88d63a8c819b97ea868104be66a3e438a82f9e1db03988f5747",
13
+ "sri": "sha384-K5dTNuPexm5FvC/GD+1Vur0hpQVJO+ZRDV9TCHToHUUeSbt9U0MEH0WsRTYJQXWK",
14
14
  "bytes": 33433,
15
15
  "gzip": 6466
16
16
  },
17
17
  "noraivoire.legacy.min.css": {
18
- "sha256": "f161abf687f6f66c6144b7636af7e7c685f388d57d3a83fcd4aff61e43b03e8c",
19
- "sri": "sha384-MI3w9MdtUXfK3mV99Xy1sPqDGr437HkAlMnyDsXafrZW3adzDYH2wm4ZXbO0kHva",
18
+ "sha256": "c797b32a937eafc586d52ada28114c6fc284b66fb72d399f65eb0be0b481a2d2",
19
+ "sri": "sha384-p6h70t3KcVsrlVjVmIf/qGvYKGDCi1ZA0JCp0EUENuoETUV2qg3CASUOvOrQ1niE",
20
20
  "bytes": 33186,
21
21
  "gzip": 6375
22
22
  },
23
23
  "noraivoire.engine.js": {
24
- "sha256": "0e3b958be6b32ef2669c64399689bbcf9e06ec64b793f2668a1c0e518eae3645",
25
- "sri": "sha384-6ehvPfJcr/G0h+otDZYlDsMxEztndp4zL141UAMhJBBSuJx1RWa0Bz/2Sy+ElVr7",
24
+ "sha256": "1c4fa8b258c43f9aed062edff490ae4fa5fce723725634a506ba7de64aadc54d",
25
+ "sri": "sha384-3fWUHazm0wXEB4wWCimlEMZAbnCX1Owt9qCr2Ae5Rjag5vpYnOPWwdDWe6QuBHvU",
26
26
  "bytes": 9774,
27
27
  "gzip": 3385
28
28
  },
29
29
  "noraivoire.auto.js": {
30
- "sha256": "ada6db2f79c486107336e038e79ab87d5501e5ff86423c57aff9413d0bfe0565",
31
- "sri": "sha384-PWJF9/+Bef7ONOHSOm05vsKOq8V9fzQqdVpUKOQedjdxMUrlxcPlQJu3lmfZfiYk",
30
+ "sha256": "db6359ad5a4fe744764173fda60e1d17c661ca1dd8952acc7a992932226ea1b5",
31
+ "sri": "sha384-GfxNJSBiuQRfFHcKdNK7PTdJF84+dXNxMtgp/RjgNYkKVF2RirvcXG2vlX+Gu1p3",
32
32
  "bytes": 489,
33
33
  "gzip": 364
34
34
  },
35
35
  "noraivoire.engine.d.ts": {
36
- "sha256": "3862d0dfcb086e6966dab26c30b67d3b44abe1ef49ad0e6e36c48525d1bdb389",
37
- "sri": "sha384-NRdpjl6132s/+n47BrHrO1MMv83/enkWF83vHWJ29IBA52MFpspE2fwTuBf+V8fr",
36
+ "sha256": "8076b05078d9a9947f7357487ec7e3338c8524cd12130b51e50ef12e8018bc1b",
37
+ "sri": "sha384-UbuWRXrsI5hR5V2DLcI71v8V7Y83esQH5Ov/BRuMJa+fkXfRJq5OlRmJk25ZY48T",
38
38
  "bytes": 1430,
39
39
  "gzip": 658
40
40
  },
41
41
  "noraivoire.types.ts": {
42
- "sha256": "b94687df32e4850bbb7b8e4fc89b97f26a77da981d072ae4bd3a91f839a49a6c",
43
- "sri": "sha384-hX8Nc7hnJONeem2tfHG24mEsPIXXJuh2jxIs8bnzjYjKMq2zsLFn7aaYRZnqBIzb",
42
+ "sha256": "71bc643a7259b95dca9ea34c6554dc78b18b5196dac59b4120da09f13ba01073",
43
+ "sri": "sha384-vuVnUWvw6FhdKaxmv7dt7BpDok6wfncol7shyOLayqxhc71fHaYDZG7QSPFKaS96",
44
44
  "bytes": 2087,
45
- "gzip": 968
45
+ "gzip": 967
46
46
  },
47
47
  "flutter/noraivoire.dart": {
48
- "sha256": "77bd899dad3fd1c533c8cf71f2bab58af38fcc9d8df227529b2c2a1f3a5bcd6e",
49
- "sri": "sha384-MvRBzO/DhfxqZxiqNja5VVIuukd2oWbv4cQUnd7iUOp/vIstKxD0ecA+3Bgx9dOr",
48
+ "sha256": "a9206de9b1bea1b0c0f9edc485576e21343b6bf3a0eeaa1b692ac10756d13409",
49
+ "sri": "sha384-QiRRNRvx9IuDJ2CZfr0IepzgNQqmjV27r7vI8NcxUoxwKhqjt6sK5ZSL+YDwG7DR",
50
50
  "bytes": 64230,
51
51
  "gzip": 12127
52
52
  },
53
53
  "react-native/noraivoire.tsx": {
54
- "sha256": "db2eb0611fe356c24ef9412cf0d9eed121aba1414466162ef2792744fcf535a6",
55
- "sri": "sha384-agy7qVuCqrXBDsZNjN+9I0mMmXY/T0WBMxnENdm9w9mN4zWcWKaraCeGFmraQIoz",
54
+ "sha256": "0ce5e95d735c1d6b37746cb731370d97bc0e980472111159af6c064565b5802c",
55
+ "sri": "sha384-b/cypuVF5rRYbmduDuRF/jOMuuUXYht4fpICSfdLslLwmNAEaXmp5QUCzsI+/b8w",
56
56
  "bytes": 53212,
57
57
  "gzip": 11167
58
58
  },
59
59
  "symfony/src/NoraManifest.php": {
60
- "sha256": "08f6635a31d3280bedbf3c5a84fc3e182fe11bbd3fe43985df75ceeea3396af1",
61
- "sri": "sha384-DVUZZZ2igPvSUqVq36kcSDoZ5msljRiwgQhmc/cEyv36tZqjNleICTsoIhSSnelw",
60
+ "sha256": "9fb276be09daa51a8f116f067213dd6a77ebf652ffdbe246aeadfcf47c2f6d6f",
61
+ "sri": "sha384-IhvoDftLgO3UuzEfLBESkqW2KrPmRy51Ge2k/VPkPxgb5u8zNfR68k6hT6P0VwBm",
62
62
  "bytes": 6061,
63
63
  "gzip": 1242
64
64
  },
65
65
  "symfony/src/Enum/NoraTone.php": {
66
- "sha256": "34df4a2e3369ce410e10e0db1c67d97f806509cafc4e0676a796f663cf7c8219",
67
- "sri": "sha384-fBAZ9Mmzp8ie8Pyst0DSIgsUJc9BH6NM1p6X8Do+kc8pim2kwaJHNJaJg/gFExgd",
66
+ "sha256": "2ab0468d2878c602fbd66c365a9e3faacba79d25c3a0a86ef6043411987008a9",
67
+ "sri": "sha384-uPFfQQFpskrZkqOEOz3QGQoS9EcnZzITzWSKh5j9ZpAF8NJRpZ1HChlvbA++ygUe",
68
68
  "bytes": 1052,
69
69
  "gzip": 616
70
70
  },
71
71
  "symfony/src/Enum/NoraSize.php": {
72
- "sha256": "535df640752998bf864e85d2a9dd0bfaf805ff224cd8f21632e3093a89d7f667",
73
- "sri": "sha384-6S47R+Y0DkzJiNbaHRO3X1I9DOjcSY0V1p1aOIRR4hx6BDGDQnY9B7xG5sqoPhkH",
72
+ "sha256": "4e902d7db00d89e2ac3aa19561180ffffb8a1c521c2781353027c8f04af9e9b8",
73
+ "sri": "sha384-XQ5uHhzthsWAxQv8nmV3MNKTTkg+RPya6ydL+s3GPfAh8ohtQjzCNtclpqEKPGrM",
74
74
  "bytes": 1083,
75
- "gzip": 632
75
+ "gzip": 633
76
76
  },
77
77
  "symfony/src/Enum/NoraComponent.php": {
78
- "sha256": "c37dcbf4bb9cdf41f17c874199dfe32dc6557b740847fec79e72211d1b0dc9d0",
79
- "sri": "sha384-+e14ZlOrcezp2gfdv0JtT8wIxhehxpO7wM2O6McHAZXK+yP1jm0PdVuAXxDIrzL/",
78
+ "sha256": "1a6c4aae900c93fbac7c1e7ea1d362ed8d0b3e32df89de40a708dc697bdc7dc7",
79
+ "sri": "sha384-zqDjNpVGm+qmQd8LD41MUJcNX/u65r/96ArXORbSTB4hkVHwaqV2UVDpvT81DxsY",
80
80
  "bytes": 947,
81
81
  "gzip": 537
82
82
  },
83
83
  "symfony/templates/components/Nora/Avatar.html.twig": {
84
- "sha256": "aa2057e14e64d9089a32fcb06fee205fbfde1165ab826f6520b621e0c852c79d",
85
- "sri": "sha384-f+wkd+QyfkabSyLvtWbBAAHpD0QViBWlZdWyMOv06rRfzgZJw/9GROg9r2A9bcG1",
84
+ "sha256": "b776be65660e4c1258f5b2724224de432ce1dccdccb94e3562fe64865608f86c",
85
+ "sri": "sha384-qjfWrgyUXR0rwNdYmiRl3fOY+79gpIuJon0+51E9ePnRLSOI/3OjfNwuE4MsSsiO",
86
86
  "bytes": 1048,
87
87
  "gzip": 577
88
88
  },
89
89
  "symfony/templates/components/Nora/Badge.html.twig": {
90
- "sha256": "f7b8d9fa1d9ed77b2b38c18e7d158327bd8f208e31db4ae4e4795ec15ce98848",
91
- "sri": "sha384-0XYNNw2AcCdYsUivMCOpo9BaEjMKwrT2y/EMDW/N7SaMW89XSwj0wvqbyWiYAUqI",
90
+ "sha256": "0fbe77df39494f09eeea6121343ab85dc89e5e4a10c160a0d1f4fce6afa5b0f8",
91
+ "sri": "sha384-IgkUlRCDowHI5NeI/HG+TMbya55j++aDxk0krhwyiWhUDLla6p0JEvRsJyrZU5pq",
92
92
  "bytes": 845,
93
93
  "gzip": 531
94
94
  },
95
95
  "symfony/templates/components/Nora/Btn.html.twig": {
96
- "sha256": "b733b47fc4577bbd7f42441661666bb2906d5bdc12aa1cb5bd5f571a1a16f8af",
97
- "sri": "sha384-ob2uEEMoYz6RZb5GeOaZVVnmTKoxbYuDdWtM9BweThiU9epCrzF6IdmrXr5Qvnv+",
96
+ "sha256": "d688e85d25f2f238c29c29953bdca989da0eb6f29d08b7baa283822e054386dd",
97
+ "sri": "sha384-UQN944vY/f3K9OWU1zVGkcjf6Mwp6RFXA6nFxukma9ZekDbtfGQWppLKrnHDffOC",
98
98
  "bytes": 1482,
99
99
  "gzip": 724
100
100
  },
101
101
  "symfony/templates/components/Nora/Card.html.twig": {
102
- "sha256": "139d0e51be41420a7119391f54ed15f73b4abc61f4c5f0544b10ff24d87bc30f",
103
- "sri": "sha384-897w1Kumpbho1FfhFmXevckKl5Z26fr2D+5pAbDiKx9C4nLts7DfQ/tLA6gI22sE",
102
+ "sha256": "4b4fb75521ab7b593a5d485c554496398d011caa1df608feb73404a8a90c8119",
103
+ "sri": "sha384-sAgg2jzbeeAr/7UUMion+67S99wdk/hzUv96480lAWI95YehRWJHJXnnG38w1jAE",
104
104
  "bytes": 1339,
105
105
  "gzip": 607
106
106
  },
107
107
  "symfony/templates/components/Nora/Checkbox.html.twig": {
108
- "sha256": "f5ab5b059bfaffb5bc39d83056e81396bf1915305632d600a44272e97c8c36e3",
109
- "sri": "sha384-VIeHTJl8HfCCaH733utHAEQKtTK0Km6y7vwLbjVcQCBUDZ7vsFwTUv9gQtnStByF",
108
+ "sha256": "31d3983dee1a7c6e329a4ea9a2d34e2e3fce85dba0790cc91f7bf7303caaa1ee",
109
+ "sri": "sha384-yK8cO8Mj4dPFLzwX+vsof0MucurQ98l2Fdo23EgTzeDm3uIbgPQykxwbURdulbtS",
110
110
  "bytes": 862,
111
111
  "gzip": 537
112
112
  },
113
113
  "symfony/templates/components/Nora/Field.html.twig": {
114
- "sha256": "6d019a2c220639141164de152eaf33824f0174a3bdbe928e0b2c88ef78f7f85a",
115
- "sri": "sha384-KuRGpUGsQtMOCYc+05BjmPM0/QoyQ8A3XsrVGXyz9w7EL69T4Sfc++VjdOHIDk41",
114
+ "sha256": "15c1b9d1df97d008d29375c73cc00f2a77da5747b96f4eaebd47cef2de8ff9e1",
115
+ "sri": "sha384-M4Bt4dEjNFpo9lUw82z71PvXbvZMtyHVOg2OgZY88oXPj2/H07Vkao/b4wEBkwaM",
116
116
  "bytes": 2684,
117
117
  "gzip": 1143
118
118
  },
119
119
  "symfony/templates/components/Nora/Input.html.twig": {
120
- "sha256": "d0311043dd881920f5ac5b33aa866a33fb897670eb8b4a59325264b78ea9dae2",
121
- "sri": "sha384-d1B90lC4vmMhV7BZ1mRGr0E/Kl9ACSx+SFafS+/bRqPgKIa+tP40/0Uvf6nhcfxc",
120
+ "sha256": "4b42950015e86c640194a35f8586f6fdc657242699d0c7dcae67182a3597d153",
121
+ "sri": "sha384-q7zWqMvL71gdtZEVYN5nlBCIMYYoirTUoI4V4DM1+PQdfWwQS3aCboVFu0wax/Nm",
122
122
  "bytes": 769,
123
123
  "gzip": 484
124
124
  },
125
125
  "symfony/templates/components/Nora/Link.html.twig": {
126
- "sha256": "095c71574352569c89015a9a4ab9c11ab465ae68bcf199cc04d0f08c1dea1f0e",
127
- "sri": "sha384-KZjgYQLWlUfwKcBjU5uv2tOwIvNihsopf6fOYeZc0rdvstBxCOXbbHa78wv8qp3v",
126
+ "sha256": "8cefaa1a82693dd309d94dbc143a6f75c46e5ec9cdcfee48161422bef97be694",
127
+ "sri": "sha384-4ZJ0hbOmk/bqrbUBT2DVu5X/2TolyHG9mM9wJb2lvJ/pXnX7crevPw2WDRsGj3HZ",
128
128
  "bytes": 1253,
129
129
  "gzip": 658
130
130
  },
131
131
  "symfony/templates/components/Nora/Media.html.twig": {
132
- "sha256": "2c8fbf2427e843caa3bd432d966c4c2ea6954ce12b96d02be99c212e6b06f86e",
133
- "sri": "sha384-QBqIBB5wCa69n1fWBhMgXplRagtNZTCwbKcA9DlV7dxkZBBJEL9JJG8zuZ7Q5Sre",
132
+ "sha256": "c3a313a0c9153f71186238030e13f50222bf35a7da5698a02cc0d9794842e1f8",
133
+ "sri": "sha384-MfJ39yXdxV4UouTX4VWds0oHnWMAsgJaIJphd+hYIuOAfNCFA0ONuw300XhVKP4h",
134
134
  "bytes": 1072,
135
- "gzip": 584
135
+ "gzip": 585
136
136
  },
137
137
  "symfony/templates/components/Nora/Navbar.html.twig": {
138
- "sha256": "eb42ff4e0175335ae0f8e94c780471255a868fa894de51787fa5bb6bf872ebc4",
139
- "sri": "sha384-2KQba8lDpa3knss3cGp9iauMebdQmjjaP4oCMB8TmGM61e0VI2LWrndYA5HeZ1WK",
138
+ "sha256": "c2f7dd719e30810e6e4ee07ccfe19dd727ca0217e815cb0157b604c2bec59a92",
139
+ "sri": "sha384-F2M4LAq6hhJlhjnsKIDxd948qB+u/T0jqyK7ll0OKWx0kh7yQly6SNWk8YZniTgX",
140
140
  "bytes": 809,
141
141
  "gzip": 510
142
142
  },
143
143
  "symfony/templates/components/Nora/Radio.html.twig": {
144
- "sha256": "bbf5a772cae54a5c9bf1ab982e5bafecb223b636a887a422e232275f10ac20ae",
145
- "sri": "sha384-3evR9/u56rNXGfIcmGMRVkzLDZ1gKoGvhfF3+oGhADrrodZcdTcpe/3YjxlCeOFj",
144
+ "sha256": "0ae1c772438094aeb3cc8cdb0312716a8eda3c4c0d9833c280e8bd4212e9c76a",
145
+ "sri": "sha384-qPSHRRzU24d5/12ghG9H7I1Jy+UeSMzio7aMBUKdIQjQLJTR6Erxyj97VEU+IYKP",
146
146
  "bytes": 853,
147
147
  "gzip": 533
148
148
  },
149
149
  "symfony/templates/components/Nora/Select.html.twig": {
150
- "sha256": "bdd83db2c7a42cc3f95459502fe1c0d5dbfad58b7603fa64895eab7e2d7e8eda",
151
- "sri": "sha384-dJ6dBRKSkrl0wtwf3CX2xuk1hrYwHigOqPeA1/5UfrPTwkrsK9ual0jWVib1LfBU",
150
+ "sha256": "720b852192c7dd9f709d0b520e9543e2afb7a319c09dd0fb1973e25a8d322667",
151
+ "sri": "sha384-ao6poB3QibibzhU/y06g4YCMO7NzVy/B+eCa4M+qJBy0Sd0zmj5wmcgJnE+J0J0U",
152
152
  "bytes": 815,
153
153
  "gzip": 510
154
154
  },
155
155
  "symfony/templates/components/Nora/Switch.html.twig": {
156
- "sha256": "304ce0d5b6b385d0e3ddf25e52a549c890ac975d99c6fa64035837ddd6600072",
157
- "sri": "sha384-Md2xCr2oONQOyAPYG0NhvWbudizhJTcANws2T47IaxDQmy+uHB+EiknxzZ7ozHgI",
156
+ "sha256": "908e881014dfb3304f92dd1cc953575726bf80db2549d7db62ec019dbc896d03",
157
+ "sri": "sha384-MtMtDCyKTLLn0o/F9QtuaOUHCKnk4nbuIFrKOQXAJ4H9QgE/9mM3fvqFguWf+oPv",
158
158
  "bytes": 856,
159
159
  "gzip": 535
160
160
  },
161
161
  "symfony/templates/components/Nora/Textarea.html.twig": {
162
- "sha256": "a23df8f0948b0a67fc002703505d9bdfdeb19f1afdc0ce94b75ce7bbccae72d2",
163
- "sri": "sha384-JSPl5V5oqzDfj/NdGrb/JnYrRRr7NXrXDXT2R0HkGCVTku7UA6l0H3OCQMHf9zU2",
162
+ "sha256": "b19b4d041784f7d105b5c54036a26d78b7996ffe7917ee5ecba6d70dfe347e7b",
163
+ "sri": "sha384-9gAvbCzigemifGo3SKyByjNk9kMOio8Wu5YI2nmgulT/ma/IiRzrZcr/Xp0TD5i8",
164
164
  "bytes": 825,
165
165
  "gzip": 512
166
166
  },
167
167
  "manifest.json": {
168
- "sha256": "8e51db1e88ae8c089521b195cefbc9e0131008838da5ac6eaf690f26aae37374",
169
- "sri": "sha384-A6KoLVolHGFOaffojfKpLj+RFw+/xNSJDXMCCA/+LAPOrH+XE5+qAW+RDFBdA2r8",
168
+ "sha256": "9e3665948411c505d23532d6d15bc59caeb28e6469f180af598b16908660b611",
169
+ "sri": "sha384-T/J2aViGnR1MUyIBLZUM5nTsUk7Gr8DTopgiLX5zyBfztnwWokf5VMbpOhGUUy99",
170
170
  "bytes": 29097,
171
171
  "gzip": 5758
172
172
  },
173
173
  "llms-full.txt": {
174
- "sha256": "4bc38d62e6bd8651ef143e0ed1dddea562754b88d2e62f0297570682a776483f",
175
- "sri": "sha384-Oy/IWoAR39Bv8l+dFXIKvCf/axx0JVAiN04/Dd6A6DNyL+04LUNSMuY4dpJjCC2t",
174
+ "sha256": "058c4379bb492aaf4e93257d185785ac1c10a7b88695988a77b269487a3d4ca1",
175
+ "sri": "sha384-SZU8i6Y+63UnzZy3nYoPXsigokpR6tD+sDoFO96bVeAUilKe8E30DCVRyfK9AEE6",
176
176
  "bytes": 16080,
177
177
  "gzip": 4786
178
178
  },
179
179
  "fx/fx-scroll.js": {
180
- "sha256": "acdab3b1772d615e0f07cc893408a6ba776b482239cb4a3aa3a2b25f5ee0de6c",
181
- "sri": "sha384-VQbKp+gINmJJiVLobMq17yiuxlvlp8CSEBtte+WLihyNfXT5bJQsu0YayvARv+hI",
180
+ "sha256": "f4fd09fa9f74feed69d7e06f5fedc1ad117c1e87b20fb711b901218434e8c1d7",
181
+ "sri": "sha384-gq0qf+hMRs9uV5HjWGIpUq2WC8CE81o/Kb6LQzXO4w8SiZ3E4OsHtW7l2B6y+zim",
182
182
  "bytes": 3705,
183
183
  "gzip": 1373
184
184
  },
185
185
  "fx/fx-scroll.css": {
186
- "sha256": "ff3878573d76ec34d6aded8a76aa1cfbd1bb498ec833bcfc2cc43b8dc60a69bd",
187
- "sri": "sha384-htBawyvgJuvYwg81MnCJ+Lqcs/hkhGHlVi//Q1dUN3x5nrMSGYnQtg0OrOnCm/eJ",
186
+ "sha256": "fbacdb59c8479c92ecac1b8fa0681098259364991c331b0252df6a9911f979c2",
187
+ "sri": "sha384-6Al4RQj3pYcYtNYbjdkmkETafVnCLLexuCY6wnCwrfzf8Qdqttvyix28QwbhJ7Tj",
188
188
  "bytes": 1066,
189
189
  "gzip": 574
190
190
  },
191
191
  "fx/fx-text.js": {
192
- "sha256": "0de0d5ee7c8809f132beb03a670332286f1511d316ecfad8515c117db9c1f979",
193
- "sri": "sha384-021vDaGtTuQA3cFJ5FC16rRPXQnNLs6o3wf/tRi0Uh38Q85cpT41Zy1TxMCKUyCc",
192
+ "sha256": "4707fcc7ea3456fd3239f71d4779b632c97783667639814f97e40deced900f3d",
193
+ "sri": "sha384-+9c/gAkTM91JnEeB9WEqALqyRjqlwKYZ3h+jA7K26iVwPlZddHWMVzOO0m4lVMZy",
194
194
  "bytes": 3872,
195
195
  "gzip": 1598
196
196
  },
197
197
  "fx/fx-text.css": {
198
- "sha256": "c84b17857e57b48389cff7384b27a68b228c269c07742a21d8865e2dcfa4cc24",
199
- "sri": "sha384-cohlnluVNDvbuEEuLQYq9GwddhteaMyqw5UR9DegCB0+EQQU2psfhuyq40TkR6hg",
198
+ "sha256": "e67f14c29a94f5e15ad52aee76759778545b87980e35243c1fe75ca950ea9dfc",
199
+ "sri": "sha384-iCIprwOH4WrnsL8kFkAsRGRMZt9y23pfmKRSZM/lWIlQNCKpW/6Ensu2LXX7EWBm",
200
200
  "bytes": 1155,
201
- "gzip": 631
201
+ "gzip": 632
202
202
  },
203
203
  "flutter/noraivoire_fx.dart": {
204
- "sha256": "f86670c340a51eca03d82c4adc93680342b3d2f7a46b1021fc025fe74b122ac8",
205
- "sri": "sha384-gWpnWbiX4f76jFqMEYU1gN67gYb53rEdc/q4Qg+Tj+5ay2SbcIqXKVAw6+PD2hUP",
204
+ "sha256": "f1eca1d29555b1cfb83db65960235ef0231be0348013229e220009769d5e9e82",
205
+ "sri": "sha384-sg+MpMVw6wZBHfrDFLxB0vdjUVlUBrN63cuia6Hz03SQ05ygdZic6Z/ilEUtBBN1",
206
206
  "bytes": 4204,
207
207
  "gzip": 1807
208
208
  },
209
209
  "react-native/noraivoire-fx.tsx": {
210
- "sha256": "ad041ee609ba1a33445bc2563d293b69c277e5b2bc68622c3d2bace8f8de41bb",
211
- "sri": "sha384-DQTu7f8U/2jMKVScZGxRblc1c0wLPpSVJbWU6ygQFLIgfgeLSDEB02why+6aQIlW",
210
+ "sha256": "48dc5c80e97378af7d40ac193521cbe6071dd4a41b1272f107dcd74b8e5be615",
211
+ "sri": "sha384-q1E4Wcmrh5lhocF7GIaY99ASdKTzMGsOeYpw323nfxo9G1SQLTaYg18G1FoIv2GC",
212
212
  "bytes": 3464,
213
213
  "gzip": 1641
214
214
  }
@@ -1,4 +1,4 @@
1
- # NoraIvoire 0.1.0
1
+ # NoraIvoire 0.1.1
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.0",
4
+ "version": "0.1.1",
5
5
  "license": "UNLICENSED — propriétaire, © Jonathan KABLAN",
6
6
  "grammar": {
7
7
  "component": ".{composant}",
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.0 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (css) depuis la spec. Ne pas modifier à la main.
2
+ * NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (js) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0 — 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.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 +1 @@
1
- /*! * NoraIvoire 0.1.0 — 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.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,4 +1,4 @@
1
- // NoraIvoire 0.1.0 — fichier GÉNÉRÉ (ts) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0';
26
+ export const noraManifestVersion = '0.1.1';
@@ -1,4 +1,4 @@
1
- // NoraIvoire 0.1.0 — fichier GÉNÉRÉ (tsx) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (tsx) depuis la spec. Ne pas modifier à la main.
1
+ // NoraIvoire 0.1.1 — 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,7 +26,7 @@ import {
26
26
  type ViewStyle,
27
27
  } from 'react-native';
28
28
 
29
- export const noraVersion = '0.1.0';
29
+ export const noraVersion = '0.1.1';
30
30
 
31
31
  export type NoraTone = 'primary' | 'neutral' | 'danger' | 'success' | 'warning';
32
32
  export type NoraSize = 'sm' | 'md' | 'lg' | 'wide' | 'standard' | 'square' | 'portrait';
@@ -1,6 +1,6 @@
1
1
  <?php
2
2
 
3
- // NoraIvoire 0.1.0 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (php) depuis la spec. Ne pas modifier à la main.
3
+ // NoraIvoire 0.1.1 — 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.0 exposé à PHP (lecture seule). */
11
+ /** Contrat NoraIvoire 0.1.1 exposé à PHP (lecture seule). */
12
12
  final class NoraManifest
13
13
  {
14
- public const VERSION = '0.1.0';
14
+ public const VERSION = '0.1.1';
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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0 — fichier GÉNÉRÉ (twig) depuis la spec. Ne pas modifier à la main.
2
+ # NoraIvoire 0.1.1 — 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.0",
3
+ "version": "0.1.1",
4
4
  "license": "UNLICENSED",
5
5
  "description": "Sorties compilées NoraIvoire (CSS, moteur, Dart, TSX, manifest). Propriétaire.",
6
6
  "author": "Jonathan KABLAN",