@keenmate/pure-admin-core 2.5.0 → 2.7.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/README.md +25 -14
- package/dist/css/main.css +379 -297
- package/package.json +1 -1
- package/src/scss/_base-css-variables.scss +157 -32
- package/src/scss/core-components/_alerts.scss +2 -2
- package/src/scss/core-components/_base.scss +19 -2
- package/src/scss/core-components/_buttons.scss +12 -8
- package/src/scss/core-components/_callouts.scss +1 -1
- package/src/scss/core-components/_cards.scss +4 -4
- package/src/scss/core-components/_checkbox-lists.scss +2 -2
- package/src/scss/core-components/_comparison.scss +7 -4
- package/src/scss/core-components/_data-display.scss +24 -15
- package/src/scss/core-components/_data-viz.scss +140 -132
- package/src/scss/core-components/_file-selector.scss +34 -34
- package/src/scss/core-components/_lists.scss +4 -4
- package/src/scss/core-components/_logic-tree.scss +2 -2
- package/src/scss/core-components/_modals.scss +69 -0
- package/src/scss/core-components/_notifications.scss +17 -17
- package/src/scss/core-components/_popconfirm.scss +1 -1
- package/src/scss/core-components/_statistics.scss +40 -37
- package/src/scss/core-components/_tabs.scss +12 -12
- package/src/scss/core-components/_timeline.scss +30 -30
- package/src/scss/core-components/badges/_composite-badge-variants.scss +7 -7
- package/src/scss/core-components/badges/_composite-badge.scss +1 -1
- package/src/scss/core-components/badges/_labels.scss +6 -6
- package/src/scss/core-components/forms/_input-wrapper.scss +1 -1
- package/src/scss/core-components/forms/_query-editor.scss +10 -10
- package/src/scss/core-components/layout/_sidebar-states.scss +1 -0
- package/src/scss/core-components/layout/_sidebar.scss +1 -0
- package/src/scss/variables/_base.scss +15 -3
- package/src/scss/variables/_colors.scss +1 -0
- package/src/scss/variables/_components.scss +26 -14
|
@@ -37,65 +37,65 @@
|
|
|
37
37
|
width: $timeline-simple-dot-size;
|
|
38
38
|
height: $timeline-simple-dot-size;
|
|
39
39
|
background: var(--pa-main-bg);
|
|
40
|
-
border: $timeline-simple-dot-border solid
|
|
41
|
-
border-radius:
|
|
42
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
40
|
+
border: $timeline-simple-dot-border solid var(--pa-accent);
|
|
41
|
+
border-radius: $timeline-simple-dot-border-radius;
|
|
42
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-accent) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
// Marker color modifiers
|
|
46
46
|
&--primary::before {
|
|
47
|
-
border-color:
|
|
48
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
47
|
+
border-color: var(--pa-btn-primary-bg);
|
|
48
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-btn-primary-bg) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
&--success::before {
|
|
52
|
-
border-color:
|
|
53
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
52
|
+
border-color: var(--pa-success);
|
|
53
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-success) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
&--warning::before {
|
|
57
|
-
border-color:
|
|
58
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
57
|
+
border-color: var(--pa-warning);
|
|
58
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-warning) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
&--danger::before {
|
|
62
|
-
border-color:
|
|
63
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
62
|
+
border-color: var(--pa-danger);
|
|
63
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-danger) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
&--info::before {
|
|
67
|
-
border-color:
|
|
68
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
67
|
+
border-color: var(--pa-info);
|
|
68
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-info) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
&--secondary::before {
|
|
72
72
|
border-color: var(--pa-text-color-2);
|
|
73
|
-
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur
|
|
73
|
+
box-shadow: $timeline-simple-dot-shadow-offset-x $timeline-simple-dot-shadow-offset-y $timeline-simple-dot-shadow-blur color-mix(in srgb, var(--pa-text-color-2) #{$timeline-simple-dot-shadow-opacity * 100%}, transparent);
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
// Filled/solid bullet modifier
|
|
77
77
|
&--filled::before {
|
|
78
|
-
background:
|
|
78
|
+
background: var(--pa-accent);
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
&--filled.pa-timeline__item--primary::before {
|
|
82
|
-
background:
|
|
82
|
+
background: var(--pa-btn-primary-bg);
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
&--filled.pa-timeline__item--success::before {
|
|
86
|
-
background:
|
|
86
|
+
background: var(--pa-success);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
&--filled.pa-timeline__item--warning::before {
|
|
90
|
-
background:
|
|
90
|
+
background: var(--pa-warning);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
&--filled.pa-timeline__item--danger::before {
|
|
94
|
-
background:
|
|
94
|
+
background: var(--pa-danger);
|
|
95
95
|
}
|
|
96
96
|
|
|
97
97
|
&--filled.pa-timeline__item--info::before {
|
|
98
|
-
background:
|
|
98
|
+
background: var(--pa-info);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
&--filled.pa-timeline__item--secondary::before {
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
content: '';
|
|
132
132
|
position: absolute;
|
|
133
133
|
width: $timeline-block-line-width;
|
|
134
|
-
background:
|
|
134
|
+
background: var(--pa-accent);
|
|
135
135
|
top: 0;
|
|
136
136
|
bottom: 0;
|
|
137
137
|
left: 50%;
|
|
@@ -184,7 +184,7 @@
|
|
|
184
184
|
height: $timeline-block-connector-height;
|
|
185
185
|
top: $timeline-block-connector-top-offset;
|
|
186
186
|
right: $timeline-block-connector-horizontal-offset;
|
|
187
|
-
background:
|
|
187
|
+
background: var(--pa-accent);
|
|
188
188
|
z-index: 1;
|
|
189
189
|
}
|
|
190
190
|
}
|
|
@@ -229,7 +229,7 @@
|
|
|
229
229
|
height: $timeline-block-connector-height;
|
|
230
230
|
top: $timeline-block-connector-top-offset;
|
|
231
231
|
left: $timeline-block-connector-horizontal-offset;
|
|
232
|
-
background:
|
|
232
|
+
background: var(--pa-accent);
|
|
233
233
|
z-index: 1;
|
|
234
234
|
}
|
|
235
235
|
}
|
|
@@ -242,7 +242,7 @@
|
|
|
242
242
|
text-align: center;
|
|
243
243
|
font-size: $font-size-sm;
|
|
244
244
|
font-weight: $font-weight-bold;
|
|
245
|
-
color:
|
|
245
|
+
color: var(--pa-accent);
|
|
246
246
|
text-transform: uppercase;
|
|
247
247
|
letter-spacing: $timeline-block-date-letter-spacing;
|
|
248
248
|
z-index: 1;
|
|
@@ -256,16 +256,16 @@
|
|
|
256
256
|
width: $timeline-block-icon-size;
|
|
257
257
|
height: $timeline-block-icon-size;
|
|
258
258
|
top: $timeline-block-icon-top-offset;
|
|
259
|
-
background:
|
|
260
|
-
border: $timeline-block-icon-border solid
|
|
259
|
+
background: var(--pa-warning);
|
|
260
|
+
border: $timeline-block-icon-border solid var(--pa-accent);
|
|
261
261
|
border-radius: 50%;
|
|
262
262
|
font-size: $font-size-lg;
|
|
263
|
-
color:
|
|
263
|
+
color: var(--pa-accent);
|
|
264
264
|
z-index: 1;
|
|
265
265
|
}
|
|
266
266
|
|
|
267
267
|
.pa-timeline__content {
|
|
268
|
-
background:
|
|
268
|
+
background: var(--pa-warning);
|
|
269
269
|
position: relative;
|
|
270
270
|
|
|
271
271
|
h3 {
|
|
@@ -279,7 +279,7 @@
|
|
|
279
279
|
margin: 0;
|
|
280
280
|
font-size: $font-size-base;
|
|
281
281
|
line-height: $line-height-relaxed;
|
|
282
|
-
color:
|
|
282
|
+
color: var(--pa-warning-text);
|
|
283
283
|
}
|
|
284
284
|
}
|
|
285
285
|
|
|
@@ -475,7 +475,7 @@
|
|
|
475
475
|
line-height: $line-height-relaxed;
|
|
476
476
|
|
|
477
477
|
a {
|
|
478
|
-
color:
|
|
478
|
+
color: var(--pa-accent);
|
|
479
479
|
text-decoration: none;
|
|
480
480
|
font-weight: $font-weight-medium;
|
|
481
481
|
|
|
@@ -316,7 +316,7 @@
|
|
|
316
316
|
}
|
|
317
317
|
|
|
318
318
|
&:focus {
|
|
319
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
319
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-btn-primary-bg) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
322
|
|
|
@@ -328,7 +328,7 @@
|
|
|
328
328
|
}
|
|
329
329
|
|
|
330
330
|
&:focus {
|
|
331
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
331
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-btn-secondary-bg) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
332
332
|
}
|
|
333
333
|
}
|
|
334
334
|
|
|
@@ -340,7 +340,7 @@
|
|
|
340
340
|
}
|
|
341
341
|
|
|
342
342
|
&:focus {
|
|
343
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
343
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-success) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
344
344
|
}
|
|
345
345
|
}
|
|
346
346
|
|
|
@@ -353,7 +353,7 @@
|
|
|
353
353
|
}
|
|
354
354
|
|
|
355
355
|
&:focus {
|
|
356
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
356
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-warning) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
357
357
|
}
|
|
358
358
|
}
|
|
359
359
|
|
|
@@ -365,7 +365,7 @@
|
|
|
365
365
|
}
|
|
366
366
|
|
|
367
367
|
&:focus {
|
|
368
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
368
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-info) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
369
369
|
}
|
|
370
370
|
}
|
|
371
371
|
|
|
@@ -378,7 +378,7 @@
|
|
|
378
378
|
}
|
|
379
379
|
|
|
380
380
|
&:focus {
|
|
381
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
381
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-btn-light-bg) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
382
382
|
}
|
|
383
383
|
}
|
|
384
384
|
|
|
@@ -390,7 +390,7 @@
|
|
|
390
390
|
}
|
|
391
391
|
|
|
392
392
|
&:focus {
|
|
393
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
393
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-btn-dark-bg) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
394
394
|
}
|
|
395
395
|
}
|
|
396
396
|
}
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
|
|
65
65
|
&:focus {
|
|
66
66
|
outline: none;
|
|
67
|
-
box-shadow: 0 0 0 $focus-outline-width
|
|
67
|
+
box-shadow: 0 0 0 $focus-outline-width color-mix(in srgb, var(--pa-danger) #{$btn-focus-ring-opacity * 100%}, transparent);
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
}
|
|
@@ -74,17 +74,17 @@
|
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
&--secondary {
|
|
77
|
-
background-color:
|
|
78
|
-
color:
|
|
79
|
-
border-color:
|
|
77
|
+
background-color: color-mix(in srgb, var(--pa-btn-secondary-bg) #{$opacity-light * 100%}, transparent);
|
|
78
|
+
color: var(--pa-btn-secondary-bg);
|
|
79
|
+
border-color: var(--pa-btn-secondary-bg);
|
|
80
80
|
|
|
81
81
|
&.pa-label--outline {
|
|
82
82
|
background-color: transparent;
|
|
83
|
-
color:
|
|
84
|
-
border-color:
|
|
83
|
+
color: var(--pa-btn-secondary-bg);
|
|
84
|
+
border-color: var(--pa-btn-secondary-bg);
|
|
85
85
|
|
|
86
86
|
&:hover {
|
|
87
|
-
background-color:
|
|
87
|
+
background-color: color-mix(in srgb, var(--pa-btn-secondary-bg) #{$opacity-light * 100%}, transparent);
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
}
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
|
|
37
37
|
&__field {
|
|
38
38
|
display: inline;
|
|
39
|
-
background-color:
|
|
40
|
-
color:
|
|
39
|
+
background-color: color-mix(in srgb, var(--pa-accent) 15%, transparent);
|
|
40
|
+
color: var(--pa-accent);
|
|
41
41
|
padding: 0.2rem 0.4rem;
|
|
42
42
|
border-radius: var(--pa-border-radius-sm);
|
|
43
43
|
font-weight: $font-weight-medium;
|
|
@@ -45,8 +45,8 @@
|
|
|
45
45
|
|
|
46
46
|
&__operator {
|
|
47
47
|
display: inline;
|
|
48
|
-
background-color:
|
|
49
|
-
color:
|
|
48
|
+
background-color: color-mix(in srgb, var(--pa-success) 15%, transparent);
|
|
49
|
+
color: var(--pa-success);
|
|
50
50
|
padding: 0.2rem 0.4rem;
|
|
51
51
|
border-radius: var(--pa-border-radius-sm);
|
|
52
52
|
font-weight: $font-weight-medium;
|
|
@@ -221,28 +221,28 @@
|
|
|
221
221
|
font-weight: $font-weight-medium;
|
|
222
222
|
|
|
223
223
|
&--field {
|
|
224
|
-
background-color:
|
|
224
|
+
background-color: color-mix(in srgb, var(--pa-accent) 15%, transparent);
|
|
225
225
|
color: var(--pa-text-color-1);
|
|
226
226
|
|
|
227
227
|
&.pa-inline-query-token--invalid {
|
|
228
|
-
background-color:
|
|
228
|
+
background-color: color-mix(in srgb, var(--pa-danger) 15%, transparent);
|
|
229
229
|
color: var(--pa-text-color-1);
|
|
230
230
|
text-decoration: wavy underline;
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
233
|
|
|
234
234
|
&--operator {
|
|
235
|
-
background-color:
|
|
235
|
+
background-color: color-mix(in srgb, var(--pa-text-color-2) 15%, transparent);
|
|
236
236
|
color: var(--pa-text-color-1);
|
|
237
237
|
}
|
|
238
238
|
|
|
239
239
|
&--value {
|
|
240
|
-
background-color:
|
|
240
|
+
background-color: color-mix(in srgb, var(--pa-success) 15%, transparent);
|
|
241
241
|
color: var(--pa-text-color-1);
|
|
242
242
|
}
|
|
243
243
|
|
|
244
244
|
&--keyword {
|
|
245
|
-
background-color:
|
|
245
|
+
background-color: color-mix(in srgb, var(--pa-warning) 15%, transparent);
|
|
246
246
|
color: var(--pa-text-color-1);
|
|
247
247
|
font-style: italic;
|
|
248
248
|
}
|
|
@@ -304,7 +304,7 @@
|
|
|
304
304
|
flex-shrink: 0;
|
|
305
305
|
font-size: $font-size-xs;
|
|
306
306
|
padding: 0.2rem 0.6rem;
|
|
307
|
-
background-color:
|
|
307
|
+
background-color: color-mix(in srgb, var(--pa-text-color-2) 10%, transparent);
|
|
308
308
|
color: var(--pa-text-color-2);
|
|
309
309
|
border-radius: var(--pa-border-radius-sm);
|
|
310
310
|
font-family: $body-font-family;
|
|
@@ -191,6 +191,7 @@ body.pa-layout--sticky .pa-layout__sidebar {
|
|
|
191
191
|
|
|
192
192
|
&--active {
|
|
193
193
|
background-color: var(--pa-sidebar-submenu-active-bg);
|
|
194
|
+
color: var(--pa-sidebar-submenu-active-text);
|
|
194
195
|
border-inline-end-color: var(--pa-accent); // RTL: flips to border-left-color
|
|
195
196
|
}
|
|
196
197
|
}
|
|
@@ -108,7 +108,7 @@ $base-tooltip-text-color: #ffffff !default;
|
|
|
108
108
|
// Success/positive semantic colors
|
|
109
109
|
// =============================================================================
|
|
110
110
|
|
|
111
|
-
$base-success-color: #
|
|
111
|
+
$base-success-color: #22c55e !default; // Tailwind green-500 — aligns with --pa-positive in the sentiment scale
|
|
112
112
|
$base-success-color-hover: color.adjust($base-success-color, $lightness: -10%) !default;
|
|
113
113
|
$base-success-bg-light: rgba($base-success-color, 0.1) !default;
|
|
114
114
|
$base-success-bg-subtle: rgba($base-success-color, 0.08) !default;
|
|
@@ -122,7 +122,7 @@ $base-text-on-success: #ffffff !default;
|
|
|
122
122
|
// Danger/error semantic colors
|
|
123
123
|
// =============================================================================
|
|
124
124
|
|
|
125
|
-
$base-danger-color: #
|
|
125
|
+
$base-danger-color: #ef4444 !default; // Tailwind red-500 — aligns with --pa-negative in the sentiment scale
|
|
126
126
|
$base-danger-color-hover: color.adjust($base-danger-color, $lightness: -10%) !default;
|
|
127
127
|
$base-danger-bg-light: rgba($base-danger-color, 0.1) !default;
|
|
128
128
|
$base-danger-bg-subtle: rgba($base-danger-color, 0.08) !default;
|
|
@@ -136,7 +136,7 @@ $base-text-on-danger: #ffffff !default;
|
|
|
136
136
|
// Warning semantic colors
|
|
137
137
|
// =============================================================================
|
|
138
138
|
|
|
139
|
-
$base-warning-color: #
|
|
139
|
+
$base-warning-color: #f97316 !default; // Tailwind orange-500 — also serves as the off-target axis in KPI components
|
|
140
140
|
$base-warning-color-hover: color.adjust($base-warning-color, $lightness: -10%) !default;
|
|
141
141
|
$base-warning-bg-light: rgba($base-warning-color, 0.1) !default;
|
|
142
142
|
$base-warning-bg-subtle: rgba($base-warning-color, 0.08) !default;
|
|
@@ -159,6 +159,18 @@ $base-info-text: #0c5460 !default;
|
|
|
159
159
|
$base-info-text-light: #d1ecf1 !default;
|
|
160
160
|
$base-text-on-info: #ffffff !default;
|
|
161
161
|
|
|
162
|
+
// =============================================================================
|
|
163
|
+
// SENTIMENT SCALE — 5-step direction-of-change
|
|
164
|
+
// Used by KPI / data-display components to indicate movement direction.
|
|
165
|
+
// `--pa-positive` and `--pa-negative` alias the role colours above; the
|
|
166
|
+
// outlier shades (`very-positive` / `very-negative`) are explicit darker
|
|
167
|
+
// stops since they're not derivable cleanly via color.adjust.
|
|
168
|
+
// =============================================================================
|
|
169
|
+
|
|
170
|
+
$base-very-positive: #16a34a !default; // Tailwind green-600 — outlier positive
|
|
171
|
+
$base-very-negative: #dc2626 !default; // Tailwind red-600 — outlier negative
|
|
172
|
+
$base-neutral: #9ca3af !default; // Tailwind gray-400 — "no meaningful change"
|
|
173
|
+
|
|
162
174
|
// =============================================================================
|
|
163
175
|
// INTERACTIVE STATES
|
|
164
176
|
// Generic interaction feedback colors
|
|
@@ -33,6 +33,7 @@ $sidebar-text-secondary: $base-text-color-2 !default;
|
|
|
33
33
|
$sidebar-submenu-bg: $base-surface-3 !default;
|
|
34
34
|
$sidebar-submenu-hover-bg: color.adjust($base-surface-3, $lightness: -5%) !default;
|
|
35
35
|
$sidebar-submenu-active-bg: color.adjust($base-surface-3, $lightness: -10%) !default;
|
|
36
|
+
$sidebar-submenu-active-text: $sidebar-text !default;
|
|
36
37
|
|
|
37
38
|
// Footer colors
|
|
38
39
|
$footer-bg: $base-surface-1 !default;
|
|
@@ -336,15 +336,26 @@ $stat-square-min-size: 12.8rem !default; // 128px (was 8rem)
|
|
|
336
336
|
$stat-label-letter-spacing: 0.05em !default;
|
|
337
337
|
$stat-change-margin-bottom: 0.4rem !default; // 4px (was 0.25rem)
|
|
338
338
|
$stat-number-margin-bottom: $spacing-xs !default;
|
|
339
|
-
$stat-symbol-opacity:
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
339
|
+
$stat-symbol-opacity: 0.85 !default;
|
|
340
|
+
$stat-square-symbol-gap: 0.15em !default; // tight gap between number and symbol on the same row
|
|
341
|
+
|
|
342
|
+
// Stat square clamp values (10px base).
|
|
343
|
+
// Scale uses `cqi` (container query inline-size, requires `container-type: inline-size`
|
|
344
|
+
// on .pa-stat--square) so font tracks the tile width, not the viewport. Without this,
|
|
345
|
+
// a wide-viewport / narrow-tile combination (e.g. 6 KPIs in a 33% column on 1920px)
|
|
346
|
+
// hits the max font size and overflows multi-character values like "$847K" or "¥12.4M".
|
|
347
|
+
//
|
|
348
|
+
// Sizing budget: a 5-char number ("12.4M") at $stat-square-number-scale plus a 1-char
|
|
349
|
+
// symbol at $stat-square-symbol-scale plus the inter-element gap should fit inside the
|
|
350
|
+
// tile's content area (tile width minus 2× $spacing-lg padding) at typical tile widths
|
|
351
|
+
// (~250–400px). Numbers are sized aggressively so the KPI reads as the dominant element.
|
|
352
|
+
$stat-square-number-min: 3.2rem !default; // 32px floor
|
|
353
|
+
$stat-square-number-scale: 25cqi !default; // 25% of tile width
|
|
354
|
+
$stat-square-number-max: 9.6rem !default; // 96px ceiling (was 7.2/6.4 — bumped so wide tiles render large)
|
|
355
|
+
// Symbol is intentionally smaller than the number (visual hierarchy: number primary, unit secondary).
|
|
356
|
+
$stat-square-symbol-min: 1.6rem !default; // 16px floor (~50% of number-min)
|
|
357
|
+
$stat-square-symbol-scale: 12cqi !default; // 12% of tile width (~48% of number)
|
|
358
|
+
$stat-square-symbol-max: 4.8rem !default; // 48px ceiling (~50% of number-max)
|
|
348
359
|
|
|
349
360
|
// Stat shadow values
|
|
350
361
|
$stat-text-shadow-1-y: 4px !default;
|
|
@@ -507,7 +518,8 @@ $timeline-simple-dot-offset: -30px !default;
|
|
|
507
518
|
$timeline-simple-dot-shadow-offset-x: 3px !default;
|
|
508
519
|
$timeline-simple-dot-shadow-offset-y: 3px !default;
|
|
509
520
|
$timeline-simple-dot-shadow-blur: 0 !default;
|
|
510
|
-
$timeline-simple-dot-shadow-opacity: 0.
|
|
521
|
+
$timeline-simple-dot-shadow-opacity: 0.5 !default;
|
|
522
|
+
$timeline-simple-dot-border-radius: 30% !default;
|
|
511
523
|
$timeline-simple-content-margin-top: 0.6rem !default; // 6px (was 0.4rem)
|
|
512
524
|
$timeline-simple-scroll-container-max-height: 400px !default;
|
|
513
525
|
$timeline-simple-scroll-loader-min-height: 60px !default;
|
|
@@ -704,7 +716,7 @@ $progress-height: 0.8rem !default; // 8px
|
|
|
704
716
|
$progress-height-xs: 0.3rem !default; // 3px
|
|
705
717
|
$progress-height-sm: 0.5rem !default; // 5px
|
|
706
718
|
$progress-height-lg: 1.2rem !default; // 12px
|
|
707
|
-
$progress-bg:
|
|
719
|
+
$progress-bg: color-mix(in srgb, var(--pa-text-color-1) 12%, transparent) !default;
|
|
708
720
|
$progress-border-radius: $border-radius !default;
|
|
709
721
|
$progress-stripe-angle: 45deg !default;
|
|
710
722
|
$progress-stripe-size: 1.6rem !default; // 16px
|
|
@@ -723,16 +735,16 @@ $stacked-bar-legend-font-size: $font-size-xs !default;
|
|
|
723
735
|
$progress-ring-size: 8rem !default; // 80px
|
|
724
736
|
$progress-ring-size-sm: 5rem !default; // 50px
|
|
725
737
|
$progress-ring-size-lg: 11rem !default; // 110px
|
|
726
|
-
$progress-ring-track-color:
|
|
738
|
+
$progress-ring-track-color: color-mix(in srgb, var(--pa-text-color-1) 12%, transparent) !default;
|
|
727
739
|
$progress-ring-value-font-size: $font-size-lg !default;
|
|
728
740
|
$progress-ring-value-font-weight: $font-weight-bold !default;
|
|
729
741
|
$progress-ring-label-font-size: $font-size-2xs !default;
|
|
730
742
|
|
|
731
743
|
// Gauge (pa-gauge)
|
|
732
744
|
$gauge-size: 12rem !default; // 120px
|
|
733
|
-
$gauge-track-color:
|
|
745
|
+
$gauge-track-color: color-mix(in srgb, var(--pa-text-color-1) 12%, transparent) !default;
|
|
734
746
|
$gauge-label-font-size: $font-size-xs !default;
|
|
735
|
-
$gauge-value-font-size: $font-size-
|
|
747
|
+
$gauge-value-font-size: $font-size-3xl !default; // 2.8rem — value gets the whole donut hole (label is now below the gauge)
|
|
736
748
|
$gauge-value-font-weight: $font-weight-bold !default;
|
|
737
749
|
|
|
738
750
|
// Data bar (pa-data-bar)
|