@jrgermain/stylesheet 0.1.2 → 0.2.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jrgermain/stylesheet",
3
- "version": "0.1.2",
3
+ "version": "0.2.0",
4
4
  "description": "A stylesheet for apps I build",
5
5
  "homepage": "https://stylesheet.jrgermain.dev",
6
6
  "author": {
@@ -74,7 +74,7 @@
74
74
  }
75
75
 
76
76
  @if list.length($properties) == 1 {
77
- transition-property: #{string.unquote($properties-string)}
77
+ transition: #{string.unquote($properties-string)}
78
78
  $duration
79
79
  #{string.unquote($timing-function)};
80
80
  }
@@ -9,23 +9,23 @@
9
9
  --opacity-high: 70%;
10
10
 
11
11
  // Brand
12
- --color-brand-1: oklch(15% 55% 270deg);
13
- --color-brand-2: oklch(25% 53% 270deg);
14
- --color-brand-3: oklch(35% 52% 270deg);
15
- --color-brand-4: oklch(45% 51% 270deg);
16
- --color-brand-5: oklch(55% 50% 270deg);
17
- --color-brand-6: oklch(65% 50% 270deg);
18
- --color-brand-7: oklch(75% 45% 270deg);
19
- --color-brand-8: oklch(85% 42% 270deg);
20
- --color-brand-9: oklch(95% 36% 270deg);
21
- --color-brand-transparent: oklch(55% 50% 270deg / var(--opacity-medium));
22
- --color-brand-extra-transparent: oklch(55% 50% 270deg / var(--opacity-low));
12
+ --color-brand-1: oklch(15% 55% 275deg);
13
+ --color-brand-2: oklch(25% 52% 275deg);
14
+ --color-brand-3: oklch(35% 52% 275deg);
15
+ --color-brand-4: oklch(45% 55% 275deg);
16
+ --color-brand-5: oklch(55% 52% 275deg);
17
+ --color-brand-6: oklch(65% 50% 275deg);
18
+ --color-brand-7: oklch(75% 45% 275deg);
19
+ --color-brand-8: oklch(85% 42% 275deg);
20
+ --color-brand-9: oklch(95% 36% 275deg);
21
+ --color-brand-transparent: oklch(55% 52% 275deg / var(--opacity-medium));
22
+ --color-brand-extra-transparent: oklch(55% 52% 275deg / var(--opacity-low));
23
23
 
24
24
  // Red
25
25
  --color-red-1: oklch(15% 55% 30deg);
26
26
  --color-red-2: oklch(25% 52% 30deg);
27
27
  --color-red-3: oklch(35% 54% 30deg);
28
- --color-red-4: oklch(45% 52% 30deg);
28
+ --color-red-4: oklch(45% 50% 30deg);
29
29
  --color-red-5: oklch(55% 50% 30deg);
30
30
  --color-red-6: oklch(65% 50% 30deg);
31
31
  --color-red-7: oklch(75% 45% 30deg);
@@ -35,69 +35,69 @@
35
35
  --color-red-extra-transparent: oklch(55% 50% 30deg / var(--opacity-low));
36
36
 
37
37
  // Orange
38
- --color-orange-1: oklch(15% 55% 61deg);
39
- --color-orange-2: oklch(25% 50% 61deg);
40
- --color-orange-3: oklch(35% 49% 61deg);
41
- --color-orange-4: oklch(45% 48% 61deg);
42
- --color-orange-5: oklch(55% 50% 61deg);
43
- --color-orange-6: oklch(65% 50% 61deg);
44
- --color-orange-7: oklch(75% 45% 61deg);
45
- --color-orange-8: oklch(85% 40% 61deg);
46
- --color-orange-9: oklch(95% 35% 61deg);
47
- --color-orange-transparent: oklch(55% 50% 61deg / var(--opacity-medium));
48
- --color-orange-extra-transparent: oklch(55% 50% 61deg / var(--opacity-low));
38
+ --color-orange-1: oklch(15% 60% 55deg);
39
+ --color-orange-2: oklch(25% 60% 55deg);
40
+ --color-orange-3: oklch(35% 55% 55deg);
41
+ --color-orange-4: oklch(45% 50% 55deg);
42
+ --color-orange-5: oklch(55% 50% 55deg);
43
+ --color-orange-6: oklch(65% 40% 55deg);
44
+ --color-orange-7: oklch(75% 40% 55deg);
45
+ --color-orange-8: oklch(85% 40% 55deg);
46
+ --color-orange-9: oklch(95% 38% 55deg);
47
+ --color-orange-transparent: oklch(55% 50% 55deg / var(--opacity-medium));
48
+ --color-orange-extra-transparent: oklch(55% 50% 55deg / var(--opacity-low));
49
49
 
50
50
  // Yellow
51
- --color-yellow-1: oklch(15% 50% 90deg);
52
- --color-yellow-2: oklch(25% 50% 90deg);
53
- --color-yellow-3: oklch(35% 50% 90deg);
54
- --color-yellow-4: oklch(45% 44% 90deg);
55
- --color-yellow-5: oklch(55% 44% 90deg);
56
- --color-yellow-6: oklch(65% 44% 90deg);
57
- --color-yellow-7: oklch(75% 40% 90deg);
58
- --color-yellow-8: oklch(85% 37% 90deg);
59
- --color-yellow-9: oklch(95% 29% 90deg);
60
- --color-yellow-transparent: oklch(55% 44% 90deg / var(--opacity-medium));
61
- --color-yellow-extra-transparent: oklch(55% 44% 90deg / var(--opacity-low));
51
+ --color-yellow-1: oklch(15% 55% 88deg);
52
+ --color-yellow-2: oklch(25% 55% 88deg);
53
+ --color-yellow-3: oklch(35% 55% 88deg);
54
+ --color-yellow-4: oklch(45% 45% 88deg);
55
+ --color-yellow-5: oklch(55% 45% 88deg);
56
+ --color-yellow-6: oklch(65% 40% 88deg);
57
+ --color-yellow-7: oklch(75% 36% 88deg);
58
+ --color-yellow-8: oklch(85% 30% 88deg);
59
+ --color-yellow-9: oklch(95% 28% 88deg);
60
+ --color-yellow-transparent: oklch(55% 45% 88deg / var(--opacity-medium));
61
+ --color-yellow-extra-transparent: oklch(55% 45% 88deg / var(--opacity-low));
62
62
 
63
63
  // Green
64
64
  --color-green-1: oklch(15% 55% 133deg);
65
- --color-green-2: oklch(25% 55% 133deg);
66
- --color-green-3: oklch(35% 50% 133deg);
67
- --color-green-4: oklch(45% 50% 133deg);
68
- --color-green-5: oklch(55% 49% 133deg);
69
- --color-green-6: oklch(65% 49% 133deg);
70
- --color-green-7: oklch(75% 45% 133deg);
71
- --color-green-8: oklch(85% 43% 133deg);
72
- --color-green-9: oklch(95% 30% 133deg);
73
- --color-green-transparent: oklch(55% 49% 133deg / var(--opacity-medium));
74
- --color-green-extra-transparent: oklch(55% 49% 133deg / var(--opacity-low));
65
+ --color-green-2: oklch(25% 50% 133deg);
66
+ --color-green-3: oklch(35% 48% 133deg);
67
+ --color-green-4: oklch(45% 46% 133deg);
68
+ --color-green-5: oklch(55% 46% 133deg);
69
+ --color-green-6: oklch(65% 46% 133deg);
70
+ --color-green-7: oklch(75% 46% 133deg);
71
+ --color-green-8: oklch(85% 40% 133deg);
72
+ --color-green-9: oklch(95% 20% 133deg);
73
+ --color-green-transparent: oklch(55% 46% 133deg / var(--opacity-medium));
74
+ --color-green-extra-transparent: oklch(55% 46% 133deg / var(--opacity-low));
75
75
 
76
76
  // Sky
77
- --color-sky-1: oklch(15% 55% 200deg);
78
- --color-sky-2: oklch(25% 55% 200deg);
79
- --color-sky-3: oklch(35% 50% 200deg);
80
- --color-sky-4: oklch(45% 50% 200deg);
81
- --color-sky-5: oklch(55% 52% 200deg);
82
- --color-sky-6: oklch(65% 46% 200deg);
83
- --color-sky-7: oklch(75% 36% 200deg);
84
- --color-sky-8: oklch(85% 25% 200deg);
85
- --color-sky-9: oklch(95% 17% 200deg);
86
- --color-sky-transparent: oklch(55% 52% 200deg / var(--opacity-medium));
87
- --color-sky-extra-transparent: oklch(55% 52% 200deg / var(--opacity-low));
77
+ --color-sky-1: oklch(15% 55% 195deg);
78
+ --color-sky-2: oklch(25% 55% 195deg);
79
+ --color-sky-3: oklch(35% 50% 195deg);
80
+ --color-sky-4: oklch(45% 50% 195deg);
81
+ --color-sky-5: oklch(55% 52% 195deg);
82
+ --color-sky-6: oklch(65% 45% 195deg);
83
+ --color-sky-7: oklch(75% 35% 195deg);
84
+ --color-sky-8: oklch(85% 25% 195deg);
85
+ --color-sky-9: oklch(95% 12% 195deg);
86
+ --color-sky-transparent: oklch(55% 52% 195deg / var(--opacity-medium));
87
+ --color-sky-extra-transparent: oklch(55% 52% 195deg / var(--opacity-low));
88
88
 
89
89
  // Blue
90
- --color-blue-1: oklch(15% 55% 260deg);
91
- --color-blue-2: oklch(25% 55% 260deg);
92
- --color-blue-3: oklch(35% 53% 260deg);
93
- --color-blue-4: oklch(45% 50% 260deg);
94
- --color-blue-5: oklch(55% 52% 260deg);
90
+ --color-blue-1: oklch(15% 52% 260deg);
91
+ --color-blue-2: oklch(25% 48% 260deg);
92
+ --color-blue-3: oklch(35% 46% 260deg);
93
+ --color-blue-4: oklch(45% 48% 260deg);
94
+ --color-blue-5: oklch(55% 50% 260deg);
95
95
  --color-blue-6: oklch(65% 52% 260deg);
96
- --color-blue-7: oklch(75% 52% 260deg);
97
- --color-blue-8: oklch(85% 50% 260deg);
98
- --color-blue-9: oklch(95% 39% 260deg);
99
- --color-blue-transparent: oklch(55% 52% 260deg / var(--opacity-medium));
100
- --color-blue-extra-transparent: oklch(55% 52% 260deg / var(--opacity-low));
96
+ --color-blue-7: oklch(75% 48% 260deg);
97
+ --color-blue-8: oklch(85% 45% 260deg);
98
+ --color-blue-9: oklch(95% 42% 260deg);
99
+ --color-blue-transparent: oklch(55% 50% 260deg / var(--opacity-medium));
100
+ --color-blue-extra-transparent: oklch(55% 50% 260deg / var(--opacity-low));
101
101
 
102
102
  // Purple
103
103
  --color-purple-1: oklch(15% 55% 310deg);
@@ -106,7 +106,7 @@
106
106
  --color-purple-4: oklch(45% 52% 310deg);
107
107
  --color-purple-5: oklch(55% 52% 310deg);
108
108
  --color-purple-6: oklch(65% 51% 310deg);
109
- --color-purple-7: oklch(75% 48% 310deg);
109
+ --color-purple-7: oklch(75% 42% 310deg);
110
110
  --color-purple-8: oklch(85% 42% 310deg);
111
111
  --color-purple-9: oklch(95% 40% 310deg);
112
112
  --color-purple-transparent: oklch(55% 52% 310deg / var(--opacity-medium));
@@ -116,12 +116,12 @@
116
116
  --color-magenta-1: oklch(15% 55% 356deg);
117
117
  --color-magenta-2: oklch(25% 55% 356deg);
118
118
  --color-magenta-3: oklch(35% 54% 356deg);
119
- --color-magenta-4: oklch(45% 51% 356deg);
119
+ --color-magenta-4: oklch(45% 46% 356deg);
120
120
  --color-magenta-5: oklch(55% 50% 356deg);
121
- --color-magenta-6: oklch(65% 47% 356deg);
122
- --color-magenta-7: oklch(75% 43% 356deg);
123
- --color-magenta-8: oklch(85% 38% 356deg);
124
- --color-magenta-9: oklch(95% 30% 356deg);
121
+ --color-magenta-6: oklch(65% 48% 356deg);
122
+ --color-magenta-7: oklch(75% 42% 356deg);
123
+ --color-magenta-8: oklch(85% 36% 356deg);
124
+ --color-magenta-9: oklch(95% 34% 356deg);
125
125
  --color-magenta-transparent: oklch(55% 50% 356deg / var(--opacity-medium));
126
126
  --color-magenta-extra-transparent: oklch(55% 50% 356deg / var(--opacity-low));
127
127
 
@@ -148,121 +148,111 @@
148
148
 
149
149
  @media (prefers-color-scheme: dark) {
150
150
  // Brand
151
- --color-brand-9: oklch(17% 55% 270deg);
152
- --color-brand-8: oklch(27% 53% 270deg);
153
- --color-brand-7: oklch(37% 52% 270deg);
154
- --color-brand-6: oklch(47% 51% 270deg);
155
- --color-brand-5: oklch(57% 50% 270deg);
156
- --color-brand-4: oklch(67% 50% 270deg);
157
- --color-brand-3: oklch(77% 45% 270deg);
158
- --color-brand-2: oklch(87% 42% 270deg);
159
- --color-brand-1: oklch(97% 36% 270deg);
151
+ --color-brand-9: oklch(15% 55% 275deg);
152
+ --color-brand-8: oklch(25% 52% 275deg);
153
+ --color-brand-7: oklch(35% 52% 275deg);
154
+ --color-brand-6: oklch(45% 55% 275deg);
155
+ --color-brand-4: oklch(65% 50% 275deg);
156
+ --color-brand-3: oklch(75% 45% 275deg);
157
+ --color-brand-2: oklch(85% 42% 275deg);
158
+ --color-brand-1: oklch(95% 36% 275deg);
160
159
 
161
160
  // Red
162
- --color-red-9: oklch(17% 55% 30deg);
163
- --color-red-8: oklch(27% 52% 30deg);
164
- --color-red-7: oklch(37% 54% 30deg);
165
- --color-red-6: oklch(47% 52% 30deg);
166
- --color-red-5: oklch(57% 50% 30deg);
167
- --color-red-4: oklch(67% 50% 30deg);
168
- --color-red-3: oklch(77% 45% 30deg);
169
- --color-red-2: oklch(87% 45% 30deg);
170
- --color-red-1: oklch(97% 38% 30deg);
161
+ --color-red-9: oklch(15% 55% 30deg);
162
+ --color-red-8: oklch(25% 52% 30deg);
163
+ --color-red-7: oklch(35% 54% 30deg);
164
+ --color-red-6: oklch(45% 50% 30deg);
165
+ --color-red-4: oklch(65% 50% 30deg);
166
+ --color-red-3: oklch(75% 45% 30deg);
167
+ --color-red-2: oklch(85% 45% 30deg);
168
+ --color-red-1: oklch(95% 38% 30deg);
171
169
 
172
170
  // Orange
173
- --color-orange-9: oklch(17% 55% 61deg);
174
- --color-orange-8: oklch(27% 50% 61deg);
175
- --color-orange-7: oklch(37% 49% 61deg);
176
- --color-orange-6: oklch(47% 48% 61deg);
177
- --color-orange-5: oklch(57% 50% 61deg);
178
- --color-orange-4: oklch(67% 50% 61deg);
179
- --color-orange-3: oklch(77% 45% 61deg);
180
- --color-orange-2: oklch(87% 40% 61deg);
181
- --color-orange-1: oklch(97% 35% 61deg);
171
+ --color-orange-9: oklch(15% 60% 55deg);
172
+ --color-orange-8: oklch(25% 60% 55deg);
173
+ --color-orange-7: oklch(35% 55% 55deg);
174
+ --color-orange-6: oklch(45% 50% 55deg);
175
+ --color-orange-4: oklch(65% 40% 55deg);
176
+ --color-orange-3: oklch(75% 40% 55deg);
177
+ --color-orange-2: oklch(85% 40% 55deg);
178
+ --color-orange-1: oklch(95% 38% 55deg);
182
179
 
183
180
  // Yellow
184
- --color-yellow-9: oklch(17% 50% 90deg);
185
- --color-yellow-8: oklch(27% 50% 90deg);
186
- --color-yellow-7: oklch(37% 50% 90deg);
187
- --color-yellow-6: oklch(47% 44% 90deg);
188
- --color-yellow-5: oklch(57% 44% 90deg);
189
- --color-yellow-4: oklch(67% 44% 90deg);
190
- --color-yellow-3: oklch(77% 40% 90deg);
191
- --color-yellow-2: oklch(87% 37% 90deg);
192
- --color-yellow-1: oklch(97% 29% 90deg);
181
+ --color-yellow-9: oklch(15% 55% 88deg);
182
+ --color-yellow-8: oklch(25% 55% 88deg);
183
+ --color-yellow-7: oklch(35% 55% 88deg);
184
+ --color-yellow-6: oklch(45% 45% 88deg);
185
+ --color-yellow-4: oklch(65% 40% 88deg);
186
+ --color-yellow-3: oklch(75% 36% 88deg);
187
+ --color-yellow-2: oklch(85% 30% 88deg);
188
+ --color-yellow-1: oklch(95% 28% 88deg);
193
189
 
194
190
  // Green
195
- --color-green-9: oklch(17% 55% 133deg);
196
- --color-green-8: oklch(27% 55% 133deg);
197
- --color-green-7: oklch(37% 50% 133deg);
198
- --color-green-6: oklch(47% 50% 133deg);
199
- --color-green-5: oklch(57% 49% 133deg);
200
- --color-green-4: oklch(67% 49% 133deg);
201
- --color-green-3: oklch(77% 45% 133deg);
202
- --color-green-2: oklch(87% 43% 133deg);
203
- --color-green-1: oklch(97% 30% 133deg);
191
+ --color-green-9: oklch(15% 55% 133deg);
192
+ --color-green-8: oklch(25% 50% 133deg);
193
+ --color-green-7: oklch(35% 48% 133deg);
194
+ --color-green-6: oklch(45% 46% 133deg);
195
+ --color-green-4: oklch(65% 46% 133deg);
196
+ --color-green-3: oklch(75% 46% 133deg);
197
+ --color-green-2: oklch(85% 40% 133deg);
198
+ --color-green-1: oklch(95% 20% 133deg);
204
199
 
205
200
  // Sky
206
- --color-sky-9: oklch(17% 55% 200deg);
207
- --color-sky-8: oklch(27% 55% 200deg);
208
- --color-sky-7: oklch(37% 50% 200deg);
209
- --color-sky-6: oklch(47% 50% 200deg);
210
- --color-sky-5: oklch(57% 52% 200deg);
211
- --color-sky-4: oklch(67% 46% 200deg);
212
- --color-sky-3: oklch(77% 36% 200deg);
213
- --color-sky-2: oklch(87% 25% 200deg);
214
- --color-sky-1: oklch(97% 17% 200deg);
201
+ --color-sky-9: oklch(15% 55% 195deg);
202
+ --color-sky-8: oklch(25% 55% 195deg);
203
+ --color-sky-7: oklch(35% 50% 195deg);
204
+ --color-sky-6: oklch(45% 50% 195deg);
205
+ --color-sky-4: oklch(65% 45% 195deg);
206
+ --color-sky-3: oklch(75% 35% 195deg);
207
+ --color-sky-2: oklch(85% 25% 195deg);
208
+ --color-sky-1: oklch(95% 12% 195deg);
215
209
 
216
210
  // Blue
217
- --color-blue-9: oklch(17% 55% 260deg);
218
- --color-blue-8: oklch(27% 55% 260deg);
219
- --color-blue-7: oklch(37% 53% 260deg);
220
- --color-blue-6: oklch(47% 50% 260deg);
221
- --color-blue-5: oklch(57% 52% 260deg);
222
- --color-blue-4: oklch(67% 52% 260deg);
223
- --color-blue-3: oklch(77% 52% 260deg);
224
- --color-blue-2: oklch(87% 50% 260deg);
225
- --color-blue-1: oklch(97% 39% 260deg);
211
+ --color-blue-9: oklch(15% 52% 260deg);
212
+ --color-blue-8: oklch(25% 48% 260deg);
213
+ --color-blue-7: oklch(35% 46% 260deg);
214
+ --color-blue-6: oklch(45% 48% 260deg);
215
+ --color-blue-4: oklch(65% 52% 260deg);
216
+ --color-blue-3: oklch(75% 48% 260deg);
217
+ --color-blue-2: oklch(85% 45% 260deg);
218
+ --color-blue-1: oklch(95% 42% 260deg);
226
219
 
227
220
  // Purple
228
- --color-purple-9: oklch(17% 55% 310deg);
229
- --color-purple-8: oklch(27% 55% 310deg);
230
- --color-purple-7: oklch(37% 53% 310deg);
231
- --color-purple-6: oklch(47% 52% 310deg);
232
- --color-purple-5: oklch(57% 52% 310deg);
233
- --color-purple-4: oklch(67% 51% 310deg);
234
- --color-purple-3: oklch(77% 48% 310deg);
235
- --color-purple-2: oklch(87% 42% 310deg);
236
- --color-purple-1: oklch(97% 40% 310deg);
221
+ --color-purple-9: oklch(15% 55% 310deg);
222
+ --color-purple-8: oklch(25% 55% 310deg);
223
+ --color-purple-7: oklch(35% 53% 310deg);
224
+ --color-purple-6: oklch(45% 52% 310deg);
225
+ --color-purple-4: oklch(65% 51% 310deg);
226
+ --color-purple-3: oklch(75% 42% 310deg);
227
+ --color-purple-2: oklch(85% 42% 310deg);
228
+ --color-purple-1: oklch(95% 40% 310deg);
237
229
 
238
230
  // Magenta
239
- --color-magenta-9: oklch(17% 55% 356deg);
240
- --color-magenta-8: oklch(27% 55% 356deg);
241
- --color-magenta-7: oklch(37% 54% 356deg);
242
- --color-magenta-6: oklch(47% 51% 356deg);
243
- --color-magenta-5: oklch(57% 50% 356deg);
244
- --color-magenta-4: oklch(67% 47% 356deg);
245
- --color-magenta-3: oklch(77% 43% 356deg);
246
- --color-magenta-2: oklch(87% 38% 356deg);
247
- --color-magenta-1: oklch(97% 30% 356deg);
231
+ --color-magenta-9: oklch(15% 55% 356deg);
232
+ --color-magenta-8: oklch(25% 55% 356deg);
233
+ --color-magenta-7: oklch(35% 54% 356deg);
234
+ --color-magenta-6: oklch(45% 46% 356deg);
235
+ --color-magenta-4: oklch(65% 48% 356deg);
236
+ --color-magenta-3: oklch(75% 42% 356deg);
237
+ --color-magenta-2: oklch(85% 36% 356deg);
238
+ --color-magenta-1: oklch(95% 34% 356deg);
248
239
 
249
240
  // Gray
250
- --color-gray-9: oklch(17% 2% 263deg);
251
- --color-gray-8: oklch(27% 2% 263deg);
252
- --color-gray-7: oklch(37% 2% 263deg);
253
- --color-gray-6: oklch(47% 2% 263deg);
254
- --color-gray-5: oklch(57% 2% 263deg);
255
- --color-gray-4: oklch(67% 2% 263deg);
256
- --color-gray-3: oklch(77% 2% 263deg);
257
- --color-gray-2: oklch(87% 2% 263deg);
258
- --color-gray-1: oklch(97% 2% 263deg);
241
+ --color-gray-9: oklch(15% 2% 263deg);
242
+ --color-gray-8: oklch(25% 2% 263deg);
243
+ --color-gray-7: oklch(35% 2% 263deg);
244
+ --color-gray-6: oklch(45% 2% 263deg);
245
+ --color-gray-4: oklch(65% 2% 263deg);
246
+ --color-gray-3: oklch(75% 2% 263deg);
247
+ --color-gray-2: oklch(85% 2% 263deg);
248
+ --color-gray-1: oklch(95% 2% 263deg);
259
249
 
260
250
  // Darker replacements for semantic colors
261
251
  --color-body: oklch(20% 2% 263deg);
262
252
  --color-body-alt: oklch(8% 2% 263deg);
263
253
  --color-body-text: white;
264
- --color-body-text-alt: oklch(88% 1% 263deg);
265
- --color-shadow: oklch(5% 2% 263deg / 25%);
254
+ --color-body-text-alt: oklch(85% 1% 263deg);
255
+ --color-shadow: oklch(5% 2% 263deg / 40%);
266
256
  --color-outline: oklch(39% 2% 263deg);
267
257
 
268
258
  // Slightly decrease font weights
@@ -68,6 +68,9 @@
68
68
  --alert-bg-color: var(--color-red-9);
69
69
  --alert-border-start-color: var(--color-red-5);
70
70
  --alert-border-end-color: var(--color-red-6);
71
+ --alert-dismiss-icon-color: var(--color-red-4);
72
+ --alert-dismiss-hover-bg: var(--color-red-extra-transparent);
73
+ --alert-dismiss-focus-bg: var(--color-red-transparent);
71
74
  --alert-icon: #{utils.svg-to-data-url(
72
75
  '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="64" d="M368 368L144 144M368 144L144 368"/></svg>'
73
76
  )};
@@ -77,6 +80,9 @@
77
80
  --alert-bg-color: var(--color-yellow-9);
78
81
  --alert-border-start-color: var(--color-yellow-5);
79
82
  --alert-border-end-color: var(--color-yellow-6);
83
+ --alert-dismiss-icon-color: var(--color-yellow-4);
84
+ --alert-dismiss-hover-bg: var(--color-yellow-extra-transparent);
85
+ --alert-dismiss-focus-bg: var(--color-yellow-transparent);
80
86
  --alert-icon: #{utils.svg-to-data-url(
81
87
  '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 80c-8.66 0-16.58 7.36-16 16l8 216a8 8 0 008 8h0a8 8 0 008-8l8-216c.58-8.64-7.34-16-16-16z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="64"/><circle cx="256" cy="436" r="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="48"/></svg>'
82
88
  )};
@@ -86,6 +92,9 @@
86
92
  --alert-bg-color: var(--color-green-9);
87
93
  --alert-border-start-color: var(--color-green-5);
88
94
  --alert-border-end-color: var(--color-green-6);
95
+ --alert-dismiss-icon-color: var(--color-green-4);
96
+ --alert-dismiss-hover-bg: var(--color-green-extra-transparent);
97
+ --alert-dismiss-focus-bg: var(--color-green-transparent);
89
98
  --alert-icon: #{utils.svg-to-data-url(
90
99
  '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="64" d="M416 128L192 384l-96-96"/></svg>'
91
100
  )};
@@ -95,10 +104,67 @@
95
104
  --alert-bg-color: var(--color-sky-9);
96
105
  --alert-border-start-color: var(--color-sky-5);
97
106
  --alert-border-end-color: var(--color-sky-6);
107
+ --alert-dismiss-icon-color: var(--color-sky-4);
108
+ --alert-dismiss-hover-bg: var(--color-sky-extra-transparent);
109
+ --alert-dismiss-focus-bg: var(--color-sky-transparent);
98
110
  --alert-icon: #{utils.svg-to-data-url(
99
111
  '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="64" d="M196 220h64v172"/><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="64" d="M187 396h138"/><circle cx="253 " cy="118" r="44"/></svg>'
100
112
  )};
101
113
  }
114
+
115
+ &.banner {
116
+ border-radius: 0;
117
+ border-width: var(--border-m) 0;
118
+ width: 100%;
119
+ padding: var(--space-xs);
120
+ padding-inline-start: calc(var(--space-xs) + 2em);
121
+
122
+ &:has(.button.dismiss) {
123
+ padding-inline-end: calc(var(--space-xs) + 2em);
124
+ }
125
+
126
+ &::before,
127
+ &::after {
128
+ inset-inline-start: calc(var(--space-xs) * 0.5);
129
+ margin: auto;
130
+ width: 2em;
131
+ height: 2em;
132
+ }
133
+
134
+ .button.dismiss {
135
+ --button-fg-color: var(--alert-dismiss-icon-color);
136
+ --button-bg-color: transparent;
137
+ --button-border-color: transparent;
138
+ --button-hover-bg-color: var(--alert-dismiss-hover-bg);
139
+ --button-focus-ring-color: transparent;
140
+ --button-shadow: none;
141
+
142
+ font-size: 0.75rem;
143
+ position: absolute;
144
+ inset-block: 0;
145
+ inset-inline-end: var(--space-3xs);
146
+ margin: auto;
147
+ width: 3em;
148
+ height: 3em;
149
+
150
+ &:is(:focus-visible, .focus) {
151
+ --button-bg-color: var(--alert-dismiss-focus-bg);
152
+ --button-hover-bg-color: transparent;
153
+ }
154
+
155
+ &::after {
156
+ content: "";
157
+ width: 1.8em;
158
+ height: 1.8em;
159
+ mask-image: #{utils.svg-to-data-url(
160
+ '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M368 368L144 144M368 144L144 368"/></svg>'
161
+ )};
162
+ mask-size: contain;
163
+ mask-repeat: no-repeat;
164
+ background-color: currentcolor;
165
+ }
166
+ }
167
+ }
102
168
  }
103
169
 
104
170
  .alert-title {
@@ -3,25 +3,24 @@
3
3
 
4
4
  .app {
5
5
  --app-width: 110rem;
6
- --app-header-height: clamp(50px, 3.5rem, 70px);
7
- --app-sidebar-width: clamp(300px, 18rem, 400px);
8
6
 
9
7
  position: relative;
10
- width: 100dvw;
11
- height: 100dvh;
8
+ width: 100%;
9
+ min-height: 100svh;
12
10
  display: flex;
13
11
  flex-direction: column;
14
- overflow: visible;
15
12
  }
16
13
 
17
14
  .app-header {
18
- height: var(--app-header-height);
15
+ height: clamp(50px, 3.5rem, 70px);
19
16
  width: 100%;
20
17
  color: var(--color-brand-3);
21
18
  background-color: var(--color-body-alt);
22
19
  border-bottom: var(--border-l) solid var(--color-brand-transparent);
23
20
  box-shadow: var(--shadow-s);
24
21
  flex: none;
22
+ overflow: auto hidden;
23
+ scrollbar-width: thin;
25
24
 
26
25
  @media (prefers-color-scheme: dark) {
27
26
  color: var(--color-brand-2);
@@ -132,32 +131,27 @@
132
131
  width: 100%;
133
132
  max-width: var(--app-width);
134
133
  margin-inline: auto;
134
+ flex: none;
135
+ display: flex;
136
+ flex-direction: row;
135
137
  }
136
138
 
137
139
  .app-sidebar {
138
- // TODO simplify
139
- overflow: auto;
140
140
  transition:
141
141
  opacity 150ms ease,
142
142
  display 150ms allow-discrete;
143
- width: var(--app-sidebar-width);
144
- position: absolute;
145
- top: 0;
146
- left: 0;
147
- height: 100%;
148
- z-index: 3;
143
+ width: clamp(300px, 18rem, 400px);
144
+ flex: none;
149
145
  opacity: 1;
150
- border-inline-end: var(--border-s) solid;
151
- border-image: linear-gradient(
152
- to bottom,
153
- transparent 0%,
154
- transparent 10%,
155
- var(--color-outline) 10%,
156
- var(--color-outline) 90%,
157
- transparent 90%,
158
- transparent 100%
159
- )
160
- 80;
146
+ border-inline-end: var(--border-s) dashed var(--color-outline);
147
+ }
148
+
149
+ .app-sidebar-content {
150
+ position: sticky;
151
+ top: 0;
152
+ overflow: auto;
153
+ height: auto;
154
+ height: 100dvh;
161
155
  }
162
156
 
163
157
  .app-sidebar-section {
@@ -201,7 +195,7 @@
201
195
  color: var(--color-brand-1);
202
196
  }
203
197
 
204
- &:is(.current, [aria-current="page"]) {
198
+ &:is([aria-current], .current) {
205
199
  color: var(--color-brand-4);
206
200
  font-weight: var(--font-weight-bold);
207
201
  }
@@ -294,40 +288,9 @@
294
288
 
295
289
  .app:has(.app-sidebar) {
296
290
  --app-width: 125rem;
297
-
298
- overflow: hidden;
299
-
300
- .app-header {
301
- position: fixed;
302
- top: 0;
303
- left: 0;
304
- }
305
-
306
- .app-body {
307
- position: fixed;
308
- top: var(--app-header-height);
309
- left: 0;
310
- right: 0;
311
- margin-inline: auto;
312
- height: calc(100dvh - var(--app-header-height));
313
- }
314
-
315
- .app-content {
316
- overflow: auto;
317
- position: absolute;
318
- top: 0;
319
- left: var(--app-sidebar-width);
320
- width: calc(100% - var(--app-sidebar-width));
321
- height: 100%;
322
- }
323
291
  }
324
292
 
325
293
  @media (width < 55rem) {
326
- .app-content {
327
- left: 0 !important;
328
- width: 100dvw !important;
329
- }
330
-
331
294
  .app-sidebar {
332
295
  width: 100dvw;
333
296
  opacity: 1;