@pacem/pacem-theme-css 0.0.0-stage → 2.0.0-abel

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 (153) hide show
  1. package/LICENSE +191 -0
  2. package/NOTICE +4 -0
  3. package/README.md +142 -3
  4. package/cli.js +26 -0
  5. package/pacem-themes.json +10 -0
  6. package/package.json +45 -6
  7. package/src/2d/index.css +44 -0
  8. package/src/3d/index.css +49 -0
  9. package/src/base/animations.css +82 -0
  10. package/src/base/attributes.css +19 -0
  11. package/src/base/backgrounds.css +37 -0
  12. package/src/base/body.css +199 -0
  13. package/src/base/content.css +4 -0
  14. package/src/base/icons.css +74 -0
  15. package/src/base/logging.css +5 -0
  16. package/src/base/overrides.css +3 -0
  17. package/src/base/preloader.css +17 -0
  18. package/src/base/reset.css +50 -0
  19. package/src/base/shell.css +3 -0
  20. package/src/base/text.css +184 -0
  21. package/src/basic/index.css +285 -0
  22. package/src/charts/generated/colors.css +49 -0
  23. package/src/charts/index.css +573 -0
  24. package/src/fx/index.css +230 -0
  25. package/src/layout/address.css +46 -0
  26. package/src/layout/animations.css +33 -0
  27. package/src/layout/borders.css +63 -0
  28. package/src/layout/box.css +271 -0
  29. package/src/layout/breadcrumbs.css +114 -0
  30. package/src/layout/cards.css +246 -0
  31. package/src/layout/coloring.css +862 -0
  32. package/src/layout/container.css +40 -0
  33. package/src/layout/corners.css +52 -0
  34. package/src/layout/datatable.css +324 -0
  35. package/src/layout/elevation.css +73 -0
  36. package/src/layout/fetch-feedback.css +125 -0
  37. package/src/layout/generated/borders.css +403 -0
  38. package/src/layout/generated/card-ribbon.css +94 -0
  39. package/src/layout/generated/card-sides.css +888 -0
  40. package/src/layout/generated/grid-system.css +308 -0
  41. package/src/layout/generated/grids.css +952 -0
  42. package/src/layout/generated/layout-stretch.css +132 -0
  43. package/src/layout/generated/positioning.css +323 -0
  44. package/src/layout/generated/sizing.css +478 -0
  45. package/src/layout/generated/spacing.css +1988 -0
  46. package/src/layout/generated/visibility.css +384 -0
  47. package/src/layout/grid-system.css +49 -0
  48. package/src/layout/grids.css +92 -0
  49. package/src/layout/index.css +39 -0
  50. package/src/layout/interactive.css +11 -0
  51. package/src/layout/layout.css +479 -0
  52. package/src/layout/lists.css +104 -0
  53. package/src/layout/other.css +25 -0
  54. package/src/layout/panels.css +337 -0
  55. package/src/layout/positioning.css +108 -0
  56. package/src/layout/scroll.css +85 -0
  57. package/src/layout/shapes.css +20 -0
  58. package/src/layout/shell.css +3 -0
  59. package/src/layout/sizing.css +25 -0
  60. package/src/layout/spacing.css +17 -0
  61. package/src/layout/superposition-system.css +116 -0
  62. package/src/layout/tokens-chips.css +15 -0
  63. package/src/layout/toolbar.css +30 -0
  64. package/src/layout/typography.css +106 -0
  65. package/src/layout/visibility.css +231 -0
  66. package/src/maps/index.css +20 -0
  67. package/src/media/index.css +6 -0
  68. package/src/media.css +18 -0
  69. package/src/pacem-content.css +24 -0
  70. package/src/pacem-shell.css +14 -0
  71. package/src/pacem.css +35 -0
  72. package/src/plus/carousel.css +327 -0
  73. package/src/plus/datagrid.css +68 -0
  74. package/src/plus/gallery.css +186 -0
  75. package/src/plus/icons.css +25 -0
  76. package/src/plus/index.css +7 -0
  77. package/src/plus/misc.css +194 -0
  78. package/src/scaffolding/calendar-picker.css +291 -0
  79. package/src/scaffolding/checkbox-radio.css +118 -0
  80. package/src/scaffolding/checkbox.css +200 -0
  81. package/src/scaffolding/childform.css +156 -0
  82. package/src/scaffolding/color.css +129 -0
  83. package/src/scaffolding/contenteditable.css +403 -0
  84. package/src/scaffolding/datepicker.css +126 -0
  85. package/src/scaffolding/elements.css +30 -0
  86. package/src/scaffolding/fieldset.css +346 -0
  87. package/src/scaffolding/form.css +36 -0
  88. package/src/scaffolding/formfield.css +364 -0
  89. package/src/scaffolding/generated/calendar-picker.css +40 -0
  90. package/src/scaffolding/generated/colors.css +115 -0
  91. package/src/scaffolding/generated/formfield.css +500 -0
  92. package/src/scaffolding/hierarchy.css +76 -0
  93. package/src/scaffolding/icons.css +64 -0
  94. package/src/scaffolding/image.css +195 -0
  95. package/src/scaffolding/index.css +40 -0
  96. package/src/scaffolding/input.css +163 -0
  97. package/src/scaffolding/inputs.css +77 -0
  98. package/src/scaffolding/latlng.css +173 -0
  99. package/src/scaffolding/markdown.css +14 -0
  100. package/src/scaffolding/password.css +7 -0
  101. package/src/scaffolding/pickers.css +150 -0
  102. package/src/scaffolding/radio.css +68 -0
  103. package/src/scaffolding/select.css +59 -0
  104. package/src/scaffolding/slider.css +236 -0
  105. package/src/scaffolding/snapshot.css +167 -0
  106. package/src/scaffolding/suggest.css +92 -0
  107. package/src/scaffolding/tags.css +132 -0
  108. package/src/scaffolding/textarea.css +45 -0
  109. package/src/scaffolding/upload.css +283 -0
  110. package/src/scaffolding/validators.css +29 -0
  111. package/src/tokens/colors.css +403 -0
  112. package/src/tokens/components.css +16 -0
  113. package/src/tokens/system.css +92 -0
  114. package/src/tokens/theme.css +221 -0
  115. package/src/traits.css +18 -0
  116. package/src/transforms/index.css +5 -0
  117. package/src/ui/anchor.css +55 -0
  118. package/src/ui/balloon.css +573 -0
  119. package/src/ui/binder.css +28 -0
  120. package/src/ui/blade.css +83 -0
  121. package/src/ui/bottom-sheet.css +53 -0
  122. package/src/ui/button.css +626 -0
  123. package/src/ui/calendar.css +415 -0
  124. package/src/ui/collapse.css +25 -0
  125. package/src/ui/dialog.css +230 -0
  126. package/src/ui/divider.css +42 -0
  127. package/src/ui/generated/calendar.css +363 -0
  128. package/src/ui/hidden.css +40 -0
  129. package/src/ui/icon.css +90 -0
  130. package/src/ui/image.css +140 -0
  131. package/src/ui/index.css +30 -0
  132. package/src/ui/led.css +84 -0
  133. package/src/ui/loader.css +174 -0
  134. package/src/ui/markdown.css +352 -0
  135. package/src/ui/marquee.css +41 -0
  136. package/src/ui/menu.css +386 -0
  137. package/src/ui/pager.css +133 -0
  138. package/src/ui/progressbar.css +137 -0
  139. package/src/ui/shell.css +4 -0
  140. package/src/ui/sidebar.css +103 -0
  141. package/src/ui/sticky-header.css +22 -0
  142. package/src/ui/tabs.css +355 -0
  143. package/src/ui/ticker.css +105 -0
  144. package/src/ui/timeline.css +106 -0
  145. package/src/ui/toast.css +182 -0
  146. package/src/ui/toc.css +58 -0
  147. package/src/ui/tuner.css +196 -0
  148. package/src/ui/view.css +30 -0
  149. package/src/ui/window.css +287 -0
  150. package/templates/theme.css +28 -0
  151. package/themebuilder.js +19 -0
  152. package/themes/dark.css +6 -0
  153. package/themes/light.css +97 -0
@@ -0,0 +1,479 @@
1
+ /* Shell layout: body, header, footer, toolbars, aside (layout/dark/layout.less). */
2
+
3
+ /* body + menu-relevant transitions */
4
+ .pacem-body {
5
+ display: block;
6
+ min-height: 100vh;
7
+ padding: var(--pacem-grid-spacing);
8
+ box-sizing: border-box;
9
+ z-index: 0;
10
+
11
+ &[headbar] {
12
+ padding-top: calc(var(--pacem-grid-spacing) + var(--pacem-layout-toolbar-height));
13
+ }
14
+
15
+ &[header] {
16
+ padding-top: calc(var(--pacem-grid-spacing) + var(--pacem-layout-header-height));
17
+
18
+ &[headbar], &[headbar-prepend] {
19
+ padding-top: calc(var(--pacem-grid-spacing) + var(--pacem-layout-toolbar-height) + var(--pacem-layout-header-height));
20
+ }
21
+ }
22
+
23
+ &[footbar] {
24
+ padding-bottom: calc(var(--pacem-grid-spacing) + var(--pacem-layout-toolbar-height));
25
+ }
26
+
27
+ &[footer] {
28
+ padding-bottom: calc(var(--pacem-grid-spacing) + var(--pacem-layout-footer-height));
29
+
30
+ &[footbar], &[footbar-append] {
31
+ padding-bottom: calc(var(--pacem-grid-spacing) + var(--pacem-layout-toolbar-height) + var(--pacem-layout-footer-height));
32
+ }
33
+ }
34
+
35
+ &[bigfooter] {
36
+ padding-bottom: calc(var(--pacem-grid-spacing) + var(--pacem-layout-bigfooter-height));
37
+
38
+ &[footbar], &[footbar-append] {
39
+ padding-bottom: calc(var(--pacem-grid-spacing) + var(--pacem-layout-toolbar-height) + var(--pacem-layout-bigfooter-height));
40
+ }
41
+ }
42
+
43
+ &.pacem-animations.pacem-animatable {
44
+ transition: padding var(--pacem-easing-in-out-sine) .3s;
45
+
46
+ &.pacem-menu-close {
47
+ transition-delay: .25s;
48
+ }
49
+ }
50
+ }
51
+
52
+ /* header/footer std */
53
+ header[pacem],
54
+ .pacem-header,
55
+ footer[pacem],
56
+ .pacem-footer {
57
+ position: fixed;
58
+ width: 100vw;
59
+ left: 0;
60
+ z-index: var(--pacem-zindex-header);
61
+ box-sizing: border-box;
62
+ /* theme background (e.g. a dotted grid: see the phousys theme of the Pacem JS webapp) */
63
+ background-image: var(--pacem-body-background-image);
64
+ background-size: var(--pacem-body-background-size);
65
+ background-attachment: var(--pacem-body-background-attachment);
66
+ background-position: 0 0;
67
+ background-repeat: repeat;
68
+ background-color: var(--pacem-color-background);
69
+ }
70
+
71
+ /* header std */
72
+ header[pacem],
73
+ .pacem-header {
74
+ height: calc(var(--pacem-layout-header-height) + var(--pacem-layout-toolbar-height));
75
+ padding-left: var(--pacem-grid-cell);
76
+ padding-right: var(--pacem-grid-spacing);
77
+ padding-top: var(--pacem-layout-toolbar-height);
78
+ top: 0;
79
+ display: block;
80
+ /* start hidden */
81
+ transform: translateY(calc(-1 * (var(--pacem-layout-header-height) + var(--pacem-layout-toolbar-height)))) translateX(0);
82
+ opacity: 0;
83
+ }
84
+
85
+ /* (explicit selectors: header[pacem] and .pacem-header have different specificity) */
86
+ header[pacem].header-border,
87
+ .pacem-header.header-border {
88
+ border-bottom: 1px solid var(--pacem-color-border);
89
+ }
90
+
91
+ /* footer std */
92
+ footer[pacem],
93
+ .pacem-footer {
94
+ bottom: 0;
95
+ height: calc(var(--pacem-layout-bigfooter-height) + var(--pacem-layout-toolbar-height));
96
+ padding-left: var(--pacem-grid-spacing);
97
+ padding-right: var(--pacem-grid-spacing);
98
+ padding-bottom: calc(var(--pacem-layout-toolbar-height) + (var(--pacem-layout-bigfooter-height) - var(--pacem-layout-footer-height)));
99
+ display: flex;
100
+ flex-direction: column;
101
+ align-items: flex-start;
102
+ justify-content: center;
103
+ /* start hidden */
104
+ transform: translateY(calc(var(--pacem-layout-bigfooter-height) + var(--pacem-layout-toolbar-height))) translateX(0);
105
+ opacity: 0;
106
+ }
107
+
108
+ footer[pacem].footer-border,
109
+ .pacem-footer.footer-border {
110
+ border-top: 1px solid var(--pacem-color-border);
111
+ }
112
+
113
+ /* header/footer (custom) */
114
+ .pacem-body[bigfooter] {
115
+
116
+ footer[pacem],
117
+ .pacem-footer {
118
+ padding-bottom: var(--pacem-layout-toolbar-height);
119
+ }
120
+ }
121
+
122
+ /* aside only visible in large screens (1) */
123
+ aside[pacem], .pacem-aside {
124
+ display: none;
125
+ }
126
+
127
+ /* #region toolbars */
128
+
129
+ /* default */
130
+ .pacem-toolbar.toolbar-header,
131
+ .pacem-toolbar.toolbar-footer {
132
+ position: fixed;
133
+ width: 100vw;
134
+ left: 0;
135
+ display: grid;
136
+ z-index: calc(var(--pacem-zindex-header) - 1);
137
+ box-sizing: border-box;
138
+ background-image: var(--pacem-body-background-image);
139
+ background-size: var(--pacem-body-background-size);
140
+ background-attachment: var(--pacem-body-background-attachment);
141
+ background-position: 0 0;
142
+ background-repeat: repeat;
143
+ background-color: var(--pacem-color-background);
144
+ height: var(--pacem-layout-toolbar-height);
145
+ padding: 0;
146
+ margin: 0;
147
+ /* css grid */
148
+ grid-template-columns: minmax(var(--pacem-grid-cell), auto) 1fr;
149
+
150
+ > * {
151
+ height: var(--pacem-layout-toolbar-height);
152
+ }
153
+
154
+ > .toolbar-side {
155
+ grid-column: 1;
156
+ }
157
+
158
+ > .toolbar-main {
159
+ grid-column: 2;
160
+ }
161
+ }
162
+
163
+ /* header toolbar */
164
+ .pacem-toolbar.toolbar-header {
165
+ top: 0;
166
+ /* start hidden */
167
+ transform: translateY(calc(-1 * (var(--pacem-layout-header-height) + var(--pacem-layout-toolbar-height)))) translateX(0);
168
+ opacity: 0;
169
+
170
+ &.toolbar-border {
171
+ border-bottom: 1px solid var(--pacem-color-border);
172
+ }
173
+ }
174
+
175
+ /* footer toolbar */
176
+ .pacem-toolbar.toolbar-footer {
177
+ bottom: 0;
178
+ /* start hidden */
179
+ transform: translateY(calc(var(--pacem-layout-bigfooter-height) + var(--pacem-layout-toolbar-height))) translateX(0);
180
+ opacity: 0;
181
+
182
+ &.toolbar-border {
183
+ border-top: 1px solid var(--pacem-color-border);
184
+ }
185
+ }
186
+
187
+ /* #endregion */
188
+
189
+ /* #region shadows */
190
+
191
+ :--shadows .pacem-body[header]:not([headbar]) {
192
+
193
+ header[pacem],
194
+ .pacem-header {
195
+ box-shadow: 0 1px var(--pacem-grid-spacing) rgba(0, 0, 0, 0.5);
196
+ border-bottom-color: transparent;
197
+ }
198
+ }
199
+
200
+ /* (explicit selectors: the two body selectors have different specificity) */
201
+ :--shadows .pacem-body[headbar-prepend]:not([header]) .pacem-toolbar.toolbar-header,
202
+ :--shadows .pacem-body[headbar] .pacem-toolbar.toolbar-header {
203
+ box-shadow: 0 1px var(--pacem-grid-spacing) rgba(0, 0, 0, 0.5);
204
+ border-bottom-color: transparent;
205
+ }
206
+
207
+ :--shadows .pacem-body[footer]:not([footbar]) {
208
+
209
+ footer[pacem],
210
+ .pacem-footer {
211
+ border-top-color: transparent;
212
+ box-shadow: 0 0 var(--pacem-grid-spacing) rgba(0, 0, 0, 0.25);
213
+ }
214
+ }
215
+
216
+ :--shadows .pacem-body[footbar-append]:not([footer]) .pacem-toolbar.toolbar-footer,
217
+ :--shadows .pacem-body[footbar] .pacem-toolbar.toolbar-footer {
218
+ border-top-color: transparent;
219
+ box-shadow: 0 0 var(--pacem-grid-spacing) rgba(0, 0, 0, 0.25);
220
+ }
221
+
222
+ /* #endregion */
223
+
224
+ /* visible head toolbar */
225
+ .pacem-body[headbar]:not([header]) .pacem-toolbar.toolbar-header,
226
+ .pacem-body[headbar-prepend] .pacem-toolbar.toolbar-header {
227
+ opacity: 1;
228
+ transform: translateX(0) translateY(0);
229
+ }
230
+
231
+ .pacem-body[headbar][header] {
232
+
233
+ .pacem-toolbar.toolbar-header {
234
+ opacity: 1;
235
+ transform: translateX(0) translateY(var(--pacem-layout-header-height));
236
+ }
237
+ }
238
+
239
+ /* visible header */
240
+ .pacem-body[header] {
241
+
242
+ header[pacem],
243
+ .pacem-header {
244
+ opacity: 1;
245
+ transform: translateX(0) translateY(calc(-1 * var(--pacem-layout-toolbar-height)));
246
+ }
247
+
248
+ &[headbar-prepend] {
249
+ header[pacem],
250
+ .pacem-header {
251
+ transform: translateX(0) translateY(0);
252
+ }
253
+
254
+ .pacem-toolbar.toolbar-header {
255
+ z-index: calc(var(--pacem-zindex-header) + 1);
256
+ }
257
+ }
258
+ }
259
+
260
+ /* visible footer */
261
+ .pacem-body[footer],
262
+ .pacem-body[bigfooter] {
263
+
264
+ footer[pacem],
265
+ .pacem-footer {
266
+ opacity: 1;
267
+ }
268
+ }
269
+
270
+ .pacem-body[footer]:not([footbar-append]) {
271
+
272
+ footer[pacem],
273
+ .pacem-footer {
274
+ transform: translateX(0) translateY(calc(var(--pacem-layout-toolbar-height) + (var(--pacem-layout-bigfooter-height) - var(--pacem-layout-footer-height))));
275
+ }
276
+ }
277
+
278
+ .pacem-body[footer][footbar-append] {
279
+
280
+ footer[pacem],
281
+ .pacem-footer {
282
+ transform: translateX(0) translateY(calc(var(--pacem-layout-bigfooter-height) - var(--pacem-layout-footer-height)));
283
+ }
284
+ }
285
+
286
+ .pacem-body[bigfooter]:not([footbar-append]) {
287
+
288
+ footer[pacem],
289
+ .pacem-footer {
290
+ transform: translateX(0) translateY(var(--pacem-layout-toolbar-height));
291
+ }
292
+ }
293
+
294
+ .pacem-body[bigfooter][footbar-append] {
295
+
296
+ footer[pacem],
297
+ .pacem-footer {
298
+ transform: translateX(0) translateY(0);
299
+ }
300
+ }
301
+
302
+ /* visible foot toolbar */
303
+ .pacem-body[footbar],
304
+ .pacem-body[footbar-append] {
305
+
306
+ .pacem-toolbar.toolbar-footer {
307
+ opacity: 1;
308
+ transform: translateY(0);
309
+ }
310
+ }
311
+
312
+ .pacem-body[footbar] {
313
+
314
+ &[footer] {
315
+ .pacem-toolbar.toolbar-footer {
316
+ transform: translateY(calc(-1 * var(--pacem-layout-footer-height)));
317
+ }
318
+ }
319
+
320
+ &[bigfooter] {
321
+
322
+ .pacem-toolbar.toolbar-footer {
323
+ transform: translateY(calc(-1 * var(--pacem-layout-bigfooter-height)));
324
+ }
325
+ }
326
+ }
327
+
328
+ .pacem-body[footbar-append] {
329
+
330
+ .pacem-toolbar.toolbar-footer {
331
+ z-index: calc(var(--pacem-zindex-header) + 1);
332
+ }
333
+ }
334
+
335
+ /* animations */
336
+ .pacem-body.pacem-animations {
337
+
338
+ header[pacem],
339
+ .pacem-header,
340
+ footer[pacem],
341
+ .pacem-footer {
342
+ transition: padding var(--pacem-easing-in-out-sine) .3s, transform var(--pacem-easing-out-sine) .3s, opacity .2s, box-shadow var(--pacem-easing-in-sine) .25s;
343
+ }
344
+
345
+ .pacem-toolbar.toolbar-header,
346
+ .pacem-toolbar.toolbar-footer {
347
+ /* not animatable (or not yet implemented in browsers) */
348
+ transition: grid-template-columns var(--pacem-easing-in-out-sine) .3s, transform var(--pacem-easing-out-sine) .4s, opacity .2s, box-shadow var(--pacem-easing-in-sine) .25s;
349
+ }
350
+
351
+ &.pacem-menu-close {
352
+ header[pacem],
353
+ .pacem-header,
354
+ footer[pacem],
355
+ .pacem-footer,
356
+ .pacem-toolbar.toolbar-header,
357
+ .pacem-toolbar.toolbar-footer {
358
+ transition-delay: .25s;
359
+ }
360
+ }
361
+ }
362
+
363
+ @media (--pacem-lg) {
364
+
365
+ /* footer starts at @grid_spacing left for small screens, while header always at @grid_cell:
366
+ re-align when screen is large. */
367
+ header[pacem],
368
+ .pacem-header,
369
+ footer[pacem],
370
+ .pacem-footer {
371
+ padding-left: var(--pacem-layout-aside-padding);
372
+ }
373
+
374
+ /* large screen @grid_cell padding set. */
375
+ .pacem-body {
376
+ padding-left: var(--pacem-layout-aside-padding);
377
+ padding-right: var(--pacem-layout-aside-padding);
378
+
379
+ /* when menu is open it enters like an aside drawer, so make room for it... */
380
+ &.pacem-sidebar-open {
381
+ padding-left: max(var(--pacem-layout-aside-padding), calc(var(--pacem-layout-aside-gap) + var(--pacem-sidebar-width)));
382
+
383
+ /* ...and keep header and footer aligned. */
384
+ header[pacem],
385
+ .pacem-header,
386
+ footer[pacem],
387
+ .pacem-footer {
388
+ padding-left: max(var(--pacem-layout-aside-padding), calc(var(--pacem-layout-aside-gap) + var(--pacem-sidebar-width)));
389
+ }
390
+ }
391
+
392
+ &.pacem-menu-open {
393
+ padding-left: max(var(--pacem-layout-aside-padding), calc(var(--pacem-layout-aside-gap) + var(--pacem-menu-width)));
394
+
395
+ /* ...and keep header and footer aligned. */
396
+ header[pacem],
397
+ .pacem-header,
398
+ footer[pacem],
399
+ .pacem-footer {
400
+ padding-left: max(var(--pacem-layout-aside-padding), calc(var(--pacem-layout-aside-gap) + var(--pacem-menu-width)));
401
+ }
402
+
403
+ .pacem-toolbar.toolbar-header,
404
+ .pacem-toolbar.toolbar-footer {
405
+ grid-template-columns: var(--pacem-menu-width) 1fr;
406
+ }
407
+
408
+ &.pacem-sidebar-open {
409
+ /* both menu and sidebar open */
410
+ padding-left: max(var(--pacem-layout-aside-padding), calc(var(--pacem-layout-aside-gap) + var(--pacem-sidebar-width) + var(--pacem-menu-width)));
411
+
412
+ /* ...and keep header and footer aligned. */
413
+ header[pacem],
414
+ .pacem-header,
415
+ footer[pacem],
416
+ .pacem-footer {
417
+ padding-left: max(var(--pacem-layout-aside-padding), calc(var(--pacem-layout-aside-gap) + var(--pacem-sidebar-width) + var(--pacem-menu-width)));
418
+ }
419
+
420
+ .pacem-toolbar.toolbar-header,
421
+ .pacem-toolbar.toolbar-footer {
422
+ grid-template-columns: calc(var(--pacem-sidebar-width) + var(--pacem-menu-width)) 1fr;
423
+ }
424
+ }
425
+ }
426
+
427
+ &[aside] {
428
+ /* keeps the same margin from the <aside> element on the right as from the menu on the left (when open) */
429
+ padding-right: calc(var(--pacem-layout-aside-gap) + var(--pacem-layout-aside-width));
430
+
431
+ /* aside only visible in large screens (2) */
432
+ aside[pacem],
433
+ .pacem-aside {
434
+ display: block;
435
+ position: fixed;
436
+ right: 0;
437
+ top: var(--pacem-layout-header-height);
438
+ bottom: var(--pacem-layout-footer-height);
439
+ width: var(--pacem-layout-aside-width);
440
+ overflow: auto;
441
+ }
442
+
443
+ /* layout with a header toolbar? */
444
+ &[headbar], &[headbar-prepend] {
445
+ aside[pacem],
446
+ .pacem-aside {
447
+ top: calc(var(--pacem-layout-header-height) + var(--pacem-layout-toolbar-height));
448
+ }
449
+ }
450
+
451
+ /* layout with a footer toolbar? */
452
+ &[footbar], &[footbar-append] {
453
+ aside[pacem],
454
+ .pacem-aside {
455
+ bottom: var(--pacem-layout-toolbar-height);
456
+ }
457
+ }
458
+
459
+ /* layout with large (tall) footer? */
460
+ &[bigfooter] {
461
+
462
+ aside[pacem],
463
+ .pacem-aside {
464
+ bottom: var(--pacem-layout-bigfooter-height);
465
+ }
466
+
467
+ /* layout with large (tall) footer AND footer toolbar!? */
468
+ &[footbar], &[footbar-append] {
469
+ aside[pacem],
470
+ .pacem-aside {
471
+ bottom: calc(var(--pacem-layout-bigfooter-height) + var(--pacem-layout-toolbar-height));
472
+ }
473
+ }
474
+ }
475
+ }
476
+ }
477
+ }
478
+
479
+ /* .pacem-stretch (min-height minus the visible header/footer/toolbars): generated/layout-stretch.css */
@@ -0,0 +1,104 @@
1
+ .pacem-animations {
2
+
3
+ .pacem-animatable-list,
4
+ .pacem-anim-list {
5
+
6
+ &:not(.anim-list-none) {
7
+
8
+ > * {
9
+ --pacem--anim-list-delay: .05s;
10
+ animation: list-item .25s var(--pacem-easing-out-sine) both;
11
+ animation-delay: min(calc(var(--pacem--anim-list-delay) * 20 * sibling-index() / sibling-count()), calc(sibling-index() * var(--pacem--anim-list-delay)));
12
+ }
13
+
14
+ &.anim-list-quick > * {
15
+ --pacem--anim-list-delay: .025s;
16
+ }
17
+
18
+ &.pacem-list-right {
19
+
20
+ > * {
21
+ animation-name: list-item-right;
22
+ }
23
+ }
24
+
25
+ &.pacem-list-left {
26
+
27
+ > * {
28
+ animation-name: list-item-left;
29
+ }
30
+ }
31
+
32
+ &.pacem-list-bottom {
33
+
34
+ > * {
35
+ animation-name: list-item-bottom;
36
+ }
37
+ }
38
+
39
+ &.pacem-list-appear {
40
+
41
+ > * {
42
+ animation-name: appear-anim;
43
+ }
44
+ }
45
+ }
46
+ }
47
+ }
48
+
49
+ ol, ul {
50
+ &.pacem-list {
51
+ margin-bottom: 0;
52
+
53
+ > li {
54
+ min-height: 1.1em;
55
+
56
+ &.list-item {
57
+ padding: calc(var(--pacem-grid-spacing) / 3) calc(var(--pacem-grid-spacing) / 2);
58
+ list-style-type: none;
59
+ margin-left: calc(var(--pacem-grid-spacing) * -1.25);
60
+
61
+ &:focus,
62
+ &:hover {
63
+ background-color: var(--pacem-color-suggest-focus-back);
64
+ color: var(--pacem-color-suggest-focus-fore);
65
+ }
66
+ }
67
+ }
68
+
69
+ &.list-inline,
70
+ &.list-unstyled {
71
+ padding-left: 0;
72
+ list-style-type: none;
73
+ }
74
+
75
+ &.list-inline > li {
76
+ display: inline-block;
77
+ margin-left: .5em;
78
+
79
+ &:first-child {
80
+ margin-left: 0;
81
+ }
82
+ }
83
+ }
84
+ }
85
+
86
+ dl.pacem-list {
87
+ display: grid;
88
+ grid-template-columns: auto 1fr;
89
+ grid-column-gap: calc(var(--pacem-grid-spacing) / 3);
90
+ grid-row-gap: calc(var(--pacem-grid-spacing) / 2);
91
+
92
+ dt {
93
+ grid-column: 1;
94
+ max-width: var(--pacem-grid-cell);
95
+ overflow: hidden;
96
+ white-space: nowrap;
97
+ text-overflow: ellipsis;
98
+ font-weight: 700;
99
+ }
100
+
101
+ dd {
102
+ grid-column: 2;
103
+ }
104
+ }
@@ -0,0 +1,25 @@
1
+ /* kept names from known bootstrap classes */
2
+ .pull-right {
3
+ float: right;
4
+ }
5
+
6
+ .pull-left {
7
+ float: left;
8
+ }
9
+
10
+ .clearfix {
11
+ clear: both;
12
+ }
13
+
14
+ .pacem-badge,
15
+ .badge {
16
+ display: inline-block;
17
+ padding: 0 calc(var(--pacem-grid-spacing) / 4);
18
+ /* rounded only in rounded themes */
19
+ border-radius: calc(sign(var(--pacem-border-radius)) * .25em);
20
+
21
+ &.badge-circle {
22
+ border-radius: 50%;
23
+ padding: 0 calc(var(--pacem-grid-spacing) / 6);
24
+ }
25
+ }