@nordcode/ui 1.0.12 → 1.1.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.
@@ -8,11 +8,5 @@
8
8
 
9
9
  --input-height-base: 2.5rem;
10
10
  --input-height-small: 2rem;
11
-
12
- --triangle-down-url-dark: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 84L12.7609 19.5L87.2391 19.5L50 84Z' fill='%23fff4f5'/%3E%3C/svg%3E");
13
- --triangle-up-url-dark: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 16L87.2391 80.5H12.7609L50 16Z' fill='%23fff4f5'/%3E%3C/svg%3E%0A");
14
-
15
- --triangle-down-url-light: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 84L12.7609 19.5L87.2391 19.5L50 84Z' fill='%231a0004'/%3E%3C/svg%3E");
16
- --triangle-up-url-light: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 16L87.2391 80.5H12.7609L50 16Z' fill='%231a0004'/%3E%3C/svg%3E%0A");
17
11
  }
18
12
  }
@@ -11,7 +11,7 @@
11
11
  color-scheme: dark;
12
12
  }
13
13
 
14
- :where(*) {
14
+ :where(:root) {
15
15
  --l-brand-primary: light-dark(var(--l-brand-primary-light), var(--l-brand-primary-dark));
16
16
 
17
17
  --color-brand-primary-emphasis: light-dark(var(--color-brand-primary-emphasis-light),
@@ -1,4 +1,10 @@
1
1
  @layer base {
2
+ :where(:root) {
3
+ accent-color: var(--color-brand-primary-base);
4
+ caret-color: var(--color-brand-primary-base);
5
+ scrollbar-color: var(--color-text-subtle) transparent;
6
+ }
7
+
2
8
  :where(dt) {
3
9
  font-weight: var(--font-weight-active);
4
10
  color: var(--color-text-base);
@@ -69,9 +75,6 @@
69
75
 
70
76
  :where(figcaption) {
71
77
  display: block;
72
- font-family: var(--font-family-sans);
73
- font-weight: var(--font-weight-default);
74
- line-height: var(--line-height-base);
75
78
  color: var(--color-surface-subtle);
76
79
  background-color: var(--color-text-base);
77
80
  padding: 0.3lh 1ch;
@@ -79,33 +82,26 @@
79
82
 
80
83
  :where(details) {
81
84
  --p-x-details: 2ch;
82
- --p-y-details: 0.75lh;
85
+ --p-y-details: 0.8lh;
83
86
 
84
- inline-size: 100%;
85
- background-color: var(--color-surface-subtle);
87
+ background-color: var(--color-surface-muted);
86
88
  border-radius: var(--border-radius-medium);
87
89
  border: var(--border-width-thin) solid var(--color-border-base);
88
-
89
- &>* {
90
- padding-inline: var(--p-x-details);
91
- }
92
-
93
- &>*:last-child {
94
- padding-block-end: var(--p-y-details);
95
- }
96
-
97
- &>summary::-webkit-details-marker {
98
- display: none;
99
- }
90
+ padding: var(--p-y-details) var(--p-x-details);
100
91
 
101
92
  &>summary {
102
- list-style: none;
103
- cursor: pointer;
104
93
  color: var(--color-text-base);
105
- inline-size: 100%;
106
- font-weight: var(--font-weight-strong);
107
- padding-inline: var(--p-x-details);
108
- padding-block: var(--p-y-details);
94
+ background: var(--color-surface-subtle);
95
+ border-radius: var(--border-radius-medium);
96
+ font-weight: var(--font-weight-heading);
97
+ padding: var(--p-y-details) var(--p-x-details);
98
+ margin: calc(-1 * var(--p-y-details)) calc(-1 * var(--p-x-details) + var(--border-width-thin));
99
+ }
100
+
101
+ &[open]>summary {
102
+ border-end-start-radius: 0;
103
+ border-end-end-radius: 0;
104
+ margin-block-end: var(--p-y-details);
109
105
  }
110
106
  }
111
107
 
@@ -157,8 +153,9 @@
157
153
 
158
154
  :where(hr) {
159
155
  inline-size: 100%;
160
- block-size: 0;
161
- border-top: var(--border-width-medium) solid var(--color-border-base);
156
+ block-size: var(--border-width-medium);
157
+ background: var(--color-border-base);
158
+ border-block-start: 0;
162
159
  }
163
160
 
164
161
  :where(h1, h2, h3, h4, h5, h6) {
@@ -236,6 +233,10 @@
236
233
  font-weight: var(--font-weight-default);
237
234
  }
238
235
 
236
+ :where(abbr) {
237
+ text-decoration-color: var(--color-brand-primary-base);
238
+ }
239
+
239
240
  :where([aria-disabled="true"], .disabled, :disabled) {
240
241
  color: inherit;
241
242
  opacity: 1;
@@ -402,10 +403,10 @@
402
403
  }
403
404
 
404
405
  :where(li + li) {
405
- margin-top: 0.5lh;
406
+ margin-block-start: 0.5lh;
406
407
  }
407
408
 
408
409
  :where(li > :is(ul, ol)) {
409
- margin-top: 0.5lh;
410
+ margin-block-start: 0.3lh;
410
411
  }
411
412
  }
@@ -55,7 +55,7 @@
55
55
 
56
56
  :where(.nc-flow) {
57
57
  >*+* {
58
- margin-block-start: var(--flow-gap, 0.6lh);
58
+ margin-block-start: var(--flow-gap, 0.8lh);
59
59
  }
60
60
 
61
61
  >* {
@@ -67,17 +67,12 @@
67
67
  --flow-gap: 1.3lh;
68
68
  }
69
69
 
70
- >*:is(h1, h2, h3, h4, h5, h6)+p {
71
- --flow-gap: 0.5lh;
72
- }
73
-
74
- >p+p {
75
- --flow-gap: 0.8lh;
70
+ >*:is(h1, h2, h3, h4, h5, h6)+ :not([class]) {
71
+ --flow-gap: 0.3lh;
76
72
  }
77
73
 
78
74
  >figure {
79
75
  margin-inline: 0;
80
- margin-block: 1lh;
81
76
  }
82
77
 
83
78
  .breakAfter {
@@ -1,13 +1,8 @@
1
1
  @layer reset {
2
-
3
2
  *,
4
3
  :after,
5
4
  :before {
6
5
  box-sizing: border-box;
7
- accent-color: var(--color-brand-primary-base);
8
- font-kerning: normal;
9
- -moz-osx-font-smoothing: grayscale;
10
- -webkit-font-smoothing: antialiased;
11
6
  }
12
7
 
13
8
  :where(:not(dialog)) {
@@ -21,11 +16,17 @@
21
16
  background-repeat: no-repeat;
22
17
  }
23
18
 
24
- :where(:focus-visible) {
25
- transition: outline-offset var(--transition-duration-short) var(--ease-2);
19
+ @media (prefers-reduced-motion: no-preference) {
20
+ :where(:focus-visible) {
21
+ transition: outline-offset var(--transition-duration-short) var(--ease-2);
22
+ }
23
+
24
+ :where(:not(:active):focus-visible) {
25
+ transition-duration: var(--transition-duration-base);
26
+ }
26
27
  }
27
28
 
28
- :where(:focus-visible, :focus) {
29
+ :where(:not(:active):focus-visible) {
29
30
  outline: var(--border-width-medium) solid var(--color-brand-primary-base);
30
31
  outline-offset: 1ch;
31
32
  }
@@ -34,26 +35,27 @@
34
35
  outline: none;
35
36
  }
36
37
 
37
- :where(html) {
38
+ :where(:root) {
38
39
  -moz-text-size-adjust: none;
39
40
  -webkit-text-size-adjust: none;
40
41
  text-size-adjust: none;
41
42
  block-size: 100%;
42
- }
43
-
44
- :where(body) {
43
+ color: var(--color-text-base);
44
+ background-color: var(--color-surface-muted);
45
45
  font-family: var(--font-family-default);
46
+ line-height: var(--line-height-base);
46
47
  font-weight: var(--font-weight-default);
47
48
  font-size-adjust: from-font;
48
- line-height: var(--line-height-base);
49
- color: var(--color-text-base);
50
- background-color: var(--color-surface-muted);
51
- min-block-size: 100vh;
49
+
50
+ interpolate-size: allow-keywords;
51
+
52
+ font-kerning: normal;
53
+ -moz-osx-font-smoothing: grayscale;
54
+ -webkit-font-smoothing: antialiased;
52
55
  }
53
56
 
54
- /* Remove default margin in favour of better control in authored CSS */
55
- :where(body, h1, h2, h3, h4, p, figure, blockquote, dl, dd) {
56
- margin: 0;
57
+ :where(body) {
58
+ min-block-size: 100vh;
57
59
  }
58
60
 
59
61
  /* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
@@ -82,21 +84,44 @@
82
84
  }
83
85
 
84
86
  :where(figure) {
85
- display: flex;
86
- flex-direction: column;
87
+ display: grid;
88
+ place-content: center;
89
+ grid-template-rows: 1fr auto;
87
90
  gap: 0;
88
91
  }
89
92
 
90
- :where(a[href],
91
- area,
92
- button,
93
- input,
94
- label[for],
95
- select,
96
- summary,
97
- textarea,
98
- [tabindex]:not([tabindex*="-"])) {
93
+ :where(
94
+ a[href],
95
+ area,
96
+ button,
97
+ input:not(
98
+ [type="text"],
99
+ [type="email"],
100
+ [type="number"],
101
+ [type="password"],
102
+ [type=""],
103
+ [type="tel"],
104
+ [type="url"]
105
+ ),
106
+ label[for],
107
+ select,
108
+ summary,
109
+ [tabindex]:not([tabindex*="-"], pre)
110
+ ) {
99
111
  cursor: pointer;
112
+ }
113
+
114
+ :where(
115
+ a[href],
116
+ area,
117
+ button,
118
+ input,
119
+ label[for],
120
+ select,
121
+ summary,
122
+ textarea,
123
+ [tabindex]:not([tabindex*="-"])
124
+ ) {
100
125
  touch-action: manipulation;
101
126
  -webkit-tap-highlight-color: transparent;
102
127
  }
@@ -108,19 +133,10 @@
108
133
  letter-spacing: inherit;
109
134
  }
110
135
 
111
- :where(label:not(class) + input, label:not(class) + select, label:not(class) + textarea) {
112
- display: block;
113
- }
114
-
115
- :where(p, summary) {
116
- max-inline-size: var(--measure-base);
117
- font-size: inherit;
118
- line-height: var(--line-height-base);
119
- margin: 0;
120
- }
121
-
122
136
  :where(p) {
137
+ text-wrap: balance;
123
138
  text-wrap: pretty;
139
+ max-inline-size: var(--measure-base);
124
140
  }
125
141
 
126
142
  :where(html):has(dialog:modal) {