@keenmate/pure-admin-core 1.0.0-rc03 → 1.0.0-rc05
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/README.md +92 -0
- package/dist/css/main.css +1100 -205
- package/package.json +1 -1
- package/snippets/badges.html +7 -6
- package/snippets/buttons.html +15 -13
- package/snippets/modals.html +43 -4
- package/snippets/profile.html +67 -2
- package/snippets/tables.html +8 -6
- package/snippets/tabs.html +47 -17
- package/snippets/tooltips.html +69 -1
- package/src/scss/core-components/_buttons.scss +6 -54
- package/src/scss/core-components/_cards.scss +40 -4
- package/src/scss/core-components/_profile.scss +27 -13
- package/src/scss/core-components/_tables.scss +37 -13
- package/src/scss/core-components/_tabs.scss +135 -83
- package/src/scss/core-components/_tooltips.scss +40 -0
- package/src/scss/core-components/badges/_badge-base.scss +0 -21
- package/src/scss/core-components/forms/_form-inputs.scss +7 -1
- package/src/scss/themes/audi-light.scss +5 -1
- package/src/scss/themes/audi.scss +5 -3
- package/src/scss/utilities.scss +197 -0
- package/src/scss/variables/_components.scss +65 -27
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
// Cards
|
|
8
8
|
.pa-card {
|
|
9
9
|
background: var(--pa-card-bg);
|
|
10
|
-
border: $border-width
|
|
11
|
-
border-radius: $border-radius
|
|
10
|
+
border: $card-border-width solid var(--pa-border-color);
|
|
11
|
+
border-radius: $card-border-radius;
|
|
12
12
|
margin-bottom: $spacing-base;
|
|
13
13
|
box-shadow: $shadow-sm;
|
|
14
14
|
transition: box-shadow $transition-fast $easing-snappy;
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
&__header {
|
|
23
23
|
padding: $card-header-padding-v $card-header-padding-h;
|
|
24
24
|
min-height: $card-header-min-height;
|
|
25
|
-
border-top-left-radius: $border-radius
|
|
26
|
-
border-top-right-radius: $border-radius
|
|
25
|
+
border-top-left-radius: $card-border-radius;
|
|
26
|
+
border-top-right-radius: $card-border-radius;
|
|
27
27
|
border-bottom: $border-width-base solid var(--pa-border-color);
|
|
28
28
|
background: var(--pa-card-header-bg);
|
|
29
29
|
display: flex;
|
|
@@ -60,6 +60,12 @@
|
|
|
60
60
|
color: var(--pa-text-primary);
|
|
61
61
|
font-size: $font-size-base;
|
|
62
62
|
}
|
|
63
|
+
|
|
64
|
+
// Buttons in card headers - negative margin to prevent header height growth
|
|
65
|
+
.pa-btn {
|
|
66
|
+
margin-top: -0.25rem;
|
|
67
|
+
margin-bottom: -0.25rem;
|
|
68
|
+
}
|
|
63
69
|
}
|
|
64
70
|
|
|
65
71
|
&__title {
|
|
@@ -241,6 +247,36 @@
|
|
|
241
247
|
display: block;
|
|
242
248
|
}
|
|
243
249
|
}
|
|
250
|
+
|
|
251
|
+
// Inline tabs in header (for side-by-side card alignment)
|
|
252
|
+
&__tabs--inline {
|
|
253
|
+
display: flex;
|
|
254
|
+
gap: $spacing-xs;
|
|
255
|
+
margin: -$card-header-padding-v 0; // Negative margin to fill header height
|
|
256
|
+
border-bottom: none;
|
|
257
|
+
background: none;
|
|
258
|
+
|
|
259
|
+
.pa-card__tab {
|
|
260
|
+
padding: $card-tab-inline-padding-v $card-tab-inline-padding-h;
|
|
261
|
+
border: none;
|
|
262
|
+
border-radius: $border-radius;
|
|
263
|
+
font-size: $font-size-sm;
|
|
264
|
+
background: transparent;
|
|
265
|
+
color: var(--pa-text-secondary);
|
|
266
|
+
cursor: pointer;
|
|
267
|
+
transition: all $transition-fast $easing-snappy;
|
|
268
|
+
|
|
269
|
+
&:hover {
|
|
270
|
+
background-color: rgba($accent-color, $card-tab-hover-opacity);
|
|
271
|
+
color: var(--pa-text-primary);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
&--active {
|
|
275
|
+
background: var(--pa-accent);
|
|
276
|
+
color: var(--pa-btn-primary-text);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
}
|
|
244
280
|
}
|
|
245
281
|
|
|
246
282
|
// Clickable cards (anchor-wrapped)
|
|
@@ -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-
|
|
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:
|
|
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
|
-
|
|
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 $
|
|
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:
|
|
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
|
-
|
|
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-
|
|
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
|
|
365
|
+
padding: $spacing-md $profile-panel-content-padding 0;
|
|
352
366
|
}
|
|
353
367
|
}
|
|
354
368
|
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
td {
|
|
41
41
|
color: var(--pa-text-primary);
|
|
42
42
|
background-color: var(--pa-table-bg);
|
|
43
|
+
height: $table-cell-height;
|
|
43
44
|
|
|
44
45
|
// Buttons in table cells - negative margin to prevent row height growth
|
|
45
46
|
.pa-btn {
|
|
@@ -62,28 +63,51 @@
|
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
|
|
65
|
-
//
|
|
66
|
-
&--
|
|
67
|
-
th,
|
|
66
|
+
// Size variants - synchronized with button/input sizes
|
|
67
|
+
&--xs {
|
|
68
|
+
th, td {
|
|
69
|
+
padding: $table-padding-xs-v $table-padding-xs-h;
|
|
70
|
+
}
|
|
68
71
|
td {
|
|
69
|
-
|
|
70
|
-
($table-padding-base-h * $table-spacing-2x-multiplier);
|
|
72
|
+
height: $table-cell-height-xs;
|
|
71
73
|
}
|
|
72
74
|
}
|
|
73
75
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
76
|
+
&--sm {
|
|
77
|
+
th, td {
|
|
78
|
+
padding: $table-padding-sm-v $table-padding-sm-h;
|
|
79
|
+
}
|
|
77
80
|
td {
|
|
78
|
-
|
|
79
|
-
|
|
81
|
+
height: $table-cell-height-sm;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
&--lg {
|
|
86
|
+
th, td {
|
|
87
|
+
padding: $table-padding-lg-v $table-padding-lg-h;
|
|
88
|
+
}
|
|
89
|
+
td {
|
|
90
|
+
height: $table-cell-height-lg;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
&--xl {
|
|
95
|
+
th, td {
|
|
96
|
+
padding: $table-padding-xl-v $table-padding-xl-h;
|
|
97
|
+
}
|
|
98
|
+
td {
|
|
99
|
+
height: $table-cell-height-xl;
|
|
80
100
|
}
|
|
81
101
|
}
|
|
82
102
|
|
|
83
103
|
// Hover effects
|
|
84
|
-
|
|
85
|
-
//
|
|
86
|
-
|
|
104
|
+
@if $table-hover-accent-width > 0 {
|
|
105
|
+
// Header alignment - add padding-left instead of border
|
|
106
|
+
th:first-child {
|
|
107
|
+
padding-left: $table-hover-accent-width + $table-padding-base-h;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
tbody tr {
|
|
87
111
|
border-#{$table-hover-accent-position}: #{$table-hover-accent-width} solid transparent;
|
|
88
112
|
transition: border-color $transition-normal $easing-smooth;
|
|
89
113
|
}
|
|
@@ -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 {
|
|
@@ -320,6 +336,125 @@
|
|
|
320
336
|
padding-top: $spacing-md;
|
|
321
337
|
}
|
|
322
338
|
}
|
|
339
|
+
|
|
340
|
+
// Card variant - tabs act as card header (same height as pa-card__header)
|
|
341
|
+
&--card {
|
|
342
|
+
position: relative; // For dropdown positioning
|
|
343
|
+
border: $card-border-width solid var(--pa-border-color);
|
|
344
|
+
border-radius: $card-border-radius;
|
|
345
|
+
background-color: var(--pa-card-bg);
|
|
346
|
+
box-shadow: $shadow-sm;
|
|
347
|
+
|
|
348
|
+
.pa-tabs {
|
|
349
|
+
height: $card-header-min-height;
|
|
350
|
+
padding: $card-header-padding-v $card-header-padding-h;
|
|
351
|
+
background: var(--pa-card-header-bg);
|
|
352
|
+
border-bottom: $border-width-base solid var(--pa-border-color);
|
|
353
|
+
box-sizing: border-box;
|
|
354
|
+
border-top-left-radius: $card-border-radius;
|
|
355
|
+
border-top-right-radius: $card-border-radius;
|
|
356
|
+
margin-bottom: 0;
|
|
357
|
+
align-items: center;
|
|
358
|
+
gap: $spacing-xs;
|
|
359
|
+
flex-wrap: nowrap;
|
|
360
|
+
overflow: visible; // Allow dropdown to overflow
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
.pa-tabs__content {
|
|
364
|
+
padding: $card-body-padding-v $card-body-padding-h;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
.pa-tabs__panel {
|
|
368
|
+
padding-top: 0;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
// Overflow toggle for tabs that don't fit
|
|
372
|
+
.pa-tabs__overflow {
|
|
373
|
+
position: relative;
|
|
374
|
+
margin-left: auto;
|
|
375
|
+
flex-shrink: 0;
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
.pa-tabs__overflow-toggle {
|
|
379
|
+
position: relative;
|
|
380
|
+
display: flex;
|
|
381
|
+
align-items: center;
|
|
382
|
+
justify-content: center;
|
|
383
|
+
width: $card-header-min-height;
|
|
384
|
+
height: 100%;
|
|
385
|
+
padding: 0;
|
|
386
|
+
border: none;
|
|
387
|
+
background: transparent;
|
|
388
|
+
color: var(--pa-text-secondary);
|
|
389
|
+
cursor: pointer;
|
|
390
|
+
transition: all $transition-fast $easing-snappy;
|
|
391
|
+
border-left: $border-width-base solid var(--pa-border-color);
|
|
392
|
+
margin: (-$card-header-padding-v) (-$card-header-padding-h) (-$card-header-padding-v) 0;
|
|
393
|
+
box-sizing: content-box;
|
|
394
|
+
height: $card-header-min-height;
|
|
395
|
+
|
|
396
|
+
&:hover {
|
|
397
|
+
background-color: rgba($accent-color, $card-tab-hover-opacity);
|
|
398
|
+
color: var(--pa-text-primary);
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
// When overflow contains the active tab
|
|
402
|
+
&--has-active {
|
|
403
|
+
color: var(--pa-accent);
|
|
404
|
+
|
|
405
|
+
&::after {
|
|
406
|
+
content: '';
|
|
407
|
+
position: absolute;
|
|
408
|
+
bottom: 0;
|
|
409
|
+
left: 0;
|
|
410
|
+
right: 0;
|
|
411
|
+
height: $border-width-medium;
|
|
412
|
+
background: var(--pa-accent);
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
i {
|
|
417
|
+
font-size: $font-size-sm;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
.pa-tabs__overflow-menu {
|
|
422
|
+
position: absolute;
|
|
423
|
+
top: $card-header-min-height;
|
|
424
|
+
right: 0;
|
|
425
|
+
min-width: 15rem;
|
|
426
|
+
background: var(--pa-card-bg);
|
|
427
|
+
border: $card-border-width solid var(--pa-border-color);
|
|
428
|
+
border-radius: $border-radius;
|
|
429
|
+
box-shadow: $shadow-lg;
|
|
430
|
+
z-index: $z-index-dropdown;
|
|
431
|
+
display: none;
|
|
432
|
+
flex-direction: column;
|
|
433
|
+
padding: $spacing-xs 0;
|
|
434
|
+
|
|
435
|
+
&--open {
|
|
436
|
+
display: flex;
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
.pa-tabs__item {
|
|
440
|
+
padding: $spacing-sm $spacing-base;
|
|
441
|
+
border: none;
|
|
442
|
+
border-bottom: none;
|
|
443
|
+
border-radius: 0;
|
|
444
|
+
text-align: left;
|
|
445
|
+
white-space: nowrap;
|
|
446
|
+
|
|
447
|
+
&:hover {
|
|
448
|
+
background-color: rgba($accent-color, $card-tab-hover-opacity);
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
&--active {
|
|
452
|
+
background-color: rgba($accent-color, 0.1);
|
|
453
|
+
border-bottom: none;
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
}
|
|
323
458
|
}
|
|
324
459
|
|
|
325
460
|
// Vertical tabs layout wrapper (for proper spacing with content)
|
|
@@ -352,87 +487,4 @@
|
|
|
352
487
|
}
|
|
353
488
|
}
|
|
354
489
|
|
|
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
490
|
}
|
|
@@ -237,6 +237,29 @@
|
|
|
237
237
|
border-left-color: var(--pa-btn-danger-bg);
|
|
238
238
|
}
|
|
239
239
|
|
|
240
|
+
// Numbered color variants (color-1 through color-9)
|
|
241
|
+
// These use theme-customizable colors from --pa-color-* CSS variables
|
|
242
|
+
@for $i from 1 through 9 {
|
|
243
|
+
&--color-#{$i}::before {
|
|
244
|
+
background-color: var(--pa-color-#{$i});
|
|
245
|
+
}
|
|
246
|
+
&--color-#{$i}::after {
|
|
247
|
+
border-top-color: var(--pa-color-#{$i});
|
|
248
|
+
}
|
|
249
|
+
&--color-#{$i}.pa-tooltip--right::after {
|
|
250
|
+
border-top-color: transparent;
|
|
251
|
+
border-right-color: var(--pa-color-#{$i});
|
|
252
|
+
}
|
|
253
|
+
&--color-#{$i}.pa-tooltip--bottom::after {
|
|
254
|
+
border-top-color: transparent;
|
|
255
|
+
border-bottom-color: var(--pa-color-#{$i});
|
|
256
|
+
}
|
|
257
|
+
&--color-#{$i}.pa-tooltip--left::after {
|
|
258
|
+
border-top-color: transparent;
|
|
259
|
+
border-left-color: var(--pa-color-#{$i});
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
240
263
|
// Smart positioning - collision detection adjustments
|
|
241
264
|
// Applied dynamically by JavaScript based on viewport boundaries
|
|
242
265
|
|
|
@@ -390,6 +413,7 @@
|
|
|
390
413
|
font-size: $font-size-sm;
|
|
391
414
|
line-height: $line-height-base;
|
|
392
415
|
color: var(--pa-text-primary);
|
|
416
|
+
text-align: left; // Reset inherited alignment for rich content
|
|
393
417
|
|
|
394
418
|
p {
|
|
395
419
|
margin: 0 0 $spacing-sm 0;
|
|
@@ -454,6 +478,15 @@
|
|
|
454
478
|
min-width: $popover-lg-min-width;
|
|
455
479
|
max-width: $popover-lg-max-width;
|
|
456
480
|
}
|
|
481
|
+
|
|
482
|
+
// Alignment variants
|
|
483
|
+
&--center &__body {
|
|
484
|
+
text-align: center;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
&--right &__body {
|
|
488
|
+
text-align: right;
|
|
489
|
+
}
|
|
457
490
|
}
|
|
458
491
|
|
|
459
492
|
// ========================================
|
|
@@ -500,4 +533,11 @@
|
|
|
500
533
|
background-color: var(--pa-btn-danger-bg);
|
|
501
534
|
color: var(--pa-btn-danger-text);
|
|
502
535
|
}
|
|
536
|
+
|
|
537
|
+
// Numbered color variants (color-1 through color-9)
|
|
538
|
+
@for $i from 1 through 9 {
|
|
539
|
+
&.pa-tooltip--color-#{$i} {
|
|
540
|
+
background-color: var(--pa-color-#{$i});
|
|
541
|
+
}
|
|
542
|
+
}
|
|
503
543
|
}
|
|
@@ -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;
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
.pa-input {
|
|
8
8
|
width: 100%;
|
|
9
|
+
height: #{$base-input-size-md-height}rem;
|
|
9
10
|
padding: $input-padding-v $input-padding-h;
|
|
10
11
|
border: $border-width-base solid var(--pa-border-color);
|
|
11
12
|
border-radius: $border-radius;
|
|
@@ -23,6 +24,7 @@
|
|
|
23
24
|
|
|
24
25
|
.pa-select {
|
|
25
26
|
width: 100%;
|
|
27
|
+
height: #{$base-input-size-md-height}rem;
|
|
26
28
|
padding: $select-padding-v $select-padding-h;
|
|
27
29
|
border: $border-width-base solid var(--pa-border-color);
|
|
28
30
|
border-radius: $border-radius;
|
|
@@ -61,27 +63,31 @@
|
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
65
|
|
|
64
|
-
// Input Sizes
|
|
66
|
+
// Input Sizes - heights aligned with $base-input-size-* variables
|
|
65
67
|
.pa-input--xs,
|
|
66
68
|
.pa-select--xs {
|
|
69
|
+
height: #{$base-input-size-xs-height}rem;
|
|
67
70
|
padding: $input-padding-xs-v $input-padding-h;
|
|
68
71
|
font-size: $font-size-xs;
|
|
69
72
|
}
|
|
70
73
|
|
|
71
74
|
.pa-input--sm,
|
|
72
75
|
.pa-select--sm {
|
|
76
|
+
height: #{$base-input-size-sm-height}rem;
|
|
73
77
|
padding: $input-padding-v $input-padding-h;
|
|
74
78
|
font-size: $font-size-sm;
|
|
75
79
|
}
|
|
76
80
|
|
|
77
81
|
.pa-input--lg,
|
|
78
82
|
.pa-select--lg {
|
|
83
|
+
height: #{$base-input-size-lg-height}rem;
|
|
79
84
|
padding: $input-padding-v $input-padding-h;
|
|
80
85
|
font-size: $font-size-base;
|
|
81
86
|
}
|
|
82
87
|
|
|
83
88
|
.pa-input--xl,
|
|
84
89
|
.pa-select--xl {
|
|
90
|
+
height: #{$base-input-size-xl-height}rem;
|
|
85
91
|
padding: $input-padding-v $input-padding-h;
|
|
86
92
|
font-size: $font-size-lg;
|
|
87
93
|
}
|
|
@@ -90,7 +90,7 @@ $table-header-bg: $audi-gray-100;
|
|
|
90
90
|
$table-hover-bg: $audi-gray-50;
|
|
91
91
|
|
|
92
92
|
// Enable red accent on table row hover (Audi signature detail)
|
|
93
|
-
$table-hover-accent-width: 3px
|
|
93
|
+
$table-hover-accent-width: 0.3rem; // 3px in 10px base
|
|
94
94
|
$table-hover-accent-color: $accent-color;
|
|
95
95
|
$table-hover-accent-position: left;
|
|
96
96
|
|
|
@@ -200,6 +200,10 @@ $danger-bg-light: rgba(255, 0, 0, 0.1);
|
|
|
200
200
|
// Set body font
|
|
201
201
|
$body-font-family: "Fira Sans Condensed", "Arial Narrow", "Arial", sans-serif;
|
|
202
202
|
|
|
203
|
+
// Card styling - thicker border for Audi design language
|
|
204
|
+
$card-border-width: $border-width-medium;
|
|
205
|
+
$card-border-radius: 0; // Sharp edges
|
|
206
|
+
|
|
203
207
|
// Import core styles with overridden variables
|
|
204
208
|
@import '../core';
|
|
205
209
|
@import '../utilities';
|
|
@@ -107,7 +107,7 @@ $table-header-bg: $audi-black;
|
|
|
107
107
|
$table-hover-bg: $audi-gray-light;
|
|
108
108
|
|
|
109
109
|
// Enable red accent on table row hover (Audi signature detail)
|
|
110
|
-
$table-hover-accent-width: 3px
|
|
110
|
+
$table-hover-accent-width: 0.3rem; // 3px in 10px base
|
|
111
111
|
$table-hover-accent-color: $accent-color; // Uses the red #ff0000
|
|
112
112
|
$table-hover-accent-position: left;
|
|
113
113
|
|
|
@@ -220,6 +220,10 @@ $danger-bg-light: rgba(255, 0, 0, 0.25);
|
|
|
220
220
|
// 4. Override font family SCSS variable after fonts are defined
|
|
221
221
|
$body-font-family: "Fira Sans Condensed", "Arial Narrow", "Arial", sans-serif;
|
|
222
222
|
|
|
223
|
+
// Card styling - thicker border for Audi design language
|
|
224
|
+
$card-border-width: $border-width-medium;
|
|
225
|
+
$card-border-radius: 0; // Sharp edges
|
|
226
|
+
|
|
223
227
|
// 5. Import core framework styles (will use all our SCSS variables)
|
|
224
228
|
@import '../core';
|
|
225
229
|
|
|
@@ -256,8 +260,6 @@ $body-font-family: "Fira Sans Condensed", "Arial Narrow", "Arial", sans-serif;
|
|
|
256
260
|
}
|
|
257
261
|
|
|
258
262
|
.pa-card {
|
|
259
|
-
border-radius: 0 !important; // Sharp edges
|
|
260
|
-
border: $border-width-medium solid $border-color;
|
|
261
263
|
box-shadow: 0 $spacing-xs ($spacing-sm * 2) rgba($audi-black, 0.8);
|
|
262
264
|
}
|
|
263
265
|
|