@keenmate/pure-admin-core 1.0.0-rc03 → 1.0.0-rc04

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keenmate/pure-admin-core",
3
- "version": "1.0.0-rc03",
3
+ "version": "1.0.0-rc04",
4
4
  "description": "Lightweight, data-focused HTML/CSS admin framework built with PureCSS foundation and comprehensive component system",
5
5
  "style": "dist/css/main.css",
6
6
  "exports": {
@@ -73,18 +73,19 @@
73
73
 
74
74
 
75
75
  <!-- FIXED WIDTH BADGES -->
76
+ <!-- Use wr-*/minwr-*/maxwr-* utilities with text-truncate for ellipsis -->
76
77
 
77
- <!-- Fixed Width 5x -->
78
- <span class="pa-badge pa-badge--primary pa-badge--w-5x">Status</span>
78
+ <!-- Fixed Width 8rem -->
79
+ <span class="pa-badge pa-badge--primary minwr-8 maxwr-8 text-truncate">Status</span>
79
80
 
80
- <!-- Fixed Width 8x with Ellipsis -->
81
+ <!-- Fixed Width 15rem with Ellipsis -->
81
82
  <span class="pa-tooltip pa-tooltip--bottom" data-tooltip="Very Long Badge Text That Needs Truncation">
82
- <span class="pa-badge pa-badge--info pa-badge--w-8x">Very Long Badge Text That Needs Truncation</span>
83
+ <span class="pa-badge pa-badge--info minwr-15 maxwr-15 text-truncate">Very Long Badge Text That Needs Truncation</span>
83
84
  </span>
84
85
 
85
86
  <!-- Fixed Width with Left Ellipsis (for paths, breadcrumbs) -->
86
87
  <span class="pa-tooltip pa-tooltip--bottom pa-tooltip--multiline" data-tooltip="Settings > User Preferences > Notifications > Email">
87
- <span class="pa-badge pa-badge--secondary pa-badge--w-6x pa-badge--ellipsis-left">Settings > User Preferences > Notifications > Email</span>
88
+ <span class="pa-badge pa-badge--secondary minwr-10 maxwr-10 text-truncate pa-badge--ellipsis-left">Settings > User Preferences > Notifications > Email</span>
88
89
  </span>
89
90
 
90
91
 
@@ -185,8 +186,8 @@ SIZES:
185
186
 
186
187
  MODIFIERS:
187
188
  - .pa-badge--pill: Rounded pill shape
188
- - .pa-badge--w-1x through .pa-badge--w-10x: Fixed widths (1rem to 10rem)
189
189
  - .pa-badge--ellipsis-left: Truncate from left instead of right
190
+ - Use utilities for fixed width: minwr-* maxwr-* text-truncate
190
191
 
191
192
  ELEMENTS:
192
193
  - .pa-badge__icon: Icon container inside badge
@@ -108,23 +108,24 @@
108
108
 
109
109
 
110
110
  <!-- BUTTON GROUP GAP VARIANTS -->
111
+ <!-- Use gap-* utility classes to adjust spacing -->
111
112
 
112
- <!-- Compact Gap (tight spacing) -->
113
- <div class="pa-btn-group pa-btn-group--compact">
113
+ <!-- Compact Gap (2px) -->
114
+ <div class="pa-btn-group gap-2">
114
115
  <button class="pa-btn pa-btn--primary">A</button>
115
116
  <button class="pa-btn pa-btn--primary">B</button>
116
117
  <button class="pa-btn pa-btn--primary">C</button>
117
118
  </div>
118
119
 
119
- <!-- Default Gap -->
120
+ <!-- Default Gap (3px) -->
120
121
  <div class="pa-btn-group">
121
122
  <button class="pa-btn pa-btn--primary">A</button>
122
123
  <button class="pa-btn pa-btn--primary">B</button>
123
124
  <button class="pa-btn pa-btn--primary">C</button>
124
125
  </div>
125
126
 
126
- <!-- Loose Gap (spacious) -->
127
- <div class="pa-btn-group pa-btn-group--loose">
127
+ <!-- Loose Gap (8px) -->
128
+ <div class="pa-btn-group gap-8">
128
129
  <button class="pa-btn pa-btn--primary">A</button>
129
130
  <button class="pa-btn pa-btn--primary">B</button>
130
131
  <button class="pa-btn pa-btn--primary">C</button>
@@ -233,15 +234,16 @@
233
234
 
234
235
 
235
236
  <!-- FIXED WIDTH BUTTONS -->
237
+ <!-- Use minwr-* utilities for min-width in rem -->
236
238
 
237
- <!-- Fixed Width 6x -->
238
- <button class="pa-btn pa-btn--primary pa-btn--w-6x">
239
+ <!-- Fixed Width 6rem -->
240
+ <button class="pa-btn pa-btn--primary minwr-6">
239
241
  <span class="pa-btn__icon">✓</span>
240
242
  OK
241
243
  </button>
242
244
 
243
- <!-- Fixed Width 8x -->
244
- <button class="pa-btn pa-btn--success pa-btn--w-8x">
245
+ <!-- Fixed Width 8rem -->
246
+ <button class="pa-btn pa-btn--success minwr-8">
245
247
  <span class="pa-btn__icon">→</span>
246
248
  Continue
247
249
  </button>
@@ -250,25 +252,25 @@
250
252
  <!-- BUTTON ALIGNMENT -->
251
253
 
252
254
  <!-- Left Aligned (icon flush to left) -->
253
- <button class="pa-btn pa-btn--primary pa-btn--w-8x pa-btn--align-left">
255
+ <button class="pa-btn pa-btn--primary minwr-8 pa-btn--align-left">
254
256
  <span class="pa-btn__icon">✓</span>
255
257
  Save
256
258
  </button>
257
259
 
258
260
  <!-- Right Aligned (icon flush to right) -->
259
- <button class="pa-btn pa-btn--primary pa-btn--w-8x pa-btn--align-right">
261
+ <button class="pa-btn pa-btn--primary minwr-8 pa-btn--align-right">
260
262
  Save
261
263
  <span class="pa-btn__icon">✓</span>
262
264
  </button>
263
265
 
264
266
  <!-- Center Aligned -->
265
- <button class="pa-btn pa-btn--primary pa-btn--w-8x pa-btn--align-center">
267
+ <button class="pa-btn pa-btn--primary minwr-8 pa-btn--align-center">
266
268
  <span class="pa-btn__icon">✓</span>
267
269
  Save
268
270
  </button>
269
271
 
270
272
  <!-- Justified (space-between) -->
271
- <button class="pa-btn pa-btn--primary pa-btn--w-8x pa-btn--align-justify">
273
+ <button class="pa-btn pa-btn--primary minwr-8 pa-btn--align-justify">
272
274
  <span class="pa-btn__icon">✓</span>
273
275
  Save
274
276
  </button>
@@ -82,6 +82,70 @@
82
82
  </div>
83
83
 
84
84
 
85
+ <!-- ================================
86
+ PROFILE PANEL - WITH FIXED FOOTER
87
+ Actions fixed at bottom, content scrolls above
88
+ ================================ -->
89
+
90
+ <div class="pa-profile-panel" id="profilePanel">
91
+ <div class="pa-profile-panel__overlay" onclick="closeProfilePanel()"></div>
92
+ <div class="pa-profile-panel__content">
93
+ <div class="pa-profile-panel__header">
94
+ <div class="pa-profile-panel__avatar">
95
+ <span class="pa-profile-panel__avatar-icon">👤</span>
96
+ </div>
97
+ <div class="pa-profile-panel__info">
98
+ <h3 class="pa-profile-panel__name" title="John Doe">John Doe</h3>
99
+ <p class="pa-profile-panel__email" title="john.doe@company.com">john.doe@company.com</p>
100
+ <span class="pa-profile-panel__role">Administrator</span>
101
+ </div>
102
+ <button class="pa-profile-panel__close" onclick="closeProfilePanel()" aria-label="Close Profile">
103
+
104
+ </button>
105
+ </div>
106
+
107
+ <div class="pa-profile-panel__body">
108
+ <!-- Body content scrolls -->
109
+ <nav class="pa-profile-panel__nav">
110
+ <ul>
111
+ <li><a href="#profile" class="pa-profile-panel__nav-item">
112
+ <span class="pa-profile-panel__nav-icon">👤</span>
113
+ Profile Settings
114
+ </a></li>
115
+ <li><a href="#security" class="pa-profile-panel__nav-item">
116
+ <span class="pa-profile-panel__nav-icon">🔒</span>
117
+ Security
118
+ </a></li>
119
+ <li><a href="#notifications" class="pa-profile-panel__nav-item">
120
+ <span class="pa-profile-panel__nav-icon">🔔</span>
121
+ Notifications
122
+ </a></li>
123
+ <li><a href="#preferences" class="pa-profile-panel__nav-item">
124
+ <span class="pa-profile-panel__nav-icon">⚙️</span>
125
+ Preferences
126
+ </a></li>
127
+ <li><a href="#help" class="pa-profile-panel__nav-item">
128
+ <span class="pa-profile-panel__nav-icon">❓</span>
129
+ Help & Support
130
+ </a></li>
131
+ </ul>
132
+ </nav>
133
+ <!-- NO __actions here - they go in __footer -->
134
+ </div>
135
+
136
+ <!-- Fixed footer - always visible at bottom -->
137
+ <div class="pa-profile-panel__footer">
138
+ <button class="pa-btn pa-btn--secondary pa-btn--block">
139
+ Switch Account
140
+ </button>
141
+ <button class="pa-btn pa-btn--danger pa-btn--block">
142
+ Sign Out
143
+ </button>
144
+ </div>
145
+ </div>
146
+ </div>
147
+
148
+
85
149
  <!-- ================================
86
150
  PROFILE PANEL - NO AVATAR (CORPORATE)
87
151
  For apps without user photos
@@ -442,11 +506,12 @@ PANEL TABS (optional):
442
506
  - [data-profile-panel] - Tab panel attribute
443
507
 
444
508
  PANEL BODY:
445
- - .pa-profile-panel__body - Body container
509
+ - .pa-profile-panel__body - Body container (scrollable)
446
510
  - .pa-profile-panel__nav - Navigation menu
447
511
  - .pa-profile-panel__nav-item - Navigation link
448
512
  - .pa-profile-panel__nav-icon - Navigation icon
449
- - .pa-profile-panel__actions - Action buttons container
513
+ - .pa-profile-panel__actions - Action buttons (inside body, scrolls with content)
514
+ - .pa-profile-panel__footer - Fixed footer (outside body, always visible at bottom)
450
515
 
451
516
  FAVORITES SECTION:
452
517
  - .pa-profile-panel__favorites - Favorites container
@@ -149,6 +149,39 @@
149
149
  </div>
150
150
 
151
151
 
152
+ <!-- BORDER TOP TABS -->
153
+
154
+ <!-- Border Top Tabs - active indicator on top instead of bottom -->
155
+ <div class="pa-tabs pa-tabs--border-top">
156
+ <button class="pa-tabs__item pa-tabs__item--active">Profile</button>
157
+ <button class="pa-tabs__item">Favorites</button>
158
+ <button class="pa-tabs__item">Settings</button>
159
+ </div>
160
+ <div class="pa-tabs__content">
161
+ <div class="pa-tabs__panel pa-tabs__panel--active" id="border-top-1">
162
+ Profile content
163
+ </div>
164
+ <div class="pa-tabs__panel" id="border-top-2">
165
+ Favorites content
166
+ </div>
167
+ <div class="pa-tabs__panel" id="border-top-3">
168
+ Settings content
169
+ </div>
170
+ </div>
171
+
172
+ <!-- Border Top + Full Width (profile panel style) -->
173
+ <div class="pa-tabs pa-tabs--border-top pa-tabs--full">
174
+ <button class="pa-tabs__item pa-tabs__item--active">
175
+ <i class="fa-solid fa-user"></i>
176
+ <span>Profile</span>
177
+ </button>
178
+ <button class="pa-tabs__item">
179
+ <i class="fa-solid fa-star"></i>
180
+ <span>Favorites</span>
181
+ </button>
182
+ </div>
183
+
184
+
152
185
  <!-- VERTICAL TABS -->
153
186
 
154
187
  <!-- Vertical Tabs with Icons (use vertical layout wrapper) -->
@@ -539,13 +572,13 @@
539
572
  <!-- Vertical Icon-Only Tabs (use vertical layout wrapper, centered for icon-only, square 3x3) -->
540
573
  <div class="pa-tabs__vertical-layout">
541
574
  <div class="pa-tabs pa-tabs--vertical pa-tabs--centered">
542
- <button class="pa-tabs__item pa-tabs__item--w-3x pa-tabs__item--h-3x pa-tabs__item--active pa-tooltip" data-tooltip="Home">
575
+ <button class="pa-tabs__item minwr-3 minhr-3 pa-tabs__item--active pa-tooltip" data-tooltip="Home">
543
576
  <i class="fa-solid fa-house"></i>
544
577
  </button>
545
- <button class="pa-tabs__item pa-tabs__item--w-3x pa-tabs__item--h-3x pa-tooltip" data-tooltip="Profile">
578
+ <button class="pa-tabs__item minwr-3 minhr-3 pa-tooltip" data-tooltip="Profile">
546
579
  <i class="fa-solid fa-user"></i>
547
580
  </button>
548
- <button class="pa-tabs__item pa-tabs__item--w-3x pa-tabs__item--h-3x pa-tooltip" data-tooltip="Messages">
581
+ <button class="pa-tabs__item minwr-3 minhr-3 pa-tooltip" data-tooltip="Messages">
549
582
  <i class="fa-solid fa-envelope"></i>
550
583
  </button>
551
584
  </div>
@@ -564,12 +597,13 @@
564
597
 
565
598
 
566
599
  <!-- FIXED WIDTH TABS -->
600
+ <!-- Use minwr-* utilities for min-width in rem -->
567
601
 
568
602
  <!-- Fixed Width Tab Items (6rem each) -->
569
603
  <div class="pa-tabs">
570
- <button class="pa-tabs__item pa-tabs__item--w-6x pa-tabs__item--active">View</button>
571
- <button class="pa-tabs__item pa-tabs__item--w-6x">Edit</button>
572
- <button class="pa-tabs__item pa-tabs__item--w-6x">Delete</button>
604
+ <button class="pa-tabs__item minwr-6 pa-tabs__item--active">View</button>
605
+ <button class="pa-tabs__item minwr-6">Edit</button>
606
+ <button class="pa-tabs__item minwr-6">Delete</button>
573
607
  </div>
574
608
  <div class="pa-tabs__content">
575
609
  <div class="pa-tabs__panel pa-tabs__panel--active" id="fixed-1">
@@ -585,15 +619,15 @@
585
619
 
586
620
  <!-- Fixed Width with Icons (8rem each) -->
587
621
  <div class="pa-tabs">
588
- <button class="pa-tabs__item pa-tabs__item--w-8x pa-tabs__item--active">
622
+ <button class="pa-tabs__item minwr-8 pa-tabs__item--active">
589
623
  <i class="fa-solid fa-chart-line"></i>
590
624
  <span>Dashboard</span>
591
625
  </button>
592
- <button class="pa-tabs__item pa-tabs__item--w-8x">
626
+ <button class="pa-tabs__item minwr-8">
593
627
  <i class="fa-solid fa-chart-bar"></i>
594
628
  <span>Analytics</span>
595
629
  </button>
596
- <button class="pa-tabs__item pa-tabs__item--w-8x">
630
+ <button class="pa-tabs__item minwr-8">
597
631
  <i class="fa-solid fa-file-lines"></i>
598
632
  <span>Reports</span>
599
633
  </button>
@@ -893,16 +927,12 @@ SIZES:
893
927
  - (no class) (default size)
894
928
  - pa-tabs--lg (large tabs with generous padding)
895
929
 
896
- FIXED WIDTH (for individual tab items):
897
- - pa-tabs__item--w-1x through pa-tabs__item--w-10x (1rem to 10rem min-width)
898
- - Examples: pa-tabs__item--w-6x (6rem), pa-tabs__item--w-8x (8rem)
930
+ FIXED WIDTH/HEIGHT (use utility classes):
931
+ - minwr-1 through minwr-25 (min-width in rem)
932
+ - minhr-1 through minhr-25 (min-height in rem)
933
+ - Examples: minwr-6 (6rem), minwr-8 (8rem), minhr-3 (3rem)
899
934
  - Use for consistent tab sizing across navigation
900
935
 
901
- FIXED HEIGHT (for individual tab items):
902
- - pa-tabs__item--h-1x through pa-tabs__item--h-10x (1rem to 10rem min-height)
903
- - Examples: pa-tabs__item--h-3x (3rem), pa-tabs__item--h-4x (4rem)
904
- - Useful for vertical tabs with consistent heights
905
-
906
936
  LAYOUT WRAPPERS:
907
937
  - pa-tabs__container (wrapper for horizontal tabs + content)
908
938
  - pa-tabs__container--bordered (card-like border around entire tabs system)
@@ -154,7 +154,7 @@
154
154
 
155
155
  <!-- Badge with Truncated Text and Tooltip -->
156
156
  <span class="pa-tooltip pa-tooltip--bottom" data-tooltip="Very Long Badge Text That Needs Truncation">
157
- <span class="pa-badge pa-badge--info pa-badge--w-8x">Very Long Badge Text That Needs Truncation</span>
157
+ <span class="pa-badge pa-badge--info minwr-8 maxwr-8 text-truncate">Very Long Badge Text That Needs Truncation</span>
158
158
  </span>
159
159
 
160
160
 
@@ -48,25 +48,21 @@
48
48
  &--xs {
49
49
  padding: $btn-padding-xs-v $btn-padding-xs-h;
50
50
  font-size: $font-size-xs;
51
- min-height: 2.8rem; // Enforce consistent height
52
51
  }
53
52
 
54
53
  &--sm {
55
54
  padding: $btn-padding-sm-v $btn-padding-sm-h;
56
55
  font-size: $font-size-sm;
57
- min-height: 3.2rem; // Enforce consistent height (~32px)
58
56
  }
59
57
 
60
58
  &--lg {
61
59
  padding: $btn-padding-lg-v $btn-padding-lg-h;
62
60
  font-size: $font-size-base;
63
- min-height: 4rem; // Enforce consistent height
64
61
  }
65
62
 
66
63
  &--xl {
67
64
  padding: $btn-padding-xl-v $btn-padding-xl-h;
68
65
  font-size: $font-size-lg;
69
- min-height: 4.4rem; // Enforce consistent height
70
66
  }
71
67
 
72
68
  // Button variants (colors)
@@ -324,47 +320,6 @@
324
320
  }
325
321
  }
326
322
 
327
- // Fixed width buttons - multipliers of 1rem
328
- &--w-1x {
329
- min-width: $spinner-size;
330
- }
331
-
332
- &--w-2x {
333
- min-width: $btn-width-2x;
334
- }
335
-
336
- &--w-3x {
337
- min-width: $btn-width-3x;
338
- }
339
-
340
- &--w-4x {
341
- min-width: $btn-width-4x;
342
- }
343
-
344
- &--w-5x {
345
- min-width: $btn-width-5x;
346
- }
347
-
348
- &--w-6x {
349
- min-width: $btn-width-6x;
350
- }
351
-
352
- &--w-7x {
353
- min-width: $btn-width-7x;
354
- }
355
-
356
- &--w-8x {
357
- min-width: $btn-width-8x;
358
- }
359
-
360
- &--w-9x {
361
- min-width: $btn-width-9x;
362
- }
363
-
364
- &--w-10x {
365
- min-width: $btn-width-10x;
366
- }
367
-
368
323
  // Content alignment modifiers (position content within button)
369
324
  // Button always keeps its horizontal padding (0.75rem on both sides)
370
325
  // These classes control content position and remove icon padding on aligned sides
@@ -410,15 +365,6 @@
410
365
  flex-wrap: wrap;
411
366
  align-items: center;
412
367
 
413
- // === Gap Size Variants ===
414
- &--compact {
415
- gap: $btn-group-gap-compact;
416
- }
417
-
418
- &--loose {
419
- gap: $btn-group-gap-loose;
420
- }
421
-
422
368
  // === Direction Variants ===
423
369
  &--vertical {
424
370
  flex-direction: column;
@@ -88,7 +88,7 @@
88
88
  &__header {
89
89
  padding: $spacing-lg;
90
90
  background-color: var(--pa-header-bg);
91
- border-bottom: 1px solid var(--pa-text-primary);
91
+ border-bottom: 1px solid var(--pa-border-color);
92
92
  display: flex;
93
93
  align-items: flex-start;
94
94
  gap: $spacing-base;
@@ -115,7 +115,7 @@
115
115
 
116
116
  &__avatar-icon {
117
117
  font-size: $font-size-4xl;
118
- color: $accent-color;
118
+ color: var(--pa-accent);
119
119
  }
120
120
 
121
121
  &__info {
@@ -186,7 +186,7 @@
186
186
 
187
187
  &__body {
188
188
  flex: 1;
189
- padding: $spacing-lg;
189
+ padding: $spacing-lg 0; // Vertical only - items handle horizontal
190
190
  display: flex;
191
191
  flex-direction: column;
192
192
  gap: $profile-section-gap;
@@ -231,7 +231,10 @@
231
231
  &__nav-icon {
232
232
  font-size: $font-size-base;
233
233
  width: $sidebar-icon-size;
234
- text-align: center;
234
+ height: $sidebar-icon-size;
235
+ display: flex;
236
+ align-items: center;
237
+ justify-content: center;
235
238
  }
236
239
 
237
240
  &__actions {
@@ -239,11 +242,23 @@
239
242
  flex-direction: column;
240
243
  gap: $spacing-md;
241
244
  margin-top: auto;
245
+ padding: 0 $profile-panel-content-padding;
246
+ }
247
+
248
+ // Fixed footer - always visible at bottom, content scrolls above
249
+ &__footer {
250
+ flex-shrink: 0;
251
+ padding: $spacing-lg; // Matches header padding
252
+ border-top: $border-width-base solid var(--pa-border-color);
253
+ background-color: var(--pa-card-bg);
254
+ display: flex;
255
+ flex-direction: column;
256
+ gap: $spacing-md;
242
257
  }
243
258
 
244
259
  // Tabs section
245
260
  &__tabs {
246
- padding: 0 $spacing-lg;
261
+ padding: 0 $profile-panel-content-padding;
247
262
  border-bottom: $border-width-base solid var(--pa-border-color);
248
263
  background-color: var(--pa-header-bg);
249
264
 
@@ -258,7 +273,7 @@
258
273
 
259
274
  &:hover {
260
275
  color: var(--pa-header-text);
261
- background-color: rgba(255, 255, 255, 0.1);
276
+ background-color: var(--pa-accent-light);
262
277
  }
263
278
 
264
279
  &--active {
@@ -270,10 +285,6 @@
270
285
 
271
286
  // Favorites section
272
287
  &__favorites {
273
- display: flex;
274
- flex-direction: column;
275
- gap: $spacing-sm;
276
-
277
288
  ul {
278
289
  list-style: none;
279
290
  margin: 0;
@@ -312,7 +323,10 @@
312
323
  &__favorite-icon {
313
324
  font-size: $font-size-base;
314
325
  width: $sidebar-icon-size;
315
- text-align: center;
326
+ height: $sidebar-icon-size;
327
+ display: flex;
328
+ align-items: center;
329
+ justify-content: center;
316
330
  }
317
331
 
318
332
  &__favorite-label {
@@ -325,7 +339,7 @@
325
339
  margin-left: auto;
326
340
  background: none;
327
341
  border: none;
328
- padding: $spacing-sm;
342
+ padding: $spacing-xs;
329
343
  color: var(--pa-text-secondary);
330
344
  cursor: pointer;
331
345
  border-radius: $border-radius;
@@ -348,7 +362,7 @@
348
362
 
349
363
  &__favorites-add {
350
364
  margin-top: auto;
351
- padding-top: $spacing-md;
365
+ padding: $spacing-md $profile-panel-content-padding 0;
352
366
  }
353
367
  }
354
368
 
@@ -275,6 +275,22 @@
275
275
  }
276
276
  }
277
277
 
278
+ // Border top variant - active indicator on top instead of bottom
279
+ &--border-top {
280
+ border-bottom: none;
281
+ border-top: $border-width-base solid var(--pa-border-color);
282
+
283
+ .pa-tabs__item {
284
+ border-bottom: none;
285
+ border-top: $border-width-medium solid transparent;
286
+
287
+ &--active {
288
+ border-top-color: $accent-color;
289
+ border-bottom-color: transparent;
290
+ }
291
+ }
292
+ }
293
+
278
294
  // Size variants
279
295
  &--sm {
280
296
  .pa-tabs__item {
@@ -352,87 +368,4 @@
352
368
  }
353
369
  }
354
370
 
355
- // Fixed width tab items - multipliers of 1rem
356
- .pa-tabs__item {
357
- &--w-1x {
358
- min-width: 1rem;
359
- }
360
-
361
- &--w-2x {
362
- min-width: 2rem;
363
- }
364
-
365
- &--w-3x {
366
- min-width: 3rem;
367
- }
368
-
369
- &--w-4x {
370
- min-width: 4rem;
371
- }
372
-
373
- &--w-5x {
374
- min-width: 5rem;
375
- }
376
-
377
- &--w-6x {
378
- min-width: 6rem;
379
- }
380
-
381
- &--w-7x {
382
- min-width: 7rem;
383
- }
384
-
385
- &--w-8x {
386
- min-width: 8rem;
387
- }
388
-
389
- &--w-9x {
390
- min-width: 9rem;
391
- }
392
-
393
- &--w-10x {
394
- min-width: 10rem;
395
- }
396
-
397
- // Fixed height tab items - multipliers of 1rem
398
- &--h-1x {
399
- min-height: 1rem;
400
- }
401
-
402
- &--h-2x {
403
- min-height: 2rem;
404
- }
405
-
406
- &--h-3x {
407
- min-height: 3rem;
408
- }
409
-
410
- &--h-4x {
411
- min-height: 4rem;
412
- }
413
-
414
- &--h-5x {
415
- min-height: 5rem;
416
- }
417
-
418
- &--h-6x {
419
- min-height: 6rem;
420
- }
421
-
422
- &--h-7x {
423
- min-height: 7rem;
424
- }
425
-
426
- &--h-8x {
427
- min-height: 8rem;
428
- }
429
-
430
- &--h-9x {
431
- min-height: 9rem;
432
- }
433
-
434
- &--h-10x {
435
- min-height: 10rem;
436
- }
437
- }
438
371
  }
@@ -102,27 +102,6 @@
102
102
  border-color: var(--pa-btn-dark-bg);
103
103
  }
104
104
 
105
- // Fixed-width badges with ellipsis
106
- &--w-1x { min-width: 1.6rem; max-width: 1.6rem; }
107
- &--w-2x { min-width: 3.2rem; max-width: 3.2rem; }
108
- &--w-3x { min-width: 4.8rem; max-width: 4.8rem; }
109
- &--w-4x { min-width: 6.4rem; max-width: 6.4rem; }
110
- &--w-5x { min-width: 8rem; max-width: 8rem; }
111
- &--w-6x { min-width: 9.6rem; max-width: 9.6rem; }
112
- &--w-7x { min-width: 11.2rem; max-width: 11.2rem; }
113
- &--w-8x { min-width: 12.8rem; max-width: 12.8rem; }
114
- &--w-9x { min-width: 14.4rem; max-width: 14.4rem; }
115
- &--w-10x { min-width: 16rem; max-width: 16rem; }
116
-
117
- // Apply ellipsis to fixed-width badges
118
- &[class*="--w-"] {
119
- display: inline-block;
120
- overflow: hidden;
121
- text-overflow: ellipsis;
122
- white-space: nowrap;
123
- vertical-align: middle;
124
- }
125
-
126
105
  // Left-side ellipsis for paths/hierarchies where end is important
127
106
  &--ellipsis-left {
128
107
  direction: rtl;