@keenmate/pure-admin-core 2.3.1 → 2.3.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.
Files changed (70) hide show
  1. package/README.md +30 -9
  2. package/dist/css/main.css +205 -190
  3. package/package.json +1 -1
  4. package/snippets/buttons.html +375 -365
  5. package/snippets/command-palette.html +15 -13
  6. package/src/scss/_base-css-variables.scss +10 -0
  7. package/src/scss/_core.scss +121 -121
  8. package/src/scss/core-components/_alerts.scss +227 -227
  9. package/src/scss/core-components/_badges.scss +16 -16
  10. package/src/scss/core-components/_base.scss +125 -125
  11. package/src/scss/core-components/_buttons.scss +31 -16
  12. package/src/scss/core-components/_callouts.scss +152 -152
  13. package/src/scss/core-components/_cards.scss +488 -488
  14. package/src/scss/core-components/_checkbox-lists.scss +289 -289
  15. package/src/scss/core-components/_code.scss +141 -141
  16. package/src/scss/core-components/_command-palette.scss +518 -509
  17. package/src/scss/core-components/_comparison.scss +172 -172
  18. package/src/scss/core-components/_data-display.scss +9 -9
  19. package/src/scss/core-components/_data-viz.scss +9 -9
  20. package/src/scss/core-components/_detail-panel.scss +1 -1
  21. package/src/scss/core-components/_file-selector.scss +780 -780
  22. package/src/scss/core-components/_filter-card.scss +58 -58
  23. package/src/scss/core-components/_forms.scss +16 -16
  24. package/src/scss/core-components/_grid.scss +293 -293
  25. package/src/scss/core-components/_layout.scss +15 -15
  26. package/src/scss/core-components/_lists.scss +211 -211
  27. package/src/scss/core-components/_loaders.scss +277 -277
  28. package/src/scss/core-components/_logic-tree.scss +280 -280
  29. package/src/scss/core-components/_modals.scss +203 -203
  30. package/src/scss/core-components/_notifications.scss +320 -320
  31. package/src/scss/core-components/_pagers.scss +141 -141
  32. package/src/scss/core-components/_popconfirm.scss +170 -170
  33. package/src/scss/core-components/_profile.scss +405 -405
  34. package/src/scss/core-components/_scrollbars.scss +40 -40
  35. package/src/scss/core-components/_settings-panel.scss +141 -141
  36. package/src/scss/core-components/_statistics.scss +200 -201
  37. package/src/scss/core-components/_tables.scss +900 -900
  38. package/src/scss/core-components/_tabs.scss +504 -504
  39. package/src/scss/core-components/_timeline.scss +589 -589
  40. package/src/scss/core-components/_toasts.scss +425 -425
  41. package/src/scss/core-components/_tooltips.scss +605 -605
  42. package/src/scss/core-components/_utilities.scss +1 -1
  43. package/src/scss/core-components/_web-components-theme.scss +21 -21
  44. package/src/scss/core-components/badges/_badge-base.scss +121 -121
  45. package/src/scss/core-components/badges/_badge-group.scss +25 -25
  46. package/src/scss/core-components/badges/_composite-badge-variants.scss +396 -396
  47. package/src/scss/core-components/badges/_composite-badge.scss +70 -70
  48. package/src/scss/core-components/badges/_index.scss +10 -10
  49. package/src/scss/core-components/badges/_labels.scss +155 -155
  50. package/src/scss/core-components/forms/_checkboxes-radios.scss +205 -205
  51. package/src/scss/core-components/forms/_form-inputs.scss +3 -3
  52. package/src/scss/core-components/forms/_form-layout.scss +66 -66
  53. package/src/scss/core-components/forms/_form-states.scss +115 -115
  54. package/src/scss/core-components/forms/_index.scss +12 -12
  55. package/src/scss/core-components/forms/_input-groups.scss +154 -154
  56. package/src/scss/core-components/forms/_input-wrapper.scss +89 -89
  57. package/src/scss/core-components/forms/_query-editor.scss +313 -313
  58. package/src/scss/core-components/layout/_index.scss +11 -11
  59. package/src/scss/core-components/layout/_layout-container.scss +168 -168
  60. package/src/scss/core-components/layout/_layout-responsive.scss +99 -99
  61. package/src/scss/core-components/layout/_navbar-elements.scss +250 -250
  62. package/src/scss/core-components/layout/_navbar.scss +83 -83
  63. package/src/scss/core-components/layout/_sidebar-states.scss +237 -237
  64. package/src/scss/core-components/layout/_sidebar.scss +234 -234
  65. package/src/scss/main.scss +7 -7
  66. package/src/scss/utilities.scss +740 -740
  67. package/src/scss/variables/_base.scss +228 -228
  68. package/src/scss/variables/_components.scss +748 -748
  69. package/src/scss/variables/_layout.scss +65 -65
  70. package/src/scss/variables/_typography.scss +37 -37
@@ -1,250 +1,250 @@
1
- /* ========================================
2
- Navbar/Header Elements
3
- Burger menu, brand, navigation, title, profile button, theme switcher
4
- ======================================== */
5
- @use '../../variables' as *;
6
-
7
- // Navbar elements (using pa-header__ prefix for backward compatibility with existing partials)
8
- .pa-header {
9
- &__burger {
10
- flex-shrink: 0;
11
- margin-inline-start: $burger-menu-margin-left; // RTL: flips to margin-right
12
- }
13
-
14
- &__brand {
15
- flex-shrink: 0;
16
- padding-inline-start: $header-brand-padding-left; // RTL: flips to padding-right
17
-
18
- h1 {
19
- margin: 0;
20
- font-size: $font-size-lg;
21
- font-weight: $font-weight-semibold;
22
- color: var(--pa-header-text);
23
- white-space: nowrap;
24
- }
25
- }
26
-
27
- &__nav {
28
- flex-shrink: 0;
29
-
30
- // Only style the direct child ul (main navigation)
31
- > ul {
32
- list-style: none;
33
- margin: 0;
34
- padding: 0;
35
- display: flex;
36
- gap: $spacing-md;
37
-
38
- > li {
39
- margin: 0; // Disable base margins from _base.scss
40
- position: relative; // For dropdown positioning
41
- display: flex;
42
- align-items: center;
43
-
44
- > a {
45
- text-decoration: none;
46
- color: var(--pa-header-text-secondary);
47
- font-weight: $font-weight-medium;
48
- padding: $spacing-xs $spacing-sm;
49
- border-radius: $border-radius;
50
- transition: all $transition-fast $easing-snappy;
51
- font-size: $font-size-sm;
52
- display: flex;
53
- align-items: center;
54
-
55
- &:hover {
56
- color: var(--pa-accent);
57
- background-color: var(--pa-accent-hover);
58
- }
59
- }
60
- }
61
- }
62
-
63
- // Note: margin auto no longer needed with pa-header__start/center/end structure
64
- &--start {
65
- // Elements in start section
66
- }
67
-
68
- &--end {
69
- // Elements in end section
70
- }
71
- }
72
-
73
- // Dropdown navigation items
74
- &__nav-item {
75
- &--has-dropdown {
76
- position: static; // Position dropdown relative to header, not this item
77
-
78
- &:hover > .pa-header__dropdown {
79
- display: block !important; // Override the !important hide
80
- }
81
- }
82
- }
83
-
84
- &__nav-link {
85
- display: flex;
86
- align-items: center;
87
- gap: $spacing-xs;
88
- }
89
-
90
- // Dropdown menus
91
- &__dropdown {
92
- display: none !important; // Force hide by default
93
- position: absolute;
94
- top: 100%;
95
- inset-inline-start: 0; // RTL: flips to right: 0
96
- min-width: 19.2rem;
97
- background-color: var(--pa-card-bg);
98
- border: $border-width-base solid var(--pa-border-color);
99
- border-radius: $border-radius;
100
- box-shadow: $shadow-lg;
101
- z-index: 1100;
102
- padding: $spacing-xs 0;
103
- margin-top: 0;
104
- list-style: none;
105
- flex-direction: column; // Override any flex from parent
106
-
107
- li {
108
- margin: 0; // Disable base margins from _base.scss
109
- display: block;
110
- position: relative;
111
-
112
- // Create invisible bridge for nested dropdowns (horizontal)
113
- &.pa-header__nav-item--has-dropdown::after {
114
- content: '';
115
- position: absolute;
116
- top: 0;
117
- inset-inline-start: 100%; // RTL: flips to right: 100%
118
- width: 6.4px; // Small invisible bridge
119
- height: 100%;
120
- z-index: 1099;
121
- }
122
-
123
- // Show nested dropdown on hover
124
- &:hover > .pa-header__dropdown {
125
- display: block !important;
126
- }
127
-
128
- a {
129
- display: block;
130
- padding: $spacing-sm $spacing-base;
131
- color: var(--pa-text-color-1);
132
- border-radius: 0;
133
- white-space: nowrap;
134
- text-decoration: none;
135
- font-weight: $font-weight-medium;
136
- font-size: $font-size-sm;
137
-
138
- &:hover {
139
- background-color: var(--pa-accent-light);
140
- color: var(--pa-accent);
141
- }
142
- }
143
- }
144
-
145
- // Level 2 dropdown (nested)
146
- &--level2 {
147
- top: 0;
148
- inset-inline-start: 100%; // RTL: flips to right: 100%
149
- margin-top: 0;
150
- margin-inline-start: 0; // RTL: flips to margin-right
151
- }
152
- }
153
-
154
- &__title {
155
- flex: 1;
156
- min-width: 0; // Enable ellipsis
157
- text-align: center;
158
-
159
- h2 {
160
- margin: 0;
161
- font-size: $font-size-lg;
162
- font-weight: $font-weight-semibold;
163
- color: var(--pa-header-text);
164
- white-space: nowrap;
165
- overflow: hidden;
166
- text-overflow: ellipsis;
167
- }
168
- }
169
-
170
- &__profile-btn {
171
- flex-shrink: 0;
172
- }
173
- }
174
-
175
- // Burger menu button
176
- .burger-menu {
177
- display: flex;
178
- flex-direction: column;
179
- justify-content: space-around;
180
- width: $burger-width;
181
- height: $burger-height;
182
- background: transparent;
183
- border: none;
184
- cursor: pointer;
185
- padding: 0;
186
-
187
- span {
188
- width: 100%;
189
- height: $burger-bar-height;
190
- background-color: var(--pa-header-text);
191
- border-radius: $border-radius;
192
- transition: all $transition-normal $easing-snappy;
193
- transform-origin: center;
194
- }
195
-
196
- &.active {
197
- span:nth-child(1) {
198
- transform: rotate(45deg) translate($burger-transform-offset, $burger-transform-offset);
199
- }
200
-
201
- span:nth-child(2) {
202
- opacity: 0;
203
- }
204
-
205
- span:nth-child(3) {
206
- transform: rotate(-45deg) translate($burger-transform-offset, -$burger-transform-offset);
207
- }
208
- }
209
-
210
- // RTL: reverse X translation direction
211
- [dir="rtl"] &.active {
212
- span:nth-child(1) {
213
- transform: rotate(45deg) translate(-$burger-transform-offset, $burger-transform-offset);
214
- }
215
-
216
- span:nth-child(3) {
217
- transform: rotate(-45deg) translate(-$burger-transform-offset, -$burger-transform-offset);
218
- }
219
- }
220
-
221
- &:hover span {
222
- background-color: var(--pa-accent);
223
- }
224
- }
225
-
226
- // Theme switcher styling
227
- .theme-switcher {
228
- display: flex;
229
- align-items: center;
230
- gap: $spacing-sm;
231
-
232
- label {
233
- color: var(--pa-header-text-secondary);
234
- font-size: $font-size-sm;
235
- }
236
-
237
- select {
238
- padding: $spacing-xs $spacing-sm;
239
- border: $border-width-base solid var(--pa-border-color);
240
- border-radius: $border-radius;
241
- background-color: var(--pa-header-bg);
242
- color: var(--pa-header-text);
243
- font-size: $font-size-sm;
244
-
245
- &:focus {
246
- outline: none;
247
- border-color: var(--pa-accent);
248
- }
249
- }
250
- }
1
+ /* ========================================
2
+ Navbar/Header Elements
3
+ Burger menu, brand, navigation, title, profile button, theme switcher
4
+ ======================================== */
5
+ @use '../../variables' as *;
6
+
7
+ // Navbar elements (using pa-header__ prefix for backward compatibility with existing partials)
8
+ .pa-header {
9
+ &__burger {
10
+ flex-shrink: 0;
11
+ margin-inline-start: $burger-menu-margin-left; // RTL: flips to margin-right
12
+ }
13
+
14
+ &__brand {
15
+ flex-shrink: 0;
16
+ padding-inline-start: $header-brand-padding-left; // RTL: flips to padding-right
17
+
18
+ h1 {
19
+ margin: 0;
20
+ font-size: $font-size-lg;
21
+ font-weight: $font-weight-semibold;
22
+ color: var(--pa-header-text);
23
+ white-space: nowrap;
24
+ }
25
+ }
26
+
27
+ &__nav {
28
+ flex-shrink: 0;
29
+
30
+ // Only style the direct child ul (main navigation)
31
+ > ul {
32
+ list-style: none;
33
+ margin: 0;
34
+ padding: 0;
35
+ display: flex;
36
+ gap: $spacing-md;
37
+
38
+ > li {
39
+ margin: 0; // Disable base margins from _base.scss
40
+ position: relative; // For dropdown positioning
41
+ display: flex;
42
+ align-items: center;
43
+
44
+ > a {
45
+ text-decoration: none;
46
+ color: var(--pa-header-text-secondary);
47
+ font-weight: $font-weight-medium;
48
+ padding: $spacing-xs $spacing-sm;
49
+ border-radius: var(--pa-border-radius);
50
+ transition: all $transition-fast $easing-snappy;
51
+ font-size: $font-size-sm;
52
+ display: flex;
53
+ align-items: center;
54
+
55
+ &:hover {
56
+ color: var(--pa-accent);
57
+ background-color: var(--pa-accent-hover);
58
+ }
59
+ }
60
+ }
61
+ }
62
+
63
+ // Note: margin auto no longer needed with pa-header__start/center/end structure
64
+ &--start {
65
+ // Elements in start section
66
+ }
67
+
68
+ &--end {
69
+ // Elements in end section
70
+ }
71
+ }
72
+
73
+ // Dropdown navigation items
74
+ &__nav-item {
75
+ &--has-dropdown {
76
+ position: static; // Position dropdown relative to header, not this item
77
+
78
+ &:hover > .pa-header__dropdown {
79
+ display: block !important; // Override the !important hide
80
+ }
81
+ }
82
+ }
83
+
84
+ &__nav-link {
85
+ display: flex;
86
+ align-items: center;
87
+ gap: $spacing-xs;
88
+ }
89
+
90
+ // Dropdown menus
91
+ &__dropdown {
92
+ display: none !important; // Force hide by default
93
+ position: absolute;
94
+ top: 100%;
95
+ inset-inline-start: 0; // RTL: flips to right: 0
96
+ min-width: 19.2rem;
97
+ background-color: var(--pa-card-bg);
98
+ border: $border-width-base solid var(--pa-border-color);
99
+ border-radius: var(--pa-border-radius);
100
+ box-shadow: $shadow-lg;
101
+ z-index: 1100;
102
+ padding: $spacing-xs 0;
103
+ margin-top: 0;
104
+ list-style: none;
105
+ flex-direction: column; // Override any flex from parent
106
+
107
+ li {
108
+ margin: 0; // Disable base margins from _base.scss
109
+ display: block;
110
+ position: relative;
111
+
112
+ // Create invisible bridge for nested dropdowns (horizontal)
113
+ &.pa-header__nav-item--has-dropdown::after {
114
+ content: '';
115
+ position: absolute;
116
+ top: 0;
117
+ inset-inline-start: 100%; // RTL: flips to right: 100%
118
+ width: 6.4px; // Small invisible bridge
119
+ height: 100%;
120
+ z-index: 1099;
121
+ }
122
+
123
+ // Show nested dropdown on hover
124
+ &:hover > .pa-header__dropdown {
125
+ display: block !important;
126
+ }
127
+
128
+ a {
129
+ display: block;
130
+ padding: $spacing-sm $spacing-base;
131
+ color: var(--pa-text-color-1);
132
+ border-radius: 0;
133
+ white-space: nowrap;
134
+ text-decoration: none;
135
+ font-weight: $font-weight-medium;
136
+ font-size: $font-size-sm;
137
+
138
+ &:hover {
139
+ background-color: var(--pa-accent-light);
140
+ color: var(--pa-accent);
141
+ }
142
+ }
143
+ }
144
+
145
+ // Level 2 dropdown (nested)
146
+ &--level2 {
147
+ top: 0;
148
+ inset-inline-start: 100%; // RTL: flips to right: 100%
149
+ margin-top: 0;
150
+ margin-inline-start: 0; // RTL: flips to margin-right
151
+ }
152
+ }
153
+
154
+ &__title {
155
+ flex: 1;
156
+ min-width: 0; // Enable ellipsis
157
+ text-align: center;
158
+
159
+ h2 {
160
+ margin: 0;
161
+ font-size: $font-size-lg;
162
+ font-weight: $font-weight-semibold;
163
+ color: var(--pa-header-text);
164
+ white-space: nowrap;
165
+ overflow: hidden;
166
+ text-overflow: ellipsis;
167
+ }
168
+ }
169
+
170
+ &__profile-btn {
171
+ flex-shrink: 0;
172
+ }
173
+ }
174
+
175
+ // Burger menu button
176
+ .burger-menu {
177
+ display: flex;
178
+ flex-direction: column;
179
+ justify-content: space-around;
180
+ width: $burger-width;
181
+ height: $burger-height;
182
+ background: transparent;
183
+ border: none;
184
+ cursor: pointer;
185
+ padding: 0;
186
+
187
+ span {
188
+ width: 100%;
189
+ height: $burger-bar-height;
190
+ background-color: var(--pa-header-text);
191
+ border-radius: var(--pa-border-radius);
192
+ transition: all $transition-normal $easing-snappy;
193
+ transform-origin: center;
194
+ }
195
+
196
+ &.active {
197
+ span:nth-child(1) {
198
+ transform: rotate(45deg) translate($burger-transform-offset, $burger-transform-offset);
199
+ }
200
+
201
+ span:nth-child(2) {
202
+ opacity: 0;
203
+ }
204
+
205
+ span:nth-child(3) {
206
+ transform: rotate(-45deg) translate($burger-transform-offset, -$burger-transform-offset);
207
+ }
208
+ }
209
+
210
+ // RTL: reverse X translation direction
211
+ [dir="rtl"] &.active {
212
+ span:nth-child(1) {
213
+ transform: rotate(45deg) translate(-$burger-transform-offset, $burger-transform-offset);
214
+ }
215
+
216
+ span:nth-child(3) {
217
+ transform: rotate(-45deg) translate(-$burger-transform-offset, -$burger-transform-offset);
218
+ }
219
+ }
220
+
221
+ &:hover span {
222
+ background-color: var(--pa-accent);
223
+ }
224
+ }
225
+
226
+ // Theme switcher styling
227
+ .theme-switcher {
228
+ display: flex;
229
+ align-items: center;
230
+ gap: $spacing-sm;
231
+
232
+ label {
233
+ color: var(--pa-header-text-secondary);
234
+ font-size: $font-size-sm;
235
+ }
236
+
237
+ select {
238
+ padding: $spacing-xs $spacing-sm;
239
+ border: $border-width-base solid var(--pa-border-color);
240
+ border-radius: var(--pa-border-radius);
241
+ background-color: var(--pa-header-bg);
242
+ color: var(--pa-header-text);
243
+ font-size: $font-size-sm;
244
+
245
+ &:focus {
246
+ outline: none;
247
+ border-color: var(--pa-accent);
248
+ }
249
+ }
250
+ }
@@ -1,83 +1,83 @@
1
- /* ========================================
2
- Navbar Component
3
- Fixed navbar and constrained container widths
4
- ======================================== */
5
- @use '../../variables' as *;
6
-
7
- // Navbar - Fixed at top, full width by default
8
- .pa-navbar {
9
- position: fixed;
10
- top: 0;
11
- inset-inline: 0; // RTL: works for both LTR and RTL
12
- height: $header-height;
13
- background-color: var(--pa-header-bg);
14
- border-bottom: $border-width-base solid var(--pa-header-border-color);
15
- z-index: $z-index-header; // 2000
16
- display: flex;
17
- align-items: center;
18
- justify-content: center; // Center for constrained mode
19
- }
20
-
21
- // Constrained navbar - limit navbar width to match container
22
- // Body class is just a marker, no width styles on body itself
23
- body.pa-container-sm .pa-navbar {
24
- max-width: $layout-container-sm;
25
- inset-inline: 0; // RTL: works for both LTR and RTL
26
- margin-inline: auto; // RTL: centers in both directions
27
- }
28
-
29
- body.pa-container-md .pa-navbar {
30
- max-width: $layout-container-md;
31
- inset-inline: 0;
32
- margin-inline: auto;
33
- }
34
-
35
- body.pa-container-lg .pa-navbar {
36
- max-width: $layout-container-lg;
37
- inset-inline: 0;
38
- margin-inline: auto;
39
- }
40
-
41
- body.pa-container-xl .pa-navbar {
42
- max-width: $layout-container-xl;
43
- inset-inline: 0;
44
- margin-inline: auto;
45
- }
46
-
47
- body.pa-container-2xl .pa-navbar {
48
- max-width: $layout-container-2xl;
49
- inset-inline: 0;
50
- margin-inline: auto;
51
- }
52
-
53
- // Navbar inner content
54
- .pa-navbar__inner {
55
- width: 100%;
56
- padding: 0 $spacing-base;
57
- display: flex;
58
- align-items: center;
59
- gap: $spacing-base;
60
- }
61
-
62
- // Header sections - Start/Center/End layout
63
- .pa-header__start {
64
- display: flex;
65
- align-items: center;
66
- gap: $spacing-base;
67
- flex-shrink: 0;
68
- }
69
-
70
- .pa-header__center {
71
- flex: 1;
72
- min-width: 0; // Allow shrinking for ellipsis
73
- display: flex;
74
- align-items: center;
75
- justify-content: center;
76
- }
77
-
78
- .pa-header__end {
79
- display: flex;
80
- align-items: center;
81
- gap: $spacing-base;
82
- flex-shrink: 0;
83
- }
1
+ /* ========================================
2
+ Navbar Component
3
+ Fixed navbar and constrained container widths
4
+ ======================================== */
5
+ @use '../../variables' as *;
6
+
7
+ // Navbar - Fixed at top, full width by default
8
+ .pa-navbar {
9
+ position: fixed;
10
+ top: 0;
11
+ inset-inline: 0; // RTL: works for both LTR and RTL
12
+ height: $header-height;
13
+ background-color: var(--pa-header-bg);
14
+ border-bottom: $border-width-base solid var(--pa-header-border-color);
15
+ z-index: $z-index-header; // 2000
16
+ display: flex;
17
+ align-items: center;
18
+ justify-content: center; // Center for constrained mode
19
+ }
20
+
21
+ // Constrained navbar - limit navbar width to match container
22
+ // Body class is just a marker, no width styles on body itself
23
+ body.pa-container-sm .pa-navbar {
24
+ max-width: $layout-container-sm;
25
+ inset-inline: 0; // RTL: works for both LTR and RTL
26
+ margin-inline: auto; // RTL: centers in both directions
27
+ }
28
+
29
+ body.pa-container-md .pa-navbar {
30
+ max-width: $layout-container-md;
31
+ inset-inline: 0;
32
+ margin-inline: auto;
33
+ }
34
+
35
+ body.pa-container-lg .pa-navbar {
36
+ max-width: $layout-container-lg;
37
+ inset-inline: 0;
38
+ margin-inline: auto;
39
+ }
40
+
41
+ body.pa-container-xl .pa-navbar {
42
+ max-width: $layout-container-xl;
43
+ inset-inline: 0;
44
+ margin-inline: auto;
45
+ }
46
+
47
+ body.pa-container-2xl .pa-navbar {
48
+ max-width: $layout-container-2xl;
49
+ inset-inline: 0;
50
+ margin-inline: auto;
51
+ }
52
+
53
+ // Navbar inner content
54
+ .pa-navbar__inner {
55
+ width: 100%;
56
+ padding: 0 $spacing-base;
57
+ display: flex;
58
+ align-items: center;
59
+ gap: $spacing-base;
60
+ }
61
+
62
+ // Header sections - Start/Center/End layout
63
+ .pa-header__start {
64
+ display: flex;
65
+ align-items: center;
66
+ gap: $spacing-base;
67
+ flex-shrink: 0;
68
+ }
69
+
70
+ .pa-header__center {
71
+ flex: 1;
72
+ min-width: 0; // Allow shrinking for ellipsis
73
+ display: flex;
74
+ align-items: center;
75
+ justify-content: center;
76
+ }
77
+
78
+ .pa-header__end {
79
+ display: flex;
80
+ align-items: center;
81
+ gap: $spacing-base;
82
+ flex-shrink: 0;
83
+ }