semmet-angular 0.39.0 → 0.41.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 (46) hide show
  1. package/README.en.md +22 -0
  2. package/README.md +22 -0
  3. package/README.pt-BR.md +22 -0
  4. package/package.json +1 -1
  5. package/src/accordion/files/__name@dasherize__/__name@dasherize__.css.template +6 -3
  6. package/src/alert/files/__name@dasherize__/__name@dasherize__.css.template +6 -3
  7. package/src/alert-dialog/files/__name@dasherize__/__name@dasherize__.css.template +10 -5
  8. package/src/badge/files/__name@dasherize__/__name@dasherize__.css.template +8 -5
  9. package/src/breadcrumb/files/__name@dasherize__/__name@dasherize__.css.template +3 -2
  10. package/src/button/files/__name@dasherize__/__name@dasherize__.css.template +13 -7
  11. package/src/button-group/files/__name@dasherize__/__name@dasherize__.css.template +12 -6
  12. package/src/card/files/__name@dasherize__/__name@dasherize__.css.template +7 -4
  13. package/src/carousel/files/__name@dasherize__/__name@dasherize__.css.template +7 -4
  14. package/src/checkbox/files/__name@dasherize__/__name@dasherize__.css.template +4 -2
  15. package/src/close-button/files/__name@dasherize__/__name@dasherize__.css.template +9 -6
  16. package/src/combobox/files/__name@dasherize__/__name@dasherize__.css.template +11 -5
  17. package/src/dialog/files/__name@dasherize__/__name@dasherize__.css.template +9 -4
  18. package/src/disclosure/files/__name@dasherize__/__name@dasherize__.css.template +5 -3
  19. package/src/form/files/__name@dasherize__/__name@dasherize__.css.template +11 -7
  20. package/src/input/files/__name@dasherize__/__name@dasherize__.css.template +6 -3
  21. package/src/input-group/files/__name@dasherize__/__name@dasherize__.css.template +8 -5
  22. package/src/landmarks/files/__name@dasherize__/__name@dasherize__.css.template +4 -2
  23. package/src/list-group/files/__name@dasherize__/__name@dasherize__.css.template +12 -7
  24. package/src/listbox/files/__name@dasherize__/__name@dasherize__.css.template +7 -3
  25. package/src/menu-button/files/__name@dasherize__/__name@dasherize__.css.template +11 -5
  26. package/src/meter/files/__name@dasherize__/__name@dasherize__.css.template +2 -1
  27. package/src/navbar/files/__name@dasherize__/__name@dasherize__.css.template +18 -14
  28. package/src/navigation-menu/files/__name@dasherize__/__name@dasherize__.css.template +10 -5
  29. package/src/offcanvas/files/__name@dasherize__/__name@dasherize__.css.template +12 -8
  30. package/src/pagination/files/__name@dasherize__/__name@dasherize__.css.template +7 -4
  31. package/src/popover/files/__name@dasherize__/__name@dasherize__.css.template +17 -12
  32. package/src/progress-bar/files/__name@dasherize__/__name@dasherize__.css.template +7 -3
  33. package/src/radio-group/files/__name@dasherize__/__name@dasherize__.css.template +6 -2
  34. package/src/select/files/__name@dasherize__/__name@dasherize__.css.template +10 -5
  35. package/src/skeleton/files/__name@dasherize__/__name@dasherize__.css.template +2 -1
  36. package/src/slider/files/__name@dasherize__/__name@dasherize__.css.template +2 -1
  37. package/src/spinbutton/files/__name@dasherize__/__name@dasherize__.css.template +6 -4
  38. package/src/spinner/files/__name@dasherize__/__name@dasherize__.css.template +2 -1
  39. package/src/switch/files/__name@dasherize__/__name@dasherize__.css.template +4 -2
  40. package/src/table/files/__name@dasherize__/__name@dasherize__.css.template +4 -2
  41. package/src/tabs/files/__name@dasherize__/__name@dasherize__.css.template +11 -5
  42. package/src/textarea/files/__name@dasherize__/__name@dasherize__.css.template +5 -3
  43. package/src/toast/files/__name@dasherize__/__name@dasherize__.css.template +11 -5
  44. package/src/toolbar/files/__name@dasherize__/__name@dasherize__.css.template +8 -3
  45. package/src/tooltip/files/__name@dasherize__/__name@dasherize__.css.template +7 -3
  46. package/src/tree-view/files/__name@dasherize__/__name@dasherize__.css.template +7 -3
@@ -8,6 +8,10 @@
8
8
  --semmet-color-on-surface-variant: #52525b;
9
9
  --semmet-radius-sm: 8px;
10
10
  --semmet-radius-md: 12px;
11
+ --semmet-space-2xs: 8px;
12
+ --semmet-space-xs: 16px;
13
+ --semmet-space-sm: 24px;
14
+ --semmet-target-md: 40px;
11
15
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
12
16
 
13
17
  display: block;
@@ -18,8 +22,8 @@
18
22
 
19
23
  form {
20
24
  display: grid;
21
- gap: 1rem;
22
- padding: 1.5rem;
25
+ gap: var(--semmet-space-xs);
26
+ padding: var(--semmet-space-sm);
23
27
  color: var(--semmet-color-on-surface);
24
28
  background: var(--semmet-color-surface);
25
29
  border: 1px solid var(--semmet-color-outline);
@@ -34,7 +38,7 @@ h2 {
34
38
 
35
39
  .semmet-field {
36
40
  display: grid;
37
- gap: 0.5rem;
41
+ gap: var(--semmet-space-2xs);
38
42
  }
39
43
 
40
44
  label {
@@ -51,7 +55,7 @@ textarea {
51
55
  box-sizing: border-box;
52
56
  border: 1px solid var(--semmet-color-outline);
53
57
  border-radius: var(--semmet-radius-sm);
54
- padding: 0.5rem 1rem;
58
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
55
59
  font: inherit;
56
60
  color: var(--semmet-color-on-surface);
57
61
  background: var(--semmet-color-surface);
@@ -59,7 +63,7 @@ textarea {
59
63
  }
60
64
 
61
65
  input {
62
- min-height: 2.5rem;
66
+ min-height: var(--semmet-target-md);
63
67
  }
64
68
 
65
69
  textarea {
@@ -82,10 +86,10 @@ button:focus-visible {
82
86
 
83
87
  button {
84
88
  justify-self: start;
85
- min-height: 2.5rem;
89
+ min-height: var(--semmet-target-md);
86
90
  border: 0;
87
91
  border-radius: var(--semmet-radius-sm);
88
- padding: 0.5rem 1rem;
92
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
89
93
  font: inherit;
90
94
  font-weight: 600;
91
95
  color: var(--semmet-color-on-primary);
@@ -7,6 +7,9 @@
7
7
  --semmet-color-on-surface-variant: #52525b;
8
8
  --semmet-color-disabled: #f4f4f5;
9
9
  --semmet-radius-sm: 8px;
10
+ --semmet-space-2xs: 8px;
11
+ --semmet-space-xs: 16px;
12
+ --semmet-target-md: 40px;
10
13
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
11
14
 
12
15
  display: block;
@@ -16,7 +19,7 @@
16
19
 
17
20
  .semmet-field {
18
21
  display: grid;
19
- gap: 0.5rem;
22
+ gap: var(--semmet-space-2xs);
20
23
  }
21
24
 
22
25
  label {
@@ -30,11 +33,11 @@ label span {
30
33
 
31
34
  input {
32
35
  width: 100%;
33
- min-height: 2.5rem;
36
+ min-height: var(--semmet-target-md);
34
37
  box-sizing: border-box;
35
38
  border: 1px solid var(--semmet-color-outline);
36
39
  border-radius: var(--semmet-radius-sm);
37
- padding: 0.5rem 1rem;
40
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
38
41
  font: inherit;
39
42
  color: var(--semmet-color-on-surface);
40
43
  background: var(--semmet-color-surface);
@@ -8,6 +8,9 @@
8
8
  --semmet-color-on-surface-variant: #71717a;
9
9
  --semmet-color-danger: #b42318;
10
10
  --semmet-radius-sm: 8px;
11
+ --semmet-space-2xs: 8px;
12
+ --semmet-space-xs: 16px;
13
+ --semmet-target-lg: 48px;
11
14
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
12
15
 
13
16
  display: block;
@@ -17,7 +20,7 @@
17
20
 
18
21
  .semmet-input-group__label {
19
22
  display: inline-block;
20
- margin-block-end: 0.5rem;
23
+ margin-block-end: var(--semmet-space-2xs);
21
24
  color: var(--semmet-color-on-surface);
22
25
  font-weight: 650;
23
26
  }
@@ -30,7 +33,7 @@
30
33
  display: flex;
31
34
  align-items: stretch;
32
35
  width: 100%;
33
- min-height: 2.75rem;
36
+ min-height: var(--semmet-target-lg);
34
37
  border: 1px solid var(--semmet-color-outline);
35
38
  border-radius: var(--semmet-radius-sm);
36
39
  overflow: hidden;
@@ -60,7 +63,7 @@
60
63
  display: inline-flex;
61
64
  align-items: center;
62
65
  justify-content: center;
63
- padding: 0 1rem;
66
+ padding: 0 var(--semmet-space-xs);
64
67
  white-space: nowrap;
65
68
  }
66
69
 
@@ -82,7 +85,7 @@
82
85
  color: inherit;
83
86
  background: transparent;
84
87
  font: inherit;
85
- padding: 0.5rem 1rem;
88
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
86
89
  }
87
90
 
88
91
  .semmet-input-group__control:focus {
@@ -105,7 +108,7 @@
105
108
 
106
109
  .semmet-input-group__hint,
107
110
  .semmet-input-group__error {
108
- margin: 0.5rem 0 0;
111
+ margin: var(--semmet-space-2xs) 0 0;
109
112
  font-size: 0.875rem;
110
113
  line-height: 1.4;
111
114
  }
@@ -2,10 +2,12 @@
2
2
  --semmet-color-outline: #d4d4d8;
3
3
  --semmet-color-on-surface: #18181b;
4
4
  --semmet-color-on-surface-variant: #52525b;
5
+ --semmet-space-xs: 16px;
6
+ --semmet-space-sm: 24px;
5
7
 
6
8
  display: grid;
7
9
  grid-template-columns: 1fr;
8
- gap: 1.5rem;
10
+ gap: var(--semmet-space-sm);
9
11
  font-family: Roboto, system-ui, -apple-system, 'Segoe UI', sans-serif;
10
12
  color: var(--semmet-color-on-surface);
11
13
  }
@@ -13,7 +15,7 @@
13
15
  header,
14
16
  nav,
15
17
  footer {
16
- padding: 1rem 0;
18
+ padding: var(--semmet-space-xs) 0;
17
19
  }
18
20
 
19
21
  header {
@@ -7,6 +7,11 @@
7
7
  --semmet-color-on-surface: #27272a;
8
8
  --semmet-color-on-surface-variant: #71717a;
9
9
  --semmet-radius-md: 10px;
10
+ --semmet-space-3xs: 4px;
11
+ --semmet-space-2xs: 8px;
12
+ --semmet-space-xs: 16px;
13
+ --semmet-space-xl: 64px;
14
+ --semmet-target-sm: 32px;
10
15
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
11
16
 
12
17
  display: block;
@@ -37,10 +42,10 @@
37
42
  display: flex;
38
43
  align-items: center;
39
44
  justify-content: space-between;
40
- gap: 1rem;
45
+ gap: var(--semmet-space-xs);
41
46
  width: 100%;
42
- min-height: 4rem;
43
- padding: 1rem 1rem;
47
+ min-height: var(--semmet-space-xl);
48
+ padding: var(--semmet-space-xs);
44
49
  border: 0;
45
50
  color: var(--semmet-color-on-surface);
46
51
  background: var(--semmet-color-surface);
@@ -79,7 +84,7 @@
79
84
  .semmet-list-group__content {
80
85
  display: grid;
81
86
  min-width: 0;
82
- gap: 0.25rem;
87
+ gap: var(--semmet-space-3xs);
83
88
  }
84
89
 
85
90
  .semmet-list-group__title {
@@ -101,9 +106,9 @@
101
106
  display: inline-flex;
102
107
  align-items: center;
103
108
  justify-content: center;
104
- min-width: 1.5rem;
105
- min-height: 1.5rem;
106
- padding: 0.25rem 0.5rem;
109
+ min-width: var(--semmet-target-sm);
110
+ min-height: var(--semmet-target-sm);
111
+ padding: var(--semmet-space-3xs) var(--semmet-space-2xs);
107
112
  border-radius: 999px;
108
113
  color: var(--semmet-color-on-primary);
109
114
  background: var(--semmet-color-primary);
@@ -4,6 +4,9 @@
4
4
  --semmet-color-outline: #d4d4d8;
5
5
  --semmet-color-on-surface: #18181b;
6
6
  --semmet-radius-sm: 8px;
7
+ --semmet-space-2xs: 8px;
8
+ --semmet-space-xs: 16px;
9
+ --semmet-target-md: 40px;
7
10
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
8
11
 
9
12
  display: block;
@@ -13,14 +16,14 @@
13
16
 
14
17
  span {
15
18
  display: block;
16
- margin-bottom: 0.5rem;
19
+ margin-bottom: var(--semmet-space-2xs);
17
20
  font-weight: 500;
18
21
  color: var(--semmet-color-on-surface);
19
22
  }
20
23
 
21
24
  ul {
22
25
  margin: 0;
23
- padding: 0.5rem;
26
+ padding: var(--semmet-space-2xs);
24
27
  list-style: none;
25
28
  border: 1px solid var(--semmet-color-outline);
26
29
  border-radius: var(--semmet-radius-sm);
@@ -34,7 +37,8 @@ ul:focus-visible {
34
37
  }
35
38
 
36
39
  [role='option'] {
37
- padding: 0.5rem 1rem;
40
+ min-height: var(--semmet-target-md);
41
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
38
42
  border-radius: 6px;
39
43
  color: var(--semmet-color-on-surface);
40
44
  cursor: pointer;
@@ -6,6 +6,10 @@
6
6
  --semmet-color-on-surface-variant: #52525b;
7
7
  --semmet-radius-sm: 8px;
8
8
  --semmet-radius-md: 12px;
9
+ --semmet-space-3xs: 4px;
10
+ --semmet-space-2xs: 8px;
11
+ --semmet-space-xs: 16px;
12
+ --semmet-target-md: 40px;
9
13
  --semmet-elevation-3: 0 8px 24px rgba(20, 24, 23, 0.18), 0 2px 8px rgba(20, 24, 23, 0.1);
10
14
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
11
15
 
@@ -18,14 +22,15 @@
18
22
  button {
19
23
  display: flex;
20
24
  align-items: center;
21
- gap: 0.5rem;
25
+ gap: var(--semmet-space-2xs);
26
+ min-height: var(--semmet-target-md);
22
27
  font: inherit;
23
28
  font-weight: 500;
24
29
  color: var(--semmet-color-on-surface);
25
30
  background: var(--semmet-color-surface);
26
31
  border: 1px solid var(--semmet-color-outline);
27
32
  border-radius: var(--semmet-radius-sm);
28
- padding: 0.5rem 1rem;
33
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
29
34
  cursor: pointer;
30
35
  transition: background-color var(--semmet-motion);
31
36
  }
@@ -56,11 +61,11 @@ button[aria-expanded='true']::after {
56
61
  ul {
57
62
  position: absolute;
58
63
  z-index: 1;
59
- top: calc(100% + 0.25rem);
64
+ top: calc(100% + var(--semmet-space-3xs));
60
65
  left: 0;
61
66
  min-width: 10rem;
62
67
  margin: 0;
63
- padding: 0.5rem;
68
+ padding: var(--semmet-space-2xs);
64
69
  list-style: none;
65
70
  background: var(--semmet-color-surface);
66
71
  border-radius: var(--semmet-radius-md);
@@ -68,7 +73,8 @@ ul {
68
73
  }
69
74
 
70
75
  [role='menuitem'] {
71
- padding: 0.5rem 1rem;
76
+ min-height: var(--semmet-target-md);
77
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
72
78
  border-radius: 6px;
73
79
  color: var(--semmet-color-on-surface);
74
80
  cursor: pointer;
@@ -1,6 +1,7 @@
1
1
  :host {
2
2
  --semmet-color-primary: #18181b;
3
3
  --semmet-color-on-surface: #18181b;
4
+ --semmet-space-2xs: 8px;
4
5
 
5
6
  display: block;
6
7
  font-family: Roboto, system-ui, -apple-system, 'Segoe UI', sans-serif;
@@ -9,7 +10,7 @@
9
10
 
10
11
  label {
11
12
  display: block;
12
- margin-bottom: 0.5rem;
13
+ margin-bottom: var(--semmet-space-2xs);
13
14
  font-weight: 500;
14
15
  color: var(--semmet-color-on-surface);
15
16
  }
@@ -6,6 +6,10 @@
6
6
  --semmet-color-on-surface: #27272a;
7
7
  --semmet-color-on-surface-variant: #71717a;
8
8
  --semmet-radius-md: 10px;
9
+ --semmet-space-3xs: 4px;
10
+ --semmet-space-2xs: 8px;
11
+ --semmet-space-xs: 16px;
12
+ --semmet-target-md: 40px;
9
13
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
10
14
 
11
15
  display: block;
@@ -16,8 +20,8 @@
16
20
  display: grid;
17
21
  grid-template-columns: 1fr auto;
18
22
  align-items: center;
19
- gap: 1rem;
20
- padding: 1rem;
23
+ gap: var(--semmet-space-xs);
24
+ padding: var(--semmet-space-2xs);
21
25
  border: 1px solid var(--semmet-color-outline);
22
26
  border-radius: var(--semmet-radius-md);
23
27
  color: var(--semmet-color-on-surface);
@@ -27,7 +31,7 @@
27
31
  .semmet-navbar__brand {
28
32
  display: inline-flex;
29
33
  align-items: center;
30
- min-height: 2.5rem;
34
+ min-height: var(--semmet-target-md);
31
35
  color: inherit;
32
36
  font-size: 1.0625rem;
33
37
  font-weight: 800;
@@ -39,8 +43,8 @@
39
43
  display: inline-flex;
40
44
  align-items: center;
41
45
  justify-content: center;
42
- width: 2.5rem;
43
- height: 2.5rem;
46
+ width: var(--semmet-target-md);
47
+ height: var(--semmet-target-md);
44
48
  border: 1px solid var(--semmet-color-outline);
45
49
  border-radius: var(--semmet-radius-md);
46
50
  color: inherit;
@@ -88,24 +92,24 @@
88
92
 
89
93
  .semmet-navbar__list {
90
94
  display: grid;
91
- gap: 0.25rem;
95
+ gap: var(--semmet-space-3xs);
92
96
  margin: 0;
93
- padding: 0.5rem 0 0;
97
+ padding: var(--semmet-space-2xs) 0 0;
94
98
  list-style: none;
95
99
  }
96
100
 
97
101
  .semmet-navbar__actions {
98
102
  display: flex;
99
103
  flex-wrap: wrap;
100
- gap: 0.5rem;
101
- padding-top: 1rem;
104
+ gap: var(--semmet-space-2xs);
105
+ padding-top: var(--semmet-space-xs);
102
106
  }
103
107
 
104
108
  .semmet-navbar__link {
105
109
  display: flex;
106
110
  align-items: center;
107
- min-height: 2.5rem;
108
- padding: 0.5rem 1rem;
111
+ min-height: var(--semmet-target-md);
112
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
109
113
  border-radius: var(--semmet-radius-md);
110
114
  color: var(--semmet-color-on-surface-variant);
111
115
  font-weight: 650;
@@ -142,7 +146,7 @@
142
146
  @media (min-width: 48rem) {
143
147
  .semmet-navbar {
144
148
  grid-template-columns: auto 1fr;
145
- padding-inline: 1rem;
149
+ padding-inline: var(--semmet-space-2xs);
146
150
  }
147
151
 
148
152
  .semmet-navbar__toggle {
@@ -153,7 +157,7 @@
153
157
  display: flex;
154
158
  align-items: center;
155
159
  justify-content: flex-end;
156
- gap: 1rem;
160
+ gap: var(--semmet-space-xs);
157
161
  grid-column: auto;
158
162
  }
159
163
 
@@ -161,7 +165,7 @@
161
165
  display: flex;
162
166
  align-items: center;
163
167
  justify-content: flex-end;
164
- gap: 0.25rem;
168
+ gap: var(--semmet-space-3xs);
165
169
  padding: 0;
166
170
  }
167
171
 
@@ -4,6 +4,10 @@
4
4
  --semmet-color-on-surface: #18181b;
5
5
  --semmet-radius-sm: 8px;
6
6
  --semmet-radius-md: 12px;
7
+ --semmet-space-3xs: 4px;
8
+ --semmet-space-2xs: 8px;
9
+ --semmet-space-xs: 16px;
10
+ --semmet-target-md: 40px;
7
11
  --semmet-elevation-3: 0 8px 24px rgba(20, 24, 23, 0.18), 0 2px 8px rgba(20, 24, 23, 0.1);
8
12
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
9
13
 
@@ -15,7 +19,7 @@
15
19
  nav > ul {
16
20
  display: flex;
17
21
  align-items: center;
18
- gap: 0.25rem;
22
+ gap: var(--semmet-space-3xs);
19
23
  margin: 0;
20
24
  padding: 0;
21
25
  list-style: none;
@@ -29,14 +33,15 @@ a,
29
33
  button {
30
34
  display: inline-flex;
31
35
  align-items: center;
32
- gap: 0.5rem;
36
+ gap: var(--semmet-space-2xs);
37
+ min-height: var(--semmet-target-md);
33
38
  font: inherit;
34
39
  font-weight: 500;
35
40
  color: var(--semmet-color-on-surface);
36
41
  background: none;
37
42
  border: none;
38
43
  border-radius: var(--semmet-radius-sm);
39
- padding: 0.5rem 1rem;
44
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
40
45
  cursor: pointer;
41
46
  text-decoration: none;
42
47
  transition: background-color var(--semmet-motion);
@@ -73,8 +78,8 @@ nav > ul ul {
73
78
  top: 100%;
74
79
  left: 0;
75
80
  min-width: 12rem;
76
- margin: 0.25rem 0 0;
77
- padding: 0.5rem;
81
+ margin: var(--semmet-space-3xs) 0 0;
82
+ padding: var(--semmet-space-2xs);
78
83
  list-style: none;
79
84
  background: var(--semmet-color-surface);
80
85
  border-radius: var(--semmet-radius-md);
@@ -7,6 +7,10 @@
7
7
  --semmet-color-on-surface: #27272a;
8
8
  --semmet-color-on-surface-variant: #71717a;
9
9
  --semmet-radius-md: 10px;
10
+ --semmet-space-2xs: 8px;
11
+ --semmet-space-xs: 16px;
12
+ --semmet-space-sm: 24px;
13
+ --semmet-target-md: 40px;
10
14
  --semmet-elevation-3: 0 20px 48px rgba(20, 24, 23, 0.22), 0 8px 20px rgba(20, 24, 23, 0.14);
11
15
  --semmet-motion: 220ms cubic-bezier(0.2, 0, 0, 1);
12
16
 
@@ -15,8 +19,8 @@
15
19
  }
16
20
 
17
21
  .semmet-offcanvas__trigger {
18
- min-height: 2.5rem;
19
- padding: 0.5rem 1rem;
22
+ min-height: var(--semmet-target-md);
23
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
20
24
  border: 1px solid transparent;
21
25
  border-radius: var(--semmet-radius-md);
22
26
  color: var(--semmet-color-on-primary);
@@ -84,8 +88,8 @@
84
88
  display: flex;
85
89
  align-items: start;
86
90
  justify-content: space-between;
87
- gap: 1rem;
88
- padding: 1.5rem;
91
+ gap: var(--semmet-space-xs);
92
+ padding: var(--semmet-space-sm);
89
93
  border-block-end: 1px solid var(--semmet-color-outline);
90
94
  }
91
95
 
@@ -101,7 +105,7 @@
101
105
  }
102
106
 
103
107
  .semmet-offcanvas__description {
104
- margin-block-start: 0.5rem;
108
+ margin-block-start: var(--semmet-space-2xs);
105
109
  color: var(--semmet-color-on-surface-variant);
106
110
  line-height: 1.4;
107
111
  }
@@ -112,8 +116,8 @@
112
116
  align-items: center;
113
117
  justify-content: center;
114
118
  flex: 0 0 auto;
115
- width: 2.5rem;
116
- height: 2.5rem;
119
+ width: var(--semmet-target-md);
120
+ height: var(--semmet-target-md);
117
121
  border: 0;
118
122
  border-radius: 999px;
119
123
  color: inherit;
@@ -158,7 +162,7 @@
158
162
  .semmet-offcanvas__body {
159
163
  min-height: 0;
160
164
  overflow: auto;
161
- padding: 1.5rem;
165
+ padding: var(--semmet-space-sm);
162
166
  }
163
167
 
164
168
  .semmet-offcanvas__placeholder {
@@ -4,6 +4,9 @@
4
4
  --semmet-color-on-surface: #18181b;
5
5
  --semmet-color-on-surface-variant: #52525b;
6
6
  --semmet-radius-sm: 8px;
7
+ --semmet-space-3xs: 4px;
8
+ --semmet-space-2xs: 8px;
9
+ --semmet-target-md: 40px;
7
10
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
8
11
 
9
12
  display: block;
@@ -14,7 +17,7 @@
14
17
  ul {
15
18
  display: flex;
16
19
  align-items: center;
17
- gap: 0.25rem;
20
+ gap: var(--semmet-space-3xs);
18
21
  margin: 0;
19
22
  padding: 0;
20
23
  list-style: none;
@@ -25,9 +28,9 @@ button {
25
28
  display: inline-flex;
26
29
  align-items: center;
27
30
  justify-content: center;
28
- min-width: 2.25rem;
29
- height: 2.25rem;
30
- padding: 0 0.5rem;
31
+ min-width: var(--semmet-target-md);
32
+ min-height: var(--semmet-target-md);
33
+ padding: 0 var(--semmet-space-2xs);
31
34
  font: inherit;
32
35
  font-weight: 500;
33
36
  color: var(--semmet-color-on-surface);
@@ -7,6 +7,11 @@
7
7
  --semmet-color-on-surface: #27272a;
8
8
  --semmet-color-on-surface-variant: #71717a;
9
9
  --semmet-radius-md: 10px;
10
+ --semmet-space-2xs: 8px;
11
+ --semmet-space-xs: 16px;
12
+ --semmet-space-md: 32px;
13
+ --semmet-target-sm: 32px;
14
+ --semmet-target-md: 40px;
10
15
  --semmet-elevation-2: 0 12px 28px rgba(20, 24, 23, 0.16), 0 4px 12px rgba(20, 24, 23, 0.1);
11
16
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
12
17
 
@@ -16,8 +21,8 @@
16
21
  }
17
22
 
18
23
  .semmet-popover__trigger {
19
- min-height: 2.5rem;
20
- padding: 0.5rem 1rem;
24
+ min-height: var(--semmet-target-md);
25
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
21
26
  border: 1px solid var(--semmet-color-outline);
22
27
  border-radius: var(--semmet-radius-md);
23
28
  color: var(--semmet-color-on-surface);
@@ -37,8 +42,8 @@
37
42
  .semmet-popover__panel {
38
43
  position: absolute;
39
44
  z-index: 20;
40
- width: min(20rem, calc(100vw - 2rem));
41
- padding: 1rem;
45
+ width: min(20rem, calc(100vw - var(--semmet-space-md)));
46
+ padding: var(--semmet-space-xs);
42
47
  border: 1px solid var(--semmet-color-outline);
43
48
  border-radius: var(--semmet-radius-md);
44
49
  color: var(--semmet-color-on-surface);
@@ -49,25 +54,25 @@
49
54
 
50
55
  .semmet-popover__panel--top {
51
56
  left: 50%;
52
- bottom: calc(100% + 0.5rem);
57
+ bottom: calc(100% + var(--semmet-space-2xs));
53
58
  transform: translateX(-50%);
54
59
  }
55
60
 
56
61
  .semmet-popover__panel--right {
57
62
  top: 50%;
58
- left: calc(100% + 0.5rem);
63
+ left: calc(100% + var(--semmet-space-2xs));
59
64
  transform: translateY(-50%);
60
65
  }
61
66
 
62
67
  .semmet-popover__panel--bottom {
63
- top: calc(100% + 0.5rem);
68
+ top: calc(100% + var(--semmet-space-2xs));
64
69
  left: 50%;
65
70
  transform: translateX(-50%);
66
71
  }
67
72
 
68
73
  .semmet-popover__panel--left {
69
74
  top: 50%;
70
- right: calc(100% + 0.5rem);
75
+ right: calc(100% + var(--semmet-space-2xs));
71
76
  transform: translateY(-50%);
72
77
  }
73
78
 
@@ -75,7 +80,7 @@
75
80
  display: flex;
76
81
  align-items: start;
77
82
  justify-content: space-between;
78
- gap: 1rem;
83
+ gap: var(--semmet-space-xs);
79
84
  }
80
85
 
81
86
  .semmet-popover__title,
@@ -89,7 +94,7 @@
89
94
  }
90
95
 
91
96
  .semmet-popover__body {
92
- margin-block-start: 0.5rem;
97
+ margin-block-start: var(--semmet-space-2xs);
93
98
  color: var(--semmet-color-on-surface-variant);
94
99
  line-height: 1.5;
95
100
  }
@@ -100,8 +105,8 @@
100
105
  align-items: center;
101
106
  justify-content: center;
102
107
  flex: 0 0 auto;
103
- width: 2rem;
104
- height: 2rem;
108
+ width: var(--semmet-target-sm);
109
+ height: var(--semmet-target-sm);
105
110
  border: 0;
106
111
  border-radius: 999px;
107
112
  color: inherit;
@@ -3,6 +3,9 @@
3
3
  --semmet-color-on-surface: #18181b;
4
4
  --semmet-color-on-surface-variant: #52525b;
5
5
  --semmet-radius-sm: 8px;
6
+ --semmet-space-2xs: 8px;
7
+ --semmet-space-xs: 16px;
8
+ --semmet-target-md: 40px;
6
9
  --semmet-motion: 160ms cubic-bezier(0.2, 0, 0, 1);
7
10
 
8
11
  display: block;
@@ -12,7 +15,7 @@
12
15
 
13
16
  label {
14
17
  display: block;
15
- margin-bottom: 0.5rem;
18
+ margin-bottom: var(--semmet-space-2xs);
16
19
  font-weight: 500;
17
20
  color: var(--semmet-color-on-surface);
18
21
  }
@@ -22,7 +25,7 @@ progress {
22
25
  width: 100%;
23
26
  max-width: 20rem;
24
27
  height: 0.5rem;
25
- margin-bottom: 1rem;
28
+ margin-bottom: var(--semmet-space-xs);
26
29
  accent-color: var(--semmet-color-primary);
27
30
  }
28
31
 
@@ -33,7 +36,8 @@ button {
33
36
  background: none;
34
37
  border: 1px solid currentColor;
35
38
  border-radius: var(--semmet-radius-sm);
36
- padding: 0.5rem 1rem;
39
+ min-height: var(--semmet-target-md);
40
+ padding: var(--semmet-space-2xs) var(--semmet-space-xs);
37
41
  cursor: pointer;
38
42
  transition: background-color var(--semmet-motion);
39
43
  }