@jrgermain/stylesheet 0.0.3

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.
@@ -0,0 +1,289 @@
1
+ @use "../utils";
2
+ @use "./layout";
3
+
4
+ %heading-any {
5
+ font-family: var(--font-family-heading);
6
+ margin-block: 0.75em 0.3em;
7
+ line-height: 1.15;
8
+ text-wrap: balance;
9
+ }
10
+
11
+ h1,
12
+ .h1,
13
+ %h1 {
14
+ @extend %heading-any;
15
+
16
+ font-size: var(--font-size-4xl);
17
+ font-weight: var(--font-weight-black);
18
+ }
19
+
20
+ h2,
21
+ .h2,
22
+ %h2 {
23
+ @extend %heading-any;
24
+
25
+ font-size: var(--font-size-3xl);
26
+ font-weight: var(--font-weight-bold);
27
+ }
28
+
29
+ h3,
30
+ .h3,
31
+ %h3 {
32
+ @extend %heading-any;
33
+
34
+ font-size: var(--font-size-2xl);
35
+ font-weight: var(--font-weight-bold);
36
+ }
37
+
38
+ h4,
39
+ .h4,
40
+ %h4 {
41
+ @extend %heading-any;
42
+
43
+ font-size: var(--font-size-xl);
44
+ font-weight: var(--font-weight-semibold);
45
+ }
46
+
47
+ h5,
48
+ .h5,
49
+ %h5 {
50
+ @extend %heading-any;
51
+
52
+ font-size: var(--font-size-l);
53
+ font-weight: var(--font-weight-semibold);
54
+ }
55
+
56
+ h6,
57
+ .h6,
58
+ %h6 {
59
+ @extend %heading-any;
60
+
61
+ font-size: var(--font-size-m);
62
+ font-weight: var(--font-weight-bold);
63
+ }
64
+
65
+ p,
66
+ .p,
67
+ li {
68
+ font-family: var(--font-family-body);
69
+ font-size: var(--font-size-m);
70
+ font-weight: var(--font-weight-normal);
71
+ line-height: 1.6;
72
+ margin: 0;
73
+ text-wrap: pretty;
74
+ hanging-punctuation: first;
75
+ }
76
+
77
+ blockquote,
78
+ .blockquote {
79
+ display: block;
80
+ margin: 0;
81
+ color: var(--color-gray-4);
82
+ border-inline-start: var(--border-l) solid var(--color-gray-transparent);
83
+ padding: var(--space-3xs);
84
+ padding-inline-start: var(--space-xs);
85
+ position: relative;
86
+ font-size: var(--font-size-m);
87
+ line-height: 1.25;
88
+ font-weight: var(--font-weight-normal);
89
+
90
+ @media (prefers-color-scheme: dark) {
91
+ color: var(--color-gray-2);
92
+ }
93
+
94
+ :is(footer, .footer) {
95
+ margin-block-start: 0.5em;
96
+ font-size: var(--font-size-s);
97
+ font-style: initial;
98
+ color: var(--color-body-text);
99
+ font-weight: var(--font-weight-semibold);
100
+
101
+ :is(cite, .cite) {
102
+ font-weight: var(--font-weight-normal);
103
+ font-style: italic;
104
+ }
105
+ }
106
+ }
107
+
108
+ a,
109
+ .a {
110
+ color: var(--color-sky-4);
111
+ font-weight: var(--font-weight-semibold);
112
+ text-decoration-line: underline;
113
+ text-decoration-color: var(--color-sky-transparent);
114
+ text-decoration-skip-ink: all;
115
+ text-decoration-thickness: var(--border-m);
116
+ text-underline-offset: 0.1em;
117
+ cursor: pointer;
118
+ transition: text-decoration-color 200ms ease;
119
+
120
+ &:is(:hover, .hover) {
121
+ text-decoration-color: currentcolor;
122
+ }
123
+
124
+ &:focus-visible {
125
+ outline-offset: 1px;
126
+ }
127
+
128
+ &[target="_blank"]:not(.no-external-icon, .button.icon)::after {
129
+ content: "";
130
+ print-color-adjust: exact;
131
+ mask-image: #{utils.svg-to-data-url(
132
+ '<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6m4-3h6v6m-11 5L21 3"/></svg>'
133
+ )};
134
+ mask-size: contain;
135
+ mask-repeat: no-repeat;
136
+ background-color: var(--color-gray-5);
137
+ display: inline-block;
138
+ height: 0.85em;
139
+ width: 0.85em;
140
+ vertical-align: baseline;
141
+ margin-left: 0.1em;
142
+ }
143
+
144
+ &[target="_blank"]:not(.no-external-icon, .button.icon).button::after {
145
+ background-color: currentcolor;
146
+ }
147
+ }
148
+
149
+ pre,
150
+ .pre {
151
+ font-family: var(--font-family-mono);
152
+ }
153
+
154
+ code,
155
+ .code,
156
+ kbd,
157
+ .kbd {
158
+ background-color: var(--color-gray-extra-transparent);
159
+ color: var(--color-gray-1);
160
+ font-family: var(--font-family-mono);
161
+ padding: 0 0.5ch;
162
+ margin: 0 0.25ch;
163
+ border-radius: var(--radius-s);
164
+ font-size: 0.9em;
165
+ }
166
+
167
+ samp,
168
+ .samp {
169
+ display: block;
170
+ font-size: calc(0.9 * var(--font-size-m));
171
+ background-color: var(--color-gray-9);
172
+ color: var(--color-gray-1);
173
+ border: var(--border-s) dashed var(--color-outline);
174
+ border-radius: var(--radius-s);
175
+ padding: var(--space-3xs);
176
+ font-family: var(--font-family-mono);
177
+ }
178
+
179
+ :is(pre, .pre) > :is(code, .code) {
180
+ background-color: unset;
181
+ }
182
+
183
+ strong,
184
+ .strong {
185
+ font-weight: var(--font-weight-bold);
186
+ }
187
+
188
+ em,
189
+ .em {
190
+ font-style: italic;
191
+ }
192
+
193
+ mark,
194
+ .mark {
195
+ background-color: var(--color-yellow-9);
196
+ color: black;
197
+ padding: 0.1em 0.25em;
198
+ border-radius: var(--radius-s);
199
+ print-color-adjust: exact;
200
+
201
+ @media (prefers-color-scheme: dark) {
202
+ background-color: var(--color-yellow-2);
203
+ }
204
+ }
205
+
206
+ del,
207
+ .del {
208
+ text-decoration-line: line-through;
209
+ text-decoration-skip-ink: none;
210
+ text-decoration-thickness: var(--border-s);
211
+ background-color: var(--color-red-8);
212
+ color: var(--color-red-1);
213
+ text-decoration-color: var(--color-body-text);
214
+ border-radius: 1px;
215
+ }
216
+
217
+ ins,
218
+ .ins {
219
+ text-decoration-line: none;
220
+ background-color: var(--color-green-8);
221
+ color: var(--color-green-1);
222
+ border-radius: 1px;
223
+ }
224
+
225
+ :is(abbr, .abbr)[title] {
226
+ text-decoration-line: underline;
227
+ text-decoration-style: dotted;
228
+ /* stylelint-disable-next-line declaration-block-no-redundant-longhand-properties -- using the shorthand doesn't work in safari */
229
+ text-decoration-color: var(--color-gray-6);
230
+ text-decoration-thickness: var(--border-m);
231
+ text-underline-offset: 0.1em;
232
+ }
233
+
234
+ small,
235
+ .small {
236
+ font-size: 0.75em;
237
+ vertical-align: baseline;
238
+ }
239
+
240
+ sub,
241
+ .sub,
242
+ sup,
243
+ .sup {
244
+ font-size: 0.75em;
245
+ line-height: 0;
246
+ position: relative;
247
+ vertical-align: baseline;
248
+ }
249
+
250
+ sub,
251
+ .sub {
252
+ inset-block-end: -0.25em;
253
+ }
254
+
255
+ sup,
256
+ .sup {
257
+ inset-block-start: -0.5em;
258
+ }
259
+
260
+ /* Add a gap between consecutive block text elements */
261
+ // prettier-ignore
262
+ :is(p, .p, blockquote, .blockquote, pre, .pre, samp, .samp, .alert, details):not(.alert-title, .accordion details) +
263
+ :is(p, .p, blockquote, .blockquote, pre, .pre, samp, .samp, .alert, details):not(.alert-title, .accordion details) {
264
+ margin-block-start: 0.75em;
265
+ }
266
+
267
+ .skip-link {
268
+ position: fixed;
269
+ z-index: 100;
270
+ top: var(--space-body);
271
+ left: var(--space-body);
272
+ background-color: var(--color-body-alt);
273
+ padding: var(--space-xs);
274
+ border-radius: var(--radius-m);
275
+ border: var(--border-l) solid currentcolor;
276
+ outline: 0;
277
+ box-shadow: var(--shadow-m);
278
+ text-decoration: none;
279
+ vertical-align: middle;
280
+
281
+ &:not(:focus) {
282
+ @extend %visually-hidden;
283
+ }
284
+
285
+ kbd {
286
+ margin-inline-start: var(--space-3xs);
287
+ font-weight: initial;
288
+ }
289
+ }
@@ -0,0 +1,39 @@
1
+ dialog[open] {
2
+ display: flex;
3
+ transform: var(--dialog-open-transform);
4
+ opacity: var(--dialog-open-opacity);
5
+ }
6
+
7
+ dialog[open]::backdrop {
8
+ opacity: var(--dialog-backdrop-open-opacity);
9
+ }
10
+
11
+ dialog {
12
+ transform: var(--dialog-ending-transform);
13
+ opacity: var(--dialog-ending-opacity);
14
+ transition:
15
+ transform 150ms ease,
16
+ opacity 150ms ease,
17
+ display 150ms ease allow-discrete,
18
+ overlay 150ms ease allow-discrete;
19
+ }
20
+
21
+ dialog::backdrop {
22
+ opacity: var(--dialog-backdrop-ending-opacity);
23
+ transition:
24
+ transform 150ms ease,
25
+ opacity 150ms ease,
26
+ display 150ms ease allow-discrete,
27
+ overlay 150ms ease allow-discrete;
28
+ }
29
+
30
+ @starting-style {
31
+ dialog[open] {
32
+ transform: var(--dialog-starting-transform);
33
+ opacity: var(--dialog-starting-opacity);
34
+ }
35
+
36
+ dialog[open]::backdrop {
37
+ opacity: var(--dialog-backdrop-starting-opacity);
38
+ }
39
+ }
@@ -0,0 +1,5 @@
1
+ @starting-style {
2
+ .app > .sidebar {
3
+ opacity: 0;
4
+ }
5
+ }
@@ -0,0 +1,47 @@
1
+ @use "./variables";
2
+ @use "./components/alert";
3
+ @use "./components/app";
4
+ @use "./components/button";
5
+ @use "./components/card";
6
+ @use "./components/chip";
7
+ @use "./components/details";
8
+ @use "./components/dialog";
9
+ @use "./components/field";
10
+ @use "./components/hr";
11
+ @use "./components/layout";
12
+ @use "./components/progress-meter";
13
+ @use "./components/range";
14
+ @use "./components/skeleton";
15
+ @use "./components/switch";
16
+ @use "./components/table";
17
+ @use "./components/text";
18
+ @import "./experimental/dialog-animations";
19
+ @import "./experimental/mobile-sidebar-fade-out";
20
+
21
+ *,
22
+ *::before,
23
+ *::after {
24
+ box-sizing: border-box;
25
+ }
26
+
27
+ :where(:focus-visible) {
28
+ outline: var(--border-m) solid var(--color-brand-5);
29
+ }
30
+
31
+ html {
32
+ text-size-adjust: 100%;
33
+ color-scheme: light dark;
34
+ }
35
+
36
+ body {
37
+ min-height: 100svh;
38
+ margin: 0;
39
+ background-color: var(--color-body);
40
+ color: var(--color-body-text);
41
+ font-family: var(--font-family-body);
42
+ font-size: var(--font-size-m);
43
+ }
44
+
45
+ .sr-only {
46
+ @extend %visually-hidden;
47
+ }