@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,194 @@
1
+ /* edit.less, modal-form.less, context-menu.less, router-hash-state.less */
2
+
3
+ /* #region edit: primary at 60% */
4
+ pacem-edit {
5
+ display: block;
6
+ }
7
+
8
+ pacem-dialog pacem-textarea.pacem-edit-text {
9
+ display: block;
10
+ margin-bottom: var(--pacem-grid-spacing);
11
+ }
12
+
13
+ .pacem-editing {
14
+ border: 1px solid rgb(from var(--pacem-color-primary) r g b / 60%);
15
+ min-height: var(--pacem-grid-spacing);
16
+ position: relative;
17
+
18
+ pacem-button.pacem-edit-button {
19
+ position: absolute;
20
+ background: rgb(from var(--pacem-color-primary) r g b / 60%);
21
+ right: 0;
22
+ top: 0;
23
+ width: var(--pacem-grid-spacing);
24
+ height: var(--pacem-grid-spacing);
25
+ min-width: 0;
26
+ min-height: 0;
27
+ padding: 0;
28
+ margin: 0;
29
+ border: none;
30
+
31
+ &::before {
32
+ /* .Icon(): icons.css */
33
+ content: 'edit';
34
+ font-size: var(--pacem-font-icon-size);
35
+ color: var(--pacem-theme-light);
36
+ }
37
+ }
38
+ }
39
+ /* #endregion */
40
+
41
+ /* #region modal form: the dialog of ui/dialog.css (the classes assign its private properties, --pacem--lb-*) */
42
+ pacem-modal-form {
43
+ display: block;
44
+
45
+ /* .DialogWithFixedButtons() */
46
+ pacem-lightbox {
47
+ > .pacem-dialog-buttons {
48
+ padding: 0 1em 1em 1em;
49
+ box-sizing: border-box;
50
+ z-index: var(--pacem-zindex-lightbox);
51
+ border-bottom-left-radius: var(--pacem-border-radius);
52
+ border-bottom-right-radius: var(--pacem-border-radius);
53
+ }
54
+
55
+ > .pacem-dialog-heading {
56
+ overflow: hidden;
57
+
58
+ > * {
59
+ margin: 0 1em;
60
+
61
+ &:first-child {
62
+ margin-top: 1em;
63
+ }
64
+ }
65
+ }
66
+
67
+ > .pacem-dialog-heading,
68
+ &::part(scrollable),
69
+ > .pacem-dialog-buttons {
70
+ max-width: 80vw;
71
+ }
72
+ }
73
+
74
+ pacem-loader {
75
+ z-index: var(--pacem-zindex-lightbox);
76
+ }
77
+
78
+ pacem-button[type=submit] {
79
+ display: grid;
80
+ grid-template-columns: auto 1fr;
81
+ align-items: center;
82
+
83
+ > * {
84
+ grid-column: 2;
85
+ }
86
+
87
+ > .submit-spinner {
88
+ grid-column: 1;
89
+ }
90
+ }
91
+ }
92
+
93
+ /* corners (when the border radius is 0): drawn by layout/corners.css */
94
+ pacem-modal-form:is(.modal-corners, .dialog-corners)::part(lightbox) {
95
+ --pacem--corners-color: rgb(from var(--pacem-color-border) r g b / calc(1 - sign(var(--pacem-border-radius))));
96
+ }
97
+
98
+ pacem-modal-form.modal-top { --pacem--lb-justify: start; }
99
+ pacem-modal-form.modal-bottom { --pacem--lb-justify: end; }
100
+ pacem-modal-form.modal-right:dir(ltr), pacem-modal-form.modal-left:dir(rtl), pacem-modal-form.modal-end { --pacem--lb-align: end; }
101
+ pacem-modal-form.modal-left:dir(ltr), pacem-modal-form.modal-right:dir(rtl), pacem-modal-form.modal-start { --pacem--lb-align: start; }
102
+ pacem-modal-form.modal-slim { --pacem--lb-width: 25vw; }
103
+ pacem-modal-form.modal-medium { --pacem--lb-width: 50vw; }
104
+
105
+ @media (--pacem-below-sm) {
106
+ pacem-modal-form.modal-xs-slim { --pacem--lb-width: 25vw; }
107
+ pacem-modal-form.modal-xs-medium { --pacem--lb-width: 50vw; }
108
+ }
109
+
110
+ @media (--pacem-sm) {
111
+ pacem-modal-form.modal-sm-slim { --pacem--lb-width: 25vw; }
112
+ pacem-modal-form.modal-sm-medium { --pacem--lb-width: 50vw; }
113
+ }
114
+
115
+ @media (--pacem-md) {
116
+ pacem-modal-form.modal-md-slim { --pacem--lb-width: 25vw; }
117
+ pacem-modal-form.modal-md-medium { --pacem--lb-width: 50vw; }
118
+ }
119
+
120
+ @media (--pacem-lg) {
121
+ pacem-modal-form.modal-lg-slim { --pacem--lb-width: 25vw; }
122
+ pacem-modal-form.modal-lg-medium { --pacem--lb-width: 50vw; }
123
+ }
124
+
125
+ @media (--pacem-xl) {
126
+ pacem-modal-form.modal-xl-slim { --pacem--lb-width: 25vw; }
127
+ pacem-modal-form.modal-xl-medium { --pacem--lb-width: 50vw; }
128
+ }
129
+
130
+ @media (--pacem-hd) {
131
+ pacem-modal-form.modal-hd-slim { --pacem--lb-width: 25vw; }
132
+ pacem-modal-form.modal-hd-medium { --pacem--lb-width: 50vw; }
133
+ }
134
+
135
+ @media (--pacem-2k) {
136
+ pacem-modal-form.modal-2k-slim { --pacem--lb-width: 25vw; }
137
+ pacem-modal-form.modal-2k-medium { --pacem--lb-width: 50vw; }
138
+ }
139
+
140
+ @media (--pacem-4k) {
141
+ pacem-modal-form.modal-4k-slim { --pacem--lb-width: 25vw; }
142
+ pacem-modal-form.modal-4k-medium { --pacem--lb-width: 50vw; }
143
+ }
144
+
145
+ @media (orientation: portrait) {
146
+ pacem-modal-form.modal-v-slim { --pacem--lb-width: 25vw; }
147
+ pacem-modal-form.modal-v-medium { --pacem--lb-width: 50vw; }
148
+ }
149
+ /* #endregion */
150
+
151
+ /* #region context menu */
152
+ pacem-context-menu {
153
+ display: inline-block;
154
+
155
+ &::part(trigger),
156
+ pacem-button {
157
+ color: inherit;
158
+
159
+ &:hover {
160
+ color: inherit;
161
+ }
162
+ }
163
+
164
+ &::part(trigger) {
165
+ margin: 0;
166
+ cursor: pointer;
167
+ }
168
+
169
+ &::part(icon) {
170
+ line-height: 1;
171
+ text-align: center;
172
+ /* .IconCore() */
173
+ font-family: var(--pacem-font-icons);
174
+ text-transform: none;
175
+ letter-spacing: normal;
176
+ word-wrap: normal;
177
+ white-space: nowrap;
178
+ direction: ltr;
179
+ -webkit-font-smoothing: antialiased;
180
+ text-rendering: optimizeLegibility;
181
+ -moz-osx-font-smoothing: grayscale;
182
+ font-feature-settings: 'liga';
183
+ transition: font-variation-settings .25s var(--pacem-easing-in-out-sine);
184
+ font-variation-settings: 'FILL' var(--pacem-font-icon-fill), 'wght' 400, 'GRAD' 0, 'opsz' 24;
185
+ font-size: var(--pacem-grid-spacing);
186
+ }
187
+ }
188
+
189
+ .pacem-context-menuitem,
190
+ pacem-router-hash-state {
191
+ pointer-events: none !important;
192
+ display: none !important;
193
+ }
194
+ /* #endregion */
@@ -0,0 +1,291 @@
1
+ /* Calendar picker. The grid placements of headings, months and years (the .Day/.Month/.Year recursive mixins)
2
+ are generated: see generated/calendar-picker.css, imported before this file.
3
+ Sizes: days 1.5 * spacing; months and years 7/4 by 2 days. */
4
+ pacem-calendar-month-picker,
5
+ pacem-calendar-year-picker {
6
+ display: block;
7
+ }
8
+
9
+ /* .FormFieldIcon() */
10
+ pacem-calendar-picker {
11
+ position: relative;
12
+
13
+ .pacem-input {
14
+ padding-left: var(--pacem-field-height);
15
+ box-sizing: border-box;
16
+ }
17
+
18
+ &::before {
19
+ /* .Icon(): icons.css */
20
+ content: 'today';
21
+ font-size: calc(1.1rem * var(--pacem-font-rem-factor));
22
+ line-height: var(--pacem-field-height);
23
+ left: calc(var(--pacem-grid-spacing) / 3);
24
+ top: 1px;
25
+ }
26
+
27
+ &.pacem-invalid::before {
28
+ color: var(--pacem-color-field-fore-error);
29
+ }
30
+
31
+ /* .FormFieldLabelIcon() */
32
+ &.pacem-readonly {
33
+ padding-left: var(--pacem-grid-spacing);
34
+
35
+ &::before {
36
+ /* .Icon(): icons.css */
37
+ content: 'today';
38
+ font-size: calc(1.1rem * var(--pacem-font-rem-factor));
39
+ line-height: calc(1.5 * 1.1 * var(--pacem-font-rem-factor));
40
+ color: var(--pacem-color-input-toggle);
41
+ left: 0;
42
+ top: 0;
43
+ }
44
+ }
45
+
46
+ &::before {
47
+ pointer-events: none;
48
+ }
49
+
50
+ /* clear button */
51
+ pacem-button[clear] {
52
+ width: var(--pacem-field-height);
53
+ height: var(--pacem-field-height);
54
+
55
+ &::before {
56
+ line-height: var(--pacem-field-height);
57
+ font-size: calc(var(--pacem-grid-spacing) / 2);
58
+ }
59
+ }
60
+ }
61
+
62
+ .pacem-calendar-picker-dropdown {
63
+ z-index: var(--pacem-zindex-balloon);
64
+ position: absolute;
65
+ background: var(--pacem-color-suggest-back);
66
+
67
+ .dropdown-grid {
68
+ display: grid;
69
+ grid-template-columns: 1fr auto;
70
+ grid-template-rows: auto auto auto;
71
+ grid-template-areas: "title buttons" "weekdays weekdays" "calendar calendar";
72
+ align-items: center;
73
+
74
+ > .calendar-title {
75
+ grid-area: title;
76
+ padding: calc(var(--pacem-grid-spacing) / 3) 0 calc(var(--pacem-grid-spacing) / 3) calc(var(--pacem-grid-spacing) / 3);
77
+
78
+ > pacem-span {
79
+ display: block;
80
+ font-weight: 700;
81
+ border: 1px solid transparent;
82
+ padding: 0 var(--pacem-grid-spacing) 0 calc(var(--pacem-grid-spacing) / 6);
83
+
84
+ &.calendar-zoom {
85
+ position: relative;
86
+ cursor: pointer;
87
+
88
+ &:hover {
89
+ border-color: var(--pacem-color-border);
90
+
91
+ &::after {
92
+ /* .Icon(): icons.css */
93
+ content: 'unfold_more';
94
+ color: var(--pacem-color-border);
95
+ font-size: calc(var(--pacem-grid-spacing) * .75);
96
+ line-height: 1.333;
97
+ right: 0;
98
+ }
99
+ }
100
+ }
101
+ }
102
+ }
103
+
104
+ > .calendar-header {
105
+ grid-area: weekdays;
106
+ display: grid;
107
+ grid-template-columns: repeat(7, 1fr);
108
+ pointer-events: none;
109
+ background: var(--pacem-color-background);
110
+ color: var(--pacem-color-disabled);
111
+
112
+ > .calendar-heading {
113
+ text-align: center;
114
+ display: block;
115
+ padding: calc(var(--pacem-grid-spacing) / 6) 0;
116
+ }
117
+ }
118
+
119
+ > .calendar-month-nav {
120
+ grid-area: buttons;
121
+ padding: calc(var(--pacem-grid-spacing) / 3);
122
+ }
123
+
124
+ > pacem-calendar {
125
+ grid-area: calendar;
126
+
127
+ .pacem-calendar.calendar-grid {
128
+ grid-template-columns: repeat(7, calc(var(--pacem-grid-spacing) * 1.5));
129
+ grid-template-rows: repeat(6, calc(var(--pacem-grid-spacing) * 1.5));
130
+
131
+ .calendar-day {
132
+ margin: calc(var(--pacem-grid-spacing) / 6);
133
+ padding: 0;
134
+ display: flex;
135
+ align-items: center;
136
+ justify-content: center;
137
+ cursor: pointer;
138
+ border: none;
139
+ border-radius: 50%;
140
+
141
+ &.day-1 {
142
+ border-left: none;
143
+ }
144
+
145
+ &.week-1 {
146
+ border-top: none;
147
+ }
148
+
149
+ &.pacem-disabled {
150
+ background-color: rgb(from var(--pacem-color-default) r g b / 5%);
151
+ margin-left: 0;
152
+ margin-right: 0;
153
+ cursor: default;
154
+ border-radius: 0;
155
+
156
+ :--dark-scheme & {
157
+ color: rgb(from var(--pacem-color-default) r g b / 15%);
158
+ }
159
+
160
+ :--light-scheme & {
161
+ color: rgb(from var(--pacem-color-default) r g b / 25%);
162
+ }
163
+ }
164
+
165
+ &.today {
166
+ background-color: rgb(from var(--pacem-color-default) r g b / 20%);
167
+ }
168
+
169
+ &.selected-date {
170
+ background-color: var(--pacem-color-primary);
171
+ color: var(--pacem-color-primary-inverse);
172
+ }
173
+ }
174
+ }
175
+ }
176
+
177
+ /* month and year pickers */
178
+ > pacem-calendar-month-picker,
179
+ > pacem-calendar-year-picker {
180
+ grid-area: calendar;
181
+ }
182
+
183
+ > pacem-calendar-month-picker .pacem-month-picker,
184
+ > pacem-calendar-year-picker .pacem-year-picker {
185
+ display: grid;
186
+ grid-template-columns: repeat(4, 1fr);
187
+ grid-template-rows: repeat(3, 1fr);
188
+ }
189
+
190
+ > pacem-calendar-month-picker .pacem-month-picker > .calendar-month,
191
+ > pacem-calendar-year-picker .pacem-year-picker > .calendar-year {
192
+ width: calc(var(--pacem-grid-spacing) * 1.5 * 7 / 4);
193
+ height: calc(var(--pacem-grid-spacing) * 1.5 * 2);
194
+ padding: calc(var(--pacem-grid-spacing) / 3);
195
+ box-sizing: border-box;
196
+ display: flex;
197
+ align-items: center;
198
+ justify-content: center;
199
+ }
200
+
201
+ > pacem-calendar-month-picker .pacem-month-picker > .calendar-month > .month-button,
202
+ > pacem-calendar-year-picker .pacem-year-picker > .calendar-year > .year-button {
203
+ cursor: pointer;
204
+ border: none;
205
+ border-radius: 50%;
206
+ width: calc(min(var(--pacem-grid-spacing) * 1.5 * 7 / 4, var(--pacem-grid-spacing) * 1.5 * 2) - 2 * var(--pacem-grid-spacing) / 3);
207
+ height: calc(min(var(--pacem-grid-spacing) * 1.5 * 7 / 4, var(--pacem-grid-spacing) * 1.5 * 2) - 2 * var(--pacem-grid-spacing) / 3);
208
+ display: flex;
209
+ align-items: center;
210
+ justify-content: center;
211
+
212
+ &:hover {
213
+ background-color: var(--pacem-color-calendarday-hover);
214
+ }
215
+ }
216
+
217
+ > pacem-calendar-month-picker .pacem-month-picker > .calendar-month > .month-button.selected-month,
218
+ > pacem-calendar-year-picker .pacem-year-picker > .calendar-year > .year-button.selected-year {
219
+ background-color: rgb(from var(--pacem-color-default) r g b / 20%);
220
+ }
221
+ }
222
+ }
223
+
224
+ :--shadows .pacem-calendar-picker-dropdown {
225
+ box-shadow: 0 calc(var(--pacem-grid-spacing) / 6) calc(var(--pacem-grid-spacing) / 2) rgba(0,0,0,.25);
226
+ }
227
+
228
+ :--no-shadows .pacem-calendar-picker-dropdown {
229
+ box-shadow: 0 calc(var(--pacem-grid-spacing) / 6) calc(var(--pacem-grid-spacing) / 3) rgba(0,0,0,.1);
230
+ }
231
+
232
+ /* (with shadows or a dark scheme) */
233
+ :--shadows .pacem-calendar-picker-dropdown .dropdown-grid > .calendar-header,
234
+ :--dark-scheme .pacem-calendar-picker-dropdown .dropdown-grid > .calendar-header {
235
+ box-shadow: inset 0 2px 4px rgba(0,0,0,0.5);
236
+ }
237
+
238
+ @keyframes calendar-header {
239
+ 0% {
240
+ transform: translateY(calc(var(--pacem-grid-spacing) / -3));
241
+ opacity: 0;
242
+ }
243
+
244
+ 75% {
245
+ transform: none;
246
+ }
247
+
248
+ 100% {
249
+ opacity: 1;
250
+ }
251
+ }
252
+
253
+ .pacem-body.pacem-animations .pacem-calendar-picker-dropdown {
254
+ transition: transform var(--pacem-easing-out-sine) .15s, opacity linear .1s;
255
+ transition-delay: .1s;
256
+ transform: translateY(calc(var(--pacem-grid-spacing) / 3));
257
+ opacity: 0;
258
+
259
+ &.dropdown-in {
260
+ opacity: 1;
261
+ transform: translateY(0);
262
+ }
263
+
264
+ .calendar-day {
265
+ transition: background-color var(--pacem-easing-out-sine) .1s, color var(--pacem-easing-out-sine) .1s;
266
+ }
267
+
268
+ .calendar-header {
269
+ animation: calendar-header .1s var(--pacem-easing-out-sine) both;
270
+ }
271
+
272
+ .calendar-header > .calendar-heading {
273
+ animation: calendar-header .15s var(--pacem-easing-out-sine) both;
274
+ }
275
+
276
+ :is(pacem-calendar, pacem-calendar-month-picker, pacem-calendar-year-picker) {
277
+ animation: default-anim .2s var(--pacem-easing-in-out-sine) both;
278
+ }
279
+
280
+ :is(pacem-calendar.viewdate-next, pacem-calendar-month-picker.viewyear-next, pacem-calendar-year-picker.viewyear-next) {
281
+ animation-name: list-item-right;
282
+ }
283
+
284
+ :is(pacem-calendar.viewdate-previous, pacem-calendar-month-picker.viewyear-previous, pacem-calendar-year-picker.viewyear-previous) {
285
+ animation-name: list-item-left;
286
+ }
287
+
288
+ &.dropdown-select * {
289
+ animation: none !important;
290
+ }
291
+ }
@@ -0,0 +1,118 @@
1
+ /* checkbox-radio-shared.less (the .FormFieldItemWrapper() of these elements and lists: input.css).
2
+ The paddings are 8px (@_pad: the input horizontal padding). */
3
+ :is(pacem-radio-list, pacem-checkbox-list) ol {
4
+ list-style-type: none;
5
+ margin: 0;
6
+ padding: 0;
7
+ display: flex;
8
+ flex-wrap: wrap;
9
+ flex-direction: row;
10
+ justify-content: flex-start;
11
+ align-content: flex-start;
12
+
13
+ > li {
14
+ flex: 0 1 auto;
15
+ display: inline-block;
16
+ padding: 0 calc(2 * var(--pacem-grid-spacing) / 3) 0 0;
17
+
18
+ &:last-child {
19
+ padding-right: 0;
20
+ }
21
+ }
22
+ }
23
+
24
+ :is(pacem-radio, pacem-checkbox) {
25
+ .pacem-input {
26
+ display: inline;
27
+ opacity: 0;
28
+ width: 0;
29
+ height: 0;
30
+ border: 0;
31
+ margin: 0;
32
+ padding: 0;
33
+ min-width: 0;
34
+ min-height: 0;
35
+ pointer-events: none;
36
+ /* (needed in Firefox for proper rendering) */
37
+ position: absolute;
38
+ }
39
+
40
+ label.pacem-label {
41
+ /* .FormFieldItem() */
42
+ font-family: var(--pacem-font-std);
43
+ box-sizing: border-box;
44
+ color: var(--pacem-color-field-fore);
45
+ cursor: pointer;
46
+ display: inline-block;
47
+ padding: 0 calc(var(--pacem-grid-spacing) / 3) 0 calc(var(--pacem-grid-spacing) + var(--pacem-grid-spacing) / 3);
48
+ position: relative;
49
+ font-size: 1.1em;
50
+ line-height: var(--pacem-field-height);
51
+
52
+ &::placeholder {
53
+ color: var(--pacem-color-watermark);
54
+ font-style: italic;
55
+ font-family: var(--pacem-font-std);
56
+ }
57
+ }
58
+
59
+ &.pacem-disabled label.pacem-label {
60
+ cursor: default;
61
+ }
62
+
63
+ &.pacem-focus label.pacem-label::before {
64
+ color: var(--pacem-color-default);
65
+ }
66
+
67
+ &.pacem-selected .pacem-readonly::before {
68
+ color: var(--pacem-color-primary);
69
+ }
70
+ }
71
+
72
+ :--field-underline :is(pacem-radio, pacem-checkbox) label.pacem-label {
73
+ min-height: calc(var(--pacem-field-height) + var(--pacem-border-field-size));
74
+ }
75
+
76
+ :--field-box :is(pacem-radio, pacem-checkbox) label.pacem-label {
77
+ min-height: calc(var(--pacem-field-height) + 2 * var(--pacem-border-field-size));
78
+ }
79
+
80
+ pacem-checkbox .pacem-label.pacem-checkbox {
81
+ box-sizing: border-box;
82
+ width: 100%;
83
+ }
84
+
85
+ @media (--pacem-lg) {
86
+ pacem-checkbox-list pacem-checkbox,
87
+ pacem-checkbox-list pacem-checkbox:not(.field-stretch),
88
+ pacem-radio-list pacem-radio,
89
+ pacem-radio-list pacem-radio:not(.field-stretch) {
90
+ min-width: 0;
91
+ }
92
+ }
93
+
94
+ /* nowrap lists */
95
+ pacem-form-field.field-nowrap :is(pacem-radio-list, pacem-checkbox-list) ol {
96
+ flex-wrap: nowrap;
97
+
98
+ > li {
99
+ flex-grow: 0;
100
+ flex-shrink: 1;
101
+
102
+ pacem-radio > label {
103
+ white-space: nowrap;
104
+ }
105
+ }
106
+ }
107
+
108
+ pacem-form-field.field-outline :is(pacem-radio-list.pacem-focus pacem-radio, pacem-checkbox-list.pacem-focus pacem-checkbox) :is(.pacem-viewfinder, .pacem-input) {
109
+ box-shadow: none !important;
110
+ }
111
+
112
+ /* fieldgroups */
113
+ .pacem-fieldset .pacem-fieldgroup pacem-radio-list pacem-radio label.pacem-label,
114
+ .pacem-fieldset .pacem-fieldgroup pacem-checkbox-list pacem-checkbox.pacem-label,
115
+ .pacem-fieldset input-group pacem-radio-list pacem-radio label.pacem-label,
116
+ .pacem-fieldset input-group pacem-checkbox-list pacem-checkbox.pacem-label {
117
+ min-height: var(--pacem-field-height);
118
+ }