@keenmate/pure-admin-core 1.5.0 → 2.0.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.
package/dist/css/main.css CHANGED
@@ -1935,6 +1935,26 @@
1935
1935
  min-height: 50rem !important;
1936
1936
  }
1937
1937
 
1938
+ .minhr-60 {
1939
+ min-height: 60rem !important;
1940
+ }
1941
+
1942
+ .minhr-70 {
1943
+ min-height: 70rem !important;
1944
+ }
1945
+
1946
+ .minhr-80 {
1947
+ min-height: 80rem !important;
1948
+ }
1949
+
1950
+ .minhr-90 {
1951
+ min-height: 90rem !important;
1952
+ }
1953
+
1954
+ .minhr-100 {
1955
+ min-height: 100rem !important;
1956
+ }
1957
+
1938
1958
  .maxhr-1 {
1939
1959
  max-height: 1rem !important;
1940
1960
  }
@@ -2579,6 +2599,10 @@
2579
2599
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
2580
2600
  }
2581
2601
 
2602
+ .pa-cq {
2603
+ container-type: inline-size;
2604
+ }
2605
+
2582
2606
  /* Pure Admin Visual Framework - Core Styles */
2583
2607
  /* ========================================
2584
2608
  Component Imports
@@ -2886,6 +2910,7 @@ body.pa-layout--sticky .pa-layout__inner {
2886
2910
  .pa-layout__main {
2887
2911
  flex: 1;
2888
2912
  padding: 1.6rem;
2913
+ container-type: inline-size;
2889
2914
  }
2890
2915
 
2891
2916
  .pa-layout__footer {
@@ -3987,7 +4012,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
3987
4012
  margin-inline-start: 95%;
3988
4013
  }
3989
4014
 
3990
- @media (min-width: 576px) {
4015
+ @container (min-width: 576px) {
3991
4016
  .pa-col-sm-5 {
3992
4017
  flex: 0 0 5%;
3993
4018
  max-width: 5%;
@@ -4260,7 +4285,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
4260
4285
  width: auto;
4261
4286
  }
4262
4287
  }
4263
- @media (min-width: 768px) {
4288
+ @container (min-width: 768px) {
4264
4289
  .pa-col-md-5 {
4265
4290
  flex: 0 0 5%;
4266
4291
  max-width: 5%;
@@ -4533,7 +4558,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
4533
4558
  width: auto;
4534
4559
  }
4535
4560
  }
4536
- @media (min-width: 992px) {
4561
+ @container (min-width: 992px) {
4537
4562
  .pa-col-lg-5 {
4538
4563
  flex: 0 0 5%;
4539
4564
  max-width: 5%;
@@ -4806,7 +4831,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
4806
4831
  width: auto;
4807
4832
  }
4808
4833
  }
4809
- @media (min-width: 1200px) {
4834
+ @container (min-width: 1200px) {
4810
4835
  .pa-col-xl-5 {
4811
4836
  flex: 0 0 5%;
4812
4837
  max-width: 5%;
@@ -5514,6 +5539,34 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
5514
5539
  .pa-card--stat .pa-card__body {
5515
5540
  padding: 2.4rem 1.6rem;
5516
5541
  }
5542
+ .pa-card--ghost {
5543
+ background: transparent !important;
5544
+ border: none !important;
5545
+ box-shadow: none !important;
5546
+ }
5547
+ .pa-card--ghost:hover {
5548
+ box-shadow: none !important;
5549
+ }
5550
+ .pa-card--ghost .pa-card__header {
5551
+ background: transparent !important;
5552
+ border-bottom: none !important;
5553
+ }
5554
+ .pa-card--ghost .pa-card__footer {
5555
+ background: transparent !important;
5556
+ border-top: none !important;
5557
+ }
5558
+ .pa-card--live-up {
5559
+ background-color: rgba(40, 167, 69, 0.1);
5560
+ transition: background-color 0.3s ease;
5561
+ }
5562
+ .pa-card--live-down {
5563
+ background-color: rgba(220, 53, 69, 0.1);
5564
+ transition: background-color 0.3s ease;
5565
+ }
5566
+ .pa-card--live-neutral {
5567
+ background-color: #ffffff;
5568
+ transition: background-color 0.3s ease;
5569
+ }
5517
5570
  .pa-card--color-1 {
5518
5571
  border-color: var(--pa-color-1);
5519
5572
  }
@@ -6162,37 +6215,37 @@ a.pa-card p {
6162
6215
  color: var(--pa-text-color-2);
6163
6216
  font-size: 1.4rem;
6164
6217
  }
6165
- .pa-stat--hero {
6218
+ .pa-stat--hero, .pa-stat--hero-compact {
6166
6219
  display: block;
6167
6220
  text-align: center;
6168
- padding: 2.4rem;
6221
+ padding: 0.8rem 0.8rem 1.2rem;
6169
6222
  }
6170
- .pa-stat--hero .pa-stat__label {
6171
- font-size: 1.4rem;
6223
+ .pa-stat--hero .pa-stat__label, .pa-stat--hero-compact .pa-stat__label {
6224
+ font-size: 1.2rem;
6172
6225
  text-transform: uppercase;
6173
6226
  letter-spacing: 0.05em;
6174
- font-weight: 500;
6227
+ font-weight: 600;
6175
6228
  color: var(--pa-text-color-2);
6176
- margin-bottom: 0.8rem;
6229
+ margin-bottom: 0.4rem;
6177
6230
  }
6178
- .pa-stat--hero .pa-stat__value {
6179
- font-size: 3.2rem;
6231
+ .pa-stat--hero .pa-stat__value, .pa-stat--hero-compact .pa-stat__value {
6232
+ font-size: 4.48rem;
6180
6233
  font-weight: 700;
6181
6234
  color: var(--pa-text-color-1);
6182
- line-height: 1.1;
6183
- margin-bottom: 0.8rem;
6235
+ line-height: 1;
6236
+ margin-bottom: 0.4rem;
6184
6237
  }
6185
- .pa-stat--hero .pa-stat__change {
6238
+ .pa-stat--hero .pa-stat__change, .pa-stat--hero-compact .pa-stat__change {
6186
6239
  font-size: 1.2rem;
6187
- font-weight: 500;
6240
+ font-weight: 600;
6188
6241
  }
6189
- .pa-stat--hero .pa-stat__change--positive {
6242
+ .pa-stat--hero .pa-stat__change--positive, .pa-stat--hero-compact .pa-stat__change--positive {
6190
6243
  color: #28a745;
6191
6244
  }
6192
- .pa-stat--hero .pa-stat__change--negative {
6245
+ .pa-stat--hero .pa-stat__change--negative, .pa-stat--hero-compact .pa-stat__change--negative {
6193
6246
  color: #dc3545;
6194
6247
  }
6195
- .pa-stat--hero .pa-stat__change--neutral {
6248
+ .pa-stat--hero .pa-stat__change--neutral, .pa-stat--hero-compact .pa-stat__change--neutral {
6196
6249
  color: var(--pa-text-color-2);
6197
6250
  }
6198
6251
  .pa-stat--square {
@@ -10528,6 +10581,11 @@ web-multiselect {
10528
10581
  .pa-table-card:has(.pa-detail-view) .pa-table-card__body {
10529
10582
  position: relative;
10530
10583
  overflow: hidden;
10584
+ display: flex;
10585
+ flex-direction: column;
10586
+ }
10587
+ .pa-table-card:has(.pa-detail-view) .pa-table-card__body .pa-detail-view {
10588
+ flex: 1;
10531
10589
  }
10532
10590
  .pa-table-card__header {
10533
10591
  padding: 0.5rem 1rem;
@@ -13868,6 +13926,9 @@ code {
13868
13926
  background-color: var(--pa-card-bg);
13869
13927
  position: relative;
13870
13928
  }
13929
+ .pa-detail-panel__content--bordered {
13930
+ border-block: 1px solid var(--pa-border-color);
13931
+ }
13871
13932
  .pa-detail-panel--overlay .pa-detail-panel__content {
13872
13933
  position: absolute;
13873
13934
  top: 0;
@@ -13961,6 +14022,7 @@ code {
13961
14022
  .pa-detail-panel__body {
13962
14023
  flex: 1;
13963
14024
  overflow-y: auto;
14025
+ overscroll-behavior: contain;
13964
14026
  padding: 1.2rem 1.6rem;
13965
14027
  }
13966
14028
 
@@ -14283,6 +14345,10 @@ code {
14283
14345
  margin-top: 2.4rem;
14284
14346
  }
14285
14347
 
14348
+ .pa-fields-container {
14349
+ container-type: inline-size;
14350
+ }
14351
+
14286
14352
  .pa-fields {
14287
14353
  display: flex;
14288
14354
  flex-direction: column;
@@ -14303,6 +14369,11 @@ code {
14303
14369
  .pa-fields--cols-4 {
14304
14370
  grid-template-columns: repeat(4, 1fr);
14305
14371
  }
14372
+ @container (max-width: 768px) {
14373
+ .pa-fields--cols-2, .pa-fields--cols-3, .pa-fields--cols-4 {
14374
+ grid-template-columns: 1fr;
14375
+ }
14376
+ }
14306
14377
  @media (max-width: 768px) {
14307
14378
  .pa-fields--cols-2, .pa-fields--cols-3, .pa-fields--cols-4 {
14308
14379
  grid-template-columns: 1fr;
@@ -14376,6 +14447,11 @@ code {
14376
14447
  flex: 1;
14377
14448
  min-width: 0;
14378
14449
  }
14450
+ @container (max-width: 768px) {
14451
+ .pa-fields--row {
14452
+ flex-direction: column;
14453
+ }
14454
+ }
14379
14455
  @media (max-width: 768px) {
14380
14456
  .pa-fields--row {
14381
14457
  flex-direction: column;
@@ -14444,6 +14520,1082 @@ code {
14444
14520
  border-inline-start: none;
14445
14521
  padding-inline-start: 0;
14446
14522
  }
14523
+ .pa-fields--linear {
14524
+ gap: 0.8rem;
14525
+ border-inline-start: none;
14526
+ padding-inline-start: 0;
14527
+ }
14528
+ .pa-fields--linear .pa-field {
14529
+ flex-direction: row;
14530
+ align-items: center;
14531
+ gap: 1.2rem;
14532
+ font-size: 1.4rem;
14533
+ line-height: 1.5;
14534
+ min-height: 2.8rem;
14535
+ }
14536
+ .pa-fields--linear .pa-field__label {
14537
+ flex: 0 0 10rem;
14538
+ font-size: 1.4rem;
14539
+ text-transform: none;
14540
+ letter-spacing: normal;
14541
+ opacity: 1;
14542
+ font-weight: 400;
14543
+ color: var(--pa-text-color-2);
14544
+ }
14545
+ .pa-fields--linear .pa-field__value {
14546
+ flex: 1;
14547
+ min-width: 0;
14548
+ font-size: 1.4rem;
14549
+ font-weight: 500;
14550
+ color: var(--pa-text-color-1);
14551
+ }
14552
+ .pa-fields--chips {
14553
+ flex-direction: row;
14554
+ flex-wrap: wrap;
14555
+ gap: 0.6rem 1.4rem;
14556
+ padding: 0.4rem 0;
14557
+ border-inline-start: none;
14558
+ padding-inline-start: 0;
14559
+ }
14560
+ .pa-fields--chips .pa-field {
14561
+ flex-direction: row;
14562
+ align-items: center;
14563
+ gap: 0.5rem;
14564
+ font-size: 1.4rem;
14565
+ }
14566
+ .pa-fields--chips .pa-field__label {
14567
+ font-size: 1.4rem;
14568
+ text-transform: none;
14569
+ letter-spacing: normal;
14570
+ opacity: 1;
14571
+ font-weight: 400;
14572
+ color: var(--pa-text-color-2);
14573
+ }
14574
+ .pa-fields--chips .pa-field__value {
14575
+ background: rgba(128, 128, 128, 0.1);
14576
+ color: var(--pa-text-color-1);
14577
+ font-weight: 500;
14578
+ padding: 0.2rem 0.8rem;
14579
+ border-radius: 4px;
14580
+ font-size: 1.3rem;
14581
+ }
14582
+ .pa-fields--chips .pa-field__value--success {
14583
+ background: var(--pa-success-bg-light, rgba(0, 200, 80, 0.12));
14584
+ color: var(--pa-success-color, #28a745);
14585
+ }
14586
+ .pa-fields--chips .pa-field__value--warning {
14587
+ background: var(--pa-warning-bg-light, rgba(255, 165, 0, 0.12));
14588
+ color: var(--pa-warning-color, #e68a00);
14589
+ }
14590
+ .pa-fields--chips .pa-field__value--danger {
14591
+ background: var(--pa-danger-bg-light, rgba(255, 0, 0, 0.12));
14592
+ color: var(--pa-danger-color, #dc3545);
14593
+ }
14594
+
14595
+ .pa-desc-container {
14596
+ container-type: inline-size;
14597
+ }
14598
+
14599
+ .pa-desc-table {
14600
+ display: grid;
14601
+ grid-template-columns: repeat(3, auto 1fr);
14602
+ border: 1px solid var(--pa-border-color);
14603
+ border-radius: 4px;
14604
+ overflow: hidden;
14605
+ }
14606
+ .pa-desc-table--cols-2 {
14607
+ grid-template-columns: repeat(2, auto 1fr);
14608
+ }
14609
+ .pa-desc-table--fixed {
14610
+ grid-template-columns: repeat(3, minmax(0, var(--label-width, 14rem)) minmax(0, 1fr));
14611
+ }
14612
+ .pa-desc-table--fixed.pa-desc-table--cols-2 {
14613
+ grid-template-columns: repeat(2, minmax(0, var(--label-width, 14rem)) minmax(0, 1fr));
14614
+ }
14615
+ .pa-desc-table__label, .pa-desc-table__value {
14616
+ padding: 1.2rem 1.6rem;
14617
+ border-bottom: 1px solid var(--pa-border-color);
14618
+ font-size: 1.4rem;
14619
+ line-height: 1.5;
14620
+ }
14621
+ .pa-desc-table__label {
14622
+ background: rgba(128, 128, 128, 0.06);
14623
+ color: var(--pa-text-color-2);
14624
+ font-weight: 400;
14625
+ white-space: nowrap;
14626
+ border-inline-end: 1px solid var(--pa-border-color);
14627
+ }
14628
+ .pa-desc-table__label::after {
14629
+ content: ":";
14630
+ margin-inline-start: 2px;
14631
+ }
14632
+ .pa-desc-table__value {
14633
+ color: var(--pa-text-color-1);
14634
+ font-weight: 500;
14635
+ border-inline-end: 1px solid var(--pa-border-color);
14636
+ min-width: 0;
14637
+ }
14638
+ .pa-desc-table__value--full {
14639
+ grid-column: 2/-1;
14640
+ }
14641
+ .pa-desc-table--middle .pa-desc-table__label, .pa-desc-table--middle .pa-desc-table__value {
14642
+ display: flex;
14643
+ align-items: center;
14644
+ }
14645
+ .pa-desc-table--label-end .pa-desc-table__label {
14646
+ text-align: end;
14647
+ justify-content: flex-end;
14648
+ }
14649
+ .pa-desc-table--label-center .pa-desc-table__label {
14650
+ text-align: center;
14651
+ justify-content: center;
14652
+ }
14653
+ .pa-desc-table--truncate .pa-desc-table__label, .pa-desc-table--truncate .pa-desc-table__value {
14654
+ overflow: hidden;
14655
+ text-overflow: ellipsis;
14656
+ white-space: nowrap;
14657
+ }
14658
+ @container (max-width: 768px) {
14659
+ .pa-desc-table, .pa-desc-table--cols-2 {
14660
+ grid-template-columns: auto 1fr;
14661
+ }
14662
+ .pa-desc-table--fixed, .pa-desc-table--fixed.pa-desc-table--cols-2 {
14663
+ grid-template-columns: minmax(0, var(--label-width, 14rem)) minmax(0, 1fr);
14664
+ }
14665
+ .pa-desc-table .pa-desc-table__value--full {
14666
+ grid-column: 2;
14667
+ }
14668
+ }
14669
+ @media (max-width: 768px) {
14670
+ .pa-desc-table, .pa-desc-table--cols-2 {
14671
+ grid-template-columns: auto 1fr;
14672
+ }
14673
+ .pa-desc-table--fixed, .pa-desc-table--fixed.pa-desc-table--cols-2 {
14674
+ grid-template-columns: minmax(0, var(--label-width, 14rem)) minmax(0, 1fr);
14675
+ }
14676
+ .pa-desc-table .pa-desc-table__value--full {
14677
+ grid-column: 2;
14678
+ }
14679
+ }
14680
+ .pa-desc-table__copy {
14681
+ flex-shrink: 0;
14682
+ padding: 0.4rem;
14683
+ background: transparent;
14684
+ border: none;
14685
+ border-radius: 4px;
14686
+ cursor: pointer;
14687
+ transition: opacity 0.15s, background 0.15s;
14688
+ }
14689
+ .pa-desc-table__copy:hover {
14690
+ opacity: 1;
14691
+ background: rgba(128, 128, 128, 0.1);
14692
+ }
14693
+ .pa-desc-table__value--copy-btn, .pa-desc-table__value--copy-hover {
14694
+ display: flex;
14695
+ align-items: center;
14696
+ gap: 0.8rem;
14697
+ }
14698
+ .pa-desc-table__value--copy-btn .pa-desc-table__copy {
14699
+ opacity: 0.5;
14700
+ }
14701
+ .pa-desc-table__value--copy-hover .pa-desc-table__copy {
14702
+ opacity: 0;
14703
+ }
14704
+ .pa-desc-table__value--copy-hover:hover .pa-desc-table__copy {
14705
+ opacity: 0.5;
14706
+ }
14707
+ .pa-desc-table__value--copy-hover:hover .pa-desc-table__copy:hover {
14708
+ opacity: 1;
14709
+ background: rgba(128, 128, 128, 0.1);
14710
+ }
14711
+ .pa-desc-table__value--copy-click {
14712
+ cursor: pointer;
14713
+ transition: opacity 0.15s;
14714
+ }
14715
+ .pa-desc-table__value--copy-click:hover {
14716
+ opacity: 0.7;
14717
+ }
14718
+ .pa-desc-table__value--copy-click::after {
14719
+ content: "Click to copy";
14720
+ font-size: 1rem;
14721
+ opacity: 0;
14722
+ margin-inline-start: 0.8rem;
14723
+ transition: opacity 0.15s;
14724
+ }
14725
+ .pa-desc-table__value--copy-click:hover::after {
14726
+ opacity: 0.6;
14727
+ }
14728
+ .pa-desc-table__value--copied::after {
14729
+ content: "Copied!" !important;
14730
+ opacity: 1 !important;
14731
+ color: var(--pa-color-4, #28a745);
14732
+ }
14733
+
14734
+ .pa-dot-leaders {
14735
+ display: flex;
14736
+ flex-direction: column;
14737
+ gap: 0;
14738
+ }
14739
+ .pa-dot-leaders__item {
14740
+ display: flex;
14741
+ align-items: baseline;
14742
+ padding: 0.6rem 0;
14743
+ }
14744
+ .pa-dot-leaders__item--total {
14745
+ margin-top: 0.4rem;
14746
+ padding-top: 0.8rem;
14747
+ border-top: 2px solid var(--pa-text-color-1);
14748
+ }
14749
+ .pa-dot-leaders__label {
14750
+ font-size: 1.4rem;
14751
+ font-weight: 500;
14752
+ color: var(--pa-text-color-2);
14753
+ white-space: nowrap;
14754
+ flex-shrink: 0;
14755
+ }
14756
+ .pa-dot-leaders__leader {
14757
+ flex: 1;
14758
+ border-bottom: 2px dotted var(--pa-border-color);
14759
+ margin: 0 0.8rem;
14760
+ margin-bottom: 0.25em;
14761
+ min-width: 2rem;
14762
+ }
14763
+ .pa-dot-leaders__value {
14764
+ font-size: 1.4rem;
14765
+ font-weight: 600;
14766
+ color: var(--pa-text-color-1);
14767
+ white-space: nowrap;
14768
+ text-align: end;
14769
+ font-variant-numeric: tabular-nums;
14770
+ }
14771
+ .pa-dot-leaders__item--total .pa-dot-leaders__label {
14772
+ font-weight: 700;
14773
+ color: var(--pa-text-color-1);
14774
+ }
14775
+ .pa-dot-leaders__item--total .pa-dot-leaders__value {
14776
+ font-size: 1.6rem;
14777
+ font-weight: 700;
14778
+ }
14779
+
14780
+ .pa-prop-card {
14781
+ border: 1px solid var(--pa-border-color);
14782
+ border-radius: 6px;
14783
+ overflow: hidden;
14784
+ }
14785
+ .pa-prop-card__header {
14786
+ padding: 1rem 1.6rem;
14787
+ font-weight: 600;
14788
+ font-size: 1.3rem;
14789
+ text-transform: uppercase;
14790
+ letter-spacing: 0.04em;
14791
+ color: var(--pa-text-color-2);
14792
+ background: rgba(128, 128, 128, 0.04);
14793
+ border-bottom: 1px solid var(--pa-border-color);
14794
+ }
14795
+ .pa-prop-card__row {
14796
+ display: flex;
14797
+ justify-content: space-between;
14798
+ align-items: center;
14799
+ padding: 1rem 1.6rem;
14800
+ border-bottom: 1px solid rgba(128, 128, 128, 0.08);
14801
+ font-size: 1.4rem;
14802
+ gap: 1.6rem;
14803
+ }
14804
+ .pa-prop-card__row:last-child {
14805
+ border-bottom: none;
14806
+ }
14807
+ .pa-prop-card__label {
14808
+ color: var(--pa-text-color-2);
14809
+ font-weight: 400;
14810
+ flex-shrink: 0;
14811
+ }
14812
+ .pa-prop-card__value {
14813
+ color: var(--pa-text-color-1);
14814
+ font-weight: 500;
14815
+ text-align: end;
14816
+ overflow-wrap: anywhere;
14817
+ }
14818
+ .pa-prop-card__value--bold {
14819
+ font-weight: 700;
14820
+ }
14821
+ .pa-prop-card__copy {
14822
+ flex-shrink: 0;
14823
+ padding: 0.4rem;
14824
+ background: transparent;
14825
+ border: none;
14826
+ border-radius: 4px;
14827
+ cursor: pointer;
14828
+ transition: opacity 0.15s, background 0.15s;
14829
+ }
14830
+ .pa-prop-card__copy:hover {
14831
+ opacity: 1;
14832
+ background: rgba(128, 128, 128, 0.1);
14833
+ }
14834
+ .pa-prop-card__row--copy-btn .pa-prop-card__value, .pa-prop-card__row--copy-hover .pa-prop-card__value {
14835
+ display: flex;
14836
+ align-items: center;
14837
+ gap: 0.8rem;
14838
+ }
14839
+ .pa-prop-card__row--copy-btn .pa-prop-card__copy, .pa-prop-card__row--copy-hover .pa-prop-card__copy {
14840
+ order: -1;
14841
+ }
14842
+ .pa-prop-card__row--copy-btn .pa-prop-card__copy {
14843
+ opacity: 0.5;
14844
+ }
14845
+ .pa-prop-card__row--copy-hover .pa-prop-card__copy {
14846
+ opacity: 0;
14847
+ }
14848
+ .pa-prop-card__row--copy-hover:hover .pa-prop-card__copy {
14849
+ opacity: 0.5;
14850
+ }
14851
+ .pa-prop-card__row--copy-hover:hover .pa-prop-card__copy:hover {
14852
+ opacity: 1;
14853
+ background: rgba(128, 128, 128, 0.1);
14854
+ }
14855
+ .pa-prop-card__row--copy-click .pa-prop-card__value {
14856
+ cursor: pointer;
14857
+ transition: opacity 0.15s;
14858
+ }
14859
+ .pa-prop-card__row--copy-click .pa-prop-card__value:hover {
14860
+ opacity: 0.7;
14861
+ }
14862
+
14863
+ .pa-banded-container {
14864
+ container-type: inline-size;
14865
+ }
14866
+
14867
+ .pa-banded {
14868
+ border: 1px solid var(--pa-border-color);
14869
+ border-radius: 4px;
14870
+ overflow: hidden;
14871
+ }
14872
+ .pa-banded__row {
14873
+ display: flex;
14874
+ border-bottom: 1px solid var(--pa-border-color);
14875
+ font-size: 1.4rem;
14876
+ align-items: stretch;
14877
+ }
14878
+ .pa-banded__row:last-child {
14879
+ border-bottom: none;
14880
+ }
14881
+ .pa-banded__label {
14882
+ flex: 0 0 auto;
14883
+ width: 14rem;
14884
+ padding: 0.8rem 1.2rem;
14885
+ background: rgba(128, 128, 128, 0.06);
14886
+ color: var(--pa-text-color-2);
14887
+ font-weight: 500;
14888
+ border-inline-end: 1px solid var(--pa-border-color);
14889
+ display: flex;
14890
+ align-items: flex-start;
14891
+ }
14892
+ .pa-banded__value {
14893
+ flex: 1;
14894
+ padding: 0.8rem 1.2rem;
14895
+ color: var(--pa-text-color-1);
14896
+ font-weight: 400;
14897
+ display: flex;
14898
+ align-items: flex-start;
14899
+ overflow-wrap: anywhere;
14900
+ min-width: 0;
14901
+ }
14902
+ .pa-banded--narrow .pa-banded__label {
14903
+ width: 10rem;
14904
+ }
14905
+ .pa-banded--wide .pa-banded__label {
14906
+ width: 20rem;
14907
+ }
14908
+ .pa-banded--middle .pa-banded__label, .pa-banded--middle .pa-banded__value {
14909
+ align-items: center;
14910
+ }
14911
+ .pa-banded--label-end .pa-banded__label {
14912
+ justify-content: flex-end;
14913
+ }
14914
+ .pa-banded--label-center .pa-banded__label {
14915
+ justify-content: center;
14916
+ }
14917
+ .pa-banded--truncate .pa-banded__label, .pa-banded--truncate .pa-banded__value {
14918
+ overflow: hidden;
14919
+ text-overflow: ellipsis;
14920
+ white-space: nowrap;
14921
+ }
14922
+ @container (max-width: 768px) {
14923
+ .pa-banded__row {
14924
+ flex-direction: column;
14925
+ }
14926
+ .pa-banded .pa-banded__label {
14927
+ width: auto !important;
14928
+ border-inline-end: none;
14929
+ border-bottom: 1px solid var(--pa-border-color);
14930
+ }
14931
+ .pa-banded .pa-banded__label, .pa-banded .pa-banded__value {
14932
+ display: block;
14933
+ }
14934
+ }
14935
+ @media (max-width: 768px) {
14936
+ .pa-banded__row {
14937
+ flex-direction: column;
14938
+ }
14939
+ .pa-banded .pa-banded__label {
14940
+ width: auto !important;
14941
+ border-inline-end: none;
14942
+ border-bottom: 1px solid var(--pa-border-color);
14943
+ }
14944
+ .pa-banded .pa-banded__label, .pa-banded .pa-banded__value {
14945
+ display: block;
14946
+ }
14947
+ }
14948
+ .pa-banded__copy {
14949
+ flex-shrink: 0;
14950
+ padding: 0.4rem;
14951
+ background: transparent;
14952
+ border: none;
14953
+ border-radius: 4px;
14954
+ cursor: pointer;
14955
+ transition: opacity 0.15s, background 0.15s;
14956
+ }
14957
+ .pa-banded__copy:hover {
14958
+ opacity: 1;
14959
+ background: rgba(128, 128, 128, 0.1);
14960
+ }
14961
+ .pa-banded__row--copy-btn .pa-banded__value, .pa-banded__row--copy-hover .pa-banded__value {
14962
+ gap: 0.8rem;
14963
+ }
14964
+ .pa-banded__row--copy-btn .pa-banded__copy {
14965
+ opacity: 0.5;
14966
+ }
14967
+ .pa-banded__row--copy-hover .pa-banded__copy {
14968
+ opacity: 0;
14969
+ }
14970
+ .pa-banded__row--copy-hover:hover .pa-banded__copy {
14971
+ opacity: 0.5;
14972
+ }
14973
+ .pa-banded__row--copy-hover:hover .pa-banded__copy:hover {
14974
+ opacity: 1;
14975
+ background: rgba(128, 128, 128, 0.1);
14976
+ }
14977
+ .pa-banded__row--copy-click .pa-banded__value {
14978
+ cursor: pointer;
14979
+ transition: opacity 0.15s;
14980
+ }
14981
+ .pa-banded__row--copy-click .pa-banded__value:hover {
14982
+ opacity: 0.7;
14983
+ }
14984
+ .pa-banded__row--copy-click .pa-banded__value::after {
14985
+ content: "Click to copy";
14986
+ font-size: 1rem;
14987
+ opacity: 0;
14988
+ margin-inline-start: 0.8rem;
14989
+ transition: opacity 0.15s;
14990
+ }
14991
+ .pa-banded__row--copy-click .pa-banded__value:hover::after {
14992
+ opacity: 0.6;
14993
+ }
14994
+ .pa-banded__row--copied .pa-banded__value::after {
14995
+ content: "Copied!" !important;
14996
+ opacity: 1 !important;
14997
+ color: var(--pa-color-4, #28a745);
14998
+ }
14999
+
15000
+ .pa-accent-grid {
15001
+ display: grid;
15002
+ grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
15003
+ gap: 0.8rem;
15004
+ }
15005
+ .pa-accent-grid__item {
15006
+ padding: 0.8rem 1.2rem;
15007
+ padding-inline-start: 1.4rem;
15008
+ border-inline-start: 3px solid var(--pa-accent, #3b82f6);
15009
+ }
15010
+ .pa-accent-grid__item--success {
15011
+ border-inline-start-color: var(--pa-success-color, #28a745);
15012
+ }
15013
+ .pa-accent-grid__item--warning {
15014
+ border-inline-start-color: var(--pa-warning-color, #e68a00);
15015
+ }
15016
+ .pa-accent-grid__item--danger {
15017
+ border-inline-start-color: var(--pa-danger-color, #dc3545);
15018
+ }
15019
+ .pa-accent-grid__item--info {
15020
+ border-inline-start-color: var(--pa-info-color, #17a2b8);
15021
+ }
15022
+ .pa-accent-grid__label {
15023
+ font-size: 1.1rem;
15024
+ font-weight: 500;
15025
+ color: var(--pa-text-color-2);
15026
+ margin-bottom: 0.2rem;
15027
+ text-transform: uppercase;
15028
+ letter-spacing: 0.03em;
15029
+ }
15030
+ .pa-accent-grid__value {
15031
+ font-size: 1.5rem;
15032
+ font-weight: 600;
15033
+ color: var(--pa-text-color-1);
15034
+ line-height: 1.2;
15035
+ }
15036
+ .pa-accent-grid__copy {
15037
+ flex-shrink: 0;
15038
+ padding: 0.4rem;
15039
+ background: transparent;
15040
+ border: none;
15041
+ border-radius: 4px;
15042
+ cursor: pointer;
15043
+ transition: opacity 0.15s, background 0.15s;
15044
+ }
15045
+ .pa-accent-grid__copy:hover {
15046
+ opacity: 1;
15047
+ background: rgba(128, 128, 128, 0.1);
15048
+ }
15049
+ .pa-accent-grid__item--copy-btn .pa-accent-grid__value, .pa-accent-grid__item--copy-hover .pa-accent-grid__value {
15050
+ display: flex;
15051
+ align-items: center;
15052
+ gap: 0.8rem;
15053
+ }
15054
+ .pa-accent-grid__item--copy-btn .pa-accent-grid__copy {
15055
+ opacity: 0.5;
15056
+ }
15057
+ .pa-accent-grid__item--copy-hover .pa-accent-grid__copy {
15058
+ opacity: 0;
15059
+ }
15060
+ .pa-accent-grid__item--copy-hover:hover .pa-accent-grid__copy {
15061
+ opacity: 0.5;
15062
+ }
15063
+ .pa-accent-grid__item--copy-hover:hover .pa-accent-grid__copy:hover {
15064
+ opacity: 1;
15065
+ background: rgba(128, 128, 128, 0.1);
15066
+ }
15067
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value {
15068
+ cursor: pointer;
15069
+ transition: opacity 0.15s;
15070
+ }
15071
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value:hover {
15072
+ opacity: 0.7;
15073
+ }
15074
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value::after {
15075
+ content: "Click to copy";
15076
+ font-size: 1rem;
15077
+ opacity: 0;
15078
+ margin-inline-start: 0.8rem;
15079
+ transition: opacity 0.15s;
15080
+ }
15081
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value:hover::after {
15082
+ opacity: 0.6;
15083
+ }
15084
+ .pa-accent-grid__item--copied .pa-accent-grid__value::after {
15085
+ content: "Copied!" !important;
15086
+ opacity: 1 !important;
15087
+ color: var(--pa-color-4, #28a745);
15088
+ }
15089
+
15090
+ /* ========================================
15091
+ Data Visualization Components
15092
+ Progress bars, rings, gauges, heatmaps, sparklines
15093
+ ======================================== */
15094
+ .pa-progress {
15095
+ width: 100%;
15096
+ height: 0.8rem;
15097
+ background: rgba(0, 0, 0, 0.08);
15098
+ border-radius: 4px;
15099
+ overflow: hidden;
15100
+ position: relative;
15101
+ }
15102
+ .pa-progress__fill {
15103
+ height: 100%;
15104
+ width: var(--value, 0%);
15105
+ background: #007bff;
15106
+ border-radius: inherit;
15107
+ transition: width 0.25s ease;
15108
+ }
15109
+ .pa-progress__label {
15110
+ display: flex;
15111
+ justify-content: space-between;
15112
+ margin-bottom: 0.4rem;
15113
+ font-size: 1.2rem;
15114
+ font-weight: 500;
15115
+ color: var(--pa-text-color-1);
15116
+ }
15117
+ .pa-progress__label-value {
15118
+ color: var(--pa-text-color-2);
15119
+ }
15120
+ .pa-progress--xs {
15121
+ height: 0.3rem;
15122
+ }
15123
+ .pa-progress--sm {
15124
+ height: 0.5rem;
15125
+ }
15126
+ .pa-progress--lg {
15127
+ height: 1.2rem;
15128
+ }
15129
+ .pa-progress--success > .pa-progress__fill {
15130
+ background: #28a745;
15131
+ }
15132
+ .pa-progress--warning > .pa-progress__fill {
15133
+ background: #ffc107;
15134
+ }
15135
+ .pa-progress--danger > .pa-progress__fill {
15136
+ background: #dc3545;
15137
+ }
15138
+ .pa-progress--info > .pa-progress__fill {
15139
+ background: #17a2b8;
15140
+ }
15141
+ .pa-progress--rounded {
15142
+ border-radius: 50rem;
15143
+ }
15144
+ .pa-progress--striped > .pa-progress__fill {
15145
+ background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%);
15146
+ background-size: 1.6rem 1.6rem;
15147
+ }
15148
+ .pa-progress--animated > .pa-progress__fill {
15149
+ animation: pa-progress-stripe 1s linear infinite;
15150
+ }
15151
+
15152
+ @keyframes pa-progress-stripe {
15153
+ 0% {
15154
+ background-position: 1.6rem 0;
15155
+ }
15156
+ 100% {
15157
+ background-position: 0 0;
15158
+ }
15159
+ }
15160
+ .pa-progress-group {
15161
+ display: flex;
15162
+ flex-direction: column;
15163
+ gap: 0.4rem;
15164
+ }
15165
+
15166
+ .pa-stacked-bar {
15167
+ display: flex;
15168
+ width: 100%;
15169
+ height: 1.2rem;
15170
+ border-radius: 4px;
15171
+ overflow: hidden;
15172
+ background: rgba(0, 0, 0, 0.08);
15173
+ }
15174
+ .pa-stacked-bar__segment {
15175
+ height: 100%;
15176
+ width: var(--value, 0%);
15177
+ transition: width 0.25s ease;
15178
+ background: #007bff;
15179
+ }
15180
+ .pa-stacked-bar__segment--success {
15181
+ background: #28a745;
15182
+ }
15183
+ .pa-stacked-bar__segment--warning {
15184
+ background: #ffc107;
15185
+ }
15186
+ .pa-stacked-bar__segment--danger {
15187
+ background: #dc3545;
15188
+ }
15189
+ .pa-stacked-bar__segment--info {
15190
+ background: #17a2b8;
15191
+ }
15192
+ .pa-stacked-bar__segment--secondary {
15193
+ background: #6c757d;
15194
+ }
15195
+ .pa-stacked-bar__legend {
15196
+ display: flex;
15197
+ flex-wrap: wrap;
15198
+ gap: 1.6rem;
15199
+ margin-top: 0.8rem;
15200
+ }
15201
+ .pa-stacked-bar__legend-item {
15202
+ display: flex;
15203
+ align-items: center;
15204
+ gap: 0.4rem;
15205
+ font-size: 1.2rem;
15206
+ color: var(--pa-text-color-2);
15207
+ }
15208
+ .pa-stacked-bar__legend-swatch {
15209
+ width: 1rem;
15210
+ height: 1rem;
15211
+ border-radius: 2px;
15212
+ flex-shrink: 0;
15213
+ }
15214
+ .pa-stacked-bar__legend-swatch--primary {
15215
+ background: #007bff;
15216
+ }
15217
+ .pa-stacked-bar__legend-swatch--success {
15218
+ background: #28a745;
15219
+ }
15220
+ .pa-stacked-bar__legend-swatch--warning {
15221
+ background: #ffc107;
15222
+ }
15223
+ .pa-stacked-bar__legend-swatch--danger {
15224
+ background: #dc3545;
15225
+ }
15226
+ .pa-stacked-bar__legend-swatch--info {
15227
+ background: #17a2b8;
15228
+ }
15229
+ .pa-stacked-bar__legend-swatch--secondary {
15230
+ background: #6c757d;
15231
+ }
15232
+ .pa-stacked-bar--sm {
15233
+ height: 0.5rem;
15234
+ }
15235
+ .pa-stacked-bar--lg {
15236
+ height: 1.2rem;
15237
+ }
15238
+ .pa-stacked-bar--rounded {
15239
+ border-radius: 50rem;
15240
+ }
15241
+
15242
+ .pa-progress-ring {
15243
+ width: 8rem;
15244
+ height: 8rem;
15245
+ border-radius: 50%;
15246
+ background: conic-gradient(#007bff calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
15247
+ display: flex;
15248
+ align-items: center;
15249
+ justify-content: center;
15250
+ flex-shrink: 0;
15251
+ }
15252
+ .pa-progress-ring__inner {
15253
+ width: 70%;
15254
+ height: 70%;
15255
+ border-radius: 50%;
15256
+ background: #ffffff;
15257
+ display: flex;
15258
+ flex-direction: column;
15259
+ align-items: center;
15260
+ justify-content: center;
15261
+ }
15262
+ .pa-progress-ring__value {
15263
+ font-size: 1.8rem;
15264
+ font-weight: 700;
15265
+ line-height: 1;
15266
+ color: var(--pa-text-color-1);
15267
+ }
15268
+ .pa-progress-ring__label {
15269
+ font-size: 1rem;
15270
+ color: var(--pa-text-color-2);
15271
+ margin-top: 0.4rem;
15272
+ }
15273
+ .pa-progress-ring--sm {
15274
+ width: 5rem;
15275
+ height: 5rem;
15276
+ }
15277
+ .pa-progress-ring--sm .pa-progress-ring__value {
15278
+ font-size: 1.6rem;
15279
+ }
15280
+ .pa-progress-ring--sm .pa-progress-ring__label {
15281
+ font-size: 1rem;
15282
+ }
15283
+ .pa-progress-ring--lg {
15284
+ width: 11rem;
15285
+ height: 11rem;
15286
+ }
15287
+ .pa-progress-ring--lg .pa-progress-ring__value {
15288
+ font-size: 2.4rem;
15289
+ }
15290
+ .pa-progress-ring--lg .pa-progress-ring__label {
15291
+ font-size: 1.2rem;
15292
+ }
15293
+ .pa-progress-ring--success {
15294
+ background: conic-gradient(#28a745 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
15295
+ }
15296
+ .pa-progress-ring--warning {
15297
+ background: conic-gradient(#ffc107 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
15298
+ }
15299
+ .pa-progress-ring--danger {
15300
+ background: conic-gradient(#dc3545 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
15301
+ }
15302
+ .pa-progress-ring--info {
15303
+ background: conic-gradient(#17a2b8 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
15304
+ }
15305
+
15306
+ .pa-gauge {
15307
+ width: 12rem;
15308
+ height: calc(12rem / 2);
15309
+ border-radius: 12rem 12rem 0 0;
15310
+ overflow: hidden;
15311
+ background: conic-gradient(from 0.75turn, #007bff calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
15312
+ position: relative;
15313
+ flex-shrink: 0;
15314
+ }
15315
+ .pa-gauge__inner {
15316
+ position: absolute;
15317
+ bottom: 0;
15318
+ left: 15%;
15319
+ right: 15%;
15320
+ height: 70%;
15321
+ border-radius: 12rem 12rem 0 0;
15322
+ background: #ffffff;
15323
+ display: flex;
15324
+ flex-direction: column;
15325
+ align-items: center;
15326
+ justify-content: flex-end;
15327
+ padding-bottom: 0.4rem;
15328
+ }
15329
+ .pa-gauge__value {
15330
+ font-size: 2.4rem;
15331
+ font-weight: 700;
15332
+ line-height: 1;
15333
+ color: var(--pa-text-color-1);
15334
+ }
15335
+ .pa-gauge__label {
15336
+ font-size: 1.2rem;
15337
+ color: var(--pa-text-color-2);
15338
+ margin-top: 0.4rem;
15339
+ }
15340
+ .pa-gauge__min, .pa-gauge__max {
15341
+ position: absolute;
15342
+ bottom: 0;
15343
+ font-size: 1rem;
15344
+ color: var(--pa-text-color-2);
15345
+ }
15346
+ .pa-gauge__min {
15347
+ left: 0;
15348
+ }
15349
+ .pa-gauge__max {
15350
+ right: 0;
15351
+ }
15352
+ .pa-gauge--success {
15353
+ background: conic-gradient(from 0.75turn, #28a745 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
15354
+ }
15355
+ .pa-gauge--warning {
15356
+ background: conic-gradient(from 0.75turn, #ffc107 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
15357
+ }
15358
+ .pa-gauge--danger {
15359
+ background: conic-gradient(from 0.75turn, #dc3545 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
15360
+ }
15361
+ .pa-gauge--info {
15362
+ background: conic-gradient(from 0.75turn, #17a2b8 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
15363
+ }
15364
+ .pa-gauge--zones {
15365
+ background: conic-gradient(from 0.75turn, #28a745 0deg, #28a745 90deg, #ffc107 90deg, #ffc107 135deg, #dc3545 135deg, #dc3545 180deg, rgba(0, 0, 0, 0.08) 180deg);
15366
+ }
15367
+
15368
+ .pa-data-bar {
15369
+ display: flex;
15370
+ flex-direction: column;
15371
+ gap: 0.4rem;
15372
+ min-width: 6rem;
15373
+ }
15374
+ .pa-data-bar__value {
15375
+ font-size: 1.4rem;
15376
+ font-weight: 500;
15377
+ color: var(--pa-text-color-1);
15378
+ line-height: 1;
15379
+ }
15380
+ .pa-data-bar__track {
15381
+ width: 100%;
15382
+ height: 0.4rem;
15383
+ background: rgba(0, 0, 0, 0.06);
15384
+ border-radius: 2px;
15385
+ overflow: hidden;
15386
+ }
15387
+ .pa-data-bar__fill {
15388
+ height: 100%;
15389
+ width: var(--value, 0%);
15390
+ background: #007bff;
15391
+ border-radius: inherit;
15392
+ transition: width 0.25s ease;
15393
+ }
15394
+ .pa-data-bar--success .pa-data-bar__fill {
15395
+ background: #28a745;
15396
+ }
15397
+ .pa-data-bar--warning .pa-data-bar__fill {
15398
+ background: #ffc107;
15399
+ }
15400
+ .pa-data-bar--danger .pa-data-bar__fill {
15401
+ background: #dc3545;
15402
+ }
15403
+ .pa-data-bar--info .pa-data-bar__fill {
15404
+ background: #17a2b8;
15405
+ }
15406
+ .pa-data-bar--negative .pa-data-bar__fill {
15407
+ background: #dc3545;
15408
+ margin-inline-start: auto;
15409
+ }
15410
+
15411
+ .pa-heatmap {
15412
+ display: inline-grid;
15413
+ grid-template-columns: repeat(53, 1.2rem);
15414
+ grid-auto-rows: 1.2rem;
15415
+ gap: 0.2rem;
15416
+ }
15417
+ .pa-heatmap__cell {
15418
+ border-radius: 2px;
15419
+ background: rgba(0, 0, 0, 0.08);
15420
+ }
15421
+ .pa-heatmap__cell[data-level="1"] {
15422
+ background: rgba(0, 123, 255, 0.2);
15423
+ }
15424
+ .pa-heatmap__cell[data-level="2"] {
15425
+ background: rgba(0, 123, 255, 0.4);
15426
+ }
15427
+ .pa-heatmap__cell[data-level="3"] {
15428
+ background: rgba(0, 123, 255, 0.65);
15429
+ }
15430
+ .pa-heatmap__cell[data-level="4"] {
15431
+ background: #007bff;
15432
+ }
15433
+ .pa-heatmap--success .pa-heatmap__cell[data-level="1"] {
15434
+ background: rgba(40, 167, 69, 0.2);
15435
+ }
15436
+ .pa-heatmap--success .pa-heatmap__cell[data-level="2"] {
15437
+ background: rgba(40, 167, 69, 0.4);
15438
+ }
15439
+ .pa-heatmap--success .pa-heatmap__cell[data-level="3"] {
15440
+ background: rgba(40, 167, 69, 0.65);
15441
+ }
15442
+ .pa-heatmap--success .pa-heatmap__cell[data-level="4"] {
15443
+ background: #28a745;
15444
+ }
15445
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="1"] {
15446
+ background: rgba(220, 53, 69, 0.2);
15447
+ }
15448
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="2"] {
15449
+ background: rgba(220, 53, 69, 0.4);
15450
+ }
15451
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="3"] {
15452
+ background: rgba(220, 53, 69, 0.65);
15453
+ }
15454
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="4"] {
15455
+ background: #dc3545;
15456
+ }
15457
+ .pa-heatmap__legend {
15458
+ display: flex;
15459
+ align-items: center;
15460
+ gap: 0.4rem;
15461
+ margin-top: 0.8rem;
15462
+ font-size: 1.2rem;
15463
+ color: var(--pa-text-color-2);
15464
+ }
15465
+ .pa-heatmap__legend-cell {
15466
+ width: 1.2rem;
15467
+ height: 1.2rem;
15468
+ border-radius: 2px;
15469
+ background: rgba(0, 0, 0, 0.08);
15470
+ }
15471
+ .pa-heatmap__legend-cell[data-level="1"] {
15472
+ background: rgba(0, 123, 255, 0.2);
15473
+ }
15474
+ .pa-heatmap__legend-cell[data-level="2"] {
15475
+ background: rgba(0, 123, 255, 0.4);
15476
+ }
15477
+ .pa-heatmap__legend-cell[data-level="3"] {
15478
+ background: rgba(0, 123, 255, 0.65);
15479
+ }
15480
+ .pa-heatmap__legend-cell[data-level="4"] {
15481
+ background: #007bff;
15482
+ }
15483
+ .pa-heatmap--compact {
15484
+ grid-template-columns: repeat(53, 1rem);
15485
+ grid-auto-rows: 1rem;
15486
+ gap: 0.1rem;
15487
+ }
15488
+ .pa-heatmap--compact .pa-heatmap__cell {
15489
+ border-radius: 1px;
15490
+ }
15491
+
15492
+ .pa-sparkline {
15493
+ display: inline-flex;
15494
+ align-items: flex-end;
15495
+ gap: 0.2rem;
15496
+ height: 3rem;
15497
+ }
15498
+ .pa-sparkline__bar {
15499
+ width: 0.3rem;
15500
+ height: var(--value, 50%);
15501
+ background: #007bff;
15502
+ border-radius: 2px 2px 0 0;
15503
+ transition: height 0.25s ease;
15504
+ min-height: 1px;
15505
+ }
15506
+ .pa-sparkline--success .pa-sparkline__bar {
15507
+ background: #28a745;
15508
+ }
15509
+ .pa-sparkline--warning .pa-sparkline__bar {
15510
+ background: #ffc107;
15511
+ }
15512
+ .pa-sparkline--danger .pa-sparkline__bar {
15513
+ background: #dc3545;
15514
+ }
15515
+ .pa-sparkline--info .pa-sparkline__bar {
15516
+ background: #17a2b8;
15517
+ }
15518
+ .pa-sparkline--sm {
15519
+ height: 2rem;
15520
+ }
15521
+ .pa-sparkline--lg {
15522
+ height: 4.8rem;
15523
+ }
15524
+ .pa-sparkline--lg .pa-sparkline__bar {
15525
+ width: 0.4rem;
15526
+ }
15527
+
15528
+ .pa-bar-list {
15529
+ display: flex;
15530
+ flex-direction: column;
15531
+ gap: 1.6rem;
15532
+ }
15533
+ .pa-bar-list__item {
15534
+ display: flex;
15535
+ flex-direction: column;
15536
+ gap: 0.4rem;
15537
+ }
15538
+ .pa-bar-list__header {
15539
+ display: flex;
15540
+ justify-content: space-between;
15541
+ align-items: baseline;
15542
+ gap: 0.8rem;
15543
+ }
15544
+ .pa-bar-list__label {
15545
+ font-size: 1.4rem;
15546
+ color: var(--pa-text-color-1);
15547
+ min-width: 0;
15548
+ overflow: hidden;
15549
+ text-overflow: ellipsis;
15550
+ white-space: nowrap;
15551
+ }
15552
+ .pa-bar-list__value {
15553
+ font-size: 1.4rem;
15554
+ font-weight: 600;
15555
+ color: var(--pa-text-color-1);
15556
+ flex-shrink: 0;
15557
+ }
15558
+ .pa-bar-list__bar {
15559
+ width: 100%;
15560
+ height: 0.4rem;
15561
+ background: rgba(0, 0, 0, 0.06);
15562
+ border-radius: 2px;
15563
+ overflow: hidden;
15564
+ }
15565
+ .pa-bar-list__bar::after {
15566
+ content: "";
15567
+ display: block;
15568
+ height: 100%;
15569
+ width: var(--value, 0%);
15570
+ background: #007bff;
15571
+ border-radius: inherit;
15572
+ transition: width 0.25s ease;
15573
+ }
15574
+ .pa-bar-list--success .pa-bar-list__bar::after {
15575
+ background: #28a745;
15576
+ }
15577
+ .pa-bar-list--warning .pa-bar-list__bar::after {
15578
+ background: #ffc107;
15579
+ }
15580
+ .pa-bar-list--danger .pa-bar-list__bar::after {
15581
+ background: #dc3545;
15582
+ }
15583
+ .pa-bar-list--info .pa-bar-list__bar::after {
15584
+ background: #17a2b8;
15585
+ }
15586
+ .pa-bar-list--compact {
15587
+ gap: 0.8rem;
15588
+ }
15589
+ .pa-bar-list--compact .pa-bar-list__item {
15590
+ gap: 0.2rem;
15591
+ }
15592
+ .pa-bar-list--compact .pa-bar-list__label,
15593
+ .pa-bar-list--compact .pa-bar-list__value {
15594
+ font-size: 1.2rem;
15595
+ }
15596
+ .pa-bar-list--compact .pa-bar-list__bar {
15597
+ height: 0.3rem;
15598
+ }
14447
15599
 
14448
15600
  /* ========================================
14449
15601
  Utility Components