@semanticus/semanticus-css 0.8.0 → 1.0.0

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 (166) hide show
  1. package/NOTICE +16 -16
  2. package/README.md +128 -29
  3. package/dist/semanticus-no-utilities.css +11 -0
  4. package/dist/semanticus-semantics.css +3 -4
  5. package/dist/semanticus-utilities.css +11 -0
  6. package/dist/semanticus.css +4 -12
  7. package/dist/semanticus.palette.amber.css +1 -1
  8. package/dist/semanticus.palette.azure.css +1 -0
  9. package/dist/semanticus.palette.blue.css +1 -1
  10. package/dist/semanticus.palette.cyan.css +1 -1
  11. package/dist/semanticus.palette.fuchsia.css +1 -1
  12. package/dist/semanticus.palette.green.css +1 -1
  13. package/dist/semanticus.palette.grey.css +1 -1
  14. package/dist/semanticus.palette.indigo.css +1 -1
  15. package/dist/semanticus.palette.jade.css +1 -1
  16. package/dist/semanticus.palette.lime.css +1 -1
  17. package/dist/semanticus.palette.orange.css +1 -1
  18. package/dist/semanticus.palette.pink.css +1 -1
  19. package/dist/semanticus.palette.pumpkin.css +1 -1
  20. package/dist/semanticus.palette.purple.css +1 -1
  21. package/dist/semanticus.palette.red.css +1 -1
  22. package/dist/semanticus.palette.sand.css +1 -1
  23. package/dist/semanticus.palette.slate.css +1 -1
  24. package/dist/semanticus.palette.violet.css +1 -1
  25. package/dist/semanticus.palette.yellow.css +1 -1
  26. package/dist/semanticus.palette.zinc.css +1 -1
  27. package/dist/semanticus.size.pico.css +1 -1
  28. package/package.json +28 -16
  29. package/src/components/_card.css +84 -0
  30. package/src/components/_sidebar.css +49 -0
  31. package/src/components/modules.css +2 -0
  32. package/src/index.css +8 -10
  33. package/src/no-utilities.css +22 -0
  34. package/src/palettes/amber.css +28 -53
  35. package/src/palettes/azure.css +31 -0
  36. package/src/palettes/blue.css +28 -53
  37. package/src/palettes/cyan.css +28 -53
  38. package/src/palettes/fuchsia.css +28 -53
  39. package/src/palettes/green.css +28 -53
  40. package/src/palettes/grey.css +28 -53
  41. package/src/palettes/indigo.css +28 -53
  42. package/src/palettes/jade.css +28 -53
  43. package/src/palettes/lime.css +28 -53
  44. package/src/palettes/orange.css +28 -53
  45. package/src/palettes/pink.css +28 -53
  46. package/src/palettes/pumpkin.css +28 -53
  47. package/src/palettes/purple.css +28 -53
  48. package/src/palettes/red.css +28 -53
  49. package/src/palettes/sand.css +28 -53
  50. package/src/palettes/slate.css +28 -53
  51. package/src/palettes/violet.css +28 -53
  52. package/src/palettes/yellow.css +28 -53
  53. package/src/palettes/zinc.css +28 -53
  54. package/src/semantics/{_aria-busy.css → attributes/_aria-busy.css} +0 -3
  55. package/src/semantics/{_hidden.css → attributes/_hidden.css} +0 -3
  56. package/src/semantics/attributes/_popover.css +13 -0
  57. package/src/semantics/attributes/_role-group-search.css +137 -0
  58. package/src/semantics/{_role-toolbar.css → attributes/_role-toolbar.css} +2 -5
  59. package/src/semantics/{_role-tooltip.css → attributes/_role-tooltip.css} +6 -9
  60. package/src/semantics/elements/_abbr.css +5 -0
  61. package/src/semantics/elements/_address.css +7 -0
  62. package/src/semantics/elements/_article.css +3 -0
  63. package/src/semantics/elements/_aside.css +10 -0
  64. package/src/semantics/elements/_blockquote.css +18 -0
  65. package/src/semantics/elements/_body.css +5 -0
  66. package/src/semantics/{_button.css → elements/_button.css} +23 -26
  67. package/src/semantics/{_code.css → elements/_code.css} +11 -11
  68. package/src/semantics/elements/_del.css +3 -0
  69. package/src/semantics/{_details.css → elements/_details.css} +42 -43
  70. package/src/semantics/elements/_dialog.css +113 -0
  71. package/src/semantics/{_document.css → elements/_document.css} +10 -4
  72. package/src/semantics/{_embedded.css → elements/_embedded.css} +0 -3
  73. package/src/semantics/{_figure.css → elements/_figure.css} +0 -3
  74. package/src/semantics/elements/_footer.css +10 -0
  75. package/src/semantics/elements/_header.css +10 -0
  76. package/src/semantics/elements/_headings.css +24 -0
  77. package/src/semantics/elements/_hgroup.css +14 -0
  78. package/src/semantics/{_hr.css → elements/_hr.css} +1 -4
  79. package/src/semantics/{_input.css → elements/_input.css} +34 -38
  80. package/src/semantics/elements/_ins.css +4 -0
  81. package/src/semantics/elements/_links.css +61 -0
  82. package/src/semantics/elements/_lists.css +22 -0
  83. package/src/semantics/elements/_main.css +3 -0
  84. package/src/semantics/elements/_mark.css +6 -0
  85. package/src/semantics/{_nav.css → elements/_nav.css} +5 -8
  86. package/src/semantics/elements/_p.css +11 -0
  87. package/src/semantics/{_progress.css → elements/_progress.css} +5 -8
  88. package/src/semantics/elements/_section.css +4 -0
  89. package/src/semantics/elements/_small.css +3 -0
  90. package/src/semantics/elements/_strong.css +4 -0
  91. package/src/semantics/elements/_sub.css +7 -0
  92. package/src/semantics/elements/_sup.css +7 -0
  93. package/src/semantics/{_table.css → elements/_table.css} +10 -7
  94. package/src/semantics/{_type-checkbox-radio.css → elements/_type-checkbox-radio.css} +19 -22
  95. package/src/semantics/{_type-color.css → elements/_type-color.css} +2 -5
  96. package/src/semantics/{_type-date.css → elements/_type-date.css} +1 -4
  97. package/src/semantics/elements/_type-file.css +23 -0
  98. package/src/semantics/{_type-range.css → elements/_type-range.css} +11 -14
  99. package/src/semantics/elements/_type-search.css +30 -0
  100. package/src/semantics/index.css +2 -5
  101. package/src/semantics/modules.css +46 -37
  102. package/src/sizes/pico.css +21 -29
  103. package/src/utilities/_grid.css +306 -0
  104. package/src/utilities/_variables.css +27 -42
  105. package/src/utilities/borders/_border-radius.css +54 -79
  106. package/src/utilities/borders/_border-style.css +15 -5
  107. package/src/utilities/borders/_border-width.css +0 -28
  108. package/src/utilities/colors/_bg-colors.css +75 -0
  109. package/src/utilities/colors/_border-colors.css +17 -39
  110. package/src/utilities/colors/_subtle-colors.css +145 -0
  111. package/src/utilities/colors/_text-bg-colors.css +62 -0
  112. package/src/utilities/colors/_text-colors.css +32 -409
  113. package/src/utilities/effects/_focus-ring.css +33 -0
  114. package/src/utilities/effects/_shadows.css +0 -33
  115. package/src/utilities/index.css +16 -0
  116. package/src/utilities/layout/_misc.css +2 -5
  117. package/src/utilities/layout/{_grid.css → _ratio.css} +0 -19
  118. package/src/utilities/modules.css +9 -3
  119. package/src/utilities/sizing/_width.css +8 -0
  120. package/src/utilities/spacing/_gap.css +144 -144
  121. package/src/utilities/spacing/_margin.css +324 -324
  122. package/src/utilities/spacing/_padding.css +324 -324
  123. package/src/utilities/typography/_font-sizes.css +6 -6
  124. package/src/variables/_all.css +2 -20
  125. package/src/variables/_elements.css +29 -33
  126. package/src/variables/_theme.css +336 -0
  127. package/src/variants/_variables.css +24 -0
  128. package/src/variants/intent/_contrast.css +46 -0
  129. package/src/variants/intent/_danger.css +38 -0
  130. package/src/variants/intent/_info.css +38 -0
  131. package/src/variants/intent/_primary.css +38 -0
  132. package/src/variants/intent/_secondary.css +38 -0
  133. package/src/variants/intent/_success.css +38 -0
  134. package/src/variants/intent/_warning.css +38 -0
  135. package/src/variants/{_container.css → modifiers/_container.css} +3 -10
  136. package/src/variants/modifiers/_ghost.css +164 -0
  137. package/src/variants/modifiers/_striped.css +11 -0
  138. package/src/variants/modifiers/_subtle.css +133 -0
  139. package/src/variants/modules.css +12 -15
  140. package/src/_normalize.css +0 -214
  141. package/src/semantics/_article.css +0 -12
  142. package/src/semantics/_aside.css +0 -16
  143. package/src/semantics/_body.css +0 -8
  144. package/src/semantics/_dialog.css +0 -157
  145. package/src/semantics/_footer.css +0 -12
  146. package/src/semantics/_header.css +0 -12
  147. package/src/semantics/_links.css +0 -50
  148. package/src/semantics/_main.css +0 -10
  149. package/src/semantics/_role-group-search.css +0 -129
  150. package/src/semantics/_section.css +0 -9
  151. package/src/semantics/_type-file.css +0 -26
  152. package/src/semantics/_type-search.css +0 -34
  153. package/src/semantics/_typography.css +0 -146
  154. package/src/utilities/colors/_background-colors.css +0 -248
  155. package/src/variables/_colors.css +0 -366
  156. package/src/variables/_components.css +0 -318
  157. package/src/variables/_icons.css +0 -43
  158. package/src/variables/_layout.css +0 -128
  159. package/src/variants/_card.css +0 -45
  160. package/src/variants/_contained.css +0 -43
  161. package/src/variants/_contrast.css +0 -47
  162. package/src/variants/_ghost.css +0 -61
  163. package/src/variants/_panel.css +0 -18
  164. package/src/variants/_secondary.css +0 -35
  165. package/src/variants/_sidebar.css +0 -11
  166. package/src/variants/_striped.css +0 -10
@@ -1,146 +0,0 @@
1
- /**
2
- * Typography
3
- */
4
- b,
5
- strong {
6
- font-weight: bolder;
7
- }
8
-
9
- sub,
10
- sup {
11
- position: relative;
12
- font-size: 0.75em;
13
- line-height: 0;
14
- vertical-align: baseline;
15
- }
16
-
17
- sub {
18
- bottom: -0.25em;
19
- }
20
-
21
- sup {
22
- top: -0.5em;
23
- }
24
-
25
- address,
26
- blockquote,
27
- dl,
28
- ol,
29
- p,
30
- pre,
31
- table,
32
- ul {
33
- margin-top: 0;
34
- margin-bottom: var(--typography-spacing-vertical);
35
- color: var(--color-text);
36
- font-style: normal;
37
- font-weight: var(--font-weight);
38
- }
39
-
40
- h1,
41
- h2,
42
- h3,
43
- h4,
44
- h5,
45
- h6 {
46
- margin-top: 0;
47
- margin-bottom: var(--typography-spacing-vertical);
48
- color: var(--color-text);
49
- font-weight: var(--font-weight);
50
- font-size: var(--font-size);
51
- line-height: var(--line-height);
52
- font-family: var(--font-family);
53
- }
54
-
55
- /* Headings - progressive lightness using color-mix */
56
- h1 { --color-text: var(--color-heading-base); }
57
- h2 { --color-text: color-mix(in srgb, var(--color-heading-base), white 12%); }
58
- h3 { --color-text: color-mix(in srgb, var(--color-heading-base), white 22%); }
59
- h4 { --color-text: color-mix(in srgb, var(--color-heading-base), white 32%); }
60
- h5 { --color-text: color-mix(in srgb, var(--color-heading-base), white 45%); }
61
- h6 { --color-text: color-mix(in srgb, var(--color-heading-base), white 55%); }
62
-
63
- /* Dark mode headings - base is lightest, mix in black for lower levels */
64
- [data-theme="dark"] h1 { --color-text: var(--color-heading-base); }
65
- [data-theme="dark"] h2 { --color-text: color-mix(in srgb, var(--color-heading-base), black 8%); }
66
- [data-theme="dark"] h3 { --color-text: color-mix(in srgb, var(--color-heading-base), black 18%); }
67
- [data-theme="dark"] h4 { --color-text: color-mix(in srgb, var(--color-heading-base), black 28%); }
68
- [data-theme="dark"] h5 { --color-text: color-mix(in srgb, var(--color-heading-base), black 38%); }
69
- [data-theme="dark"] h6 { --color-text: color-mix(in srgb, var(--color-heading-base), black 48%); }
70
-
71
- :where(article, address, blockquote, dl, figure, form, ol, p, pre, table, ul, hr) ~ :is(h1, h2, h3, h4, h5, h6) {
72
- margin-top: var(--typography-spacing-top);
73
- }
74
-
75
- p {
76
- margin-bottom: var(--typography-spacing-vertical);
77
- }
78
-
79
- hgroup {
80
- margin-bottom: var(--typography-spacing-vertical);
81
-
82
- & > * {
83
- margin-top: 0;
84
- margin-bottom: 0;
85
-
86
- &:not(:first-child):last-child {
87
- color: color-mix(in srgb, var(--color-text), rgb(128, 128, 128) 70%);
88
- --font-weight: unset;
89
- font-size: 1rem;
90
- }
91
- }
92
- }
93
-
94
- :where(ol, ul) li {
95
- margin-bottom: calc(var(--typography-spacing-vertical) * 0.25);
96
- }
97
-
98
- :where(dl, ol, ul) :where(dl, ol, ul) {
99
- margin: 0;
100
- margin-top: calc(var(--typography-spacing-vertical) * 0.25);
101
- }
102
-
103
- ul li {
104
- list-style: square;
105
- }
106
-
107
- mark {
108
- padding: 0.125rem 0.25rem;
109
- background-color: var(--color-mark-bg);
110
- color: var(--color-mark-text);
111
- vertical-align: baseline;
112
- }
113
-
114
- blockquote {
115
- display: block;
116
- margin: var(--typography-spacing-vertical) 0;
117
- padding: var(--spacing);
118
- border-right: none;
119
- border-left: 0.25rem solid var(--blockquote-border-color);
120
- border-inline-start: 0.25rem solid var(--blockquote-border-color);
121
- border-inline-end: none;
122
-
123
- & footer {
124
- margin-top: calc(var(--typography-spacing-vertical) * 0.5);
125
- color: var(--blockquote-footer-color);
126
- }
127
- }
128
-
129
- abbr[title] {
130
- border-bottom: 1px dotted;
131
- text-decoration: none;
132
- cursor: help;
133
- }
134
-
135
- ins {
136
- color: rgb(var(--color-success-rgb));
137
- text-decoration: none;
138
- }
139
-
140
- del {
141
- color: rgb(var(--color-danger-rgb));
142
- }
143
-
144
- ::selection {
145
- background-color: var(--color-text-selection);
146
- }
@@ -1,248 +0,0 @@
1
- .text-bg-primary {
2
- --color-text: var(--color-primary-inverse) !important;
3
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
4
-
5
- color: var(--color-text) !important;
6
- background-color: rgba(var(--color-primary-rgb), var(--bg-opacity, 1)) !important;
7
- }
8
-
9
- .text-bg-secondary {
10
- --color-text: var(--color-secondary-inverse) !important;
11
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
12
-
13
- color: var(--color-text) !important;
14
- background-color: rgba(var(--color-secondary-rgb), var(--bg-opacity, 1)) !important;
15
- }
16
-
17
- .text-bg-success {
18
- --color-text: var(--color-success-inverse) !important;
19
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
20
-
21
- color: var(--color-text) !important;
22
- background-color: rgba(var(--color-success-rgb), var(--bg-opacity, 1)) !important;
23
- }
24
-
25
- .text-bg-info {
26
- --color-text: var(--color-info-inverse) !important;
27
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
28
-
29
- color: var(--color-text) !important;
30
- background-color: rgba(var(--color-info-rgb), var(--bg-opacity, 1)) !important;
31
- }
32
-
33
- .text-bg-warning {
34
- --color-text: var(--color-warning-inverse) !important;
35
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
36
-
37
- color: var(--color-text) !important;
38
- background-color: rgba(var(--color-warning-rgb), var(--bg-opacity, 1)) !important;
39
- }
40
-
41
- .text-bg-danger {
42
- --color-text: var(--color-danger-inverse) !important;
43
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
44
-
45
- color: var(--color-text) !important;
46
- background-color: rgba(var(--color-danger-rgb), var(--bg-opacity, 1)) !important;
47
- }
48
-
49
- .text-bg-contrast {
50
- --color-text: var(--color-contrast-inverse) !important;
51
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
52
-
53
- color: var(--color-text) !important;
54
- background-color: rgba(var(--color-contrast-rgb), var(--bg-opacity, 1)) !important;
55
- }
56
-
57
- .text-bg-primary-subtle {
58
- --color-text: rgb(var(--color-primary-emphasis-rgb)) !important;
59
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
60
-
61
- color: rgb(var(--color-primary-emphasis-rgb)) !important;
62
- background-color: var(--color-primary-bg-subtle) !important;
63
- }
64
-
65
- .text-bg-secondary-subtle {
66
- --color-text: rgb(var(--color-secondary-emphasis-rgb)) !important;
67
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
68
-
69
- color: rgb(var(--color-secondary-emphasis-rgb)) !important;
70
- background-color: var(--color-secondary-bg-subtle) !important;
71
- }
72
-
73
- .text-bg-success-subtle {
74
- --color-text: rgb(var(--color-success-emphasis-rgb)) !important;
75
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
76
-
77
- color: rgb(var(--color-success-emphasis-rgb)) !important;
78
- background-color: var(--color-success-bg-subtle) !important;
79
- }
80
-
81
- .text-bg-info-subtle {
82
- --color-text: rgb(var(--color-info-emphasis-rgb)) !important;
83
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
84
-
85
- color: rgb(var(--color-info-emphasis-rgb)) !important;
86
- background-color: var(--color-info-bg-subtle) !important;
87
- }
88
-
89
- .text-bg-warning-subtle {
90
- --color-text: rgb(var(--color-warning-emphasis-rgb)) !important;
91
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
92
-
93
- color: rgb(var(--color-warning-emphasis-rgb)) !important;
94
- background-color: var(--color-warning-bg-subtle) !important;
95
- }
96
-
97
- .text-bg-danger-subtle {
98
- --color-text: rgb(var(--color-danger-emphasis-rgb)) !important;
99
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
100
-
101
- color: rgb(var(--color-danger-emphasis-rgb)) !important;
102
- background-color: var(--color-danger-bg-subtle) !important;
103
- }
104
-
105
- .text-bg-contrast-subtle {
106
- --color-text: rgb(var(--color-contrast-emphasis-rgb)) !important;
107
- --color-heading-base: color-mix(in srgb, var(--color-text), black 18%);
108
-
109
- color: rgb(var(--color-contrast-emphasis-rgb)) !important;
110
- background-color: var(--color-contrast-bg-subtle) !important;
111
- }
112
-
113
- .bg-primary {
114
- --bg-opacity: 1;
115
-
116
- background-color: rgba(var(--color-primary-rgb), var(--bg-opacity)) !important;
117
- }
118
-
119
- .bg-secondary {
120
- --bg-opacity: 1;
121
-
122
- background-color: rgba(var(--color-secondary-rgb), var(--bg-opacity)) !important;
123
- }
124
-
125
- .bg-success {
126
- --bg-opacity: 1;
127
-
128
- background-color: rgba(var(--color-success-rgb), var(--bg-opacity)) !important;
129
- }
130
-
131
- .bg-info {
132
- --bg-opacity: 1;
133
-
134
- background-color: rgba(var(--color-info-rgb), var(--bg-opacity)) !important;
135
- }
136
-
137
- .bg-warning {
138
- --bg-opacity: 1;
139
-
140
- background-color: rgba(var(--color-warning-rgb), var(--bg-opacity)) !important;
141
- }
142
-
143
- .bg-danger {
144
- --bg-opacity: 1;
145
-
146
- background-color: rgba(var(--color-danger-rgb), var(--bg-opacity)) !important;
147
- }
148
-
149
- .bg-contrast {
150
- --bg-opacity: 1;
151
-
152
- background-color: rgba(var(--color-contrast-rgb), var(--bg-opacity)) !important;
153
- }
154
-
155
- .bg-body {
156
- --bg-opacity: 1;
157
-
158
- background-color: rgba(var(--color-body-bg-rgb), var(--bg-opacity)) !important;
159
- }
160
-
161
- .bg-transparent {
162
- --bg-opacity: 1;
163
-
164
- background-color: transparent !important;
165
- }
166
-
167
- .bg-body-secondary {
168
- --bg-opacity: 1;
169
-
170
- background-color: rgba(var(--color-secondary-bg-rgb), var(--bg-opacity)) !important;
171
- }
172
-
173
- .bg-opacity-10 {
174
- --bg-opacity: 0.1;
175
- }
176
-
177
- .bg-opacity-25 {
178
- --bg-opacity: 0.25;
179
- }
180
-
181
- .bg-opacity-50 {
182
- --bg-opacity: 0.5;
183
- }
184
-
185
- .bg-opacity-75 {
186
- --bg-opacity: 0.75;
187
- }
188
-
189
- .bg-opacity-100 {
190
- --bg-opacity: 1;
191
- }
192
-
193
- .bg-primary-subtle {
194
- background-color: var(--color-primary-bg-subtle) !important;
195
- }
196
-
197
- .bg-secondary-subtle {
198
- background-color: var(--color-secondary-bg-subtle) !important;
199
- }
200
-
201
- .bg-success-subtle {
202
- background-color: var(--color-success-bg-subtle) !important;
203
- }
204
-
205
- .bg-info-subtle {
206
- background-color: var(--color-info-bg-subtle) !important;
207
- }
208
-
209
- .bg-warning-subtle {
210
- background-color: var(--color-warning-bg-subtle) !important;
211
- }
212
-
213
- .bg-danger-subtle {
214
- background-color: var(--color-danger-bg-subtle) !important;
215
- }
216
-
217
- .bg-contrast-subtle {
218
- background-color: var(--color-contrast-bg-subtle) !important;
219
- }
220
-
221
- .bg-gradient {
222
- background-image: var(--gradient) !important;
223
- }
224
-
225
- /* Dark mode: headings should be lighter than inverse text (mix in white) */
226
- @media (prefers-color-scheme: dark) {
227
- .text-bg-primary,
228
- .text-bg-secondary,
229
- .text-bg-success,
230
- .text-bg-info,
231
- .text-bg-warning,
232
- .text-bg-danger,
233
- .text-bg-contrast {
234
- --color-heading-base: color-mix(in srgb, var(--color-text), white 75%);
235
- }
236
- }
237
-
238
- [data-theme="dark"] {
239
- .text-bg-primary,
240
- .text-bg-secondary,
241
- .text-bg-success,
242
- .text-bg-info,
243
- .text-bg-warning,
244
- .text-bg-danger,
245
- .text-bg-contrast {
246
- --color-heading-base: color-mix(in srgb, var(--color-text), white 75%);
247
- }
248
- }