@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.
- package/LICENSE +191 -0
- package/NOTICE +4 -0
- package/README.md +142 -3
- package/cli.js +26 -0
- package/pacem-themes.json +10 -0
- package/package.json +45 -6
- package/src/2d/index.css +44 -0
- package/src/3d/index.css +49 -0
- package/src/base/animations.css +82 -0
- package/src/base/attributes.css +19 -0
- package/src/base/backgrounds.css +37 -0
- package/src/base/body.css +199 -0
- package/src/base/content.css +4 -0
- package/src/base/icons.css +74 -0
- package/src/base/logging.css +5 -0
- package/src/base/overrides.css +3 -0
- package/src/base/preloader.css +17 -0
- package/src/base/reset.css +50 -0
- package/src/base/shell.css +3 -0
- package/src/base/text.css +184 -0
- package/src/basic/index.css +285 -0
- package/src/charts/generated/colors.css +49 -0
- package/src/charts/index.css +573 -0
- package/src/fx/index.css +230 -0
- package/src/layout/address.css +46 -0
- package/src/layout/animations.css +33 -0
- package/src/layout/borders.css +63 -0
- package/src/layout/box.css +271 -0
- package/src/layout/breadcrumbs.css +114 -0
- package/src/layout/cards.css +246 -0
- package/src/layout/coloring.css +862 -0
- package/src/layout/container.css +40 -0
- package/src/layout/corners.css +52 -0
- package/src/layout/datatable.css +324 -0
- package/src/layout/elevation.css +73 -0
- package/src/layout/fetch-feedback.css +125 -0
- package/src/layout/generated/borders.css +403 -0
- package/src/layout/generated/card-ribbon.css +94 -0
- package/src/layout/generated/card-sides.css +888 -0
- package/src/layout/generated/grid-system.css +308 -0
- package/src/layout/generated/grids.css +952 -0
- package/src/layout/generated/layout-stretch.css +132 -0
- package/src/layout/generated/positioning.css +323 -0
- package/src/layout/generated/sizing.css +478 -0
- package/src/layout/generated/spacing.css +1988 -0
- package/src/layout/generated/visibility.css +384 -0
- package/src/layout/grid-system.css +49 -0
- package/src/layout/grids.css +92 -0
- package/src/layout/index.css +39 -0
- package/src/layout/interactive.css +11 -0
- package/src/layout/layout.css +479 -0
- package/src/layout/lists.css +104 -0
- package/src/layout/other.css +25 -0
- package/src/layout/panels.css +337 -0
- package/src/layout/positioning.css +108 -0
- package/src/layout/scroll.css +85 -0
- package/src/layout/shapes.css +20 -0
- package/src/layout/shell.css +3 -0
- package/src/layout/sizing.css +25 -0
- package/src/layout/spacing.css +17 -0
- package/src/layout/superposition-system.css +116 -0
- package/src/layout/tokens-chips.css +15 -0
- package/src/layout/toolbar.css +30 -0
- package/src/layout/typography.css +106 -0
- package/src/layout/visibility.css +231 -0
- package/src/maps/index.css +20 -0
- package/src/media/index.css +6 -0
- package/src/media.css +18 -0
- package/src/pacem-content.css +24 -0
- package/src/pacem-shell.css +14 -0
- package/src/pacem.css +35 -0
- package/src/plus/carousel.css +327 -0
- package/src/plus/datagrid.css +68 -0
- package/src/plus/gallery.css +186 -0
- package/src/plus/icons.css +25 -0
- package/src/plus/index.css +7 -0
- package/src/plus/misc.css +194 -0
- package/src/scaffolding/calendar-picker.css +291 -0
- package/src/scaffolding/checkbox-radio.css +118 -0
- package/src/scaffolding/checkbox.css +200 -0
- package/src/scaffolding/childform.css +156 -0
- package/src/scaffolding/color.css +129 -0
- package/src/scaffolding/contenteditable.css +403 -0
- package/src/scaffolding/datepicker.css +126 -0
- package/src/scaffolding/elements.css +30 -0
- package/src/scaffolding/fieldset.css +346 -0
- package/src/scaffolding/form.css +36 -0
- package/src/scaffolding/formfield.css +364 -0
- package/src/scaffolding/generated/calendar-picker.css +40 -0
- package/src/scaffolding/generated/colors.css +115 -0
- package/src/scaffolding/generated/formfield.css +500 -0
- package/src/scaffolding/hierarchy.css +76 -0
- package/src/scaffolding/icons.css +64 -0
- package/src/scaffolding/image.css +195 -0
- package/src/scaffolding/index.css +40 -0
- package/src/scaffolding/input.css +163 -0
- package/src/scaffolding/inputs.css +77 -0
- package/src/scaffolding/latlng.css +173 -0
- package/src/scaffolding/markdown.css +14 -0
- package/src/scaffolding/password.css +7 -0
- package/src/scaffolding/pickers.css +150 -0
- package/src/scaffolding/radio.css +68 -0
- package/src/scaffolding/select.css +59 -0
- package/src/scaffolding/slider.css +236 -0
- package/src/scaffolding/snapshot.css +167 -0
- package/src/scaffolding/suggest.css +92 -0
- package/src/scaffolding/tags.css +132 -0
- package/src/scaffolding/textarea.css +45 -0
- package/src/scaffolding/upload.css +283 -0
- package/src/scaffolding/validators.css +29 -0
- package/src/tokens/colors.css +403 -0
- package/src/tokens/components.css +16 -0
- package/src/tokens/system.css +92 -0
- package/src/tokens/theme.css +221 -0
- package/src/traits.css +18 -0
- package/src/transforms/index.css +5 -0
- package/src/ui/anchor.css +55 -0
- package/src/ui/balloon.css +573 -0
- package/src/ui/binder.css +28 -0
- package/src/ui/blade.css +83 -0
- package/src/ui/bottom-sheet.css +53 -0
- package/src/ui/button.css +626 -0
- package/src/ui/calendar.css +415 -0
- package/src/ui/collapse.css +25 -0
- package/src/ui/dialog.css +230 -0
- package/src/ui/divider.css +42 -0
- package/src/ui/generated/calendar.css +363 -0
- package/src/ui/hidden.css +40 -0
- package/src/ui/icon.css +90 -0
- package/src/ui/image.css +140 -0
- package/src/ui/index.css +30 -0
- package/src/ui/led.css +84 -0
- package/src/ui/loader.css +174 -0
- package/src/ui/markdown.css +352 -0
- package/src/ui/marquee.css +41 -0
- package/src/ui/menu.css +386 -0
- package/src/ui/pager.css +133 -0
- package/src/ui/progressbar.css +137 -0
- package/src/ui/shell.css +4 -0
- package/src/ui/sidebar.css +103 -0
- package/src/ui/sticky-header.css +22 -0
- package/src/ui/tabs.css +355 -0
- package/src/ui/ticker.css +105 -0
- package/src/ui/timeline.css +106 -0
- package/src/ui/toast.css +182 -0
- package/src/ui/toc.css +58 -0
- package/src/ui/tuner.css +196 -0
- package/src/ui/view.css +30 -0
- package/src/ui/window.css +287 -0
- package/templates/theme.css +28 -0
- package/themebuilder.js +19 -0
- package/themes/dark.css +6 -0
- package/themes/light.css +97 -0
package/src/ui/led.css
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
@keyframes led-blink {
|
|
2
|
+
0% { opacity: .5; }
|
|
3
|
+
100% { opacity: 1; }
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
/* Private properties:
|
|
7
|
+
--pacem--led-s size (.LedSize())
|
|
8
|
+
--pacem--led-in inset background (.LedInset())
|
|
9
|
+
--pacem--led-c color when on (.LedOn()) */
|
|
10
|
+
.pacem-led {
|
|
11
|
+
--pacem--led-s: var(--pacem-grid-spacing);
|
|
12
|
+
--pacem--led-in: linear-gradient(to bottom, rgba(0,0,0,.5) 0, rgba(255,255,255,.2) 100%);
|
|
13
|
+
border-radius: 50%;
|
|
14
|
+
display: inline-block;
|
|
15
|
+
background-color: transparent;
|
|
16
|
+
width: var(--pacem--led-s);
|
|
17
|
+
height: var(--pacem--led-s);
|
|
18
|
+
padding: round(up, calc(var(--pacem--led-s) / 8), 1px);
|
|
19
|
+
|
|
20
|
+
:--light-scheme & {
|
|
21
|
+
--pacem--led-in: linear-gradient(to bottom, rgba(0,0,0,.25) 0, rgba(255,255,255,1) 100%);
|
|
22
|
+
padding: round(up, calc(var(--pacem--led-s) / 12), 1px);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
:--shadows & {
|
|
26
|
+
background: var(--pacem--led-in);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
&.led-inset {
|
|
30
|
+
background: var(--pacem--led-in);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&::before {
|
|
34
|
+
display: block;
|
|
35
|
+
border-radius: 50%;
|
|
36
|
+
height: 100%;
|
|
37
|
+
content: '';
|
|
38
|
+
background-color: var(--pacem-color-background);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&.led-small { --pacem--led-s: calc(var(--pacem-grid-spacing) * 2 / 3); }
|
|
42
|
+
&.led-smaller { --pacem--led-s: calc(var(--pacem-grid-spacing) / 2); }
|
|
43
|
+
&.led-tiny { --pacem--led-s: calc(var(--pacem-grid-spacing) / 3); }
|
|
44
|
+
&.led-big { --pacem--led-s: calc(var(--pacem-grid-spacing) * 1.25); }
|
|
45
|
+
&.led-bigger { --pacem--led-s: calc(var(--pacem-grid-spacing) * 1.5); }
|
|
46
|
+
|
|
47
|
+
&.led-on {
|
|
48
|
+
&.led-accent { --pacem--led-c: var(--pacem-color-accent); }
|
|
49
|
+
&.led-primary { --pacem--led-c: var(--pacem-color-primary); }
|
|
50
|
+
&.led-success { --pacem--led-c: var(--pacem-color-success); }
|
|
51
|
+
&.led-error { --pacem--led-c: var(--pacem-color-error); }
|
|
52
|
+
&.led-warning { --pacem--led-c: var(--pacem-color-warning); }
|
|
53
|
+
&.led-danger { --pacem--led-c: var(--pacem-color-danger); }
|
|
54
|
+
&.led-disabled { --pacem--led-c: var(--pacem-color-disabled); }
|
|
55
|
+
|
|
56
|
+
&:is(.led-accent, .led-primary, .led-success, .led-error, .led-warning, .led-danger, .led-disabled) {
|
|
57
|
+
--pacem--led-out: radial-gradient(ellipse at center, hsl(from var(--pacem--led-c) h s min(100, l + 10)) 0, var(--pacem--led-c) 50%);
|
|
58
|
+
|
|
59
|
+
&::before {
|
|
60
|
+
background-color: var(--pacem--led-c);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
:--gradients &::before {
|
|
64
|
+
background: var(--pacem--led-out);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
:--glows &::before {
|
|
68
|
+
box-shadow: 0 0 8px var(--pacem--led-c);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
&.led-outset::before {
|
|
72
|
+
background: var(--pacem--led-out);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
&.led-glow::before {
|
|
76
|
+
box-shadow: 0 0 8px var(--pacem--led-c);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
&.led-blink::before {
|
|
81
|
+
animation: led-blink .3s ease-in-out alternate-reverse infinite;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
@keyframes rotate-anim {
|
|
2
|
+
0% { transform: rotate(0deg); }
|
|
3
|
+
100% { transform: rotate(360deg); }
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
/* .Spinner(border, size, background, gap): one rule, driven by private properties.
|
|
7
|
+
--pacem--sp-b ring width --pacem--sp-s outer size
|
|
8
|
+
--pacem--sp-c ring color --pacem--sp-g gap between the nested rings (loader-full)
|
|
9
|
+
--pacem--sp-w border-width (loader-thin)
|
|
10
|
+
--pacem--sp-v spinning arc color of the color classes (inherited by the nested rings)
|
|
11
|
+
--pacem--sp-top spinning arc color of the spinner otherwise: the small sizes re-declared the whole
|
|
12
|
+
border in Less, hiding the arc (the ring color) unless a color class is set */
|
|
13
|
+
pacem-loader {
|
|
14
|
+
display: block;
|
|
15
|
+
height: 100%;
|
|
16
|
+
pointer-events: none;
|
|
17
|
+
|
|
18
|
+
> div.pacem-loader {
|
|
19
|
+
height: 100%;
|
|
20
|
+
display: flex;
|
|
21
|
+
justify-content: center;
|
|
22
|
+
align-items: center;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
div.pacem-spinner {
|
|
26
|
+
--pacem--sp-b: calc(var(--pacem-grid-spacing) * .5);
|
|
27
|
+
--pacem--sp-s: 108px;
|
|
28
|
+
--pacem--sp-c: rgb(from var(--pacem-color-default) r g b / 10%);
|
|
29
|
+
--pacem--sp-top: var(--pacem-color-default);
|
|
30
|
+
width: calc(var(--pacem--sp-s) - 2 * var(--pacem--sp-b));
|
|
31
|
+
height: calc(var(--pacem--sp-s) - 2 * var(--pacem--sp-b));
|
|
32
|
+
border-radius: 50%;
|
|
33
|
+
border: var(--pacem--sp-b) solid var(--pacem--sp-c);
|
|
34
|
+
border-width: var(--pacem--sp-w, var(--pacem--sp-b));
|
|
35
|
+
position: relative;
|
|
36
|
+
border-top-color: var(--pacem--sp-v, var(--pacem--sp-top));
|
|
37
|
+
animation: rotate-anim linear 1s infinite both;
|
|
38
|
+
|
|
39
|
+
> div {
|
|
40
|
+
border-top-color: var(--pacem--sp-v, var(--pacem-color-default));
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
> div:nth-child(1) {
|
|
44
|
+
animation: rotate-anim linear 2s infinite both;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
> div:nth-child(2) {
|
|
48
|
+
animation: rotate-anim linear 3s infinite both;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&:is(.loader-small, .loader-smaller) div.pacem-spinner {
|
|
53
|
+
--pacem--sp-top: var(--pacem--sp-c);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&.loader-small div.pacem-spinner {
|
|
57
|
+
--pacem--sp-b: calc(var(--pacem-grid-spacing) * .3333);
|
|
58
|
+
--pacem--sp-s: var(--pacem-grid-cell);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&.loader-smaller div.pacem-spinner {
|
|
62
|
+
--pacem--sp-b: calc(var(--pacem-grid-spacing) * .25);
|
|
63
|
+
--pacem--sp-s: calc(2 * var(--pacem-grid-spacing));
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&.loader-thin div.pacem-spinner {
|
|
67
|
+
--pacem--sp-w: calc(var(--pacem-grid-spacing) / 8);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
&.loader-full {
|
|
71
|
+
div.pacem-spinner {
|
|
72
|
+
--pacem--sp-b: 2px;
|
|
73
|
+
--pacem--sp-c: transparent;
|
|
74
|
+
--pacem--sp-g: calc(var(--pacem-grid-spacing) / 3);
|
|
75
|
+
|
|
76
|
+
> div {
|
|
77
|
+
--pacem--sp-i: calc(var(--pacem--sp-s) - 2 * var(--pacem--sp-b));
|
|
78
|
+
position: absolute;
|
|
79
|
+
border: var(--pacem--sp-b) solid var(--pacem--sp-c);
|
|
80
|
+
border-top-color: var(--pacem--sp-v, var(--pacem-color-default));
|
|
81
|
+
border-radius: 50%;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
> div:nth-child(1) {
|
|
85
|
+
top: var(--pacem--sp-g);
|
|
86
|
+
left: var(--pacem--sp-g);
|
|
87
|
+
width: calc(var(--pacem--sp-i) - 2 * (var(--pacem--sp-b) + var(--pacem--sp-g)));
|
|
88
|
+
height: calc(var(--pacem--sp-i) - 2 * (var(--pacem--sp-b) + var(--pacem--sp-g)));
|
|
89
|
+
opacity: .75;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
> div:nth-child(2) {
|
|
93
|
+
top: calc(2 * var(--pacem--sp-g) + var(--pacem--sp-b));
|
|
94
|
+
left: calc(2 * var(--pacem--sp-g) + var(--pacem--sp-b));
|
|
95
|
+
width: calc(var(--pacem--sp-i) - 4 * (var(--pacem--sp-b) + var(--pacem--sp-g)));
|
|
96
|
+
height: calc(var(--pacem--sp-i) - 4 * (var(--pacem--sp-b) + var(--pacem--sp-g)));
|
|
97
|
+
opacity: .5;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/* (beat loader-thin, as in Less) */
|
|
102
|
+
&.loader-small div.pacem-spinner {
|
|
103
|
+
--pacem--sp-b: 1px;
|
|
104
|
+
--pacem--sp-w: 1px;
|
|
105
|
+
--pacem--sp-g: calc(var(--pacem-grid-spacing) / 4);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
&.loader-smaller div.pacem-spinner {
|
|
109
|
+
--pacem--sp-b: 1px;
|
|
110
|
+
--pacem--sp-w: 1px;
|
|
111
|
+
--pacem--sp-g: calc(var(--pacem-grid-spacing) / 6);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
&.loader-accent div.pacem-spinner { --pacem--sp-v: var(--pacem-color-accent); }
|
|
116
|
+
&.loader-primary div.pacem-spinner { --pacem--sp-v: var(--pacem-color-primary); }
|
|
117
|
+
&.loader-success div.pacem-spinner { --pacem--sp-v: var(--pacem-color-success); }
|
|
118
|
+
&.loader-warning div.pacem-spinner { --pacem--sp-v: var(--pacem-color-warning); }
|
|
119
|
+
&.loader-danger div.pacem-spinner { --pacem--sp-v: var(--pacem-color-danger); }
|
|
120
|
+
|
|
121
|
+
svg.pacem-spinner {
|
|
122
|
+
height: 108px;
|
|
123
|
+
width: 108px;
|
|
124
|
+
|
|
125
|
+
g.gear {
|
|
126
|
+
animation: rotate-anim cubic-bezier(0.86, 0, 0.07, 1) 1.7s infinite both;
|
|
127
|
+
|
|
128
|
+
> circle {
|
|
129
|
+
fill: var(--pacem-color-default);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
g.bounds {
|
|
134
|
+
animation: rotate-anim cubic-bezier(0.645, 0.045, 0.355, 1) 2.3s infinite reverse both;
|
|
135
|
+
|
|
136
|
+
> path {
|
|
137
|
+
stroke: var(--pacem-color-accent);
|
|
138
|
+
/* needed by Firefox */
|
|
139
|
+
fill: transparent;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
g {
|
|
144
|
+
transform-box: fill-box;
|
|
145
|
+
transform-origin: center center;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
circle.circle1 {
|
|
149
|
+
stroke: var(--pacem-color-primary);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
circle.circle2 {
|
|
153
|
+
stroke: var(--pacem-color-accent);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.pacem-loader {
|
|
158
|
+
transition: transform .25s var(--pacem-easing-in-back);
|
|
159
|
+
transform: scale(0);
|
|
160
|
+
|
|
161
|
+
&.active {
|
|
162
|
+
transition-timing-function: var(--pacem-easing-out-back);
|
|
163
|
+
transform: scale(1);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/* (:root: in Less this rule was scoped by the shell selector, html[theme], and overrides the white background of
|
|
169
|
+
`html .pacem-preloader` in base/preloader.css) */
|
|
170
|
+
:root .pacem-preloader {
|
|
171
|
+
background: radial-gradient(ellipse at center, var(--pacem-color-background) 0%, var(--pacem-color-root) 50%);
|
|
172
|
+
background-color: var(--pacem-color-root);
|
|
173
|
+
background-size: contain;
|
|
174
|
+
}
|
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
/* (.pacem-markdown and pacem-markdown keep their own specificity: explicit selector lists) */
|
|
2
|
+
.pacem-markdown,
|
|
3
|
+
pacem-markdown {
|
|
4
|
+
display: block;
|
|
5
|
+
color: rgb(from var(--pacem-color-default) r g b / 80%);
|
|
6
|
+
text-rendering: optimizeLegibility;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.pacem-markdown :is(h1, h2, h3, h4),
|
|
10
|
+
pacem-markdown :is(h1, h2, h3, h4) {
|
|
11
|
+
margin: 0 0 .5em 0;
|
|
12
|
+
padding: 0;
|
|
13
|
+
font-weight: 700;
|
|
14
|
+
color: var(--pacem-color-default);
|
|
15
|
+
font-family: var(--pacem-font-main);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.pacem-markdown h1,
|
|
19
|
+
pacem-markdown h1 {
|
|
20
|
+
font-size: calc(2rem * var(--pacem-font-main-rem-factor));
|
|
21
|
+
line-height: 2rem;
|
|
22
|
+
border-bottom: 1px solid rgb(from var(--pacem-color-default) r g b / 10%);
|
|
23
|
+
color: var(--pacem-color-accent);
|
|
24
|
+
text-transform: var(--pacem-transform-heading);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.pacem-markdown h2,
|
|
28
|
+
pacem-markdown h2 {
|
|
29
|
+
font-size: calc(1.5rem * var(--pacem-font-main-rem-factor));
|
|
30
|
+
line-height: 1.5rem;
|
|
31
|
+
color: var(--pacem-color-primary);
|
|
32
|
+
border-bottom: 1px solid rgb(from var(--pacem-color-primary) r g b / 10%);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.pacem-markdown h3,
|
|
36
|
+
pacem-markdown h3 {
|
|
37
|
+
font-size: calc(1.125rem * var(--pacem-font-main-rem-factor));
|
|
38
|
+
line-height: 1.125rem;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.pacem-markdown h4,
|
|
42
|
+
pacem-markdown h4 {
|
|
43
|
+
font-size: calc(1.0625rem * var(--pacem-font-main-rem-factor));
|
|
44
|
+
line-height: 1.0625rem;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.pacem-markdown code,
|
|
48
|
+
pacem-markdown code {
|
|
49
|
+
white-space: pre;
|
|
50
|
+
margin: 0 0 1em 0;
|
|
51
|
+
font-size: calc(1rem * var(--pacem-font-tech-rem-factor));
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.pacem-markdown pre > code,
|
|
55
|
+
.pacem-markdown code.pacem-code-block,
|
|
56
|
+
pacem-markdown pre > code,
|
|
57
|
+
pacem-markdown code.pacem-code-block {
|
|
58
|
+
display: block;
|
|
59
|
+
padding: 1em;
|
|
60
|
+
background-color: var(--pacem-color-codeblock-back);
|
|
61
|
+
|
|
62
|
+
span {
|
|
63
|
+
display: inline-block;
|
|
64
|
+
vertical-align: top;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.pacem-markdown pre > code::first-line,
|
|
69
|
+
.pacem-markdown code.pacem-code-block::first-line,
|
|
70
|
+
pacem-markdown pre > code::first-line,
|
|
71
|
+
pacem-markdown code.pacem-code-block::first-line {
|
|
72
|
+
line-height: normal;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.pacem-markdown p,
|
|
76
|
+
pacem-markdown p {
|
|
77
|
+
margin: 0 0 1em 0;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.pacem-markdown :is(ol, ul),
|
|
81
|
+
pacem-markdown :is(ol, ul) {
|
|
82
|
+
margin: 0 1em 1em 1em;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.pacem-markdown a,
|
|
86
|
+
pacem-markdown a {
|
|
87
|
+
color: var(--pacem-color-link);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.pacem-markdown blockquote,
|
|
91
|
+
pacem-markdown blockquote {
|
|
92
|
+
padding: 0 2em;
|
|
93
|
+
position: relative;
|
|
94
|
+
text-align: center;
|
|
95
|
+
font-size: 1.5em;
|
|
96
|
+
margin: 1em;
|
|
97
|
+
font-style: italic;
|
|
98
|
+
color: rgb(from var(--pacem-color-primary) r g b / 80%);
|
|
99
|
+
border: 0;
|
|
100
|
+
|
|
101
|
+
&::before,
|
|
102
|
+
&::after {
|
|
103
|
+
/* .Icon() */
|
|
104
|
+
content: 'format_quote';
|
|
105
|
+
position: absolute;
|
|
106
|
+
display: inline-block;
|
|
107
|
+
line-height: 1;
|
|
108
|
+
text-align: center;
|
|
109
|
+
font-family: var(--pacem-font-icons);
|
|
110
|
+
text-transform: none;
|
|
111
|
+
letter-spacing: normal;
|
|
112
|
+
word-wrap: normal;
|
|
113
|
+
white-space: nowrap;
|
|
114
|
+
direction: ltr;
|
|
115
|
+
-webkit-font-smoothing: antialiased;
|
|
116
|
+
text-rendering: optimizeLegibility;
|
|
117
|
+
-moz-osx-font-smoothing: grayscale;
|
|
118
|
+
font-feature-settings: 'liga';
|
|
119
|
+
transition: font-variation-settings .25s var(--pacem-easing-in-out-sine);
|
|
120
|
+
font-variation-settings: 'FILL' var(--pacem-font-icon-fill), 'wght' 400, 'GRAD' 0, 'opsz' 24;
|
|
121
|
+
font-size: 1.25em;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
&::before {
|
|
125
|
+
transform: rotate(180deg);
|
|
126
|
+
top: 0;
|
|
127
|
+
left: 0;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
&::after {
|
|
131
|
+
bottom: 0;
|
|
132
|
+
right: 0;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
> p {
|
|
136
|
+
margin: .25em 0;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
a {
|
|
140
|
+
text-decoration: underline;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.pacem-markdown.md-tech blockquote,
|
|
145
|
+
pacem-markdown.md-tech blockquote {
|
|
146
|
+
border: 1px solid var(--pacem-color-border);
|
|
147
|
+
padding: 1em 1em 1em 2em;
|
|
148
|
+
position: static;
|
|
149
|
+
text-align: inherit;
|
|
150
|
+
font-size: 1em;
|
|
151
|
+
margin: 1em 0;
|
|
152
|
+
font-style: normal;
|
|
153
|
+
color: inherit;
|
|
154
|
+
background-color: var(--pacem-color-button-back);
|
|
155
|
+
border-left: calc(var(--pacem-grid-spacing) / 6) solid var(--pacem-color-accent);
|
|
156
|
+
border-radius: var(--pacem-border-radius);
|
|
157
|
+
|
|
158
|
+
&::before,
|
|
159
|
+
&::after {
|
|
160
|
+
content: none;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
> p {
|
|
164
|
+
margin: .25em 0;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
a {
|
|
168
|
+
text-decoration: underline;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/* code blocks */
|
|
173
|
+
.pacem-markdown pre > code,
|
|
174
|
+
.pacem-markdown code.pacem-code-block,
|
|
175
|
+
pacem-markdown pre > code,
|
|
176
|
+
pacem-markdown code.pacem-code-block {
|
|
177
|
+
display: block;
|
|
178
|
+
color: var(--pacem-color-default);
|
|
179
|
+
font-size: calc(.9rem * var(--pacem-font-tech-rem-factor));
|
|
180
|
+
line-height: calc(1.5rem * var(--pacem-font-rem-factor));
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/* syntax highlighting: --pacem--md-{kw,num,str,cmt,tag,attr} */
|
|
184
|
+
:is(.pacem-markdown, pacem-markdown) :is(pre > code, code.pacem-code-block) {
|
|
185
|
+
--pacem--md-kw: #69f;
|
|
186
|
+
--pacem--md-num: #f80;
|
|
187
|
+
--pacem--md-str: #66aaff;
|
|
188
|
+
--pacem--md-cmt: #6a6;
|
|
189
|
+
--pacem--md-tag: #c56263;
|
|
190
|
+
--pacem--md-attr: #fc5900;
|
|
191
|
+
|
|
192
|
+
:--light-scheme & {
|
|
193
|
+
--pacem--md-kw: #00f;
|
|
194
|
+
--pacem--md-num: #f00;
|
|
195
|
+
--pacem--md-str: #0088ff;
|
|
196
|
+
--pacem--md-cmt: #373;
|
|
197
|
+
--pacem--md-tag: #853233;
|
|
198
|
+
--pacem--md-attr: #f00;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
&:is(.js, .javascript, .typescript, .c, .c-sharp, .csharp, .cpp) {
|
|
202
|
+
:is(.code-keyword, .pacem-keyword) {
|
|
203
|
+
font-weight: 700;
|
|
204
|
+
color: var(--pacem--md-kw);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
:is(.code-number, .pacem-number) {
|
|
208
|
+
color: var(--pacem--md-num);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
:is(.code-string, .pacem-string-char, .pacem-string) {
|
|
212
|
+
color: var(--pacem--md-str);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
:is(.code-comment, .pacem-comment) {
|
|
216
|
+
color: var(--pacem--md-cmt);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
&:is(.xml, .html) {
|
|
221
|
+
:is(.code-tag, .pacem-tag, .code-string, .pacem-string-char, .pacem-string) {
|
|
222
|
+
color: var(--pacem--md-kw);
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
:is(.code-tagname, .pacem-tag-name) {
|
|
226
|
+
color: var(--pacem--md-tag);
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
:is(.code-attribute, .pacem-attribute) {
|
|
230
|
+
color: var(--pacem--md-attr);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
:is(.code-comment, .pacem-comment) {
|
|
234
|
+
color: #aaa;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/*
|
|
240
|
+
* language-agnostic syntax highlighting: fenced code of any language registered in foundation's Compile.Syntaxes
|
|
241
|
+
* is rendered as `code.code-highlighted` (plus `.code-markup` for markup), next to the per-language classes above
|
|
242
|
+
*/
|
|
243
|
+
:is(.pacem-markdown, pacem-markdown) :is(pre > code, code.pacem-code-block).code-highlighted {
|
|
244
|
+
|
|
245
|
+
&:not(.code-markup) {
|
|
246
|
+
.code-keyword {
|
|
247
|
+
font-weight: 700;
|
|
248
|
+
color: var(--pacem--md-kw);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
.code-number {
|
|
252
|
+
color: var(--pacem--md-num);
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.code-string {
|
|
256
|
+
color: var(--pacem--md-str);
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.code-comment {
|
|
260
|
+
color: var(--pacem--md-cmt);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
&.code-markup {
|
|
265
|
+
:is(.code-tag, .code-string) {
|
|
266
|
+
color: var(--pacem--md-kw);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.code-tagname {
|
|
270
|
+
color: var(--pacem--md-tag);
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
.code-attribute {
|
|
274
|
+
color: var(--pacem--md-attr);
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
.code-keyword {
|
|
278
|
+
font-weight: 700;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
.code-comment {
|
|
282
|
+
color: #aaa;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
/* tables (GFM) */
|
|
288
|
+
.pacem-markdown table,
|
|
289
|
+
pacem-markdown table {
|
|
290
|
+
display: block;
|
|
291
|
+
max-width: 100%;
|
|
292
|
+
overflow-x: auto;
|
|
293
|
+
margin: 0 0 1em 0;
|
|
294
|
+
border-collapse: collapse;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
.pacem-markdown :is(th, td),
|
|
298
|
+
pacem-markdown :is(th, td) {
|
|
299
|
+
padding: .375em .75em;
|
|
300
|
+
border: 1px solid var(--pacem-color-border);
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
.pacem-markdown th,
|
|
304
|
+
pacem-markdown th {
|
|
305
|
+
font-weight: 700;
|
|
306
|
+
color: var(--pacem-color-default);
|
|
307
|
+
background-color: var(--pacem-color-button-back);
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.pacem-markdown tbody > tr:nth-child(even),
|
|
311
|
+
pacem-markdown tbody > tr:nth-child(even) {
|
|
312
|
+
background-color: rgb(from var(--pacem-color-default) r g b / 4%);
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
/* task lists (GFM) */
|
|
316
|
+
.pacem-markdown li.task-list-item,
|
|
317
|
+
pacem-markdown li.task-list-item {
|
|
318
|
+
list-style: none;
|
|
319
|
+
|
|
320
|
+
> input[type=checkbox] {
|
|
321
|
+
margin: 0 .25em 0 -1.25em;
|
|
322
|
+
vertical-align: middle;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
/* footnotes (GFM) */
|
|
327
|
+
.pacem-markdown sup.footnote-ref,
|
|
328
|
+
pacem-markdown sup.footnote-ref {
|
|
329
|
+
line-height: 0;
|
|
330
|
+
|
|
331
|
+
> a {
|
|
332
|
+
padding: 0 .125em;
|
|
333
|
+
text-decoration: none;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
.pacem-markdown .footnotes,
|
|
338
|
+
pacem-markdown .footnotes {
|
|
339
|
+
margin-top: 2em;
|
|
340
|
+
padding-top: 1em;
|
|
341
|
+
font-size: .875em;
|
|
342
|
+
border-top: 1px solid rgb(from var(--pacem-color-default) r g b / 10%);
|
|
343
|
+
|
|
344
|
+
.footnote-backref {
|
|
345
|
+
text-decoration: none;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
.pacem-markdown > :last-child,
|
|
350
|
+
pacem-markdown > :last-child {
|
|
351
|
+
margin-bottom: 0;
|
|
352
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
pacem-marquee {
|
|
2
|
+
font-size: 1.05em;
|
|
3
|
+
color: var(--pacem-color-marquee-fore);
|
|
4
|
+
background-color: var(--pacem-color-marquee-back);
|
|
5
|
+
display: block;
|
|
6
|
+
overflow: hidden;
|
|
7
|
+
min-height: var(--pacem-grid-spacing);
|
|
8
|
+
line-height: var(--pacem-grid-spacing);
|
|
9
|
+
position: relative;
|
|
10
|
+
|
|
11
|
+
.pacem-marquee,
|
|
12
|
+
.pacem-marquee-overlap {
|
|
13
|
+
position: absolute;
|
|
14
|
+
top: 0;
|
|
15
|
+
left: 0;
|
|
16
|
+
height: 100%;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.pacem-marquee-overlap {
|
|
20
|
+
min-width: 100%;
|
|
21
|
+
pointer-events: none;
|
|
22
|
+
z-index: 1;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.pacem-marquee {
|
|
26
|
+
white-space: nowrap;
|
|
27
|
+
z-index: 0;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&:hover .pacem-marquee {
|
|
31
|
+
animation-play-state: paused;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
:--gradients & {
|
|
35
|
+
background: linear-gradient(to bottom, var(--pacem-color-marquee-back) 0, var(--pacem-color-marquee-back2) 100%);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
:--shadows & .pacem-marquee-overlap {
|
|
39
|
+
box-shadow: inset calc(var(--pacem-grid-spacing) / 2) 0 calc(var(--pacem-grid-spacing) / 2) rgba(0,0,0,0.5), inset calc(var(--pacem-grid-spacing) / -2) 0 calc(var(--pacem-grid-spacing) / 2) rgba(0,0,0,0.5);
|
|
40
|
+
}
|
|
41
|
+
}
|