@dodlhuat/basix 1.3.2 → 1.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -7
- package/css/accordion.scss +0 -5
- package/css/badge.scss +1 -6
- package/css/bottom-sheet.scss +3 -8
- package/css/breadcrumb.scss +6 -15
- package/css/button.scss +2 -1
- package/css/calendar.scss +0 -54
- package/css/card.scss +0 -5
- package/css/carousel.scss +0 -3
- package/css/chart.scss +0 -25
- package/css/chat-bubbles.scss +0 -15
- package/css/checkbox.scss +3 -2
- package/css/chips.scss +3 -7
- package/css/code-viewer.scss +1 -5
- package/css/context-menu.scss +4 -6
- package/css/datepicker.scss +4 -7
- package/css/docs.scss +0 -4
- package/css/dropdown.scss +1 -1
- package/css/editor.scss +1 -23
- package/css/file-uploader.scss +2 -2
- package/css/flyout-menu.scss +66 -44
- package/css/form.scss +0 -28
- package/css/gallery.scss +2 -3
- package/css/group-picker.scss +5 -35
- package/css/icons.scss +0 -3
- package/css/lightbox.scss +2 -4
- package/css/mixins.scss +8 -0
- package/css/modal.scss +3 -3
- package/css/parameters.scss +6 -1
- package/css/popover.scss +3 -15
- package/css/progress.scss +0 -6
- package/css/push-menu.scss +3 -28
- package/css/radiobutton.scss +2 -1
- package/css/range-slider.scss +1 -7
- package/css/scrollbar.scss +2 -6
- package/css/sidebar-nav.scss +0 -12
- package/css/stepper.scss +0 -4
- package/css/style.css +63 -68
- package/css/style.css.map +1 -1
- package/css/style.min.css +1 -1
- package/css/style.min.css.map +1 -1
- package/css/style.scss +1 -1
- package/css/table.scss +0 -4
- package/css/tabs.scss +0 -2
- package/css/timeline.scss +1 -13
- package/css/timepicker.scss +6 -7
- package/css/toast.scss +1 -1
- package/css/tooltip.scss +1 -5
- package/css/tree.scss +1 -1
- package/css/typography.scss +3 -3
- package/css/virtual-dropdown.scss +3 -28
- package/js/bottom-sheet.d.ts +3 -1
- package/js/bottom-sheet.js +26 -27
- package/js/calendar.d.ts +7 -0
- package/js/calendar.js +14 -33
- package/js/carousel.d.ts +2 -0
- package/js/carousel.js +13 -5
- package/js/chart.d.ts +4 -0
- package/js/chart.js +13 -31
- package/js/code-viewer.d.ts +1 -0
- package/js/code-viewer.js +4 -0
- package/js/context-menu.d.ts +9 -2
- package/js/context-menu.js +17 -14
- package/js/datepicker.d.ts +4 -0
- package/js/datepicker.js +26 -11
- package/js/dropdown.d.ts +3 -3
- package/js/dropdown.js +6 -9
- package/js/editor.d.ts +1 -0
- package/js/editor.js +9 -3
- package/js/file-uploader.d.ts +4 -0
- package/js/file-uploader.js +52 -43
- package/js/flyout-menu.d.ts +5 -3
- package/js/flyout-menu.js +23 -46
- package/js/gallery.d.ts +3 -0
- package/js/gallery.js +22 -24
- package/js/group-picker.d.ts +5 -0
- package/js/group-picker.js +12 -17
- package/js/lightbox.d.ts +3 -0
- package/js/lightbox.js +12 -6
- package/js/modal.d.ts +3 -1
- package/js/modal.js +14 -11
- package/js/popover.d.ts +2 -0
- package/js/popover.js +26 -30
- package/js/position.d.ts +2 -0
- package/js/position.js +1 -5
- package/js/push-menu.d.ts +2 -0
- package/js/push-menu.js +22 -35
- package/js/range-slider.d.ts +1 -0
- package/js/range-slider.js +5 -3
- package/js/scroll.d.ts +2 -0
- package/js/scroll.js +1 -0
- package/js/scrollbar.d.ts +2 -0
- package/js/scrollbar.js +24 -36
- package/js/select.d.ts +1 -0
- package/js/select.js +5 -10
- package/js/sidebar-nav.d.ts +2 -0
- package/js/sidebar-nav.js +8 -0
- package/js/stepper.d.ts +2 -0
- package/js/stepper.js +7 -1
- package/js/table.d.ts +4 -0
- package/js/table.js +15 -22
- package/js/tabs.d.ts +2 -0
- package/js/tabs.js +6 -14
- package/js/theme.d.ts +1 -0
- package/js/theme.js +5 -13
- package/js/timepicker.d.ts +3 -0
- package/js/timepicker.js +81 -67
- package/js/toast.d.ts +3 -0
- package/js/toast.js +24 -15
- package/js/tooltip.d.ts +2 -0
- package/js/tooltip.js +21 -19
- package/js/tree.d.ts +3 -0
- package/js/tree.js +13 -0
- package/js/utils.d.ts +1 -3
- package/js/utils.js +0 -3
- package/js/virtual-dropdown.d.ts +3 -0
- package/js/virtual-dropdown.js +25 -0
- package/package.json +2 -2
package/css/popover.scss
CHANGED
|
@@ -8,7 +8,7 @@ $arrow: 6px;
|
|
|
8
8
|
z-index: 900;
|
|
9
9
|
background: var(--background);
|
|
10
10
|
border: 1px solid var(--divider);
|
|
11
|
-
border-radius:
|
|
11
|
+
border-radius: $radius-panel;
|
|
12
12
|
box-shadow:
|
|
13
13
|
0 0 0 1px rgba(0, 0, 0, 0.03),
|
|
14
14
|
0 4px 6px -2px rgba(0, 0, 0, 0.05),
|
|
@@ -18,13 +18,11 @@ $arrow: 6px;
|
|
|
18
18
|
opacity: 0;
|
|
19
19
|
pointer-events: none;
|
|
20
20
|
|
|
21
|
-
// Entry: offset from the trigger side + subtle scale
|
|
22
21
|
&[data-placement="top"] { transform-origin: bottom center; transform: translateY(6px) scale(0.95); }
|
|
23
22
|
&[data-placement="bottom"] { transform-origin: top center; transform: translateY(-6px) scale(0.95); }
|
|
24
23
|
&[data-placement="left"] { transform-origin: right center; transform: translateX(6px) scale(0.95); }
|
|
25
24
|
&[data-placement="right"] { transform-origin: left center; transform: translateX(-6px) scale(0.95); }
|
|
26
25
|
|
|
27
|
-
// Shift transform-origin to the anchor corner for aligned popovers
|
|
28
26
|
&[data-placement="bottom"][data-align="start"] { transform-origin: top left; }
|
|
29
27
|
&[data-placement="bottom"][data-align="end"] { transform-origin: top right; }
|
|
30
28
|
&[data-placement="top"][data-align="start"] { transform-origin: bottom left; }
|
|
@@ -40,8 +38,6 @@ $arrow: 6px;
|
|
|
40
38
|
transform: none !important;
|
|
41
39
|
}
|
|
42
40
|
|
|
43
|
-
// ── Arrows ─────────────────────────────────────────────────────────────────
|
|
44
|
-
// Two layers: ::before = border colour (1px larger), ::after = background fill
|
|
45
41
|
&[data-arrow="true"] {
|
|
46
42
|
&::before,
|
|
47
43
|
&::after {
|
|
@@ -52,7 +48,6 @@ $arrow: 6px;
|
|
|
52
48
|
pointer-events: none;
|
|
53
49
|
}
|
|
54
50
|
|
|
55
|
-
// bottom placement → arrow ▲ at top of popover
|
|
56
51
|
&[data-placement="bottom"] {
|
|
57
52
|
&::before {
|
|
58
53
|
top: -($arrow + 1px);
|
|
@@ -72,7 +67,6 @@ $arrow: 6px;
|
|
|
72
67
|
}
|
|
73
68
|
}
|
|
74
69
|
|
|
75
|
-
// top placement → arrow ▼ at bottom of popover
|
|
76
70
|
&[data-placement="top"] {
|
|
77
71
|
&::before {
|
|
78
72
|
bottom: -($arrow + 1px);
|
|
@@ -92,7 +86,6 @@ $arrow: 6px;
|
|
|
92
86
|
}
|
|
93
87
|
}
|
|
94
88
|
|
|
95
|
-
// right placement → arrow ◁ at left of popover
|
|
96
89
|
&[data-placement="right"] {
|
|
97
90
|
&::before {
|
|
98
91
|
left: -($arrow + 1px);
|
|
@@ -112,7 +105,6 @@ $arrow: 6px;
|
|
|
112
105
|
}
|
|
113
106
|
}
|
|
114
107
|
|
|
115
|
-
// left placement → arrow ▶ at right of popover
|
|
116
108
|
&[data-placement="left"] {
|
|
117
109
|
&::before {
|
|
118
110
|
right: -($arrow + 1px);
|
|
@@ -134,8 +126,6 @@ $arrow: 6px;
|
|
|
134
126
|
}
|
|
135
127
|
}
|
|
136
128
|
|
|
137
|
-
// ── Content regions ──────────────────────────────────────────────────────────
|
|
138
|
-
|
|
139
129
|
.popover-header {
|
|
140
130
|
padding: calc($spacing * 0.65) $spacing;
|
|
141
131
|
border-bottom: 1px solid var(--divider);
|
|
@@ -146,7 +136,7 @@ $arrow: 6px;
|
|
|
146
136
|
align-items: center;
|
|
147
137
|
justify-content: space-between;
|
|
148
138
|
gap: calc($spacing * 0.5);
|
|
149
|
-
border-radius:
|
|
139
|
+
border-radius: $radius-panel $radius-panel 0 0;
|
|
150
140
|
}
|
|
151
141
|
|
|
152
142
|
.popover-body {
|
|
@@ -162,11 +152,9 @@ $arrow: 6px;
|
|
|
162
152
|
display: flex;
|
|
163
153
|
justify-content: flex-end;
|
|
164
154
|
gap: calc($spacing * 0.5);
|
|
165
|
-
border-radius: 0 0
|
|
155
|
+
border-radius: 0 0 $radius-panel $radius-panel;
|
|
166
156
|
}
|
|
167
157
|
|
|
168
|
-
// ── Action list (menu-style content) ─────────────────────────────────────────
|
|
169
|
-
|
|
170
158
|
.popover-menu {
|
|
171
159
|
padding: calc($spacing * 0.375) 0;
|
|
172
160
|
|
package/css/progress.scss
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
@use "properties";
|
|
2
2
|
@use "parameters" as *;
|
|
3
3
|
|
|
4
|
-
// ── Progress bar ──────────────────────────────────────────────────────────────
|
|
5
|
-
|
|
6
4
|
.progress {
|
|
7
5
|
width: 100%;
|
|
8
6
|
height: 8px;
|
|
@@ -18,13 +16,11 @@
|
|
|
18
16
|
transition: width 0.3s ease;
|
|
19
17
|
min-width: 0;
|
|
20
18
|
|
|
21
|
-
// ── Color variants ────────────────────────────────────────────────────────
|
|
22
19
|
&.accent { background: var(--accent-color); }
|
|
23
20
|
&.success { background: var(--success); }
|
|
24
21
|
&.warning { background: var(--warning); }
|
|
25
22
|
&.error { background: var(--error); }
|
|
26
23
|
|
|
27
|
-
// ── Indeterminate ─────────────────────────────────────────────────────────
|
|
28
24
|
&.animated {
|
|
29
25
|
width: 40% !important;
|
|
30
26
|
background: var(--accent-color);
|
|
@@ -37,8 +33,6 @@
|
|
|
37
33
|
100% { transform: translateX(350%); }
|
|
38
34
|
}
|
|
39
35
|
|
|
40
|
-
// ── Skeleton ──────────────────────────────────────────────────────────────────
|
|
41
|
-
|
|
42
36
|
@keyframes skeleton-shimmer {
|
|
43
37
|
0% { background-position: 200% 0; }
|
|
44
38
|
100% { background-position: -200% 0; }
|
package/css/push-menu.scss
CHANGED
|
@@ -5,15 +5,13 @@ $menu-width: 280px;
|
|
|
5
5
|
$menu-easing: cubic-bezier(0.4, 0, 0.2, 1);
|
|
6
6
|
$menu-duration: 300ms;
|
|
7
7
|
|
|
8
|
-
// ─── Outer nav shell ───────────────────────────────────────────────────────
|
|
9
|
-
|
|
10
8
|
nav.push-menu {
|
|
11
9
|
position: fixed;
|
|
12
10
|
top: 0;
|
|
13
11
|
left: 0;
|
|
14
12
|
width: $menu-width;
|
|
15
13
|
height: 100%;
|
|
16
|
-
overflow: hidden;
|
|
14
|
+
overflow: hidden;
|
|
17
15
|
transform: translateX(-100%);
|
|
18
16
|
transition: transform $menu-duration $menu-easing,
|
|
19
17
|
box-shadow $menu-duration $menu-easing;
|
|
@@ -34,12 +32,6 @@ nav.push-menu {
|
|
|
34
32
|
}
|
|
35
33
|
}
|
|
36
34
|
|
|
37
|
-
// ─── Panel system ──────────────────────────────────────────────────────────
|
|
38
|
-
// Three states:
|
|
39
|
-
// (no class) → translateX(105%) hidden to the right
|
|
40
|
-
// .is-prev → translateX(-20%) parallax depth, previous level
|
|
41
|
-
// .is-active → translateX(0) current visible panel
|
|
42
|
-
|
|
43
35
|
.push-menu-panel {
|
|
44
36
|
position: absolute;
|
|
45
37
|
inset: 0;
|
|
@@ -61,18 +53,14 @@ nav.push-menu {
|
|
|
61
53
|
}
|
|
62
54
|
}
|
|
63
55
|
|
|
64
|
-
// ─── Root panel list ───────────────────────────────────────────────────────
|
|
65
|
-
|
|
66
56
|
.push-menu-panel[data-level="0"] > ul {
|
|
67
|
-
padding-top: calc($spacing * 4.5);
|
|
57
|
+
padding-top: calc($spacing * 4.5);
|
|
68
58
|
padding-bottom: $spacing;
|
|
69
59
|
margin: 0;
|
|
70
60
|
list-style: none;
|
|
71
61
|
width: 100%;
|
|
72
62
|
}
|
|
73
63
|
|
|
74
|
-
// ─── Sub-panel header (back button + title) ────────────────────────────────
|
|
75
|
-
|
|
76
64
|
.push-menu-panel-header {
|
|
77
65
|
display: flex;
|
|
78
66
|
align-items: center;
|
|
@@ -116,7 +104,7 @@ nav.push-menu {
|
|
|
116
104
|
border: none;
|
|
117
105
|
background: rgba(255, 255, 255, 0.08);
|
|
118
106
|
color: rgba(255, 255, 255, 0.65);
|
|
119
|
-
pointer-events: none;
|
|
107
|
+
pointer-events: none;
|
|
120
108
|
transition: background 160ms ease, color 160ms ease, transform 160ms ease;
|
|
121
109
|
}
|
|
122
110
|
|
|
@@ -131,8 +119,6 @@ nav.push-menu {
|
|
|
131
119
|
text-overflow: ellipsis;
|
|
132
120
|
}
|
|
133
121
|
|
|
134
|
-
// ─── Sub-panel list ────────────────────────────────────────────────────────
|
|
135
|
-
|
|
136
122
|
.push-menu-panel:not([data-level="0"]) > ul {
|
|
137
123
|
padding: calc($spacing * 0.5) 0;
|
|
138
124
|
margin: 0;
|
|
@@ -140,13 +126,10 @@ nav.push-menu {
|
|
|
140
126
|
width: 100%;
|
|
141
127
|
}
|
|
142
128
|
|
|
143
|
-
// ─── List items ────────────────────────────────────────────────────────────
|
|
144
|
-
|
|
145
129
|
nav li {
|
|
146
130
|
margin: 0;
|
|
147
131
|
}
|
|
148
132
|
|
|
149
|
-
// Shared styles: anchor links and submenu trigger spans
|
|
150
133
|
nav a,
|
|
151
134
|
.push-menu-item {
|
|
152
135
|
color: var(--accent-color-text);
|
|
@@ -181,8 +164,6 @@ nav li + li .push-menu-item {
|
|
|
181
164
|
border-top: 1px solid rgba(255, 255, 255, 0.055);
|
|
182
165
|
}
|
|
183
166
|
|
|
184
|
-
// ─── Chevron for parent items ───────────────────────────────────────────────
|
|
185
|
-
|
|
186
167
|
.push-menu-chevron {
|
|
187
168
|
margin-left: auto;
|
|
188
169
|
flex-shrink: 0;
|
|
@@ -198,8 +179,6 @@ nav li + li .push-menu-item {
|
|
|
198
179
|
transform: translateX(2px);
|
|
199
180
|
}
|
|
200
181
|
|
|
201
|
-
// ─── Navigation controls (hamburger) ───────────────────────────────────────
|
|
202
|
-
|
|
203
182
|
.navigation-controls {
|
|
204
183
|
line-height: inherit;
|
|
205
184
|
|
|
@@ -221,8 +200,6 @@ nav li + li .push-menu-item {
|
|
|
221
200
|
}
|
|
222
201
|
}
|
|
223
202
|
|
|
224
|
-
// ─── Backdrop ──────────────────────────────────────────────────────────────
|
|
225
|
-
|
|
226
203
|
.push-menu-backdrop {
|
|
227
204
|
position: fixed;
|
|
228
205
|
inset: 0;
|
|
@@ -240,8 +217,6 @@ nav li + li .push-menu-item {
|
|
|
240
217
|
}
|
|
241
218
|
}
|
|
242
219
|
|
|
243
|
-
// ─── Main header ───────────────────────────────────────────────────────────
|
|
244
|
-
|
|
245
220
|
.main-header {
|
|
246
221
|
position: fixed;
|
|
247
222
|
background: var(--secondary-background);
|
package/css/radiobutton.scss
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
@use "properties";
|
|
2
2
|
@use "parameters" as *;
|
|
3
|
+
@use "mixins" as *;
|
|
3
4
|
|
|
4
5
|
$radio-size: 1.15rem;
|
|
5
6
|
$radio-dot-size: 0.55rem;
|
|
@@ -31,7 +32,7 @@ $radio-dot-size: 0.55rem;
|
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
&:focus-visible ~ .checkmark {
|
|
34
|
-
|
|
35
|
+
@include focus-glow(15%);
|
|
35
36
|
border-color: var(--accent-color);
|
|
36
37
|
}
|
|
37
38
|
|
package/css/range-slider.scss
CHANGED
|
@@ -16,13 +16,12 @@ $thumb-size: 1.1rem;
|
|
|
16
16
|
padding: calc($spacing / 2) 0;
|
|
17
17
|
margin: 0;
|
|
18
18
|
display: block;
|
|
19
|
-
|
|
19
|
+
|
|
20
20
|
min-height: auto;
|
|
21
21
|
border: none;
|
|
22
22
|
box-shadow: none;
|
|
23
23
|
outline: none;
|
|
24
24
|
|
|
25
|
-
// ── Track ────────────────────────────────────────────────
|
|
26
25
|
&::-webkit-slider-runnable-track {
|
|
27
26
|
height: $track-height;
|
|
28
27
|
border-radius: $track-height;
|
|
@@ -45,7 +44,6 @@ $thumb-size: 1.1rem;
|
|
|
45
44
|
background: var(--accent-color);
|
|
46
45
|
}
|
|
47
46
|
|
|
48
|
-
// ── Thumb ─────────────────────────────────────────────────
|
|
49
47
|
&::-webkit-slider-thumb {
|
|
50
48
|
-webkit-appearance: none;
|
|
51
49
|
appearance: none;
|
|
@@ -70,7 +68,6 @@ $thumb-size: 1.1rem;
|
|
|
70
68
|
cursor: pointer;
|
|
71
69
|
}
|
|
72
70
|
|
|
73
|
-
// ── Hover ─────────────────────────────────────────────────
|
|
74
71
|
&:hover::-webkit-slider-thumb {
|
|
75
72
|
transform: scale(1.15);
|
|
76
73
|
box-shadow: 0 0 0 6px color-mix(in srgb, var(--accent-color) 15%, transparent);
|
|
@@ -81,7 +78,6 @@ $thumb-size: 1.1rem;
|
|
|
81
78
|
box-shadow: 0 0 0 6px color-mix(in srgb, var(--accent-color) 15%, transparent);
|
|
82
79
|
}
|
|
83
80
|
|
|
84
|
-
// ── Active ────────────────────────────────────────────────
|
|
85
81
|
&:active::-webkit-slider-thumb {
|
|
86
82
|
transform: scale(1.22);
|
|
87
83
|
box-shadow: 0 0 0 9px color-mix(in srgb, var(--accent-color) 18%, transparent);
|
|
@@ -92,7 +88,6 @@ $thumb-size: 1.1rem;
|
|
|
92
88
|
box-shadow: 0 0 0 9px color-mix(in srgb, var(--accent-color) 18%, transparent);
|
|
93
89
|
}
|
|
94
90
|
|
|
95
|
-
// ── Focus ─────────────────────────────────────────────────
|
|
96
91
|
&:focus-visible::-webkit-slider-thumb {
|
|
97
92
|
box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent-color) 25%, transparent);
|
|
98
93
|
}
|
|
@@ -101,7 +96,6 @@ $thumb-size: 1.1rem;
|
|
|
101
96
|
box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent-color) 25%, transparent);
|
|
102
97
|
}
|
|
103
98
|
|
|
104
|
-
// ── Disabled ──────────────────────────────────────────────
|
|
105
99
|
&:disabled {
|
|
106
100
|
cursor: not-allowed;
|
|
107
101
|
|
package/css/scrollbar.scss
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
@use "properties";
|
|
2
2
|
@use "parameters" as *;
|
|
3
|
+
@use "mixins" as *;
|
|
3
4
|
|
|
4
5
|
:root {
|
|
5
6
|
--track-width: 12px;
|
|
@@ -52,7 +53,6 @@
|
|
|
52
53
|
pointer-events: auto;
|
|
53
54
|
transition: background 0.3s ease;
|
|
54
55
|
|
|
55
|
-
// Direct hover over the track lane → more intent, wider thumb
|
|
56
56
|
&:hover {
|
|
57
57
|
background: var(--hover);
|
|
58
58
|
|
|
@@ -76,7 +76,6 @@
|
|
|
76
76
|
pointer-events: auto;
|
|
77
77
|
touch-action: none;
|
|
78
78
|
|
|
79
|
-
// Thin sliver at rest, grows rightward on interaction
|
|
80
79
|
transform: scaleX(0.3);
|
|
81
80
|
transform-origin: right center;
|
|
82
81
|
transition:
|
|
@@ -87,19 +86,16 @@
|
|
|
87
86
|
will-change: top, height, transform, opacity;
|
|
88
87
|
}
|
|
89
88
|
|
|
90
|
-
// Hover over the container → reveal thumb gently
|
|
91
89
|
&:hover .thumb {
|
|
92
90
|
opacity: 0.45;
|
|
93
91
|
transform: scaleX(0.5);
|
|
94
92
|
}
|
|
95
93
|
|
|
96
|
-
// JS: user is actively scrolling (fades out ~800ms after last scroll)
|
|
97
94
|
&.is-scrolling .thumb {
|
|
98
95
|
opacity: 0.6;
|
|
99
96
|
transform: scaleX(0.5);
|
|
100
97
|
}
|
|
101
98
|
|
|
102
|
-
// JS: thumb is being dragged
|
|
103
99
|
&.is-dragging {
|
|
104
100
|
cursor: grabbing;
|
|
105
101
|
|
|
@@ -111,7 +107,7 @@
|
|
|
111
107
|
opacity: 1;
|
|
112
108
|
transform: scaleX(1);
|
|
113
109
|
background: var(--accent-color);
|
|
114
|
-
|
|
110
|
+
@include focus-glow(18%);
|
|
115
111
|
cursor: grabbing;
|
|
116
112
|
transition:
|
|
117
113
|
opacity 0.15s ease,
|
package/css/sidebar-nav.scss
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
@use "parameters" as *;
|
|
2
2
|
|
|
3
|
-
// ── Layout shell ──────────────────────────────────────────────────────────────
|
|
4
|
-
|
|
5
3
|
.sidebar-layout {
|
|
6
4
|
display: flex;
|
|
7
5
|
min-height: 100vh;
|
|
8
6
|
}
|
|
9
7
|
|
|
10
|
-
// ── Sidebar ───────────────────────────────────────────────────────────────────
|
|
11
|
-
|
|
12
8
|
.sidebar-nav {
|
|
13
9
|
width: var(--sidebar-width, 240px);
|
|
14
10
|
position: fixed;
|
|
@@ -30,8 +26,6 @@
|
|
|
30
26
|
}
|
|
31
27
|
}
|
|
32
28
|
|
|
33
|
-
// ── Main content area ─────────────────────────────────────────────────────────
|
|
34
|
-
|
|
35
29
|
.sidebar-main {
|
|
36
30
|
flex: 1;
|
|
37
31
|
min-width: 0;
|
|
@@ -40,8 +34,6 @@
|
|
|
40
34
|
margin-left: var(--sidebar-width, 240px);
|
|
41
35
|
}
|
|
42
36
|
|
|
43
|
-
// ── Backdrop (mobile overlay) ─────────────────────────────────────────────────
|
|
44
|
-
|
|
45
37
|
.sidebar-backdrop {
|
|
46
38
|
display: none;
|
|
47
39
|
position: fixed;
|
|
@@ -52,8 +44,6 @@
|
|
|
52
44
|
&.is-visible { display: block; }
|
|
53
45
|
}
|
|
54
46
|
|
|
55
|
-
// ── Mobile toggle button ──────────────────────────────────────────────────────
|
|
56
|
-
|
|
57
47
|
.sidebar-toggle {
|
|
58
48
|
display: none;
|
|
59
49
|
background: none;
|
|
@@ -67,8 +57,6 @@
|
|
|
67
57
|
svg { display: block; }
|
|
68
58
|
}
|
|
69
59
|
|
|
70
|
-
// ── Mobile breakpoint ─────────────────────────────────────────────────────────
|
|
71
|
-
|
|
72
60
|
@media (max-width: 768px) {
|
|
73
61
|
.sidebar-toggle {
|
|
74
62
|
display: flex;
|
package/css/stepper.scss
CHANGED
|
@@ -87,7 +87,6 @@ $connector-thickness: 2px;
|
|
|
87
87
|
transition: opacity 0.25s ease;
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
// Connector — animated fill via ::after
|
|
91
90
|
.stepper-connector {
|
|
92
91
|
flex: 1;
|
|
93
92
|
height: $connector-thickness;
|
|
@@ -113,7 +112,6 @@ $connector-thickness: 2px;
|
|
|
113
112
|
}
|
|
114
113
|
}
|
|
115
114
|
|
|
116
|
-
// Step states
|
|
117
115
|
.stepper-step {
|
|
118
116
|
&.active {
|
|
119
117
|
.stepper-indicator {
|
|
@@ -169,7 +167,6 @@ $connector-thickness: 2px;
|
|
|
169
167
|
}
|
|
170
168
|
}
|
|
171
169
|
|
|
172
|
-
// Vertical orientation
|
|
173
170
|
.stepper-vertical {
|
|
174
171
|
flex-direction: column;
|
|
175
172
|
|
|
@@ -207,7 +204,6 @@ $connector-thickness: 2px;
|
|
|
207
204
|
}
|
|
208
205
|
}
|
|
209
206
|
|
|
210
|
-
// Clickable steps
|
|
211
207
|
.stepper-clickable {
|
|
212
208
|
.stepper-step {
|
|
213
209
|
&.completed,
|