@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,200 @@
1
+ /* Checkbox, naked checkbox and switcher.
2
+ Colors (each(@all_colors) in Less): the rules are written once against private properties, which the color
3
+ classes assign (generated/colors.css):
4
+ --pacem--chk, --pacem--chk-ink .checkbox-{color} (checkbox, toggle and switch)
5
+ --pacem--switcher, --pacem--switcher-ink pacem-form-field.switcher-{color}
6
+ They inherit down to the label and its ::before. */
7
+ @custom-selector :--checks .pacem-readonly.pacem-checkbox, label.pacem-label.pacem-checkbox;
8
+ @custom-selector :--naked .form-minimal > pacem-form-field:not(.field-full):not(.pacem-switcher) pacem-checkbox,
9
+ pacem-form-field.field-minimal pacem-checkbox, pacem-checkbox.checkbox-naked;
10
+ @custom-selector :--switchers pacem-form-field.pacem-switcher pacem-checkbox, pacem-checkbox.checkbox-toggle, pacem-checkbox.checkbox-switch;
11
+ @custom-selector :--chk-colors :is(.checkbox-root, .checkbox-background, .checkbox-default, .checkbox-invert, .checkbox-primary,
12
+ .checkbox-secondary, .checkbox-accent, .checkbox-info, .checkbox-success, .checkbox-warning, .checkbox-danger, .checkbox-error,
13
+ .checkbox-disabled, .checkbox-green, .checkbox-yellow, .checkbox-brown, .checkbox-red, .checkbox-pink, .checkbox-blue,
14
+ .checkbox-orange, .checkbox-purple, .checkbox-teal, .checkbox-gray);
15
+ @custom-selector :--switcher-colors :is(.switcher-root, .switcher-background, .switcher-default, .switcher-invert, .switcher-primary,
16
+ .switcher-secondary, .switcher-accent, .switcher-info, .switcher-success, .switcher-warning, .switcher-danger, .switcher-error,
17
+ .switcher-disabled, .switcher-green, .switcher-yellow, .switcher-brown, .switcher-red, .switcher-pink, .switcher-blue,
18
+ .switcher-orange, .switcher-purple, .switcher-teal, .switcher-gray);
19
+
20
+ pacem-checkbox :--checks::before {
21
+ /* .Icon(): icons.css */
22
+ content: 'check_box_outline_blank';
23
+ font-size: calc(1.1rem * var(--pacem-font-rem-factor));
24
+ font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
25
+ left: calc(var(--pacem-grid-spacing) / 3);
26
+ line-height: var(--pacem-field-height);
27
+ color: var(--pacem-color-input-toggle);
28
+ }
29
+
30
+ pacem-checkbox.pacem-selected label.pacem-label.pacem-checkbox::before {
31
+ content: 'check_box';
32
+ font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
33
+ }
34
+
35
+ /* .FormFieldLabelIcon() */
36
+ pacem-checkbox .pacem-readonly.pacem-checkbox {
37
+ padding-left: var(--pacem-grid-spacing);
38
+ font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
39
+
40
+ &::before {
41
+ /* .Icon(): icons.css */
42
+ content: 'check_box_outline_blank';
43
+ font-size: calc(1.1rem * var(--pacem-font-rem-factor));
44
+ /* (the second .Icon() restores the fill) */
45
+ font-variation-settings: 'FILL' var(--pacem-font-icon-fill), 'wght' 400, 'GRAD' 0, 'opsz' 24;
46
+ line-height: calc(1.5 * 1.1 * var(--pacem-font-rem-factor));
47
+ color: var(--pacem-color-input-toggle);
48
+ left: 0;
49
+ top: 0;
50
+ }
51
+ }
52
+
53
+ pacem-checkbox.pacem-selected .pacem-readonly.pacem-checkbox::before {
54
+ content: 'check_box';
55
+ font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
56
+ }
57
+
58
+ /* #region just the checkbox (avoiding conflicts with the switchers) */
59
+ :--naked:not(.checkbox-toggle):not(.checkbox-switch) {
60
+ min-width: 0;
61
+ }
62
+
63
+ :--naked:not(.checkbox-toggle):not(.checkbox-switch) label.pacem-checkbox {
64
+ border: 0;
65
+ padding-left: calc(var(--pacem-grid-spacing) / 3);
66
+ background: none;
67
+ position: static;
68
+ line-height: 1.5;
69
+ min-width: 0;
70
+ min-height: 0;
71
+ vertical-align: middle;
72
+ font-size: calc(1rem * var(--pacem-field-minimal-fontsize) * var(--pacem-font-std-rem-factor));
73
+ }
74
+
75
+ :--naked:not(.checkbox-toggle):not(.checkbox-switch) label.pacem-checkbox::before {
76
+ position: static;
77
+ vertical-align: middle;
78
+ margin-right: calc(var(--pacem-grid-spacing) / 4);
79
+ }
80
+ /* #endregion */
81
+
82
+ /* #region switcher: height (field height - spacing / 6) and twice as wide */
83
+ :--switchers label.pacem-label.pacem-checkbox {
84
+ min-width: 0;
85
+ min-height: 0;
86
+ font-size: 0;
87
+ height: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6);
88
+ border-radius: calc((var(--pacem-field-height) - var(--pacem-grid-spacing) / 6) / 2);
89
+ width: calc((var(--pacem-field-height) - var(--pacem-grid-spacing) / 6) * 2);
90
+ margin-bottom: calc(var(--pacem-grid-spacing) / 6);
91
+ /* (removes the viewfinder border) */
92
+ border-color: transparent !important;
93
+ background: var(--pacem-color-disabled);
94
+ padding: 0;
95
+ transition: background linear .25s;
96
+ border: 0;
97
+ }
98
+
99
+ :--switchers label.pacem-label.pacem-checkbox::before {
100
+ /* .Icon(): icons.css */
101
+ content: 'check';
102
+ font-size: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6);
103
+ width: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6);
104
+ height: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6);
105
+ left: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6);
106
+ top: 0;
107
+ opacity: 0;
108
+ transition: transform var(--pacem-easing-in-out-sine) .2s, opacity linear .1s;
109
+ }
110
+
111
+ :--switchers label.pacem-label.pacem-checkbox::after {
112
+ content: '';
113
+ position: absolute;
114
+ left: 2px;
115
+ top: 2px;
116
+ height: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6 - 4px);
117
+ width: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6 - 4px);
118
+ transition: transform var(--pacem-easing-in-out-sine) .2s;
119
+ background-color: #fff;
120
+ border-radius: 50%;
121
+ }
122
+
123
+ :--shadows :--switchers label.pacem-label.pacem-checkbox::after {
124
+ box-shadow: 1px 1px var(--pacem-border-field-size) rgba(0,0,0,1);
125
+ }
126
+
127
+ :--shadows :--switchers label.pacem-label.pacem-checkbox {
128
+ box-shadow: inset 0 2px 2px rgba(0,0,0,0.3333);
129
+ }
130
+
131
+ :--switchers.pacem-selected label.pacem-label.pacem-checkbox::before {
132
+ opacity: 1;
133
+ transform: translateX(calc(var(--pacem-grid-spacing) / 6 - var(--pacem-field-height))) translateZ(0);
134
+ }
135
+
136
+ :--switchers.pacem-selected label.pacem-label.pacem-checkbox::after {
137
+ transform: translateX(calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 6)) translateZ(0);
138
+ }
139
+
140
+ /* .SwitcherColoring() */
141
+ :--switchers label.pacem-label.pacem-checkbox::before {
142
+ color: var(--pacem-color-primary-inverse);
143
+ }
144
+
145
+ :--switchers.pacem-selected label.pacem-label.pacem-checkbox {
146
+ background: var(--pacem-color-primary);
147
+ }
148
+
149
+ :--glows :--switchers.pacem-selected label.pacem-label.pacem-checkbox {
150
+ box-shadow: 0 0 8px var(--pacem-color-primary);
151
+ }
152
+
153
+ /* colors */
154
+ pacem-form-field.pacem-switcher:--switcher-colors pacem-checkbox label.pacem-label.pacem-checkbox::before {
155
+ color: var(--pacem--switcher-ink);
156
+ }
157
+
158
+ pacem-checkbox:is(.checkbox-toggle, .checkbox-switch):--chk-colors label.pacem-label.pacem-checkbox::before {
159
+ color: var(--pacem--chk-ink);
160
+ }
161
+
162
+ pacem-form-field.pacem-switcher:--switcher-colors pacem-checkbox.pacem-selected label.pacem-label.pacem-checkbox {
163
+ background: var(--pacem--switcher);
164
+ }
165
+
166
+ pacem-checkbox:is(.checkbox-toggle, .checkbox-switch):--chk-colors.pacem-selected label.pacem-label.pacem-checkbox {
167
+ background: var(--pacem--chk);
168
+ }
169
+
170
+ :--glows pacem-form-field.pacem-switcher:--switcher-colors pacem-checkbox.pacem-selected label.pacem-label.pacem-checkbox {
171
+ box-shadow: 0 0 8px var(--pacem--switcher);
172
+ }
173
+
174
+ :--glows pacem-checkbox:is(.checkbox-toggle, .checkbox-switch):--chk-colors.pacem-selected label.pacem-label.pacem-checkbox {
175
+ box-shadow: 0 0 8px var(--pacem--chk);
176
+ }
177
+ /* #endregion */
178
+
179
+ /* #region coloring (.CheckboxColoring()) */
180
+ pacem-checkbox:--chk-colors :--checks::before {
181
+ color: var(--pacem--chk);
182
+ }
183
+
184
+ pacem-checkbox.pacem-disabled :--checks::before {
185
+ color: var(--pacem-color-disabled);
186
+ }
187
+
188
+ pacem-checkbox.pacem-disabled :--checks {
189
+ color: var(--pacem-color-disabled);
190
+ }
191
+ /* #endregion */
192
+
193
+ @media (--pacem-lg) {
194
+ pacem-form-field.field-minimal pacem-checkbox,
195
+ pacem-checkbox.checkbox-naked,
196
+ pacem-checkbox.checkbox-toggle,
197
+ pacem-checkbox.checkbox-switch {
198
+ min-width: 0;
199
+ }
200
+ }
@@ -0,0 +1,156 @@
1
+ /* Child forms. Colored indexes (.ChildFormColored()): background and foreground in private properties, assigned
2
+ by the color classes (generated/colors.css) and inherited by the index: --pacem--cf, --pacem--cf-ink
3
+ (pacem-childform.childform-{color}), --pacem--cf-field, --pacem--cf-field-ink (pacem-form-field.childform-{color}). */
4
+ @custom-selector :--ordered pacem-form-field.childform-ordered pacem-childform, pacem-childform.childform-ordered;
5
+ @custom-selector :--cf-colors :is(.childform-accent, .childform-primary, .childform-success, .childform-danger, .childform-error, .childform-warning, .childform-disabled);
6
+ @custom-selector :--minimal pacem-form-field.childform-minimal pacem-childform, pacem-childform.childform-minimal;
7
+ @custom-selector :--full pacem-childform .pacem-childform > .pacem-childform-item > pacem-form > form.pacem-form .childform-full;
8
+
9
+ pacem-childform-propagator {
10
+ pointer-events: none !important;
11
+ display: none !important;
12
+ }
13
+
14
+ pacem-childform {
15
+ display: block;
16
+
17
+ /* remove animations */
18
+ pacem-repeater:is(.pacem-animatable-list, .pacem-anim-list).pacem-list-bottom > * {
19
+ animation: none !important;
20
+ }
21
+
22
+ .pacem-childform-item {
23
+ display: grid;
24
+ grid-template-columns: auto 1fr auto;
25
+ align-items: start;
26
+
27
+ > :is(.childform-item-index, .childform-item-handle) {
28
+ grid-column: 1;
29
+ grid-row: 1;
30
+ }
31
+
32
+ /* hidden by default, shown with .childform-ordered */
33
+ > .childform-item-index {
34
+ display: none;
35
+ margin-top: calc(var(--pacem-grid-spacing) / 3);
36
+
37
+ > * {
38
+ display: block;
39
+ background-color: transparent;
40
+ padding: 0 .5em;
41
+
42
+ &::after {
43
+ content: '.';
44
+ }
45
+ }
46
+ }
47
+
48
+ > pacem-button {
49
+ grid-row: 1;
50
+ grid-column: 3;
51
+ }
52
+
53
+ > pacem-form {
54
+ grid-row: 1;
55
+ grid-column: 2;
56
+ }
57
+ }
58
+
59
+ pacem-button.circular:hover {
60
+ background-color: rgb(from var(--pacem-color-default) r g b / 10%);
61
+ }
62
+ }
63
+
64
+ /* .LabelTopMargin() */
65
+ :--field-box pacem-childform .pacem-childform-item > .childform-item-index > * {
66
+ margin-top: calc(var(--pacem-grid-spacing) / 3 + .2 * (var(--pacem-field-height) / 1.5) + var(--pacem-border-field-size));
67
+ }
68
+
69
+ :--field-underline pacem-childform .pacem-childform-item > .childform-item-index > * {
70
+ margin-top: calc(var(--pacem-grid-spacing) / 3 + .2 * (var(--pacem-field-height) / 1.5));
71
+ }
72
+
73
+ /* (when the radius is not 0) */
74
+ pacem-childform .pacem-childform-item > .childform-item-index > * {
75
+ border-radius: calc(.3333em * sign(var(--pacem-border-radius)));
76
+ }
77
+
78
+ .pacem-childform-item-floater {
79
+ pointer-events: none;
80
+ opacity: 0;
81
+ background-color: var(--pacem-color-field-back);
82
+
83
+ &.pacem-drag-floater {
84
+ opacity: 1;
85
+ }
86
+ }
87
+
88
+ /* form-field & co. */
89
+ :--ordered *:not(pacem-childform) .pacem-childform-item > .childform-item-index {
90
+ display: block;
91
+ }
92
+
93
+ pacem-form-field:--cf-colors pacem-childform *:not(pacem-childform) .pacem-childform-item > .childform-item-index > * {
94
+ background-color: var(--pacem--cf-field);
95
+ color: var(--pacem--cf-field-ink);
96
+ }
97
+
98
+ pacem-childform:--cf-colors *:not(pacem-childform) .pacem-childform-item > .childform-item-index > * {
99
+ background-color: var(--pacem--cf);
100
+ color: var(--pacem--cf-ink);
101
+ }
102
+
103
+ pacem-form-field:--cf-colors pacem-childform *:not(pacem-childform) .pacem-childform-item > .childform-item-index > *::after,
104
+ pacem-childform:--cf-colors *:not(pacem-childform) .pacem-childform-item > .childform-item-index > *::after {
105
+ content: none;
106
+ }
107
+
108
+ :--shadows pacem-form-field:--cf-colors pacem-childform *:not(pacem-childform) .pacem-childform-item > .childform-item-index > *,
109
+ :--shadows pacem-childform:--cf-colors *:not(pacem-childform) .pacem-childform-item > .childform-item-index > * {
110
+ box-shadow: 0 calc(var(--pacem-grid-spacing) / 6) calc(var(--pacem-grid-spacing) / 2) rgba(0,0,0,0.25);
111
+ }
112
+
113
+ :--minimal *:not(pacem-childform) .pacem-childform-item > .childform-item-index {
114
+ margin-top: 0;
115
+ }
116
+
117
+ :--minimal *:not(pacem-childform) .pacem-childform-item > .childform-item-index > * {
118
+ margin-top: 0;
119
+ line-height: calc(var(--pacem-field-minimal-fontsize) * var(--pacem-font-size) * 1.5625);
120
+ font-size: var(--pacem-field-minimal-fontsize) !important;
121
+ }
122
+
123
+ /* childform "full": copies the .pacem-field style (formfield.css) */
124
+ :--full {
125
+ padding: calc(var(--pacem-grid-spacing) / 3) calc(var(--pacem-grid-spacing) * 5 / 6);
126
+ margin-bottom: calc(var(--pacem-grid-spacing) / 3);
127
+ border-radius: var(--pacem-border-field-radius);
128
+ transition: background linear .3s, border linear .3s;
129
+ }
130
+
131
+ :--field-box :--full {
132
+ border: var(--pacem-border-field-size) solid transparent;
133
+ }
134
+
135
+ :--field-underline :--full {
136
+ border-bottom: var(--pacem-border-field-size) solid transparent;
137
+ }
138
+
139
+ .pacem-field.pacem-editable > .pacem-input-container > :--full {
140
+ background-color: var(--pacem-color-field-back);
141
+ border-color: transparent;
142
+ }
143
+
144
+ :--shadows .pacem-field.pacem-editable > .pacem-input-container > :--full {
145
+ box-shadow: 0 2px calc(var(--pacem-grid-spacing) / 3) rgba(0,0,0,0.25);
146
+ }
147
+
148
+ :--no-shadows .pacem-field.pacem-editable > .pacem-input-container > :--full {
149
+ box-shadow: 0 2px calc(var(--pacem-grid-spacing) / 8) rgba(0,0,0,0.05);
150
+ }
151
+
152
+ .pacem-field.pacem-readonly > .pacem-input-container > :--full {
153
+ background-color: transparent;
154
+ box-shadow: none;
155
+ border-color: rgb(from var(--pacem-color-default) r g b / 5%);
156
+ }
@@ -0,0 +1,129 @@
1
+ /* Color input (.FormFieldItemWrapper(): input.css). Measures:
2
+ swatch size field height - spacing / 3 (a gap of spacing / 6 below, spacing / 6 above)
3
+ right space 2 * spacing - spacing / 3 (room for the opacity icon) */
4
+ pacem-input-color {
5
+ display: block;
6
+
7
+ .pacem-viewfinder {
8
+ max-width: 199px;
9
+ display: flex;
10
+ justify-content: flex-start;
11
+ flex-direction: row;
12
+ flex-wrap: nowrap;
13
+ position: relative;
14
+
15
+ &::before {
16
+ /* .Icon(): icons.css */
17
+ content: 'opacity';
18
+ font-size: calc(var(--pacem-grid-spacing) * 5 / 6);
19
+ left: calc(2 * var(--pacem-grid-spacing) - var(--pacem-grid-spacing) / 3 + var(--pacem-grid-spacing) * 5 / 6);
20
+ top: calc(var(--pacem-grid-spacing) / 6);
21
+ }
22
+ }
23
+
24
+ input[type=number].pacem-input {
25
+ /* .FormFieldItem() */
26
+ padding: 0 calc(var(--pacem-grid-spacing) / 3);
27
+ font-family: var(--pacem-font-std);
28
+ font-size: calc(1.1rem * var(--pacem-font-std-rem-factor));
29
+ box-sizing: border-box;
30
+ color: var(--pacem-color-field-fore);
31
+ min-height: auto;
32
+ text-align: right;
33
+ width: calc(42px + 2 * var(--pacem-grid-spacing) / 3);
34
+
35
+ &::placeholder {
36
+ color: var(--pacem-color-watermark);
37
+ font-style: italic;
38
+ font-family: var(--pacem-font-std);
39
+ }
40
+
41
+ &::after {
42
+ content: ' ';
43
+ }
44
+ }
45
+
46
+ .pacem-input-color {
47
+ width: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 3);
48
+ height: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 3);
49
+ overflow: hidden;
50
+ border-radius: 50%;
51
+ margin-bottom: calc(var(--pacem-grid-spacing) / 6);
52
+ margin-right: calc(2 * var(--pacem-grid-spacing) - var(--pacem-grid-spacing) / 3);
53
+ margin-left: calc(var(--pacem-grid-spacing) / 3);
54
+ margin-top: calc(var(--pacem-grid-spacing) / 6);
55
+
56
+ input.pacem-input[type=color] {
57
+ /* .FormFieldItemInline() */
58
+ min-width: 0;
59
+ line-height: var(--pacem-field-height);
60
+ cursor: pointer;
61
+ padding: 0;
62
+ height: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 3);
63
+ opacity: 0;
64
+ display: block;
65
+ width: calc(var(--pacem-field-height) - var(--pacem-grid-spacing) / 3);
66
+ }
67
+ }
68
+
69
+ /* (the same with or without shadows) */
70
+ .pacem-input-color {
71
+ box-shadow: inset 0 calc((var(--pacem-field-height) - var(--pacem-grid-spacing) / 3) / 12) calc((var(--pacem-field-height) - var(--pacem-grid-spacing) / 3) / 4) rgba(0,0,0,0.25);
72
+ }
73
+
74
+ .pacem-readonly {
75
+ height: var(--pacem-field-height);
76
+ }
77
+ }
78
+
79
+ @media (--pacem-lg) {
80
+ pacem-input-color .pacem-readonly {
81
+ width: 199px;
82
+ }
83
+ }
84
+
85
+ /* .FormFieldStretch() */
86
+ :is(.field-stretch pacem-input-color, pacem-input-color.field-stretch) {
87
+ display: flex;
88
+ align-content: stretch;
89
+ align-items: stretch;
90
+
91
+ > [pacem] {
92
+ flex: 1 0 100%;
93
+ }
94
+
95
+ .pacem-viewfinder {
96
+ max-width: none;
97
+ flex: 1 0 100%;
98
+ }
99
+ }
100
+
101
+ :is(.field-minimal pacem-input-color, pacem-input-color.color-naked) {
102
+ .pacem-viewfinder {
103
+ display: block;
104
+
105
+ &::before {
106
+ display: none;
107
+ content: '';
108
+ }
109
+ }
110
+
111
+ input[type=number].pacem-input {
112
+ pointer-events: none !important;
113
+ display: none !important;
114
+ }
115
+
116
+ .pacem-input-color {
117
+ width: auto;
118
+ height: var(--pacem-field-height);
119
+ border-radius: var(--pacem-border-field-radius);
120
+ margin: 0;
121
+
122
+ input.pacem-input[type=color] {
123
+ height: 100%;
124
+ opacity: 0;
125
+ display: block;
126
+ width: 100%;
127
+ }
128
+ }
129
+ }