@splendidlabz/styles 2.3.2 → 3.0.0

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 (147) hide show
  1. package/dist/no-tw/layouts.css +1278 -0
  2. package/dist/no-tw/styles.css +2018 -0
  3. package/dist/styles.css +1254 -1442
  4. package/package.json +23 -9
  5. package/src/addons/index.css +1 -0
  6. package/src/addons/scrollbars.css +60 -0
  7. package/src/{UI/_Accordion.scss → components/accordion.css} +8 -10
  8. package/src/components/drawer.css +20 -0
  9. package/src/components/index.css +2 -0
  10. package/src/effects/elevation.css +290 -0
  11. package/src/effects/frosted-glass.css +42 -0
  12. package/src/effects/gradients.css +107 -0
  13. package/src/effects/highlight.css +13 -0
  14. package/src/effects/index.css +6 -0
  15. package/src/effects/inner-border.css +18 -0
  16. package/src/effects/shadows.css +49 -0
  17. package/src/effects/text-outline.css +27 -0
  18. package/src/form/index.css +2 -0
  19. package/src/form/text-field.css +72 -0
  20. package/src/form/textarea.css +37 -0
  21. package/src/{Base/_Accessibility.scss → generic/accessibility.css} +21 -20
  22. package/src/generic/anchors-and-buttons.css +55 -0
  23. package/src/generic/form.css +62 -0
  24. package/src/generic/index.css +4 -0
  25. package/src/generic/typography.css +48 -0
  26. package/src/layouts/index.css +6 -0
  27. package/src/layouts/macro/flex-grid.css +33 -0
  28. package/src/layouts/macro/grid.css +127 -0
  29. package/src/layouts/macro/index.css +5 -0
  30. package/src/layouts/macro/masonry.css +23 -0
  31. package/src/layouts/macro/subgrid.css +33 -0
  32. package/src/layouts/macro/wrap.css +6 -0
  33. package/src/layouts/micro/breakout.css +38 -0
  34. package/src/layouts/micro/divider.css +102 -0
  35. package/src/layouts/micro/index.css +6 -0
  36. package/src/layouts/micro/micro.css +54 -0
  37. package/src/layouts/micro/scrollable.css +70 -0
  38. package/src/layouts/micro/stack.css +29 -0
  39. package/src/layouts/micro/stacking-context.css +3 -0
  40. package/src/layouts/position/edge.css +429 -0
  41. package/src/layouts/position/fixed.css +102 -0
  42. package/src/layouts/position/index.css +5 -0
  43. package/src/layouts/position/nudge.css +74 -0
  44. package/src/layouts/position/pos.css +337 -0
  45. package/src/layouts/position/sticky.css +11 -0
  46. package/src/layouts/shell/index.css +2 -0
  47. package/src/layouts/shell/shell-grid.css +34 -0
  48. package/src/layouts/shell/shell-simple.css +15 -0
  49. package/src/primitives/backdrop.css +8 -0
  50. package/src/{utils/_mixins.scss → primitives/break-word.css} +4 -2
  51. package/src/primitives/card.css +51 -0
  52. package/src/primitives/focus-within.css +12 -0
  53. package/src/primitives/hero-heading.css +44 -0
  54. package/src/primitives/indent-list.css +77 -0
  55. package/src/primitives/index.css +11 -0
  56. package/src/{Components/_Prose.scss → primitives/prose.css} +11 -29
  57. package/src/primitives/shapes.css +16 -0
  58. package/src/primitives/simple-svg.css +7 -0
  59. package/src/primitives/table.css +197 -0
  60. package/src/primitives/text.css +4 -0
  61. package/src/primitives/writing-mode.css +51 -0
  62. package/src/reset.css +114 -0
  63. package/src/scripts/Masonry.js +8 -0
  64. package/src/scripts/Scrollable.js +14 -0
  65. package/src/scripts/Sticky.js +34 -0
  66. package/src/scripts/all.js +7 -0
  67. package/src/scripts/index.js +4 -0
  68. package/src/styles.css +14 -0
  69. package/src/tools/border.css +9 -0
  70. package/src/tools/index.css +5 -0
  71. package/src/tools/object.css +5 -0
  72. package/src/tools/outlines.css +27 -0
  73. package/src/tools/pigment.css +205 -0
  74. package/src/tools/transitions.css +14 -0
  75. package/src/type/font-position.css +18 -0
  76. package/src/type/index.css +1 -0
  77. package/src/variables/breakpoints.css +103 -0
  78. package/src/variables/font.css +88 -0
  79. package/src/variables/index.css +4 -0
  80. package/src/variables/radius.css +54 -0
  81. package/src/variables/variables.css +34 -0
  82. package/dist/UI/Codepen.css +0 -13
  83. package/dist/UI/Codepen.css.map +0 -1
  84. package/dist/UI/Tweet.css +0 -7
  85. package/dist/UI/Tweet.css.map +0 -1
  86. package/dist/UI/Youtube.css +0 -13
  87. package/dist/UI/Youtube.css.map +0 -1
  88. package/dist/styles.css.map +0 -1
  89. package/src/Base/_Base.scss +0 -57
  90. package/src/Base/_Focus.scss +0 -38
  91. package/src/Base/_Transition.scss +0 -8
  92. package/src/Base/_index.scss +0 -4
  93. package/src/Components/_Box.scss +0 -9
  94. package/src/Components/_BrowserFrame.scss +0 -89
  95. package/src/Components/_Figure.scss +0 -5
  96. package/src/Components/_List.scss +0 -19
  97. package/src/Components/_Scrollbars.scss +0 -40
  98. package/src/Components/_SimpleSVG.scss +0 -9
  99. package/src/Components/_index.scss +0 -12
  100. package/src/Effects/_Backdrop.scss +0 -4
  101. package/src/Effects/_Elevation.scss +0 -92
  102. package/src/Effects/_Glow.scss +0 -51
  103. package/src/Effects/_Gradients.scss +0 -88
  104. package/src/Effects/_Shadows.scss +0 -51
  105. package/src/Effects/_SpecialShadows.scss +0 -45
  106. package/src/Effects/_Text-Outline.scss +0 -25
  107. package/src/Effects/_index.scss +0 -12
  108. package/src/Experimental/_SimplePricingPlan.scss +0 -141
  109. package/src/Forms/_Button.scss +0 -106
  110. package/src/Forms/_Combobox.scss +0 -49
  111. package/src/Forms/_FormBase.scss +0 -43
  112. package/src/Forms/_FormControls.scss +0 -95
  113. package/src/Forms/_Range.scss +0 -101
  114. package/src/Forms/_Select.scss +0 -114
  115. package/src/Forms/_Switch.scss +0 -66
  116. package/src/Forms/_TextField.scss +0 -116
  117. package/src/Forms/_Textarea.scss +0 -41
  118. package/src/Forms/_index.scss +0 -10
  119. package/src/Typography/_WritingMode.scss +0 -33
  120. package/src/Typography/_index.scss +0 -1
  121. package/src/UI/Codepen.scss +0 -11
  122. package/src/UI/Tweet.scss +0 -5
  123. package/src/UI/Youtube.scss +0 -13
  124. package/src/UI/_Breadcrumbs.scss +0 -24
  125. package/src/UI/_CQChecker.scss +0 -16
  126. package/src/UI/_Callout.scss +0 -31
  127. package/src/UI/_Drawer.scss +0 -28
  128. package/src/UI/_Dropdown.scss +0 -14
  129. package/src/UI/_FancyList.scss +0 -30
  130. package/src/UI/_PerspectiveHover.scss +0 -9
  131. package/src/UI/_Popover.scss +0 -25
  132. package/src/UI/_Resizer.scss +0 -43
  133. package/src/UI/_Spotlight.scss +0 -42
  134. package/src/UI/_Status.scss +0 -33
  135. package/src/UI/_Tabs.scss +0 -112
  136. package/src/UI/_Textwall.scss +0 -22
  137. package/src/UI/_index.scss +0 -17
  138. package/src/Utilities/_Shapes.scss +0 -20
  139. package/src/Utilities/_index.scss +0 -1
  140. package/src/Variables/_Globals.scss +0 -33
  141. package/src/Variables/_index.scss +0 -1
  142. package/src/_Animations.scss +0 -18
  143. package/src/_Fill.scss +0 -314
  144. package/src/styles.scss +0 -12
  145. package/src/utils/_index.scss +0 -3
  146. package/src/utils/functions/_fns.scss +0 -77
  147. package/src/utils/functions/_fonts.scss +0 -114
@@ -0,0 +1,102 @@
1
+ @utility divider-scaffold {
2
+ & {
3
+ align-self: stretch;
4
+ padding: 0 !important;
5
+ border-radius: 0 !important;
6
+
7
+ &:where(:not(:empty)) {
8
+ gap: var(--gap, 1rem);
9
+ }
10
+
11
+ &::before,
12
+ &::after {
13
+ content: '';
14
+ background-color: var(--border-color, currentColor);
15
+ }
16
+ }
17
+ }
18
+
19
+ @utility divider-x {
20
+ & {
21
+ @apply divider-scaffold;
22
+ flex-grow: 1;
23
+ display: flex;
24
+ align-items: center;
25
+
26
+ &::before,
27
+ &::after {
28
+ flex-grow: 1;
29
+ height: var(--border-width, 1px);
30
+ }
31
+ }
32
+ }
33
+
34
+ @utility divider-y {
35
+ & {
36
+ @apply divider-scaffold;
37
+ align-self: stretch;
38
+ display: flex;
39
+ flex-direction: column;
40
+ align-items: center;
41
+
42
+ :where(.vertical, .single-col, .wrap) > & {
43
+ flex-grow: 1;
44
+ }
45
+
46
+ &::before,
47
+ &::after {
48
+ flex-grow: 1;
49
+ width: var(--border-width, 1px);
50
+ }
51
+ }
52
+ }
53
+
54
+ /* Divider aliases *
55
+ *********************/
56
+ @utility divider-horizontal {
57
+ @apply divider-x;
58
+ }
59
+
60
+ @utility divider-vertical {
61
+ @apply divider-y;
62
+ }
63
+
64
+ /*********************
65
+ * Divider between *
66
+ *********************/
67
+ @utility divider-between-x {
68
+ & {
69
+ @apply divider-scaffold;
70
+ flex-direction: column;
71
+ row-gap: 0;
72
+
73
+ > * + *,
74
+ > * + *:where(astro-island, astro-slot) > * {
75
+ border-top-width: var(--border-width, 1px);
76
+ border-color: var(--border-color);
77
+ }
78
+ }
79
+ }
80
+
81
+ @utility divider-between-y {
82
+ & {
83
+ @apply divider-scaffold;
84
+ column-gap: 0;
85
+
86
+ > * + *,
87
+ > * + *:where(astro-island, astro-slot) > * {
88
+ border-left-width: var(--border-width, 1px);
89
+ border-color: var(--border-color);
90
+ }
91
+ }
92
+ }
93
+
94
+ /* Divider between aliases *
95
+ *********************/
96
+ @utility divider-between-horizontal {
97
+ @apply divider-between-x;
98
+ }
99
+
100
+ @utility divider-between-vertical {
101
+ @apply divider-between-y;
102
+ }
@@ -0,0 +1,6 @@
1
+ @import './micro.css';
2
+ @import './stack.css';
3
+ @import './divider.css';
4
+ @import './breakout.css';
5
+ @import './stacking-context.css';
6
+ @import './scrollable.css';
@@ -0,0 +1,54 @@
1
+ @theme {
2
+ --gap: 1rem;
3
+ }
4
+
5
+ /* Used for every micro utility in this file */
6
+
7
+ @utility micro {
8
+ > *,
9
+ > :where(.contents) > *,
10
+ > *:where(astro-island, astro-slot) > * {
11
+ flex-grow: var(--grow);
12
+ }
13
+ }
14
+
15
+ /* horizontal *
16
+ *********************/
17
+ @utility horizontal {
18
+ @apply micro;
19
+ display: flex;
20
+ flex-direction: row;
21
+ gap: var(--gap-y, var(--gap)) var(--gap-x, var(--gap));
22
+
23
+ > .spacer {
24
+ margin-inline-start: auto;
25
+ }
26
+ }
27
+
28
+ /* vertical *
29
+ *********************/
30
+ @utility vertical {
31
+ @apply micro;
32
+ display: flex;
33
+ flex-direction: column;
34
+ gap: var(--gap-y, var(--gap)) var(--gap-x, var(--gap));
35
+
36
+ > .spacer {
37
+ margin-block-start: auto;
38
+ }
39
+ }
40
+
41
+ /* Set alignment to stretch so children are stretched by default */
42
+ @utility single-col {
43
+ @apply vertical;
44
+ align-items: stretch;
45
+ }
46
+
47
+ /* flow *
48
+ *********************/
49
+ @utility flow {
50
+ @apply micro;
51
+ display: flex;
52
+ flex-flow: row wrap;
53
+ gap: var(--gap-y, var(--gap)) var(--gap-x, var(--gap));
54
+ }
@@ -0,0 +1,70 @@
1
+ @theme {
2
+ --snap-align: start;
3
+ --snap-type: proximity;
4
+ --scroll-margin: 1rem;
5
+ }
6
+
7
+ @utility scrollable {
8
+ & {
9
+ display: flex;
10
+ gap: var(--gap, 1rem);
11
+
12
+ > :where(*) {
13
+ flex-grow: 0;
14
+ flex-shrink: 0;
15
+ scroll-snap-align: var(--snap-align);
16
+ scroll-margin: var(--scroll-margin);
17
+ }
18
+ }
19
+ }
20
+
21
+ @utility scrollable-x {
22
+ & {
23
+ @apply scrollable;
24
+ overflow: auto hidden;
25
+ flex-direction: row;
26
+ max-width: 100%;
27
+ scroll-snap-type: x var(--snap-type);
28
+ }
29
+ }
30
+
31
+ @utility scrollable-y {
32
+ & {
33
+ @apply scrollable;
34
+ overflow: hidden auto;
35
+ flex-direction: column;
36
+ scroll-snap-type: y var(--snap-type);
37
+ }
38
+ }
39
+
40
+ /* Maybe Blog about this.
41
+ These three properties used to preserve outlines, because overflow cuts off outlines. Content-box is necessary. If not, box will cut on the right side. (in Flex environments). */
42
+ @utility scrollable-preserve-outlines {
43
+ & {
44
+ box-sizing: content-box;
45
+ margin: calc(var(--outline-width) * -1);
46
+ padding: calc(var(--outline-width));
47
+ }
48
+ }
49
+
50
+ /* Does this work? */
51
+
52
+ /* prettier-ignore */
53
+ @utility snap-type-* {
54
+ --snap-type: --value(--snap-type-*);
55
+ }
56
+
57
+ @utility scrollable-nosnap {
58
+ --snap-type: none;
59
+ }
60
+
61
+ /*********************
62
+ * Aliases *
63
+ *********************/
64
+ @utility scrollable-horizontal {
65
+ @apply scrollable-x;
66
+ }
67
+
68
+ @utility scrollable-vertical {
69
+ @apply scrollable-y;
70
+ }
@@ -0,0 +1,29 @@
1
+ @utility stack {
2
+ & {
3
+ position: relative;
4
+ display: grid;
5
+ grid-template-columns: minmax(0, 1fr);
6
+ padding: 0;
7
+
8
+ &::before,
9
+ &::after,
10
+ > *,
11
+ > *:where(astro-island, astro-slot) > * {
12
+ position: relative;
13
+ z-index: 1;
14
+ grid-column: 1 / span 1;
15
+ grid-row: 1 / span 1;
16
+ }
17
+
18
+ > .background {
19
+ overflow: hidden;
20
+ position: absolute;
21
+ inset: 0;
22
+ }
23
+
24
+ > .foreground {
25
+ position: relative;
26
+ z-index: 10;
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,3 @@
1
+ @utility new-stacking-context {
2
+ transform: translateZ(0);
3
+ }
@@ -0,0 +1,429 @@
1
+ @theme {
2
+ --tx: 0%;
3
+ --ty: 0%;
4
+ }
5
+
6
+ @utility edge-scaffold {
7
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
8
+
9
+ :where(.stack) > & {
10
+ box-sizing: content-box;
11
+ }
12
+
13
+ :where(.relative > &) {
14
+ position: absolute;
15
+ }
16
+ }
17
+
18
+ /*********************
19
+ * stack edge utilities *
20
+ *********************/
21
+
22
+ /* Top */
23
+ @utility stack-edge-top {
24
+ place-self: start center;
25
+ }
26
+
27
+ @utility stack-edge-topleft {
28
+ place-self: start start;
29
+ }
30
+
31
+ @utility stack-edge-topright {
32
+ place-self: start end;
33
+ }
34
+
35
+ @utility stack-edge-topfull {
36
+ place-self: start stretch;
37
+ }
38
+
39
+ /* Bottom */
40
+ @utility stack-edge-bottom {
41
+ place-self: end center;
42
+ }
43
+
44
+ @utility stack-edge-bottomleft {
45
+ place-self: end start;
46
+ }
47
+
48
+ @utility stack-edge-bottomright {
49
+ place-self: end end;
50
+ }
51
+
52
+ @utility stack-edge-bottomfull {
53
+ place-self: end stretch;
54
+ }
55
+
56
+ /* Left */
57
+ @utility stack-edge-left {
58
+ place-self: center start;
59
+ }
60
+
61
+ @utility stack-edge-leftfull {
62
+ place-self: stretch start;
63
+ }
64
+
65
+ /* Right */
66
+ @utility stack-edge-right {
67
+ place-self: center end;
68
+ }
69
+
70
+ @utility stack-edge-rightfull {
71
+ place-self: stretch end;
72
+ }
73
+
74
+ /*********************
75
+ * relative edge utilities *
76
+ *********************/
77
+
78
+ /* Top */
79
+ @utility relative-edge-top {
80
+ inset-block-start: 0;
81
+ }
82
+
83
+ @utility relative-edge-topleft {
84
+ inset-block-start: 0;
85
+ inset-inline-start: 0;
86
+ }
87
+
88
+ @utility relative-edge-topright {
89
+ inset-block-start: 0;
90
+ inset-inline-end: 0;
91
+ }
92
+
93
+ @utility relative-edge-topfull {
94
+ inset-block-start: 0;
95
+ inset-inline: 0;
96
+ }
97
+
98
+ /* Bottom */
99
+ @utility relative-edge-bottom {
100
+ inset-block-end: 0;
101
+ }
102
+
103
+ @utility relative-edge-bottomfull {
104
+ inset-block-end: 0;
105
+ inset-inline: 0;
106
+ }
107
+
108
+ @utility relative-edge-bottomleft {
109
+ inset-block-end: 0;
110
+ inset-inline-start: 0;
111
+ }
112
+
113
+ @utility relative-edge-bottomright {
114
+ inset-block-end: 0;
115
+ inset-inline-end: 0;
116
+ }
117
+
118
+ /* Left */
119
+ @utility relative-edge-left {
120
+ inset-inline-start: 0;
121
+ }
122
+
123
+ @utility relative-edge-leftfull {
124
+ inset-block: 0;
125
+ inset-inline-start: 0;
126
+ }
127
+
128
+ /* Right */
129
+ @utility relative-edge-right {
130
+ inset-inline-end: 0;
131
+ }
132
+
133
+ @utility relative-edge-rightfull {
134
+ inset-block: 0;
135
+ inset-inline-end: 0;
136
+ }
137
+
138
+ /*********************
139
+ * Edge adjustments *
140
+ *********************/
141
+
142
+ /* Top *
143
+ *********************/
144
+ @utility edge-adjust-top {
145
+ --ty: -50%;
146
+ }
147
+
148
+ @utility edge-adjust-topleft-start {
149
+ @apply edge-adjust-top;
150
+ --tx: -100%;
151
+ }
152
+
153
+ @utility edge-adjust-topleft {
154
+ @apply edge-adjust-top;
155
+ --tx: -50%;
156
+ }
157
+
158
+ @utility edge-adjust-topleft-end {
159
+ @apply edge-adjust-top;
160
+ --tx: 0%;
161
+ }
162
+
163
+ @utility edge-adjust-topright-start {
164
+ @apply edge-adjust-top;
165
+ --tx: 0%;
166
+ }
167
+
168
+ @utility edge-adjust-topright {
169
+ @apply edge-adjust-top;
170
+ --tx: 50%;
171
+ }
172
+
173
+ @utility edge-adjust-topright-end {
174
+ @apply edge-adjust-top;
175
+ --tx: 100%;
176
+ }
177
+
178
+ /* Bottom *
179
+ *********************/
180
+ @utility edge-adjust-bottom {
181
+ --ty: 50%;
182
+ }
183
+
184
+ @utility edge-adjust-bottomleft-start {
185
+ @apply edge-adjust-bottom;
186
+ --tx: -100%;
187
+ }
188
+
189
+ @utility edge-adjust-bottomleft {
190
+ @apply edge-adjust-bottom;
191
+ --tx: -50%;
192
+ }
193
+
194
+ @utility edge-adjust-bottomleft-end {
195
+ @apply edge-adjust-bottom;
196
+ --tx: 0%;
197
+ }
198
+
199
+ @utility edge-adjust-bottomright-start {
200
+ @apply edge-adjust-bottom;
201
+ --tx: 0%;
202
+ }
203
+
204
+ @utility edge-adjust-bottomright {
205
+ @apply edge-adjust-bottom;
206
+ --tx: 50%;
207
+ }
208
+
209
+ @utility edge-adjust-bottomright-end {
210
+ @apply edge-adjust-bottom;
211
+ --tx: 100%;
212
+ }
213
+
214
+ /* Left *
215
+ *********************/
216
+ @utility edge-adjust-left {
217
+ --tx: -50%;
218
+ }
219
+
220
+ /* Right *
221
+ *********************/
222
+ @utility edge-adjust-right {
223
+ --tx: 50%;
224
+ }
225
+
226
+ /*********************
227
+ * Edge utilities *
228
+ *********************/
229
+ @utility edge-top {
230
+ @apply edge-scaffold;
231
+ @apply edge-adjust-top;
232
+
233
+ :where(.stack) > & {
234
+ @apply stack-edge-top;
235
+ }
236
+
237
+ :where(.relative) > & {
238
+ @apply relative-edge-top;
239
+ }
240
+ }
241
+
242
+ @utility edge-topleft {
243
+ @apply edge-scaffold;
244
+ @apply edge-adjust-topleft;
245
+
246
+ :where(.stack) > & {
247
+ @apply stack-edge-topleft;
248
+ }
249
+
250
+ :where(.relative) > & {
251
+ @apply relative-edge-topleft;
252
+ }
253
+ }
254
+
255
+ @utility edge-topright {
256
+ @apply edge-scaffold;
257
+ @apply edge-adjust-topright;
258
+
259
+ :where(.stack) > & {
260
+ @apply stack-edge-topright;
261
+ }
262
+
263
+ :where(.relative) > & {
264
+ @apply relative-edge-topright;
265
+ }
266
+ }
267
+
268
+ @utility edge-topfull {
269
+ @apply edge-scaffold;
270
+ @apply edge-adjust-top;
271
+
272
+ :where(.stack) > & {
273
+ @apply stack-edge-top;
274
+ }
275
+
276
+ :where(.relative) > & {
277
+ @apply relative-edge-top;
278
+ }
279
+ }
280
+
281
+ /* Bottom */
282
+ @utility edge-bottom {
283
+ @apply edge-scaffold;
284
+ @apply edge-adjust-bottom;
285
+
286
+ :where(.stack) > & {
287
+ @apply stack-edge-bottom;
288
+ }
289
+
290
+ :where(.relative) > & {
291
+ @apply relative-edge-bottom;
292
+ }
293
+ }
294
+
295
+ @utility edge-bottomleft {
296
+ @apply edge-scaffold;
297
+ @apply edge-adjust-bottomleft;
298
+
299
+ :where(.stack) > & {
300
+ @apply stack-edge-bottomleft;
301
+ }
302
+
303
+ :where(.relative) > & {
304
+ @apply relative-edge-bottomleft;
305
+ }
306
+ }
307
+
308
+ @utility edge-bottomright {
309
+ @apply edge-scaffold;
310
+ @apply edge-adjust-bottomright;
311
+
312
+ :where(.stack) > & {
313
+ @apply stack-edge-bottomright;
314
+ }
315
+
316
+ :where(.relative) > & {
317
+ @apply relative-edge-bottomright;
318
+ }
319
+ }
320
+
321
+ @utility edge-bottomfull {
322
+ @apply edge-scaffold;
323
+ @apply edge-adjust-bottom;
324
+
325
+ :where(.stack) > & {
326
+ @apply stack-edge-bottom;
327
+ }
328
+
329
+ :where(.relative) > & {
330
+ @apply relative-edge-bottom;
331
+ }
332
+ }
333
+
334
+ /* Left */
335
+ @utility edge-left {
336
+ @apply edge-scaffold;
337
+ @apply edge-adjust-left;
338
+
339
+ :where(.stack) > & {
340
+ @apply stack-edge-left;
341
+ }
342
+
343
+ :where(.relative) > & {
344
+ @apply relative-edge-left;
345
+ }
346
+ }
347
+
348
+ @utility edge-leftfull {
349
+ @apply edge-scaffold;
350
+ @apply edge-adjust-left;
351
+
352
+ :where(.stack) > & {
353
+ @apply stack-edge-left;
354
+ }
355
+
356
+ :where(.relative) > & {
357
+ @apply relative-edge-left;
358
+ }
359
+ }
360
+
361
+ /* Right */
362
+ @utility edge-right {
363
+ @apply edge-scaffold;
364
+ @apply edge-adjust-right;
365
+
366
+ :where(.stack) > & {
367
+ @apply stack-edge-right;
368
+ }
369
+
370
+ :where(.relative) > & {
371
+ @apply relative-edge-right;
372
+ }
373
+ }
374
+
375
+ @utility edge-rightfull {
376
+ @apply edge-scaffold;
377
+ @apply edge-adjust-right;
378
+
379
+ :where(.stack) > & {
380
+ @apply stack-edge-right;
381
+ }
382
+
383
+ :where(.relative) > & {
384
+ @apply relative-edge-right;
385
+ }
386
+ }
387
+
388
+ /*********************
389
+ * Edge with adjustments *
390
+ *********************/
391
+ @utility edge-topleft-start {
392
+ @apply edge-topleft;
393
+ @apply edge-adjust-topleft-start;
394
+ }
395
+
396
+ @utility edge-topleft-end {
397
+ @apply edge-topleft;
398
+ @apply edge-adjust-topleft-end;
399
+ }
400
+
401
+ @utility edge-topright-start {
402
+ @apply edge-topright;
403
+ @apply edge-adjust-topright-start;
404
+ }
405
+
406
+ @utility edge-topright-end {
407
+ @apply edge-topright;
408
+ @apply edge-adjust-topright-end;
409
+ }
410
+
411
+ @utility edge-bottomleft-start {
412
+ @apply edge-bottomleft;
413
+ @apply edge-adjust-bottomleft-start;
414
+ }
415
+
416
+ @utility edge-bottomleft-end {
417
+ @apply edge-bottomleft;
418
+ @apply edge-adjust-bottomleft-end;
419
+ }
420
+
421
+ @utility edge-bottomright-start {
422
+ @apply edge-bottomright;
423
+ @apply edge-adjust-bottomright-start;
424
+ }
425
+
426
+ @utility edge-bottomright-end {
427
+ @apply edge-bottomright;
428
+ @apply edge-adjust-bottomright-end;
429
+ }