@agorapulse/ui-theme 20.1.19 → 20.1.21

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 (72) hide show
  1. package/agorapulse-ui-theme-20.1.21.tgz +0 -0
  2. package/assets/desktop_variables.css +10 -0
  3. package/assets/mobile_variables.css +10 -0
  4. package/assets/style/_tooltip.scss +6 -1
  5. package/assets/style/css-ui/_accordion.scss +54 -0
  6. package/assets/style/css-ui/_action-dropdown.scss +163 -0
  7. package/assets/style/css-ui/_avatar-group.scss +61 -0
  8. package/assets/style/css-ui/_avatar.scss +183 -0
  9. package/assets/style/css-ui/{badge.css → _badge.scss} +10 -12
  10. package/assets/style/css-ui/_button.scss +258 -0
  11. package/assets/style/css-ui/_card.scss +17 -0
  12. package/assets/style/css-ui/_checkbox.scss +164 -0
  13. package/assets/style/css-ui/_counter.scss +76 -0
  14. package/assets/style/css-ui/_datepicker.scss +307 -0
  15. package/assets/style/css-ui/_dialog.scss +74 -0
  16. package/assets/style/css-ui/_dot-stepper.scss +68 -0
  17. package/assets/style/{_helpers.scss → css-ui/_helpers.scss} +14 -13
  18. package/assets/style/css-ui/_icon-button.scss +162 -0
  19. package/assets/style/css-ui/_infobox.scss +154 -0
  20. package/assets/style/css-ui/_input.scss +129 -0
  21. package/assets/style/css-ui/_label.scss +95 -0
  22. package/assets/style/css-ui/_link.scss +86 -0
  23. package/assets/style/css-ui/_list-panel.scss +73 -0
  24. package/assets/style/css-ui/_loader.scss +173 -0
  25. package/assets/style/css-ui/_mixins.scss +50 -0
  26. package/assets/style/css-ui/_pagination.scss +177 -0
  27. package/assets/style/css-ui/_radio-card.scss +200 -0
  28. package/assets/style/css-ui/_radio.scss +107 -0
  29. package/assets/style/css-ui/{select.css → _select.scss} +290 -298
  30. package/assets/style/css-ui/_selection-dropdown.scss +183 -0
  31. package/assets/style/css-ui/_snackbar.scss +161 -0
  32. package/assets/style/css-ui/_split-button.scss +74 -0
  33. package/assets/style/css-ui/_status.scss +71 -0
  34. package/assets/style/css-ui/_stepper.scss +113 -0
  35. package/assets/style/css-ui/_table.scss +325 -0
  36. package/assets/style/css-ui/_tabs.scss +182 -0
  37. package/assets/style/css-ui/_tag.scss +169 -0
  38. package/assets/style/css-ui/_textarea.scss +121 -0
  39. package/assets/style/css-ui/_toggle.scss +132 -0
  40. package/assets/style/css-ui/_tooltip.scss +122 -0
  41. package/assets/style/{_mat-typography.scss → css-ui/_typography.scss} +34 -26
  42. package/assets/style/css-ui/font-face.css +43 -0
  43. package/assets/style/css-ui/index.css +4907 -27
  44. package/assets/style/css-ui/index.css.map +1 -0
  45. package/assets/style/css-ui/index.scss +39 -0
  46. package/assets/style/theme.scss +9 -2
  47. package/package.json +17 -2
  48. package/src/tokens/system/icon.json +33 -0
  49. package/agorapulse-ui-theme-20.1.19.tgz +0 -0
  50. package/assets/style/css-ui/action-dropdown.css +0 -172
  51. package/assets/style/css-ui/avatar.css +0 -199
  52. package/assets/style/css-ui/button.css +0 -446
  53. package/assets/style/css-ui/checkbox.css +0 -170
  54. package/assets/style/css-ui/counter.css +0 -73
  55. package/assets/style/css-ui/datepicker.css +0 -294
  56. package/assets/style/css-ui/dot-stepper.css +0 -67
  57. package/assets/style/css-ui/infobox.css +0 -163
  58. package/assets/style/css-ui/input.css +0 -119
  59. package/assets/style/css-ui/label.css +0 -67
  60. package/assets/style/css-ui/link.css +0 -92
  61. package/assets/style/css-ui/loader.css +0 -247
  62. package/assets/style/css-ui/pagination.css +0 -161
  63. package/assets/style/css-ui/radio.css +0 -109
  64. package/assets/style/css-ui/snackbar.css +0 -166
  65. package/assets/style/css-ui/status.css +0 -87
  66. package/assets/style/css-ui/stepper.css +0 -123
  67. package/assets/style/css-ui/table.css +0 -305
  68. package/assets/style/css-ui/tabs.css +0 -188
  69. package/assets/style/css-ui/tag.css +0 -171
  70. package/assets/style/css-ui/textarea.css +0 -158
  71. package/assets/style/css-ui/toggle.css +0 -161
  72. package/assets/style/css-ui/tooltip.css +0 -228
@@ -0,0 +1,183 @@
1
+ // Agorapulse Selection Dropdown Styles
2
+ @use 'mixins' as m;
3
+
4
+ .ap-selection-dropdown {
5
+ display: flex;
6
+ flex-direction: column;
7
+ width: 370px;
8
+ max-height: 400px;
9
+ background: var(--ref-color-white);
10
+ border-radius: var(--sys-border-radius-sm);
11
+ box-shadow: var(--comp-action-dropdown-box-shadow);
12
+ box-sizing: border-box;
13
+ overflow: hidden;
14
+ }
15
+
16
+ // Header with title + optional action button
17
+ .ap-selection-dropdown-header {
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: space-between;
21
+ padding: var(--ref-spacing-xs) var(--ref-spacing-sm);
22
+ flex-shrink: 0;
23
+
24
+ > span {
25
+ font-family: var(--ref-font-family);
26
+ font-size: var(--ref-font-size-md);
27
+ font-weight: var(--ref-font-weight-bold);
28
+ line-height: var(--sys-text-style-h3-line-height);
29
+ color: var(--ref-color-grey-100);
30
+ }
31
+ }
32
+
33
+ // Search bar
34
+ .ap-selection-dropdown-search {
35
+ display: flex;
36
+ align-items: center;
37
+ gap: var(--ref-spacing-xxs);
38
+ padding: var(--ref-spacing-xxs) var(--ref-spacing-sm);
39
+ border-bottom: 1px solid var(--ref-color-grey-10);
40
+
41
+ > i {
42
+ @include m.fixed-size(16px);
43
+ color: var(--ref-color-grey-40);
44
+ flex-shrink: 0;
45
+ }
46
+
47
+ > input {
48
+ flex: 1;
49
+ border: none;
50
+ outline: none;
51
+ font-family: var(--ref-font-family);
52
+ font-size: var(--sys-text-style-body-size);
53
+ line-height: var(--sys-text-style-body-line-height);
54
+ color: var(--ref-color-grey-100);
55
+ background: transparent;
56
+
57
+ &::placeholder {
58
+ color: var(--ref-color-grey-40);
59
+ }
60
+ }
61
+ }
62
+
63
+ // Scrollable items container
64
+ .ap-selection-dropdown-items {
65
+ flex: 1;
66
+ overflow-y: auto;
67
+ padding: var(--ref-spacing-xxs) 0;
68
+ min-height: 0;
69
+ }
70
+
71
+ // Selected items section (pinned at top)
72
+ .ap-selection-dropdown-selected {
73
+ margin-bottom: var(--ref-spacing-xxs);
74
+ border-bottom: 1px solid var(--ref-color-grey-10);
75
+ padding-bottom: var(--ref-spacing-xxs);
76
+
77
+ .ap-selection-dropdown-item > span {
78
+ font-weight: var(--ref-font-weight-bold);
79
+ }
80
+ }
81
+
82
+ // Individual item (button)
83
+ .ap-selection-dropdown-item {
84
+ display: flex;
85
+ align-items: center;
86
+ gap: var(--ref-spacing-xxs);
87
+ width: 100%;
88
+ padding: var(--ref-spacing-xxs) var(--ref-spacing-sm);
89
+ min-height: 40px;
90
+ border: none;
91
+ background: transparent;
92
+ cursor: pointer;
93
+ font-family: var(--ref-font-family);
94
+ font-size: var(--sys-text-style-body-size);
95
+ line-height: var(--sys-text-style-body-line-height);
96
+ color: var(--ref-color-grey-100);
97
+ text-align: left;
98
+ box-sizing: border-box;
99
+ transition: background-color 0.1s;
100
+
101
+ &:hover:not(:disabled):not(.locked) {
102
+ background: var(--ref-color-electric-blue-10);
103
+ }
104
+
105
+ &:active:not(:disabled):not(.locked) {
106
+ background: var(--ref-color-electric-blue-20);
107
+ }
108
+
109
+ &:focus-visible {
110
+ @include m.focus-ring;
111
+ outline-offset: -2px;
112
+ }
113
+
114
+ &:disabled {
115
+ pointer-events: none;
116
+ color: var(--ref-color-grey-40);
117
+ }
118
+
119
+ // Locked item
120
+ &.locked {
121
+ cursor: default;
122
+ color: var(--ref-color-grey-60);
123
+
124
+ > i.ap-icon-feature-lock {
125
+ margin-left: auto;
126
+ color: var(--ref-color-purple-100);
127
+ @include m.fixed-size(16px);
128
+ }
129
+ }
130
+
131
+ // Icon sizing
132
+ > i:not(.ap-icon-feature-lock) {
133
+ @include m.fixed-size(16px);
134
+ flex-shrink: 0;
135
+ }
136
+
137
+ // Text span
138
+ > span:not(.ap-badge) {
139
+ flex: 0 1 auto;
140
+ min-width: 0;
141
+ @include m.truncate;
142
+ }
143
+
144
+ // Badge
145
+ > .ap-badge {
146
+ flex: 0 0 auto;
147
+ }
148
+ }
149
+
150
+ // Group header
151
+ .ap-selection-dropdown-group {
152
+ display: flex;
153
+ align-items: center;
154
+ gap: var(--ref-spacing-xs);
155
+ padding: var(--ref-spacing-xxs) var(--ref-spacing-sm);
156
+ border-top: 1px solid var(--ref-color-grey-10);
157
+ background: var(--ref-color-grey-bg);
158
+ font-family: var(--ref-font-family);
159
+ font-size: var(--sys-text-style-body-size);
160
+ font-weight: var(--ref-font-weight-bold);
161
+ color: var(--ref-color-grey-100);
162
+ }
163
+
164
+ // Empty state
165
+ .ap-selection-dropdown-empty {
166
+ padding: var(--ref-spacing-xxs) var(--ref-spacing-sm);
167
+ font-family: var(--ref-font-family);
168
+ font-size: var(--ref-font-size-sm);
169
+ line-height: var(--sys-text-style-body-line-height);
170
+ color: var(--ref-color-grey-80);
171
+ font-style: italic;
172
+ }
173
+
174
+ // Footer with action buttons
175
+ .ap-selection-dropdown-footer {
176
+ display: flex;
177
+ align-items: center;
178
+ justify-content: flex-start;
179
+ height: 40px;
180
+ padding: var(--ref-spacing-xs) var(--ref-spacing-sm);
181
+ border-top: 1px solid var(--ref-color-grey-10);
182
+ flex-shrink: 0;
183
+ }
@@ -0,0 +1,161 @@
1
+ // Agorapulse Snackbar Styles
2
+ @use 'ui-symbol/icons/build/ap-icons-data' as icons;
3
+
4
+ @keyframes ap-snackbar-slide-in {
5
+ from {
6
+ transform: translateX(100%);
7
+ opacity: 0;
8
+ }
9
+ to {
10
+ transform: translateX(0);
11
+ opacity: 1;
12
+ }
13
+ }
14
+
15
+ @keyframes ap-snackbar-slide-out {
16
+ from {
17
+ transform: translateX(0);
18
+ opacity: 1;
19
+ }
20
+ to {
21
+ transform: translateX(100%);
22
+ opacity: 0;
23
+ }
24
+ }
25
+
26
+ // Snackbar thread container
27
+ .ap-snackbar-thread {
28
+ position: fixed;
29
+ top: 68px;
30
+ right: var(--ref-spacing-lg);
31
+ width: var(--comp-snackbar-width);
32
+ z-index: 999999999;
33
+ gap: var(--comp-snackbar-spacing);
34
+ display: flex;
35
+ flex-direction: column;
36
+ }
37
+
38
+ // Individual snackbar
39
+ .ap-snackbar {
40
+ display: flex;
41
+ align-items: center;
42
+ height: auto;
43
+ padding: var(--comp-snackbar-padding-vertical) var(--comp-snackbar-padding-horizontal);
44
+ box-sizing: border-box;
45
+ box-shadow: var(--comp-snackbar-shadow);
46
+ border-radius: var(--comp-snackbar-border-radius);
47
+ flex-direction: row;
48
+ justify-content: space-between;
49
+ gap: var(--comp-snackbar-spacing);
50
+
51
+ &.success {
52
+ background-color: var(--comp-snackbar-success-background-color);
53
+
54
+ .ap-snackbar-left > i {
55
+ color: var(--comp-snackbar-success-icon-color);
56
+ @include icons.icon('rounded-check_fill');
57
+ }
58
+ }
59
+
60
+ &.error {
61
+ background-color: var(--comp-snackbar-error-background-color);
62
+
63
+ .ap-snackbar-left > i {
64
+ color: var(--comp-snackbar-error-icon-color);
65
+ @include icons.icon('error_fill');
66
+ }
67
+ }
68
+
69
+ &.animate-in {
70
+ animation: ap-snackbar-slide-in 0.3s ease-out forwards;
71
+ }
72
+
73
+ &.animate-out {
74
+ animation: ap-snackbar-slide-out 0.3s ease-in forwards;
75
+ }
76
+ }
77
+
78
+ // Left side (icon + text)
79
+ .ap-snackbar-left {
80
+ display: flex;
81
+ align-items: center;
82
+ gap: var(--comp-snackbar-spacing);
83
+ flex: 1;
84
+ min-width: 0;
85
+
86
+ // Snackbar icon — implicit > i
87
+ > i {
88
+ @include icons.icon-base;
89
+ display: flex;
90
+ justify-content: center;
91
+ align-items: center;
92
+ flex-shrink: 0;
93
+ width: var(--sys-icon-css-sm);
94
+ height: var(--sys-icon-css-sm);
95
+ }
96
+
97
+ // Snackbar text — implicit > span
98
+ > span {
99
+ display: flex;
100
+ font-family: var(--comp-snackbar-text-style-font-family);
101
+ font-size: var(--comp-snackbar-text-style-size);
102
+ font-weight: var(--comp-snackbar-text-style-font-weight);
103
+ line-height: var(--comp-snackbar-text-style-line-height);
104
+ justify-content: flex-start;
105
+ align-items: center;
106
+ overflow-wrap: anywhere;
107
+ color: var(--comp-snackbar-text-color);
108
+ }
109
+ }
110
+
111
+ // Right side (actions)
112
+ .ap-snackbar-right {
113
+ display: flex;
114
+ align-items: center;
115
+ gap: var(--comp-snackbar-spacing);
116
+ flex-shrink: 0;
117
+
118
+ // Action link — implicit > a
119
+ > a {
120
+ width: max-content;
121
+ font-family: var(--comp-snackbar-text-style-font-family);
122
+ font-size: var(--comp-snackbar-text-style-size);
123
+ font-weight: var(--comp-link-standalone-default-text-style-font-weight);
124
+ line-height: var(--comp-snackbar-text-style-line-height);
125
+ color: var(--comp-link-default-color);
126
+ text-decoration: none;
127
+ cursor: pointer;
128
+
129
+ &:hover {
130
+ text-decoration: underline;
131
+ }
132
+ }
133
+
134
+ // Close button — implicit > button
135
+ > button {
136
+ display: flex;
137
+ align-items: center;
138
+ justify-content: center;
139
+ width: 20px;
140
+ height: 20px;
141
+ padding: 0;
142
+ border: none;
143
+ background: transparent;
144
+ cursor: pointer;
145
+ color: var(--ref-color-grey-100);
146
+ border-radius: 50%;
147
+ transition: background-color 0.15s;
148
+
149
+ &:hover {
150
+ background: var(--ref-color-grey-10);
151
+ color: var(--ref-color-grey-80);
152
+ }
153
+
154
+ > i {
155
+ @include icons.icon-base;
156
+ @include icons.icon('close');
157
+ width: 12px;
158
+ height: 12px;
159
+ }
160
+ }
161
+ }
@@ -0,0 +1,74 @@
1
+ // Agorapulse Split Button Styles
2
+ @use 'mixins' as m;
3
+ @use '../button-mixins' as btn;
4
+
5
+ .ap-split-button {
6
+ display: inline-flex;
7
+ gap: 1px;
8
+ position: relative;
9
+
10
+ > button {
11
+ border: none;
12
+ position: relative;
13
+ overflow: hidden;
14
+ display: flex;
15
+ align-items: center;
16
+ justify-content: center;
17
+ gap: var(--comp-split-button-spacing);
18
+ padding: var(--comp-split-button-padding-horizontal) var(--comp-split-button-padding-vertical);
19
+ max-height: var(--comp-button-height);
20
+ min-height: var(--comp-button-height);
21
+ font-size: var(--comp-split-button-text-size);
22
+ font-family: var(--comp-split-button-text-font-family);
23
+ line-height: var(--comp-split-button-text-line-height);
24
+ font-weight: var(--comp-split-button-text-weight);
25
+ white-space: nowrap;
26
+ text-overflow: ellipsis;
27
+ cursor: pointer;
28
+
29
+ &:disabled {
30
+ pointer-events: none;
31
+ }
32
+
33
+ &:focus:not(:disabled):not(:active) {
34
+ @include m.focus-ring;
35
+ z-index: 10;
36
+ }
37
+
38
+ > i {
39
+ @include m.fixed-size(16px);
40
+ flex-shrink: 0;
41
+ }
42
+
43
+ &:first-child {
44
+ border-radius: var(--comp-split-button-border-radius) 0 0 var(--comp-split-button-border-radius);
45
+ }
46
+
47
+ &:last-child {
48
+ border-radius: 0 var(--comp-split-button-border-radius) var(--comp-split-button-border-radius) 0;
49
+ padding: var(--comp-split-button-padding-horizontal) 10px;
50
+
51
+ > i {
52
+ will-change: transform;
53
+ transition: transform 0.2s ease-in-out;
54
+ }
55
+
56
+ &.open > i {
57
+ transform: rotate(180deg);
58
+ }
59
+ }
60
+ }
61
+
62
+ // Primary color variants
63
+ &.primary > button {
64
+ color: var(--ref-color-white);
65
+ }
66
+
67
+ &.primary.orange > button {
68
+ @include btn.btn-primary-color('orange');
69
+ }
70
+
71
+ &.primary.blue > button {
72
+ @include btn.btn-primary-color('electric-blue');
73
+ }
74
+ }
@@ -0,0 +1,71 @@
1
+ // Agorapulse Status Styles
2
+ @use 'mixins' as m;
3
+
4
+ .ap-status {
5
+ --dot-size: 8px;
6
+
7
+ display: inline-flex;
8
+ align-items: center;
9
+ justify-content: center;
10
+ padding: 0 var(--comp-status-padding-horizontal);
11
+ gap: var(--comp-status-spacing);
12
+ width: fit-content;
13
+ height: var(--comp-status-height);
14
+ border-radius: var(--comp-status-height);
15
+ color: var(--comp-status-color);
16
+ font-family: var(--comp-status-font-family);
17
+ font-size: var(--comp-status-font-size);
18
+ line-height: var(--comp-status-line-height);
19
+ box-sizing: border-box;
20
+ white-space: nowrap;
21
+
22
+ // Dot — shown by default via ::before (matches Angular where dot=true is default)
23
+ // Add .no-dot to hide it
24
+ &::before {
25
+ content: '';
26
+ display: flex;
27
+ @include m.fixed-size(var(--dot-size));
28
+ border-radius: 100%;
29
+ flex-shrink: 0;
30
+ }
31
+
32
+ &.no-dot::before {
33
+ display: none;
34
+ }
35
+
36
+ &.blue {
37
+ background-color: var(--comp-status-blue-background-color);
38
+
39
+ &::before { background-color: var(--comp-status-blue-dot-background-color); }
40
+ }
41
+
42
+ &.green {
43
+ background-color: var(--comp-status-green-background-color);
44
+
45
+ &::before { background-color: var(--comp-status-green-dot-background-color); }
46
+ }
47
+
48
+ &.orange {
49
+ background-color: var(--comp-status-orange-background-color);
50
+
51
+ &::before { background-color: var(--comp-status-orange-dot-background-color); }
52
+ }
53
+
54
+ &.tagOrange {
55
+ background-color: var(--comp-status-tag-orange-background-color);
56
+
57
+ &::before { background-color: var(--comp-status-tag-orange-dot-background-color); }
58
+ }
59
+
60
+ &.grey {
61
+ background-color: var(--comp-status-grey-background-color);
62
+
63
+ &::before { background-color: var(--comp-status-grey-dot-background-color); }
64
+ }
65
+
66
+ &.red {
67
+ background-color: var(--comp-status-red-background-color);
68
+
69
+ &::before { background-color: var(--comp-status-red-dot-background-color); }
70
+ }
71
+ }
@@ -0,0 +1,113 @@
1
+ // Agorapulse Stepper Styles
2
+
3
+ .ap-stepper {
4
+ display: flex;
5
+ align-items: flex-start;
6
+
7
+ // With line connector
8
+ &.with-line .ap-stepper-item {
9
+ position: relative;
10
+
11
+ &:not(:last-child)::after {
12
+ content: '';
13
+ position: absolute;
14
+ left: 12px;
15
+ top: 28px;
16
+ width: 1px;
17
+ height: calc(100% - 4px);
18
+ background-color: var(--ref-color-grey-20);
19
+ }
20
+
21
+ &.completed:not(:last-child)::after {
22
+ background-color: var(--ref-color-electric-blue-100);
23
+ }
24
+ }
25
+ }
26
+
27
+ // Stepper item — state modifiers on this element
28
+ .ap-stepper-item {
29
+ display: flex;
30
+ align-items: center;
31
+ height: fit-content;
32
+
33
+ // Step number circle — implicit > span:first-child
34
+ > span:first-child {
35
+ display: inline-flex;
36
+ align-items: center;
37
+ justify-content: center;
38
+ width: 24px;
39
+ height: 24px;
40
+ min-width: 24px;
41
+ border-radius: 24px;
42
+ font-family: var(--ref-font-family);
43
+ font-size: var(--ref-font-size-sm);
44
+ font-weight: var(--ref-font-weight-regular);
45
+ line-height: 24px;
46
+ text-align: center;
47
+ box-sizing: border-box;
48
+ }
49
+
50
+ // Step text label — implicit > span:last-child
51
+ > span:last-child {
52
+ padding-left: var(--ref-spacing-xs);
53
+ height: fit-content;
54
+ margin: auto;
55
+ line-height: 24px;
56
+ vertical-align: middle;
57
+ font-family: var(--ref-font-family);
58
+ font-size: var(--ref-font-size-sm);
59
+ color: var(--ref-color-grey-100);
60
+ }
61
+
62
+ // Active state
63
+ &.active {
64
+ > span:first-child {
65
+ background-color: var(--ref-color-electric-blue-100);
66
+ color: var(--ref-color-white);
67
+ box-shadow: 0 0 0 1.5px var(--ref-color-electric-blue-10);
68
+ border: 1.5px solid var(--ref-color-electric-blue-10);
69
+ line-height: 21px;
70
+ }
71
+
72
+ > span:last-child {
73
+ font-weight: var(--ref-font-weight-bold);
74
+ }
75
+ }
76
+
77
+ // Completed state
78
+ &.completed > span:first-child {
79
+ background-color: var(--ref-color-electric-blue-10);
80
+ color: var(--ref-color-electric-blue-100);
81
+ }
82
+
83
+ // Pending state
84
+ &.pending > span:first-child {
85
+ background-color: transparent;
86
+ color: var(--ref-color-electric-blue-100);
87
+ border: 1px solid var(--ref-color-electric-blue-10);
88
+ line-height: 22px;
89
+ }
90
+
91
+ // Clickable step (completed steps that can be navigated to)
92
+ &.clickable > span:last-child {
93
+ cursor: pointer;
94
+
95
+ &:hover {
96
+ color: var(--ref-color-electric-blue-100);
97
+ }
98
+ }
99
+ }
100
+
101
+ // Separator between steps
102
+ .ap-stepper-separator {
103
+ display: inline-flex;
104
+ align-items: center;
105
+ margin: auto 10px;
106
+ color: var(--ref-color-grey-60);
107
+
108
+ // Separator icon — implicit > i
109
+ > i {
110
+ width: 16px;
111
+ height: 16px;
112
+ }
113
+ }