@pacem/pacem-theme-css 0.0.0-stage → 1.1.0-sierpinski

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 (151) hide show
  1. package/LICENSE +191 -0
  2. package/NOTICE +4 -0
  3. package/README.md +142 -3
  4. package/pacem-themes.json +10 -0
  5. package/package.json +45 -6
  6. package/src/2d/index.css +44 -0
  7. package/src/3d/index.css +49 -0
  8. package/src/base/animations.css +82 -0
  9. package/src/base/attributes.css +19 -0
  10. package/src/base/backgrounds.css +37 -0
  11. package/src/base/body.css +199 -0
  12. package/src/base/content.css +4 -0
  13. package/src/base/icons.css +74 -0
  14. package/src/base/logging.css +5 -0
  15. package/src/base/overrides.css +3 -0
  16. package/src/base/preloader.css +17 -0
  17. package/src/base/reset.css +50 -0
  18. package/src/base/shell.css +3 -0
  19. package/src/base/text.css +184 -0
  20. package/src/basic/index.css +285 -0
  21. package/src/charts/generated/colors.css +49 -0
  22. package/src/charts/index.css +573 -0
  23. package/src/fx/index.css +230 -0
  24. package/src/layout/address.css +46 -0
  25. package/src/layout/animations.css +33 -0
  26. package/src/layout/borders.css +63 -0
  27. package/src/layout/box.css +271 -0
  28. package/src/layout/breadcrumbs.css +114 -0
  29. package/src/layout/cards.css +246 -0
  30. package/src/layout/coloring.css +862 -0
  31. package/src/layout/container.css +40 -0
  32. package/src/layout/corners.css +52 -0
  33. package/src/layout/datatable.css +324 -0
  34. package/src/layout/elevation.css +73 -0
  35. package/src/layout/fetch-feedback.css +125 -0
  36. package/src/layout/generated/borders.css +403 -0
  37. package/src/layout/generated/card-ribbon.css +94 -0
  38. package/src/layout/generated/card-sides.css +888 -0
  39. package/src/layout/generated/grid-system.css +308 -0
  40. package/src/layout/generated/grids.css +952 -0
  41. package/src/layout/generated/layout-stretch.css +132 -0
  42. package/src/layout/generated/positioning.css +323 -0
  43. package/src/layout/generated/sizing.css +478 -0
  44. package/src/layout/generated/spacing.css +1988 -0
  45. package/src/layout/generated/visibility.css +384 -0
  46. package/src/layout/grid-system.css +49 -0
  47. package/src/layout/grids.css +92 -0
  48. package/src/layout/index.css +39 -0
  49. package/src/layout/interactive.css +11 -0
  50. package/src/layout/layout.css +479 -0
  51. package/src/layout/lists.css +104 -0
  52. package/src/layout/other.css +25 -0
  53. package/src/layout/panels.css +337 -0
  54. package/src/layout/positioning.css +108 -0
  55. package/src/layout/scroll.css +85 -0
  56. package/src/layout/shapes.css +20 -0
  57. package/src/layout/shell.css +3 -0
  58. package/src/layout/sizing.css +25 -0
  59. package/src/layout/spacing.css +17 -0
  60. package/src/layout/superposition-system.css +116 -0
  61. package/src/layout/tokens-chips.css +15 -0
  62. package/src/layout/toolbar.css +30 -0
  63. package/src/layout/typography.css +106 -0
  64. package/src/layout/visibility.css +231 -0
  65. package/src/maps/index.css +20 -0
  66. package/src/media/index.css +6 -0
  67. package/src/media.css +18 -0
  68. package/src/pacem-content.css +24 -0
  69. package/src/pacem-shell.css +14 -0
  70. package/src/pacem.css +35 -0
  71. package/src/plus/carousel.css +327 -0
  72. package/src/plus/datagrid.css +68 -0
  73. package/src/plus/gallery.css +186 -0
  74. package/src/plus/icons.css +25 -0
  75. package/src/plus/index.css +7 -0
  76. package/src/plus/misc.css +194 -0
  77. package/src/scaffolding/calendar-picker.css +291 -0
  78. package/src/scaffolding/checkbox-radio.css +118 -0
  79. package/src/scaffolding/checkbox.css +200 -0
  80. package/src/scaffolding/childform.css +156 -0
  81. package/src/scaffolding/color.css +129 -0
  82. package/src/scaffolding/contenteditable.css +403 -0
  83. package/src/scaffolding/datepicker.css +126 -0
  84. package/src/scaffolding/elements.css +30 -0
  85. package/src/scaffolding/fieldset.css +346 -0
  86. package/src/scaffolding/form.css +36 -0
  87. package/src/scaffolding/formfield.css +364 -0
  88. package/src/scaffolding/generated/calendar-picker.css +40 -0
  89. package/src/scaffolding/generated/colors.css +115 -0
  90. package/src/scaffolding/generated/formfield.css +500 -0
  91. package/src/scaffolding/hierarchy.css +76 -0
  92. package/src/scaffolding/icons.css +64 -0
  93. package/src/scaffolding/image.css +195 -0
  94. package/src/scaffolding/index.css +40 -0
  95. package/src/scaffolding/input.css +163 -0
  96. package/src/scaffolding/inputs.css +77 -0
  97. package/src/scaffolding/latlng.css +173 -0
  98. package/src/scaffolding/markdown.css +14 -0
  99. package/src/scaffolding/password.css +7 -0
  100. package/src/scaffolding/pickers.css +150 -0
  101. package/src/scaffolding/radio.css +68 -0
  102. package/src/scaffolding/select.css +59 -0
  103. package/src/scaffolding/slider.css +236 -0
  104. package/src/scaffolding/snapshot.css +167 -0
  105. package/src/scaffolding/suggest.css +92 -0
  106. package/src/scaffolding/tags.css +132 -0
  107. package/src/scaffolding/textarea.css +45 -0
  108. package/src/scaffolding/upload.css +283 -0
  109. package/src/scaffolding/validators.css +29 -0
  110. package/src/tokens/colors.css +403 -0
  111. package/src/tokens/components.css +16 -0
  112. package/src/tokens/system.css +92 -0
  113. package/src/tokens/theme.css +221 -0
  114. package/src/traits.css +18 -0
  115. package/src/transforms/index.css +5 -0
  116. package/src/ui/anchor.css +55 -0
  117. package/src/ui/balloon.css +573 -0
  118. package/src/ui/binder.css +28 -0
  119. package/src/ui/blade.css +83 -0
  120. package/src/ui/bottom-sheet.css +53 -0
  121. package/src/ui/button.css +626 -0
  122. package/src/ui/calendar.css +415 -0
  123. package/src/ui/collapse.css +25 -0
  124. package/src/ui/dialog.css +230 -0
  125. package/src/ui/divider.css +42 -0
  126. package/src/ui/generated/calendar.css +363 -0
  127. package/src/ui/hidden.css +40 -0
  128. package/src/ui/icon.css +90 -0
  129. package/src/ui/image.css +140 -0
  130. package/src/ui/index.css +30 -0
  131. package/src/ui/led.css +84 -0
  132. package/src/ui/loader.css +174 -0
  133. package/src/ui/markdown.css +242 -0
  134. package/src/ui/marquee.css +41 -0
  135. package/src/ui/menu.css +386 -0
  136. package/src/ui/pager.css +133 -0
  137. package/src/ui/progressbar.css +137 -0
  138. package/src/ui/shell.css +4 -0
  139. package/src/ui/sidebar.css +103 -0
  140. package/src/ui/sticky-header.css +22 -0
  141. package/src/ui/tabs.css +355 -0
  142. package/src/ui/ticker.css +105 -0
  143. package/src/ui/timeline.css +106 -0
  144. package/src/ui/toast.css +182 -0
  145. package/src/ui/toc.css +58 -0
  146. package/src/ui/tuner.css +196 -0
  147. package/src/ui/view.css +30 -0
  148. package/src/ui/window.css +287 -0
  149. package/templates/theme.css +28 -0
  150. package/themes/dark.css +6 -0
  151. package/themes/light.css +97 -0
@@ -0,0 +1,573 @@
1
+ /* .BalloonColorize(): private properties, assigned by the color classes
2
+ --pacem--bl background color --pacem--bl-ink foreground color
3
+ --pacem--bl-h contextmenu hover back --pacem--bl-ih contextmenu hover fore
4
+ --pacem--bl-a background opacity
5
+ The colorizing rules are written for the plain balloon (0,0,1), for the field tooltips (0,1,1, before the dropdown
6
+ rules) and for the color classes (0,1,1, after them), where Less put them. */
7
+ @custom-selector :--colored :is(.balloon-root, .balloon-background, .balloon-invert, .balloon-primary, .balloon-secondary, .balloon-accent, .balloon-info,
8
+ .balloon-success, .balloon-warning, .balloon-danger, .balloon-error, .balloon-disabled, .balloon-green, .balloon-yellow,
9
+ .balloon-brown, .balloon-red, .balloon-pink, .balloon-blue, .balloon-orange, .balloon-purple, .balloon-teal, .balloon-gray,
10
+ .balloon-root-container, .balloon-background-container, .balloon-invert-container, .balloon-primary-container,
11
+ .balloon-secondary-container, .balloon-accent-container, .balloon-info-container, .balloon-success-container,
12
+ .balloon-warning-container, .balloon-danger-container, .balloon-error-container, .balloon-disabled-container,
13
+ .balloon-green-container, .balloon-yellow-container, .balloon-brown-container, .balloon-red-container,
14
+ .balloon-pink-container, .balloon-blue-container, .balloon-orange-container, .balloon-purple-container,
15
+ .balloon-teal-container, .balloon-gray-container, .balloon-alternative, .balloon-contrast);
16
+
17
+ /* #region BALLOON */
18
+ pacem-balloon {
19
+ --pacem--bl: var(--pacem-color-balloon);
20
+ --pacem--bl-ink: var(--pacem-color-default);
21
+ --pacem--bl-h: var(--pacem-color-balloon-hover);
22
+ --pacem--bl-ih: var(--pacem-color-default-hover);
23
+ --pacem--bl-a: 1;
24
+ box-sizing: border-box;
25
+ min-width: calc(var(--pacem-grid-spacing) * 3);
26
+ border: 1px solid transparent;
27
+ border-radius: var(--pacem-border-radius);
28
+ padding: calc(var(--pacem-grid-spacing) * .5);
29
+ cursor: default;
30
+ position: absolute;
31
+ top: 0;
32
+ left: 0;
33
+ z-index: var(--pacem-zindex-balloon);
34
+ display: block;
35
+
36
+ &::before,
37
+ &::after {
38
+ position: absolute;
39
+ display: block;
40
+ width: var(--pacem-grid-spacing);
41
+ height: var(--pacem-grid-spacing);
42
+ }
43
+
44
+ &::after {
45
+ content: "";
46
+ clip-path: polygon(33% 20%, 33% 80%, 80% 50%);
47
+ }
48
+
49
+ &::before {
50
+ content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 0 24 24' width='24px' fill='rgba(0,0,0,0.1)'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E");
51
+ z-index: -1;
52
+ }
53
+
54
+ /* .BalloonColorize(balloon, default) */
55
+ color: var(--pacem--bl-ink);
56
+ background-color: rgb(from var(--pacem--bl) r g b / var(--pacem--bl-a));
57
+
58
+ :--blur & {
59
+ backdrop-filter: blur(12px);
60
+ }
61
+
62
+ &.balloon-border {
63
+ border-color: rgb(from var(--pacem--bl) r g b / var(--pacem--bl-a));
64
+ }
65
+
66
+ &::after {
67
+ background-color: rgb(from var(--pacem--bl) r g b / min(.99, var(--pacem--bl-a)));
68
+ }
69
+
70
+ &.balloon-corners > .corner {
71
+ &.top-left {
72
+ border-top-color: rgb(from var(--pacem--bl) r g b);
73
+ border-left-color: rgb(from var(--pacem--bl) r g b);
74
+ }
75
+
76
+ &.top-right {
77
+ border-top-color: rgb(from var(--pacem--bl) r g b);
78
+ border-right-color: rgb(from var(--pacem--bl) r g b);
79
+ }
80
+
81
+ &.bottom-right {
82
+ border-bottom-color: rgb(from var(--pacem--bl) r g b);
83
+ border-right-color: rgb(from var(--pacem--bl) r g b);
84
+ }
85
+
86
+ &.bottom-left {
87
+ border-bottom-color: rgb(from var(--pacem--bl) r g b);
88
+ border-left-color: rgb(from var(--pacem--bl) r g b);
89
+ }
90
+ }
91
+
92
+ &.pacem-contextmenu {
93
+ .pacem-button,
94
+ pacem-button {
95
+ border-radius: var(--pacem-border-radius);
96
+ background-color: transparent;
97
+ }
98
+
99
+ .pacem-button:not(.pacem-disabled),
100
+ pacem-button:not(.pacem-disabled) {
101
+ color: var(--pacem--bl-ink);
102
+ }
103
+
104
+ .pacem-button:not(.pacem-disabled):hover,
105
+ .pacem-button:not(.pacem-disabled):focus,
106
+ pacem-button:not(.pacem-disabled):hover,
107
+ pacem-button:not(.pacem-disabled):focus {
108
+ background-color: var(--pacem--bl-h);
109
+ color: var(--pacem--bl-ih);
110
+ }
111
+
112
+ .pacem-button:not(.pacem-disabled):active,
113
+ pacem-button:not(.pacem-disabled):active {
114
+ background-color: var(--pacem-color-balloon-emphasis);
115
+ }
116
+ }
117
+ /* (end of .BalloonColorize) */
118
+
119
+ &.balloon-right {
120
+ &::before,
121
+ &::after {
122
+ left: calc(-2 * var(--pacem-grid-spacing) / 3);
123
+ transform: rotateZ(180deg);
124
+ }
125
+
126
+ &::before {
127
+ filter: drop-shadow(2px -2px 1px #000);
128
+ }
129
+ }
130
+
131
+ &.balloon-left {
132
+ &::before,
133
+ &::after {
134
+ right: calc(-2 * var(--pacem-grid-spacing) / 3);
135
+ }
136
+
137
+ &::before {
138
+ filter: drop-shadow(2px 2px 1px #000);
139
+ }
140
+ }
141
+
142
+ &.balloon-top {
143
+ &::before,
144
+ &::after {
145
+ bottom: calc(-2 * var(--pacem-grid-spacing) / 3);
146
+ transform: rotateZ(90deg);
147
+ }
148
+
149
+ &::before {
150
+ filter: drop-shadow(3.25px 0 2px #000);
151
+ }
152
+ }
153
+
154
+ &.balloon-bottom {
155
+ &::before,
156
+ &::after {
157
+ top: calc(-2 * var(--pacem-grid-spacing) / 3);
158
+ transform: rotateZ(-90deg);
159
+ }
160
+
161
+ &::before {
162
+ filter: drop-shadow(2px 0 1px #000);
163
+ }
164
+ }
165
+
166
+ &:is(.balloon-top, .balloon-bottom) {
167
+ &.balloon-start::after,
168
+ &.balloon-start::before {
169
+ left: var(--pacem-balloon-tail-inset);
170
+ }
171
+
172
+ &.balloon-end::after,
173
+ &.balloon-end::before {
174
+ right: var(--pacem-balloon-tail-inset);
175
+ }
176
+
177
+ &.balloon-center::after,
178
+ &.balloon-center::before {
179
+ left: 50%;
180
+ margin-left: calc(var(--pacem-grid-spacing) / -2);
181
+ }
182
+ }
183
+
184
+ &:is(.balloon-right, .balloon-left) {
185
+ &.balloon-start::after,
186
+ &.balloon-start::before {
187
+ top: var(--pacem-balloon-tail-inset);
188
+ }
189
+
190
+ &.balloon-end::after,
191
+ &.balloon-end::before {
192
+ bottom: var(--pacem-balloon-tail-inset);
193
+ }
194
+
195
+ &.balloon-center::after,
196
+ &.balloon-center::before {
197
+ top: 50%;
198
+ margin-top: calc(var(--pacem-grid-spacing) / -2);
199
+ }
200
+ }
201
+
202
+ &.balloon-corners {
203
+ &::part(corner-topleft),
204
+ &::part(corner-topright),
205
+ &::part(corner-bottomright),
206
+ &::part(corner-bottomleft),
207
+ > .corner {
208
+ width: calc(var(--pacem-grid-spacing) / 4);
209
+ height: calc(var(--pacem-grid-spacing) / 4);
210
+ border: 2px solid transparent;
211
+ position: absolute;
212
+ pointer-events: none;
213
+ }
214
+
215
+ &::part(corner-topleft),
216
+ > .corner.top-left {
217
+ top: -1px;
218
+ left: -1px;
219
+ }
220
+
221
+ &::part(corner-topright),
222
+ > .corner.top-right {
223
+ top: -1px;
224
+ right: -1px;
225
+ }
226
+
227
+ &::part(corner-bottomright),
228
+ > .corner.bottom-right {
229
+ bottom: -1px;
230
+ right: -1px;
231
+ }
232
+
233
+ &::part(corner-bottomleft),
234
+ > .corner.bottom-left {
235
+ bottom: -1px;
236
+ left: -1px;
237
+ }
238
+ }
239
+
240
+ box-shadow: var(--pacem-shadow-balloon);
241
+ }
242
+ /* #endregion */
243
+
244
+ /* #region INSIDE FORM FIELD: .BalloonColorize(primary), before the dropdown rules (as in Less) */
245
+ pacem-balloon.pacem-field-tooltip {
246
+ --pacem--bl: var(--pacem-color-primary);
247
+ --pacem--bl-ink: var(--pacem-color-primary-inverse);
248
+ --pacem--bl-h: var(--pacem-color-primary-hover);
249
+ --pacem--bl-ih: var(--pacem-color-primary-inverse-hover);
250
+ --pacem--bl-a: 1;
251
+ color: var(--pacem--bl-ink);
252
+ background-color: rgb(from var(--pacem--bl) r g b / var(--pacem--bl-a));
253
+
254
+ &.balloon-border {
255
+ border-color: rgb(from var(--pacem--bl) r g b / var(--pacem--bl-a));
256
+ }
257
+
258
+ &::after {
259
+ background-color: rgb(from var(--pacem--bl) r g b / min(.99, var(--pacem--bl-a)));
260
+ }
261
+
262
+ &.balloon-corners {
263
+ &::part(corner-topleft) {
264
+ border-top-color: rgb(from var(--pacem--bl) r g b);
265
+ border-left-color: rgb(from var(--pacem--bl) r g b);
266
+ }
267
+
268
+ &::part(corner-topright) {
269
+ border-top-color: rgb(from var(--pacem--bl) r g b);
270
+ border-right-color: rgb(from var(--pacem--bl) r g b);
271
+ }
272
+
273
+ &::part(corner-bottomright) {
274
+ border-bottom-color: rgb(from var(--pacem--bl) r g b);
275
+ border-right-color: rgb(from var(--pacem--bl) r g b);
276
+ }
277
+
278
+ &::part(corner-bottomleft) {
279
+ border-bottom-color: rgb(from var(--pacem--bl) r g b);
280
+ border-left-color: rgb(from var(--pacem--bl) r g b);
281
+ }
282
+ }
283
+
284
+ &.pacem-contextmenu {
285
+ .pacem-button,
286
+ pacem-button {
287
+ border-radius: var(--pacem-border-radius);
288
+ background-color: transparent;
289
+ }
290
+
291
+ .pacem-button:not(.pacem-disabled),
292
+ pacem-button:not(.pacem-disabled) {
293
+ color: var(--pacem--bl-ink);
294
+ }
295
+
296
+ .pacem-button:not(.pacem-disabled):hover,
297
+ .pacem-button:not(.pacem-disabled):focus,
298
+ pacem-button:not(.pacem-disabled):hover,
299
+ pacem-button:not(.pacem-disabled):focus {
300
+ background-color: var(--pacem--bl-h);
301
+ color: var(--pacem--bl-ih);
302
+ }
303
+
304
+ /* (Less referenced an undefined `--pacem-color-{color}-emphasis` here) */
305
+ .pacem-button:not(.pacem-disabled):active,
306
+ pacem-button:not(.pacem-disabled):active {
307
+ background-color: transparent;
308
+ }
309
+ }
310
+ }
311
+
312
+ pacem-balloon.pacem-field-tooltip code {
313
+ color: var(--pacem-color-primary-inverse);
314
+ background-color: rgb(from var(--pacem-color-primary-inverse) r g b / 10%);
315
+ }
316
+ /* #endregion */
317
+
318
+ pacem-balloon.dropdown,
319
+ pacem-balloon.balloon-dropdown {
320
+ padding: 0;
321
+ background-color: var(--pacem-color-suggest-back);
322
+ border: 2px solid var(--pacem-color-suggest-border);
323
+ min-width: 175px;
324
+ min-height: auto;
325
+
326
+ :--light-scheme & {
327
+ box-shadow: 0 2px 8px rgba(0,0,0,0.1);
328
+ }
329
+ }
330
+
331
+ /*#region for PANELS CONTAINED IN A BALLOON */
332
+ .balloon-panel {
333
+ margin: calc(var(--pacem-grid-spacing) * -.5);
334
+ }
335
+ /*#endregion*/
336
+
337
+ pacem-balloon {
338
+ --pacem--bl-off: calc(var(--pacem-balloon-tail-size) / 12);
339
+ --pacem--bl-ptr: calc(var(--pacem-balloon-tail-size) / 2);
340
+ /* default state */
341
+ opacity: 0;
342
+ pointer-events: none;
343
+ transform: scale(.6667);
344
+
345
+ &.balloon-dropdown,
346
+ &.dropdown {
347
+ transform: scaleY(.6667);
348
+ }
349
+
350
+ &.balloon-in {
351
+ opacity: 1;
352
+ }
353
+
354
+ &.balloon-right {
355
+ transform: translateX(calc(-1 * var(--pacem--bl-off))) scale(.6667);
356
+
357
+ &.balloon-start { transform-origin: left top; }
358
+ &.balloon-end { transform-origin: left bottom; }
359
+ &.balloon-center { transform-origin: left 50%; }
360
+
361
+ &.balloon-in {
362
+ transform: translateX(var(--pacem--bl-ptr));
363
+ }
364
+ }
365
+
366
+ &.balloon-left {
367
+ transform: translateX(var(--pacem--bl-off)) scale(.6667);
368
+
369
+ &.balloon-start { transform-origin: right top; }
370
+ &.balloon-end { transform-origin: right bottom; }
371
+ &.balloon-center { transform-origin: right 50%; }
372
+
373
+ &.balloon-in {
374
+ transform: translateX(calc(-1 * var(--pacem--bl-ptr)));
375
+ }
376
+ }
377
+
378
+ &.balloon-top {
379
+ transform: translateY(var(--pacem--bl-off)) scale(.6667);
380
+
381
+ &.balloon-start { transform-origin: left bottom; }
382
+ &.balloon-end { transform-origin: right bottom; }
383
+ &.balloon-center { transform-origin: 50% bottom; }
384
+
385
+ &.dropdown {
386
+ transform: translateY(calc(var(--pacem--bl-off) * 2)) scaleY(.6667);
387
+ transform-origin: 50% bottom;
388
+ }
389
+
390
+ &.balloon-in {
391
+ transform: translateY(calc(-1 * var(--pacem--bl-ptr)));
392
+ }
393
+ }
394
+
395
+ &.balloon-bottom {
396
+ transform: translateY(calc(-1 * var(--pacem--bl-off))) scale(.6667);
397
+
398
+ &.balloon-start { transform-origin: left top; }
399
+ &.balloon-end { transform-origin: right top; }
400
+ &.balloon-center { transform-origin: 50% top; }
401
+
402
+ &.dropdown {
403
+ transform: translateY(calc(var(--pacem--bl-off) * -2)) scaleY(.6667);
404
+ transform-origin: 50% top;
405
+ }
406
+
407
+ &.balloon-in {
408
+ transform: translateY(var(--pacem--bl-ptr));
409
+ }
410
+ }
411
+ }
412
+
413
+ /* colors */
414
+ pacem-balloon {
415
+ &.balloon-root { --pacem--bl: var(--pacem-color-root); --pacem--bl-ink: var(--pacem-color-root-inverse); --pacem--bl-h: var(--pacem-color-root-hover); --pacem--bl-ih: var(--pacem-color-root-inverse-hover); }
416
+ &.balloon-root-container { --pacem--bl: var(--pacem-color-root-container); --pacem--bl-ink: var(--pacem-color-root-container-inverse); --pacem--bl-h: var(--pacem-color-root-container-hover); --pacem--bl-ih: var(--pacem-color-root-container-inverse-hover); }
417
+ &.balloon-background { --pacem--bl: var(--pacem-color-background); --pacem--bl-ink: var(--pacem-color-background-inverse); --pacem--bl-h: var(--pacem-color-background-hover); --pacem--bl-ih: var(--pacem-color-background-inverse-hover); }
418
+ &.balloon-background-container { --pacem--bl: var(--pacem-color-background-container); --pacem--bl-ink: var(--pacem-color-background-container-inverse); --pacem--bl-h: var(--pacem-color-background-container-hover); --pacem--bl-ih: var(--pacem-color-background-container-inverse-hover); }
419
+ &.balloon-invert { --pacem--bl: var(--pacem-color-invert); --pacem--bl-ink: var(--pacem-color-invert-inverse); --pacem--bl-h: var(--pacem-color-invert-hover); --pacem--bl-ih: var(--pacem-color-invert-inverse-hover); }
420
+ &.balloon-invert-container { --pacem--bl: var(--pacem-color-invert-container); --pacem--bl-ink: var(--pacem-color-invert-container-inverse); --pacem--bl-h: var(--pacem-color-invert-container-hover); --pacem--bl-ih: var(--pacem-color-invert-container-inverse-hover); }
421
+ &.balloon-primary { --pacem--bl: var(--pacem-color-primary); --pacem--bl-ink: var(--pacem-color-primary-inverse); --pacem--bl-h: var(--pacem-color-primary-hover); --pacem--bl-ih: var(--pacem-color-primary-inverse-hover); }
422
+ &.balloon-primary-container { --pacem--bl: var(--pacem-color-primary-container); --pacem--bl-ink: var(--pacem-color-primary-container-inverse); --pacem--bl-h: var(--pacem-color-primary-container-hover); --pacem--bl-ih: var(--pacem-color-primary-container-inverse-hover); }
423
+ &.balloon-secondary { --pacem--bl: var(--pacem-color-secondary); --pacem--bl-ink: var(--pacem-color-secondary-inverse); --pacem--bl-h: var(--pacem-color-secondary-hover); --pacem--bl-ih: var(--pacem-color-secondary-inverse-hover); }
424
+ &.balloon-secondary-container { --pacem--bl: var(--pacem-color-secondary-container); --pacem--bl-ink: var(--pacem-color-secondary-container-inverse); --pacem--bl-h: var(--pacem-color-secondary-container-hover); --pacem--bl-ih: var(--pacem-color-secondary-container-inverse-hover); }
425
+ &.balloon-accent { --pacem--bl: var(--pacem-color-accent); --pacem--bl-ink: var(--pacem-color-accent-inverse); --pacem--bl-h: var(--pacem-color-accent-hover); --pacem--bl-ih: var(--pacem-color-accent-inverse-hover); }
426
+ &.balloon-accent-container { --pacem--bl: var(--pacem-color-accent-container); --pacem--bl-ink: var(--pacem-color-accent-container-inverse); --pacem--bl-h: var(--pacem-color-accent-container-hover); --pacem--bl-ih: var(--pacem-color-accent-container-inverse-hover); }
427
+ &.balloon-info { --pacem--bl: var(--pacem-color-info); --pacem--bl-ink: var(--pacem-color-info-inverse); --pacem--bl-h: var(--pacem-color-info-hover); --pacem--bl-ih: var(--pacem-color-info-inverse-hover); }
428
+ &.balloon-info-container { --pacem--bl: var(--pacem-color-info-container); --pacem--bl-ink: var(--pacem-color-info-container-inverse); --pacem--bl-h: var(--pacem-color-info-container-hover); --pacem--bl-ih: var(--pacem-color-info-container-inverse-hover); }
429
+ &.balloon-success { --pacem--bl: var(--pacem-color-success); --pacem--bl-ink: var(--pacem-color-success-inverse); --pacem--bl-h: var(--pacem-color-success-hover); --pacem--bl-ih: var(--pacem-color-success-inverse-hover); }
430
+ &.balloon-success-container { --pacem--bl: var(--pacem-color-success-container); --pacem--bl-ink: var(--pacem-color-success-container-inverse); --pacem--bl-h: var(--pacem-color-success-container-hover); --pacem--bl-ih: var(--pacem-color-success-container-inverse-hover); }
431
+ &.balloon-warning { --pacem--bl: var(--pacem-color-warning); --pacem--bl-ink: var(--pacem-color-warning-inverse); --pacem--bl-h: var(--pacem-color-warning-hover); --pacem--bl-ih: var(--pacem-color-warning-inverse-hover); }
432
+ &.balloon-warning-container { --pacem--bl: var(--pacem-color-warning-container); --pacem--bl-ink: var(--pacem-color-warning-container-inverse); --pacem--bl-h: var(--pacem-color-warning-container-hover); --pacem--bl-ih: var(--pacem-color-warning-container-inverse-hover); }
433
+ &.balloon-danger { --pacem--bl: var(--pacem-color-danger); --pacem--bl-ink: var(--pacem-color-danger-inverse); --pacem--bl-h: var(--pacem-color-danger-hover); --pacem--bl-ih: var(--pacem-color-danger-inverse-hover); }
434
+ &.balloon-danger-container { --pacem--bl: var(--pacem-color-danger-container); --pacem--bl-ink: var(--pacem-color-danger-container-inverse); --pacem--bl-h: var(--pacem-color-danger-container-hover); --pacem--bl-ih: var(--pacem-color-danger-container-inverse-hover); }
435
+ &.balloon-error { --pacem--bl: var(--pacem-color-error); --pacem--bl-ink: var(--pacem-color-error-inverse); --pacem--bl-h: var(--pacem-color-error-hover); --pacem--bl-ih: var(--pacem-color-error-inverse-hover); }
436
+ &.balloon-error-container { --pacem--bl: var(--pacem-color-error-container); --pacem--bl-ink: var(--pacem-color-error-container-inverse); --pacem--bl-h: var(--pacem-color-error-container-hover); --pacem--bl-ih: var(--pacem-color-error-container-inverse-hover); }
437
+ &.balloon-disabled { --pacem--bl: var(--pacem-color-disabled); --pacem--bl-ink: var(--pacem-color-disabled-inverse); --pacem--bl-h: var(--pacem-color-disabled-hover); --pacem--bl-ih: var(--pacem-color-disabled-inverse-hover); }
438
+ &.balloon-disabled-container { --pacem--bl: var(--pacem-color-disabled-container); --pacem--bl-ink: var(--pacem-color-disabled-container-inverse); --pacem--bl-h: var(--pacem-color-disabled-container-hover); --pacem--bl-ih: var(--pacem-color-disabled-container-inverse-hover); }
439
+ &.balloon-green { --pacem--bl: var(--pacem-color-green); --pacem--bl-ink: var(--pacem-color-green-inverse); --pacem--bl-h: var(--pacem-color-green-hover); --pacem--bl-ih: var(--pacem-color-green-inverse-hover); }
440
+ &.balloon-green-container { --pacem--bl: var(--pacem-color-green-container); --pacem--bl-ink: var(--pacem-color-green-container-inverse); --pacem--bl-h: var(--pacem-color-green-container-hover); --pacem--bl-ih: var(--pacem-color-green-container-inverse-hover); }
441
+ &.balloon-yellow { --pacem--bl: var(--pacem-color-yellow); --pacem--bl-ink: var(--pacem-color-yellow-inverse); --pacem--bl-h: var(--pacem-color-yellow-hover); --pacem--bl-ih: var(--pacem-color-yellow-inverse-hover); }
442
+ &.balloon-yellow-container { --pacem--bl: var(--pacem-color-yellow-container); --pacem--bl-ink: var(--pacem-color-yellow-container-inverse); --pacem--bl-h: var(--pacem-color-yellow-container-hover); --pacem--bl-ih: var(--pacem-color-yellow-container-inverse-hover); }
443
+ &.balloon-brown { --pacem--bl: var(--pacem-color-brown); --pacem--bl-ink: var(--pacem-color-brown-inverse); --pacem--bl-h: var(--pacem-color-brown-hover); --pacem--bl-ih: var(--pacem-color-brown-inverse-hover); }
444
+ &.balloon-brown-container { --pacem--bl: var(--pacem-color-brown-container); --pacem--bl-ink: var(--pacem-color-brown-container-inverse); --pacem--bl-h: var(--pacem-color-brown-container-hover); --pacem--bl-ih: var(--pacem-color-brown-container-inverse-hover); }
445
+ &.balloon-red { --pacem--bl: var(--pacem-color-red); --pacem--bl-ink: var(--pacem-color-red-inverse); --pacem--bl-h: var(--pacem-color-red-hover); --pacem--bl-ih: var(--pacem-color-red-inverse-hover); }
446
+ &.balloon-red-container { --pacem--bl: var(--pacem-color-red-container); --pacem--bl-ink: var(--pacem-color-red-container-inverse); --pacem--bl-h: var(--pacem-color-red-container-hover); --pacem--bl-ih: var(--pacem-color-red-container-inverse-hover); }
447
+ &.balloon-pink { --pacem--bl: var(--pacem-color-pink); --pacem--bl-ink: var(--pacem-color-pink-inverse); --pacem--bl-h: var(--pacem-color-pink-hover); --pacem--bl-ih: var(--pacem-color-pink-inverse-hover); }
448
+ &.balloon-pink-container { --pacem--bl: var(--pacem-color-pink-container); --pacem--bl-ink: var(--pacem-color-pink-container-inverse); --pacem--bl-h: var(--pacem-color-pink-container-hover); --pacem--bl-ih: var(--pacem-color-pink-container-inverse-hover); }
449
+ &.balloon-blue { --pacem--bl: var(--pacem-color-blue); --pacem--bl-ink: var(--pacem-color-blue-inverse); --pacem--bl-h: var(--pacem-color-blue-hover); --pacem--bl-ih: var(--pacem-color-blue-inverse-hover); }
450
+ &.balloon-blue-container { --pacem--bl: var(--pacem-color-blue-container); --pacem--bl-ink: var(--pacem-color-blue-container-inverse); --pacem--bl-h: var(--pacem-color-blue-container-hover); --pacem--bl-ih: var(--pacem-color-blue-container-inverse-hover); }
451
+ &.balloon-orange { --pacem--bl: var(--pacem-color-orange); --pacem--bl-ink: var(--pacem-color-orange-inverse); --pacem--bl-h: var(--pacem-color-orange-hover); --pacem--bl-ih: var(--pacem-color-orange-inverse-hover); }
452
+ &.balloon-orange-container { --pacem--bl: var(--pacem-color-orange-container); --pacem--bl-ink: var(--pacem-color-orange-container-inverse); --pacem--bl-h: var(--pacem-color-orange-container-hover); --pacem--bl-ih: var(--pacem-color-orange-container-inverse-hover); }
453
+ &.balloon-purple { --pacem--bl: var(--pacem-color-purple); --pacem--bl-ink: var(--pacem-color-purple-inverse); --pacem--bl-h: var(--pacem-color-purple-hover); --pacem--bl-ih: var(--pacem-color-purple-inverse-hover); }
454
+ &.balloon-purple-container { --pacem--bl: var(--pacem-color-purple-container); --pacem--bl-ink: var(--pacem-color-purple-container-inverse); --pacem--bl-h: var(--pacem-color-purple-container-hover); --pacem--bl-ih: var(--pacem-color-purple-container-inverse-hover); }
455
+ &.balloon-teal { --pacem--bl: var(--pacem-color-teal); --pacem--bl-ink: var(--pacem-color-teal-inverse); --pacem--bl-h: var(--pacem-color-teal-hover); --pacem--bl-ih: var(--pacem-color-teal-inverse-hover); }
456
+ &.balloon-teal-container { --pacem--bl: var(--pacem-color-teal-container); --pacem--bl-ink: var(--pacem-color-teal-container-inverse); --pacem--bl-h: var(--pacem-color-teal-container-hover); --pacem--bl-ih: var(--pacem-color-teal-container-inverse-hover); }
457
+ &.balloon-gray { --pacem--bl: var(--pacem-color-gray); --pacem--bl-ink: var(--pacem-color-gray-inverse); --pacem--bl-h: var(--pacem-color-gray-hover); --pacem--bl-ih: var(--pacem-color-gray-inverse-hover); }
458
+ &.balloon-gray-container { --pacem--bl: var(--pacem-color-gray-container); --pacem--bl-ink: var(--pacem-color-gray-container-inverse); --pacem--bl-h: var(--pacem-color-gray-container-hover); --pacem--bl-ih: var(--pacem-color-gray-container-inverse-hover); }
459
+ /* legacy */
460
+ &.balloon-alternative,
461
+ &.balloon-contrast { --pacem--bl: var(--pacem-color-background); --pacem--bl-ink: var(--pacem-color-default); --pacem--bl-h: var(--pacem-color-background-hover); --pacem--bl-ih: var(--pacem-color-default-hover); }
462
+
463
+ }
464
+
465
+ pacem-balloon:--colored {
466
+ --pacem--bl-a: .95;
467
+ color: var(--pacem--bl-ink);
468
+ background-color: rgb(from var(--pacem--bl) r g b / var(--pacem--bl-a));
469
+
470
+ &.balloon-border {
471
+ border-color: rgb(from var(--pacem--bl) r g b / var(--pacem--bl-a));
472
+ }
473
+
474
+ &::after {
475
+ background-color: rgb(from var(--pacem--bl) r g b / min(.99, var(--pacem--bl-a)));
476
+ }
477
+
478
+ &.balloon-corners {
479
+ &::part(corner-topleft) {
480
+ border-top-color: rgb(from var(--pacem--bl) r g b);
481
+ border-left-color: rgb(from var(--pacem--bl) r g b);
482
+ }
483
+
484
+ &::part(corner-topright) {
485
+ border-top-color: rgb(from var(--pacem--bl) r g b);
486
+ border-right-color: rgb(from var(--pacem--bl) r g b);
487
+ }
488
+
489
+ &::part(corner-bottomright) {
490
+ border-bottom-color: rgb(from var(--pacem--bl) r g b);
491
+ border-right-color: rgb(from var(--pacem--bl) r g b);
492
+ }
493
+
494
+ &::part(corner-bottomleft) {
495
+ border-bottom-color: rgb(from var(--pacem--bl) r g b);
496
+ border-left-color: rgb(from var(--pacem--bl) r g b);
497
+ }
498
+ }
499
+
500
+ &.pacem-contextmenu {
501
+ .pacem-button,
502
+ pacem-button {
503
+ border-radius: var(--pacem-border-radius);
504
+ background-color: transparent;
505
+ }
506
+
507
+ .pacem-button:not(.pacem-disabled),
508
+ pacem-button:not(.pacem-disabled) {
509
+ color: var(--pacem--bl-ink);
510
+ }
511
+
512
+ .pacem-button:not(.pacem-disabled):hover,
513
+ .pacem-button:not(.pacem-disabled):focus,
514
+ pacem-button:not(.pacem-disabled):hover,
515
+ pacem-button:not(.pacem-disabled):focus {
516
+ background-color: var(--pacem--bl-h);
517
+ color: var(--pacem--bl-ih);
518
+ }
519
+
520
+ /* (Less referenced an undefined `--pacem-color-{color}-emphasis` here) */
521
+ .pacem-button:not(.pacem-disabled):active,
522
+ pacem-button:not(.pacem-disabled):active {
523
+ background-color: transparent;
524
+ }
525
+ }
526
+ }
527
+
528
+ pacem-balloon.balloon-contrast {
529
+ --pacem--bl-a: 1;
530
+ }
531
+
532
+ pacem-balloon.balloon-notip,
533
+ pacem-balloon.dropdown,
534
+ pacem-balloon.balloon-dropdown {
535
+ &.balloon-top {
536
+ margin-top: var(--pacem--bl-ptr);
537
+ }
538
+
539
+ &.balloon-bottom {
540
+ margin-top: calc(-1 * var(--pacem--bl-ptr));
541
+ }
542
+
543
+ &.balloon-left {
544
+ margin-left: var(--pacem--bl-ptr);
545
+ }
546
+
547
+ &.balloon-right {
548
+ margin-left: calc(-1 * var(--pacem--bl-ptr));
549
+ }
550
+
551
+ &::after,
552
+ &::before {
553
+ display: none;
554
+ }
555
+ }
556
+
557
+ .pacem-animations pacem-balloon {
558
+ /* default state */
559
+ transition: transform .15s ease-out, opacity .15s;
560
+
561
+ &.balloon-on {
562
+ transition: transform .15s ease-out, opacity .15s, top .15s ease-in-out, left .15s ease-in-out;
563
+
564
+ &.dropdown,
565
+ &.balloon-dropdown {
566
+ transition: transform .15s ease-out, opacity .15s;
567
+ }
568
+ }
569
+
570
+ &.balloon-out {
571
+ transition: transform .1s ease-in, opacity .1s;
572
+ }
573
+ }
@@ -0,0 +1,28 @@
1
+ svg.pacem-binder {
2
+ path {
3
+ stroke: var(--pacem-color-default);
4
+ opacity: 0.25;
5
+ stroke-width: 2px;
6
+ }
7
+
8
+ &.binder-thin path {
9
+ opacity: 0.1;
10
+ stroke-width: 1px;
11
+ }
12
+
13
+ &.binder-thick path {
14
+ opacity: 0.75;
15
+ stroke-width: 2px;
16
+ }
17
+
18
+ &.binder-thicker path {
19
+ opacity: 0.75;
20
+ stroke-width: 3px;
21
+ }
22
+
23
+ &.binder-primary path { stroke: var(--pacem-color-primary); }
24
+ &.binder-success path { stroke: var(--pacem-color-success); }
25
+ &.binder-danger path { stroke: var(--pacem-color-danger); }
26
+ &.binder-warning path { stroke: var(--pacem-color-warning); }
27
+ &.binder-accent path { stroke: var(--pacem-color-accent); }
28
+ }
@@ -0,0 +1,83 @@
1
+ pacem-blade {
2
+ position: fixed;
3
+ top: 0;
4
+ right: 0;
5
+ bottom: 0;
6
+ width: 33vw;
7
+ box-sizing: border-box;
8
+ transform: translate(100%, 0);
9
+ z-index: calc(var(--pacem-zindex-lightbox) - 1);
10
+ overflow: auto;
11
+ border-radius: var(--pacem-border-radius) 0 0 var(--pacem-border-radius);
12
+
13
+ &.blade-slim {
14
+ width: 25vw;
15
+ }
16
+
17
+ /* mobile-compat: shouldn't be used */
18
+ &.blade-full {
19
+ width: 100vw;
20
+ }
21
+
22
+ &.blade-large {
23
+ width: 50vw;
24
+ }
25
+
26
+ &.blade-right {
27
+ left: auto;
28
+ }
29
+
30
+ &.blade-left {
31
+ left: 0;
32
+ right: auto;
33
+ transform: translate(-100%, 0);
34
+ border-radius: 0 var(--pacem-border-radius) var(--pacem-border-radius) 0;
35
+ }
36
+
37
+ &.blade-open {
38
+ transform: translate(0, 0);
39
+ }
40
+
41
+ @media screen and (--pacem-sm) {
42
+ min-width: 600px;
43
+
44
+ &.blade-slim {
45
+ min-width: 480px;
46
+ }
47
+ }
48
+ }
49
+
50
+ @media screen and (--pacem-lg) {
51
+ /* layout with a header? */
52
+ .pacem-body[header]:not(.sticky-header-fade) pacem-blade.blade-inset {
53
+ top: var(--pacem-layout-header-height);
54
+ }
55
+
56
+ .pacem-body[headbar] pacem-blade.blade-inset {
57
+ top: var(--pacem-layout-toolbar-height);
58
+ }
59
+
60
+ .pacem-body[header][headbar]:not(.sticky-header-fade) pacem-blade.blade-inset {
61
+ top: calc(var(--pacem-layout-header-height) + var(--pacem-layout-toolbar-height));
62
+ }
63
+
64
+ .pacem-body[footbar] pacem-blade.blade-inset {
65
+ bottom: var(--pacem-layout-toolbar-height);
66
+ }
67
+
68
+ .pacem-body[footer] pacem-blade.blade-inset {
69
+ bottom: var(--pacem-layout-footer-height);
70
+ }
71
+
72
+ .pacem-body[bigfooter] pacem-blade.blade-inset {
73
+ bottom: var(--pacem-layout-bigfooter-height);
74
+ }
75
+
76
+ .pacem-body[footbar][footer] pacem-blade.blade-inset {
77
+ bottom: calc(var(--pacem-layout-footer-height) + var(--pacem-layout-toolbar-height));
78
+ }
79
+ }
80
+
81
+ .pacem-animations pacem-blade {
82
+ transition: transform .3s var(--pacem-easing-in-out-sine) 0s !important;
83
+ }