@stackific/md3 0.1.0 → 0.1.2

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.
Files changed (113) hide show
  1. package/README.md +1 -43
  2. package/dist/md3.css +1 -1
  3. package/dist/md3.js +1 -621
  4. package/package.json +2 -5
  5. package/src/main.js +0 -5
  6. package/src/runtime/elements/dialogs.js +0 -72
  7. package/src/runtime/elements/fields.js +0 -181
  8. package/src/runtime/elements/menus.js +0 -42
  9. package/src/runtime/elements/pages.js +0 -7
  10. package/src/runtime/elements/progress.js +0 -35
  11. package/src/runtime/elements/sliders.js +0 -78
  12. package/src/runtime/elements/snackbars.js +0 -27
  13. package/src/runtime/helpers/ripples.js +0 -46
  14. package/src/runtime/md3.js +0 -141
  15. package/src/runtime/palette.js +0 -64
  16. package/src/runtime/settings/theme.js +0 -194
  17. package/src/runtime/utils.js +0 -165
  18. package/src/styles/_config.scss +0 -142
  19. package/src/styles/_mixins.scss +0 -80
  20. package/src/styles/elements/_badges.scss +0 -65
  21. package/src/styles/elements/_bars.scss +0 -83
  22. package/src/styles/elements/_buttons.scss +0 -119
  23. package/src/styles/elements/_cards.scss +0 -32
  24. package/src/styles/elements/_chips.scss +0 -46
  25. package/src/styles/elements/_dialogs.scss +0 -143
  26. package/src/styles/elements/_dividers.scss +0 -46
  27. package/src/styles/elements/_expansions.scss +0 -19
  28. package/src/styles/elements/_fields.scss +0 -458
  29. package/src/styles/elements/_grids.scss +0 -35
  30. package/src/styles/elements/_icons.scss +0 -70
  31. package/src/styles/elements/_layouts.scss +0 -24
  32. package/src/styles/elements/_lists.scss +0 -76
  33. package/src/styles/elements/_main-layouts.scss +0 -45
  34. package/src/styles/elements/_media.scss +0 -104
  35. package/src/styles/elements/_menus.scss +0 -289
  36. package/src/styles/elements/_navigations.scss +0 -450
  37. package/src/styles/elements/_overlays.scss +0 -34
  38. package/src/styles/elements/_pages.scss +0 -28
  39. package/src/styles/elements/_progress.scss +0 -141
  40. package/src/styles/elements/_selections.scss +0 -248
  41. package/src/styles/elements/_shapes.scss +0 -151
  42. package/src/styles/elements/_sliders.scss +0 -336
  43. package/src/styles/elements/_snackbars.scss +0 -44
  44. package/src/styles/elements/_tables.scss +0 -67
  45. package/src/styles/elements/_tabs.scss +0 -49
  46. package/src/styles/elements/_tooltips.scss +0 -125
  47. package/src/styles/helpers/_alignments.scss +0 -29
  48. package/src/styles/helpers/_blurs.scss +0 -26
  49. package/src/styles/helpers/_colors.scss +0 -39
  50. package/src/styles/helpers/_directions.scss +0 -30
  51. package/src/styles/helpers/_elevates.scss +0 -20
  52. package/src/styles/helpers/_forms.scss +0 -76
  53. package/src/styles/helpers/_margins.scss +0 -39
  54. package/src/styles/helpers/_opacities.scss +0 -18
  55. package/src/styles/helpers/_paddings.scss +0 -35
  56. package/src/styles/helpers/_positions.scss +0 -44
  57. package/src/styles/helpers/_responsive.scss +0 -24
  58. package/src/styles/helpers/_ripples.scss +0 -40
  59. package/src/styles/helpers/_scrolls.scss +0 -7
  60. package/src/styles/helpers/_shadows.scss +0 -22
  61. package/src/styles/helpers/_sizes.scss +0 -34
  62. package/src/styles/helpers/_spaces.scss +0 -22
  63. package/src/styles/helpers/_typography.scss +0 -132
  64. package/src/styles/helpers/_waves.scss +0 -52
  65. package/src/styles/helpers/_zoom.scss +0 -18
  66. package/src/styles/md3.scss +0 -61
  67. package/src/styles/settings/_fonts.scss +0 -42
  68. package/src/styles/settings/_globals.scss +0 -104
  69. package/src/styles/settings/_reset.scss +0 -82
  70. package/src/styles/settings/_theme.scss +0 -126
  71. package/src/styles/settings/_themes.scss +0 -1525
  72. /package/dist/{shapes → assets}/arch.svg +0 -0
  73. /package/dist/{shapes → assets}/arrow.svg +0 -0
  74. /package/dist/{shapes → assets}/boom.svg +0 -0
  75. /package/dist/{shapes → assets}/bun.svg +0 -0
  76. /package/dist/{shapes → assets}/burst.svg +0 -0
  77. /package/dist/{shapes → assets}/circle.svg +0 -0
  78. /package/dist/{shapes → assets}/clamshell.svg +0 -0
  79. /package/dist/{shapes → assets}/diamond.svg +0 -0
  80. /package/dist/{shapes → assets}/fan.svg +0 -0
  81. /package/dist/{shapes → assets}/flower.svg +0 -0
  82. /package/dist/{shapes → assets}/gem.svg +0 -0
  83. /package/dist/{shapes → assets}/ghost-ish.svg +0 -0
  84. /package/dist/{shapes → assets}/heart.svg +0 -0
  85. /package/dist/{shapes → assets}/leaf-clover4.svg +0 -0
  86. /package/dist/{shapes → assets}/leaf-clover8.svg +0 -0
  87. /package/dist/{shapes → assets}/loading-indicator.svg +0 -0
  88. /package/dist/{fonts → assets}/material-symbols-outlined.woff2 +0 -0
  89. /package/dist/{fonts → assets}/material-symbols-rounded.woff2 +0 -0
  90. /package/dist/{fonts → assets}/material-symbols-sharp.woff2 +0 -0
  91. /package/dist/{fonts → assets}/material-symbols-subset.woff2 +0 -0
  92. /package/dist/{shapes → assets}/oval.svg +0 -0
  93. /package/dist/{shapes → assets}/pentagon.svg +0 -0
  94. /package/dist/{shapes → assets}/pill.svg +0 -0
  95. /package/dist/{shapes → assets}/pixel-circle.svg +0 -0
  96. /package/dist/{shapes → assets}/pixel-triangle.svg +0 -0
  97. /package/dist/{shapes → assets}/puffy-diamond.svg +0 -0
  98. /package/dist/{shapes → assets}/puffy.svg +0 -0
  99. /package/dist/{shapes → assets}/semicircle.svg +0 -0
  100. /package/dist/{shapes → assets}/sided-cookie12.svg +0 -0
  101. /package/dist/{shapes → assets}/sided-cookie4.svg +0 -0
  102. /package/dist/{shapes → assets}/sided-cookie6.svg +0 -0
  103. /package/dist/{shapes → assets}/sided-cookie7.svg +0 -0
  104. /package/dist/{shapes → assets}/sided-cookie9.svg +0 -0
  105. /package/dist/{shapes → assets}/slanted.svg +0 -0
  106. /package/dist/{shapes → assets}/soft-boom.svg +0 -0
  107. /package/dist/{shapes → assets}/soft-burst.svg +0 -0
  108. /package/dist/{shapes → assets}/square.svg +0 -0
  109. /package/dist/{shapes → assets}/sunny.svg +0 -0
  110. /package/dist/{shapes → assets}/triangle.svg +0 -0
  111. /package/dist/{shapes → assets}/very-sunny.svg +0 -0
  112. /package/dist/{shapes → assets}/wavy-circle.svg +0 -0
  113. /package/dist/{shapes → assets}/wavy.svg +0 -0
@@ -1,336 +0,0 @@
1
- // .slider — range input with single + dual thumb modes, vertical orientation,
2
- // and a .max "container slider" variant.
3
-
4
- .slider {
5
- --_start: 0%;
6
- --_end: 0%;
7
- --_value1: "";
8
- --_value2: "";
9
- --_track: 1rem;
10
- --_thumb: max(2.5rem, calc(var(--_track, 0) + 0.5rem));
11
- display: flex;
12
- align-items: center !important;
13
- inline-size: auto;
14
- block-size: var(--_thumb);
15
- flex: none;
16
- direction: ltr;
17
- margin: 0 1.25rem;
18
- color: var(--primary);
19
-
20
- &.vertical {
21
- flex-direction: row !important;
22
- margin: 0.5rem auto !important;
23
- padding: 50% 0;
24
- transform: rotate(-90deg);
25
- inline-size: 100%;
26
- }
27
- }
28
-
29
- [dir="rtl"] .slider {
30
- transform: scaleX(-1);
31
- }
32
-
33
- $-slider-tracks: (
34
- "tiny": 1rem,
35
- "small": 1.5rem,
36
- "medium": 2.5rem,
37
- "large": 3.5rem,
38
- "extra": 6rem,
39
- );
40
-
41
- @each $name, $value in $-slider-tracks {
42
- .slider.#{$name} { --_track: #{$value}; }
43
- }
44
-
45
- // inputs
46
- .slider > input {
47
- appearance: none;
48
- box-shadow: none;
49
- border: none;
50
- outline: none;
51
- pointer-events: none;
52
- inline-size: 100%;
53
- block-size: var(--_track);
54
- background: none;
55
- z-index: 1;
56
- padding: 0;
57
- margin: 0;
58
- transform: rotate(0deg);
59
- touch-action: none;
60
-
61
- &:only-of-type {
62
- pointer-events: all;
63
- }
64
-
65
- & ~ input {
66
- position: absolute;
67
- }
68
-
69
- &:disabled {
70
- cursor: not-allowed;
71
- opacity: 1;
72
- }
73
-
74
- &:disabled ~ span:not([class]) {
75
- background: var(--outline);
76
- }
77
- }
78
-
79
- // Thumb styling — WebKit / Firefox have separate pseudo-elements so the rules
80
- // can't be merged; we share the body via a mixin.
81
- @mixin -slider-thumb {
82
- appearance: none;
83
- box-shadow: none;
84
- border: none;
85
- outline: none;
86
- pointer-events: all;
87
- block-size: var(--_thumb);
88
- inline-size: 0.25rem;
89
- border-radius: 0.25rem;
90
- background: currentColor;
91
- cursor: grab;
92
- margin: 0;
93
- z-index: 1;
94
-
95
- &:active {
96
- cursor: grabbing;
97
- }
98
- }
99
-
100
- .slider > input::-webkit-slider-thumb { @include -slider-thumb; }
101
- .slider > input::-moz-range-thumb {
102
- @include -slider-thumb;
103
- block-size: 2.75rem;
104
- background: var(--primary);
105
- }
106
-
107
- .slider > input:not(:disabled):is(:focus)::-webkit-slider-thumb,
108
- .slider > input:not(:disabled):is(:focus)::-moz-range-thumb {
109
- transform: scaleX(0.6);
110
- }
111
-
112
- .slider > input:disabled::-webkit-slider-thumb,
113
- .slider > input:disabled::-moz-range-thumb {
114
- background: var(--outline);
115
- cursor: not-allowed;
116
- }
117
-
118
- // active track
119
- .slider > span:not([class]) {
120
- position: absolute;
121
- block-size: var(--_track);
122
- border-radius: 1rem 0 0 1rem;
123
- background: currentColor;
124
- color: currentColor;
125
- z-index: 0;
126
- inset: calc(50% - (var(--_track, 0) / 2)) calc(var(--_end) + 0.5rem) auto var(--_start);
127
- }
128
-
129
- .slider > input[type="range"] + input[type="range"] ~ span:not([class]) {
130
- border-radius: 0;
131
- inset: calc(50% - (var(--_track, 0) / 2)) calc(var(--_end) + 0.5rem) auto calc(var(--_start) + 0.5rem);
132
- }
133
-
134
- .field > .slider {
135
- inline-size: 100%;
136
- }
137
-
138
- .slider::before {
139
- content: "";
140
- position: absolute;
141
- inline-size: 100%;
142
- block-size: var(--_track);
143
- border-radius: 1rem;
144
- background: var(--active);
145
- clip-path: polygon(
146
- calc(var(--_start, 0) - 0.5rem) 0,
147
- 0 0, 0 100%,
148
- calc(var(--_start, 0) - 0.5rem) 100%,
149
- calc(var(--_start, 0) - 0.5rem) 0,
150
- calc(100% - var(--_end, 0) + 0.5rem) 0,
151
- 100% 0, 100% 100%,
152
- calc(100% - var(--_end, 0) + 0.5rem) 100%,
153
- calc(100% - var(--_end, 0) + 0.5rem) 0
154
- );
155
- }
156
-
157
- .slider:has(> [disabled])::before {
158
- background: var(--active);
159
- }
160
-
161
- .slider:has([disabled]) {
162
- opacity: 0.62;
163
- }
164
-
165
- .slider > span > i {
166
- position: absolute;
167
- block-size: auto;
168
- inset: 0 auto 0 0.5rem;
169
- color: var(--inverse-primary);
170
- z-index: 1;
171
- }
172
-
173
- .slider:not(.medium, .large, .extra) > span > i {
174
- display: none;
175
- }
176
-
177
- .slider.vertical > i {
178
- transform: rotate(90deg);
179
- }
180
-
181
- // tooltips
182
- .slider > .tooltip {
183
- visibility: hidden !important;
184
- opacity: 0 !important;
185
- inset: 0 auto auto calc(100% - var(--_end, 0));
186
- border-radius: 2rem;
187
- transition: top var(--speed2) ease, opacity var(--speed2) ease;
188
- transform: translate(-50%, -25%) !important;
189
- padding: 0.75rem 1rem;
190
-
191
- &.bottom {
192
- inset: auto auto 0 calc(100% - var(--_end, 0));
193
- transition: bottom var(--speed2) ease, opacity var(--speed2) ease;
194
- transform: translate(-50%, 25%) !important;
195
- }
196
-
197
- &::before {
198
- content: var(--_value1);
199
- }
200
- }
201
-
202
- [dir="rtl"] .slider > .tooltip {
203
- transform: translate(-50%, -25%) scaleX(-1) !important;
204
- }
205
-
206
- [dir="rtl"] .slider > .tooltip.bottom {
207
- transform: translate(-50%, 25%) scaleX(-1) !important;
208
- }
209
-
210
- .slider > .tooltip + .tooltip {
211
- inset: 0.25rem calc(100% - var(--_start, 0)) auto auto;
212
- transform: translate(50%, -25%) !important;
213
-
214
- &.bottom {
215
- inset: auto calc(100% - var(--_start, 0)) -0.25rem auto;
216
- transform: translate(50%, 25%) !important;
217
- }
218
-
219
- &::before {
220
- content: var(--_value2);
221
- }
222
- }
223
-
224
- [dir="rtl"] .slider > .tooltip + .tooltip {
225
- transform: translate(50%, -25%) scaleX(-1) !important;
226
- }
227
-
228
- [dir="rtl"] .slider > .tooltip + .tooltip.bottom {
229
- transform: translate(50%, 25%) scaleX(-1) !important;
230
- }
231
-
232
- .slider > :focus ~ .tooltip {
233
- inset-block: -1rem auto;
234
- opacity: 1 !important;
235
- visibility: visible !important;
236
-
237
- &.bottom {
238
- inset-block: auto -1rem;
239
- }
240
- }
241
-
242
- .slider.vertical > .tooltip {
243
- inset-block: auto;
244
- block-size: 2.5rem;
245
- inline-size: 2.5rem;
246
- margin-block: calc(-1 * var(--_thumb, 0)) 0 !important;
247
- transform: rotate(90deg) translate(-75%, 50%) !important;
248
-
249
- &.bottom {
250
- inset-block: auto;
251
- margin-block: 0 calc(-1 * var(--_thumb, 0)) !important;
252
- transform: rotate(90deg) translate(75%, 50%) !important;
253
- }
254
- }
255
-
256
- .slider.vertical > .tooltip + .tooltip {
257
- transform: rotate(90deg) translate(-75%, -50%) !important;
258
-
259
- &.bottom {
260
- transform: rotate(90deg) translate(75%, -50%) !important;
261
- }
262
- }
263
-
264
- :is(nav, .row, .field) > .slider:not(.circle, .small, .medium, .large) {
265
- flex: auto;
266
- }
267
-
268
- // .slider.max — container-filling variant
269
- .slider.max,
270
- .slider.max.vertical,
271
- .slider.max > input,
272
- .slider.max.vertical > input {
273
- all: unset;
274
- margin: 0 !important;
275
- position: absolute;
276
- color: var(--primary);
277
- inset: 0;
278
- border-radius: inherit;
279
- overflow: hidden;
280
- z-index: 2;
281
- cursor: grab;
282
- inline-size: 100%;
283
- block-size: 100%;
284
- }
285
-
286
- .slider.max::before {
287
- display: none;
288
- }
289
-
290
- .slider.max.vertical > input {
291
- writing-mode: vertical-lr;
292
- transform: rotate(-180deg);
293
- }
294
-
295
- .slider.max > input::-webkit-slider-thumb,
296
- .slider.max > input::-moz-range-thumb {
297
- opacity: 0;
298
- inline-size: 1rem;
299
- block-size: 100vh;
300
- transform: none !important;
301
- }
302
-
303
- .slider.max > span:not([class]) {
304
- block-size: auto !important;
305
- inset: 0 var(--_end) 0 var(--_start);
306
- background: currentcolor;
307
- color: inherit;
308
- border-radius: 0;
309
- }
310
-
311
- .slider.max.vertical > span:not([class]) {
312
- inset: var(--_end) 0 var(--_start) 0;
313
- }
314
-
315
- .slider > input:focus-visible::-webkit-slider-thumb,
316
- .slider > input:focus-visible::-moz-range-thumb {
317
- outline: 0.1875rem solid var(--primary);
318
- outline-offset: 0.25rem;
319
- }
320
-
321
- .slider.max > input:focus-visible {
322
- outline: 0.1875rem solid var(--primary);
323
- outline-offset: -0.125rem;
324
- }
325
-
326
- @media (pointer: coarse) {
327
- .slider > :hover ~ .tooltip {
328
- inset-block: -1rem auto !important;
329
- opacity: 1 !important;
330
- visibility: visible !important;
331
- }
332
-
333
- .slider > :hover ~ .tooltip.bottom {
334
- inset-block: auto -1rem !important;
335
- }
336
- }
@@ -1,44 +0,0 @@
1
- // .snackbar — bottom-aligned transient banner. .top relocates above.
2
-
3
- .snackbar {
4
- position: fixed;
5
- inset: auto auto 6rem 50%;
6
- inline-size: 80%;
7
- block-size: auto;
8
- z-index: 200;
9
- visibility: hidden;
10
- display: flex;
11
- box-shadow: var(--elevate2);
12
- color: var(--inverse-on-surface);
13
- background-color: var(--inverse-surface);
14
- padding: 1rem;
15
- cursor: pointer;
16
- text-align: start;
17
- align-items: center;
18
- border-radius: 0.25rem;
19
- gap: 0.5rem;
20
- transition: all var(--speed2);
21
- transform: translate(-50%, 1rem);
22
- opacity: 0;
23
-
24
- &.top {
25
- inset: 6rem auto auto 50%;
26
- }
27
-
28
- &.active,
29
- &:popover-open {
30
- visibility: visible;
31
- transform: translate(-50%, 0);
32
- opacity: 1;
33
- }
34
-
35
- > .max {
36
- flex: auto;
37
- }
38
- }
39
-
40
- @media only screen and (min-width: 993px) {
41
- .snackbar {
42
- inline-size: 40%;
43
- }
44
- }
@@ -1,67 +0,0 @@
1
- // table baseline + .border / .stripes / spacing modifiers.
2
-
3
- table {
4
- inline-size: 100%;
5
- border-spacing: 0;
6
- font-size: 0.875rem;
7
- text-align: start;
8
-
9
- &.border > tbody > tr:not(:last-child) > td {
10
- border-block-end: 0.0625rem solid var(--outline);
11
- }
12
-
13
- &.stripes > tbody > tr:nth-child(odd) {
14
- background-color: var(--active);
15
- }
16
-
17
- &.no-space :is(th, td) { padding: 0; }
18
- &.medium-space :is(th, td) { padding: 0.75rem; }
19
- &.large-space :is(th, td) { padding: 1rem; }
20
-
21
- > .fixed {
22
- position: sticky;
23
- z-index: 1;
24
- inset-block-start: 0;
25
- }
26
- }
27
-
28
- .scroll > table,
29
- table :is(thead, tbody, tfoot, tr, th, td) {
30
- background-color: inherit;
31
- color: inherit;
32
- }
33
-
34
- :is(th, td) {
35
- inline-size: auto;
36
- text-align: inherit;
37
- padding: 0.5rem;
38
- border-radius: 0;
39
-
40
- > * {
41
- vertical-align: middle;
42
- }
43
- }
44
-
45
- thead > tr > th {
46
- border-block-end: 0.0625rem solid var(--outline);
47
- }
48
-
49
- tfoot > tr > th {
50
- border-block-start: 0.0625rem solid var(--outline);
51
- }
52
-
53
- th.fixed {
54
- position: sticky;
55
- z-index: 1;
56
- inset-block-start: 0;
57
- }
58
-
59
- tfoot.fixed,
60
- tfoot th.fixed {
61
- inset-block-end: 0;
62
- }
63
-
64
- :is(td, th).min {
65
- inline-size: 0.1%;
66
- white-space: nowrap;
67
- }
@@ -1,49 +0,0 @@
1
- // .tabs container with active-state underline.
2
-
3
- .tabs {
4
- display: flex;
5
- white-space: nowrap;
6
- border-block-end: 0.0625rem solid var(--surface-variant);
7
- border-radius: 0;
8
-
9
- &:not(.left-align, .right-align, .center-align) {
10
- justify-content: space-around;
11
- }
12
-
13
- > a {
14
- display: flex;
15
- font-size: 0.875rem;
16
- font-weight: 500;
17
- color: var(--on-surface-variant);
18
- padding: 0.5rem 1rem;
19
- text-align: center;
20
- min-block-size: 3rem;
21
- inline-size: 100%;
22
- gap: 0.25rem;
23
-
24
- &.active,
25
- &.active > i {
26
- color: var(--primary);
27
- }
28
-
29
- &.active::before {
30
- content: "";
31
- position: absolute;
32
- inset: auto 0 0 0;
33
- block-size: 0.125rem;
34
- background-color: var(--primary);
35
- }
36
- }
37
-
38
- &.small > a { min-block-size: 2rem; }
39
- &.large > a { min-block-size: 4rem; }
40
-
41
- &.min > a.active::before {
42
- margin: 0 auto;
43
- max-inline-size: min(100%, 4rem);
44
- }
45
-
46
- &:is(.left-align, .center-align, .right-align) > a {
47
- inline-size: auto;
48
- }
49
- }
@@ -1,125 +0,0 @@
1
- // .tooltip — hover/focus popup. Defaults above; .left/.right/.bottom reposition.
2
-
3
- .tooltip {
4
- --_space: -0.5rem;
5
- visibility: hidden;
6
- display: flex;
7
- align-items: center;
8
- justify-content: center;
9
- gap: 0.5rem;
10
- background-color: var(--inverse-surface);
11
- color: var(--inverse-on-surface);
12
- font-size: 0.75rem;
13
- text-align: center;
14
- border-radius: 0.25rem;
15
- padding: 0.5rem;
16
- position: absolute;
17
- z-index: 200;
18
- inset: 0 auto auto 50%;
19
- inline-size: auto;
20
- white-space: nowrap;
21
- font-weight: 500;
22
- opacity: 0;
23
- transition: all var(--speed2);
24
- line-height: normal;
25
- transform: translate(-50%, -100%) scale(0.9);
26
-
27
- &:not(.max):hover {
28
- visibility: hidden;
29
- opacity: 0;
30
- }
31
-
32
- &.left {
33
- inset: 50% auto auto 0;
34
- transform: translate(-100%, -50%) scale(0.9);
35
- }
36
-
37
- &.right {
38
- inset: 50% 0 auto auto;
39
- transform: translate(100%, -50%) scale(0.9);
40
- }
41
-
42
- &.bottom {
43
- inset: auto auto 0 50%;
44
- transform: translate(-50%, 100%) scale(0.9);
45
- }
46
- }
47
-
48
- $-tooltip-sizes: (
49
- "small": 8rem,
50
- "medium": 12rem,
51
- "large": 16rem,
52
- );
53
-
54
- @each $name, $value in $-tooltip-sizes {
55
- .tooltip.#{$name} {
56
- inline-size: $value;
57
- white-space: normal;
58
- }
59
- }
60
-
61
- :hover > .tooltip {
62
- visibility: visible;
63
- opacity: 1;
64
- transform: translate(-50%, -100%) scale(1);
65
- }
66
-
67
- :hover > .tooltip.left { transform: translate(-100%, -50%) scale(1); }
68
- :hover > .tooltip.right { transform: translate(100%, -50%) scale(1); }
69
- :hover > .tooltip.bottom { transform: translate(-50%, 100%) scale(1); }
70
-
71
- $-tooltip-spacing: (
72
- "no": 0,
73
- "medium": -1rem,
74
- "large": -1.5rem,
75
- );
76
-
77
- @each $name, $value in $-tooltip-spacing {
78
- .tooltip.#{$name}-space {
79
- --_space: #{$value};
80
- }
81
- }
82
-
83
- .tooltip:not(.left, .right, .bottom) {
84
- margin-block-start: var(--_space) !important;
85
- }
86
-
87
- .tooltip.left,
88
- .tooltip.right {
89
- margin-inline: var(--_space) !important;
90
- }
91
-
92
- .tooltip.bottom {
93
- margin-block-end: var(--_space) !important;
94
- }
95
-
96
- menu:active ~ .tooltip,
97
- :is(button, .button):focus > menu ~ .tooltip,
98
- .field > :focus ~ menu ~ .tooltip {
99
- visibility: hidden;
100
- }
101
-
102
- .slider {
103
- > .tooltip {
104
- --_space: -1.25rem;
105
- }
106
-
107
- &.vertical > .tooltip {
108
- --_space: -0.75rem;
109
-
110
- &:is(.left, .right) {
111
- --_space: -0.5rem;
112
- }
113
- }
114
- }
115
-
116
- .tooltip.max {
117
- display: block;
118
- font-size: inherit;
119
- white-space: normal;
120
- text-align: start;
121
- inline-size: 20rem;
122
- border-radius: 0.5rem;
123
- padding: 1rem;
124
- box-shadow: var(--elevate2);
125
- }
@@ -1,29 +0,0 @@
1
- // Flex / text alignment utilities.
2
-
3
- @use "sass:map";
4
-
5
- $-alignments: (
6
- "middle": center,
7
- "bottom": flex-end,
8
- "top": flex-start,
9
- );
10
-
11
- @each $name, $value in $-alignments {
12
- .#{$name}-align {
13
- display: flex;
14
- align-items: $value !important;
15
- }
16
- }
17
-
18
- $-justifications: (
19
- "left": (text: start, justify: flex-start),
20
- "right": (text: end, justify: flex-end),
21
- "center": (text: center, justify: center),
22
- );
23
-
24
- @each $name, $values in $-justifications {
25
- .#{$name}-align {
26
- text-align: map.get($values, text);
27
- justify-content: map.get($values, justify) !important;
28
- }
29
- }
@@ -1,26 +0,0 @@
1
- // Backdrop-blur surfaces with three sizes.
2
-
3
- [class*="blur"],
4
- [class*="blur"].light {
5
- --_blur: 1rem;
6
- -webkit-backdrop-filter: blur(var(--_blur));
7
- backdrop-filter: blur(var(--_blur));
8
- color: var(--on-surface);
9
- background-color: rgb(255 255 255 / 0.5) !important;
10
- }
11
-
12
- .dark [class*="blur"],
13
- [class*="blur"].dark {
14
- background-color: rgb(0 0 0 / 0.5) !important;
15
- }
16
-
17
- $-blur-sizes: (
18
- "small": 0.5rem,
19
- "large": 1.5rem,
20
- );
21
-
22
- @each $name, $value in $-blur-sizes {
23
- .#{$name}-blur {
24
- --_blur: #{$value};
25
- }
26
- }
@@ -1,39 +0,0 @@
1
- // Material Design 2 palette utilities, generated from the $material-palette map.
2
- // Each palette entry yields:
3
- // .name → bg = shade-6 (the base), color !important
4
- // .name6 → same as .name (alias for the base shade)
5
- // .name-text → text color
6
- // .name-border → border color
7
- // .name1 ... .name10 → bg only, per tonal shade
8
- //
9
- // One Sass loop generates the full palette.
10
-
11
- @use "sass:list";
12
- @use "sass:map";
13
- @use "../config" as *;
14
-
15
- @each $name, $shades in $material-palette {
16
- $base: list.nth($shades, 1);
17
-
18
- .#{$name},
19
- .#{$name}6 {
20
- background-color: $base !important;
21
- }
22
-
23
- .#{$name}-border {
24
- border-color: $base !important;
25
- }
26
-
27
- .#{$name}-text {
28
- color: $base !important;
29
- }
30
-
31
- // Shades 1-10 from positions 2-11 in the shade list (skipping the duplicate base).
32
- @for $i from 1 through 10 {
33
- @if $i != 6 {
34
- .#{$name}#{$i} {
35
- background-color: list.nth($shades, $i + 1) !important;
36
- }
37
- }
38
- }
39
- }