@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,2018 @@
1
+ /*! tailwindcss v4.0.9 | MIT License | https://tailwindcss.com */
2
+ @layer utilities {
3
+ .button {
4
+ border: var(--border-width) var(--border-style) var(--border-color);
5
+ border-radius: var(--radius);
6
+ --transition-values: var(--transition-duration) var(--transition-delay)
7
+ var(--transition-easing);
8
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
9
+ opacity, outline, stroke, transform;
10
+ transition: var(--transition-values);
11
+ transition-property: var(--transition-props);
12
+ border-color: var(--border-color, currentcolor);
13
+ color: var(--text-color, currentcolor);
14
+ background-color: var(--bg-color);
15
+ :where(svg path) {
16
+ --transition-values: var(--transition-duration) var(--transition-delay)
17
+ var(--transition-easing);
18
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
19
+ opacity, outline, stroke, transform;
20
+ transition: var(--transition-values);
21
+ transition-property: var(--transition-props);
22
+ fill: var(--fill-color, var(--text-color));
23
+ stroke: var( --stroke-color, var(--text-color) );
24
+ }
25
+ &:hover {
26
+ border-color: var(--border-hover-color, var(--border-color));
27
+ color: var(--text-hover-color, var(--text-color));
28
+ background-color: var(--bg-hover-color, var(--bg-color));
29
+ }
30
+ &:hover {
31
+ :where(svg path) {
32
+ fill: var( --fill-hover-color, var(--text-hover-color, var(--fill-color, var(--text-color))) );
33
+ stroke: var( --stroke-hover-color, var(--text-hover-color, var(--stroke-color, var(--text-color))) );
34
+ }
35
+ }
36
+ &:focus {
37
+ border-color: var( --border-focus-color, var(--border-hover-color, var(--border-color)) );
38
+ color: var(--text-focus-color, var(--text-hover-color, var(--text-color)));
39
+ background-color: var( --bg-focus-color, var(--bg-hover-color, var(--bg-color)) );
40
+ }
41
+ &:focus {
42
+ :where(svg path) {
43
+ fill: var( --fill-focus-color, var( --text-focus-color, var( --fill-hover-color, var(--text-hover-color, var(--fill-color, var(--text-color))) ) ) );
44
+ stroke: var( --stroke-focus-color, var( --text-focus-color, var( --stroke-hover-color, var(--text-hover-color, var(--stroke-color, var(--text-color))) ) ) );
45
+ }
46
+ }
47
+ &:active {
48
+ border-color: var(--border-active-color,);
49
+ color: var(--text-active-color);
50
+ background-color: var(--bg-active-color);
51
+ }
52
+ &:active {
53
+ :where(svg path) {
54
+ fill: var(--fill-active-color, var(--text-active-color));
55
+ stroke: var(--stroke-active-color, var(--text-active-color));
56
+ }
57
+ }
58
+ &.selected, &.checked, &[aria-current], &[aria-selected], &[aria-expanded='true'] {
59
+ border-color: var(--border-selected-color);
60
+ color: var(--text-selected-color);
61
+ background-color: var(--bg-selected-color);
62
+ }
63
+ &.selected, &.checked, &[aria-current], &[aria-selected], &[aria-expanded='true'] {
64
+ :where(svg path) {
65
+ fill: var(--fill-selected-color);
66
+ stroke: var(--stroke-selected-color);
67
+ }
68
+ }
69
+ flex-shrink: 0;
70
+ display: inline-flex;
71
+ justify-content: center;
72
+ align-items: center;
73
+ gap: 0.5em;
74
+ max-width: 100%;
75
+ padding: 0.25em 1em;
76
+ font: inherit;
77
+ font-family: var(--input-font);
78
+ text-decoration: none !important;
79
+ cursor: pointer;
80
+ * {
81
+ pointer-events: none;
82
+ }
83
+ svg path {
84
+ --transition-values: var(--transition-duration) var(--transition-delay)
85
+ var(--transition-easing);
86
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
87
+ opacity, outline, stroke, transform;
88
+ transition: var(--transition-values);
89
+ transition-property: var(--transition-props);
90
+ transition: var(--transition-values);
91
+ transition-property: var(--transition-props);
92
+ }
93
+ }
94
+ .sticky {
95
+ position: sticky;
96
+ top: 0;
97
+ z-index: var(--z-index, 15);
98
+ :where([class*='grid'] > &) {
99
+ align-self: start;
100
+ }
101
+ }
102
+ .sticky {
103
+ position: sticky;
104
+ }
105
+ .masonry {
106
+ --span: 1;
107
+ display: grid;
108
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
109
+ max-width: 100%;
110
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
111
+ --cols: 1;
112
+ grid-column: var(--colstart, auto) / span var(--span, 1);
113
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
114
+ max-width: 100%;
115
+ }
116
+ grid-template-columns: repeat(var(--cols, 1), minmax(0, auto));
117
+ grid-template-rows: masonry;
118
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
119
+ grid-column-end: span var(--span, 1);
120
+ align-self: start;
121
+ }
122
+ }
123
+ .container {
124
+ width: 100%;
125
+ }
126
+ }
127
+ @layer reset {
128
+ html {
129
+ box-sizing: border-box;
130
+ }
131
+ *, *::before, *::after {
132
+ box-sizing: border-box;
133
+ }
134
+ html, body {
135
+ height: 100%;
136
+ }
137
+ body {
138
+ min-height: 100vh;
139
+ min-height: 100svh;
140
+ }
141
+ * {
142
+ margin: 0;
143
+ padding: 0;
144
+ border-width: 0;
145
+ border-style: solid;
146
+ }
147
+ p, h1, h2, h3, h4, h5, h6 {
148
+ overflow-wrap: break-word;
149
+ scroll-margin: 2em;
150
+ }
151
+ ul {
152
+ list-style: none;
153
+ }
154
+ img, video, object, embed, svg {
155
+ display: block;
156
+ width: 100%;
157
+ max-width: 100%;
158
+ height: auto;
159
+ }
160
+ picture {
161
+ display: flex;
162
+ justify-content: center;
163
+ }
164
+ iframe, canvas {
165
+ display: block;
166
+ max-width: 100%;
167
+ }
168
+ svg {
169
+ pointer-events: none;
170
+ flex-shrink: 0;
171
+ box-sizing: content-box;
172
+ width: var(--svg-width, auto);
173
+ height: var(--svg-height, 1em);
174
+ }
175
+ hr {
176
+ height: 1px;
177
+ background-color: var(--border-color, black);
178
+ }
179
+ [hidden] {
180
+ display: none;
181
+ opacity: 0;
182
+ visibility: hidden;
183
+ }
184
+ noscript {
185
+ display: block;
186
+ margin-block: 1em;
187
+ }
188
+ }
189
+ @layer base {
190
+ * {
191
+ outline: var(--outline-width) var(--outline-style) transparent;
192
+ outline-offset: var(--outline-offset);
193
+ }
194
+ }
195
+ @layer base {
196
+ .sr-only {
197
+ overflow: hidden;
198
+ position: absolute;
199
+ width: 1px;
200
+ height: auto;
201
+ margin: 0;
202
+ padding: 0;
203
+ border: 0;
204
+ clip: rect(0 0 0 0);
205
+ white-space: nowrap;
206
+ }
207
+ @media (prefers-reduced-motion: reduce) {
208
+ * {
209
+ animation-duration: 0.01ms !important;
210
+ animation-iteration-count: 1 !important;
211
+ transition-duration: 0.01ms !important;
212
+ scroll-behavior: auto !important;
213
+ }
214
+ }
215
+ }
216
+ @layer base {
217
+ html {
218
+ font-family: system-ui, sans-serif;
219
+ line-height: var(--leading, 1.5);
220
+ font-variant-ligatures: common-ligatures;
221
+ }
222
+ body {
223
+ color: var(--text-color);
224
+ background-color: var(--bg-color);
225
+ text-rendering: optimizelegibility;
226
+ }
227
+ h1, h2, h3, h4, h5, h6 {
228
+ font-variant-numeric: oldstyle-nums proportional-nums;
229
+ }
230
+ pre {
231
+ padding: 1em;
232
+ border-radius: var(--radius);
233
+ }
234
+ code {
235
+ font-size: 0.8em;
236
+ :not(pre) > & {
237
+ display: inline;
238
+ padding: 0.2em 0.25em;
239
+ border-radius: var(--radius);
240
+ }
241
+ pre > & {
242
+ background-color: transparent;
243
+ }
244
+ }
245
+ }
246
+ @layer base {
247
+ fieldset {
248
+ border: none;
249
+ }
250
+ input:where( [type='text'], [type='search'], [type='email'], [type='password'], [type='tel'], [type='url'] ), textarea, select, .field {
251
+ border: var(--border-width) var(--border-style) var(--border-color);
252
+ border-radius: var(--radius);
253
+ --transition-values: var(--transition-duration) var(--transition-delay)
254
+ var(--transition-easing);
255
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
256
+ opacity, outline, stroke, transform;
257
+ transition: var(--transition-values);
258
+ transition-property: var(--transition-props);
259
+ border-color: var(--border-color, currentcolor);
260
+ color: var(--text-color, currentcolor);
261
+ background-color: var(--bg-color);
262
+ &:hover {
263
+ border-color: var(--border-hover-color, var(--border-color));
264
+ color: var(--text-hover-color, var(--text-color));
265
+ background-color: var(--bg-hover-color, var(--bg-color));
266
+ }
267
+ &:focus {
268
+ border-color: var( --border-focus-color, var(--border-hover-color, var(--border-color)) );
269
+ color: var(--text-focus-color, var(--text-hover-color, var(--text-color)));
270
+ background-color: var( --bg-focus-color, var(--bg-hover-color, var(--bg-color)) );
271
+ }
272
+ &:active {
273
+ border-color: var(--border-active-color,);
274
+ color: var(--text-active-color);
275
+ background-color: var(--bg-active-color);
276
+ }
277
+ &.selected, &.checked, &[aria-current], &[aria-selected], &[aria-expanded='true'] {
278
+ border-color: var(--border-selected-color);
279
+ color: var(--text-selected-color);
280
+ background-color: var(--bg-selected-color);
281
+ }
282
+ border: var(--border-width) var(--border-style) var(--border-color);
283
+ border-radius: var(--radius);
284
+ display: block;
285
+ width: 100%;
286
+ padding: 0.25em 0.5em;
287
+ font: inherit;
288
+ font-family: var(--input-font);
289
+ color: var(--text-color, currentcolor);
290
+ background-color: var(--bg-color);
291
+ }
292
+ input, textarea {
293
+ &:focus-visible {
294
+ outline-color: var(--outline-color);
295
+ }
296
+ }
297
+ input[type='password'] {
298
+ font-family: Verdana, sans-serif;
299
+ letter-spacing: 0.125em;
300
+ }
301
+ .disabled, .readonly, [disabled], [readonly] {
302
+ opacity: 0.5;
303
+ &:where(input) {
304
+ cursor: not-allowed;
305
+ }
306
+ &:focus, &:focus-visible {
307
+ outline-color: transparent;
308
+ }
309
+ }
310
+ }
311
+ @layer utilities {
312
+ a {
313
+ border: var(--border-width) var(--border-style) var(--border-color);
314
+ border-radius: var(--radius);
315
+ --transition-values: var(--transition-duration) var(--transition-delay)
316
+ var(--transition-easing);
317
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
318
+ opacity, outline, stroke, transform;
319
+ transition: var(--transition-values);
320
+ transition-property: var(--transition-props);
321
+ border-color: var(--border-color, currentcolor);
322
+ color: var(--text-color, currentcolor);
323
+ background-color: var(--bg-color);
324
+ &:hover {
325
+ border-color: var(--border-hover-color, var(--border-color));
326
+ color: var(--text-hover-color, var(--text-color));
327
+ background-color: var(--bg-hover-color, var(--bg-color));
328
+ }
329
+ &:focus {
330
+ border-color: var( --border-focus-color, var(--border-hover-color, var(--border-color)) );
331
+ color: var(--text-focus-color, var(--text-hover-color, var(--text-color)));
332
+ background-color: var( --bg-focus-color, var(--bg-hover-color, var(--bg-color)) );
333
+ }
334
+ &:active {
335
+ border-color: var(--border-active-color,);
336
+ color: var(--text-active-color);
337
+ background-color: var(--bg-active-color);
338
+ }
339
+ &.selected, &.checked, &[aria-current], &[aria-selected], &[aria-expanded='true'] {
340
+ border-color: var(--border-selected-color);
341
+ color: var(--text-selected-color);
342
+ background-color: var(--bg-selected-color);
343
+ }
344
+ }
345
+ button {
346
+ border: var(--border-width) var(--border-style) var(--border-color);
347
+ border-radius: var(--radius);
348
+ --transition-values: var(--transition-duration) var(--transition-delay)
349
+ var(--transition-easing);
350
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
351
+ opacity, outline, stroke, transform;
352
+ transition: var(--transition-values);
353
+ transition-property: var(--transition-props);
354
+ border-color: var(--border-color, currentcolor);
355
+ color: var(--text-color, currentcolor);
356
+ background-color: var(--bg-color);
357
+ :where(svg path) {
358
+ --transition-values: var(--transition-duration) var(--transition-delay)
359
+ var(--transition-easing);
360
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
361
+ opacity, outline, stroke, transform;
362
+ transition: var(--transition-values);
363
+ transition-property: var(--transition-props);
364
+ fill: var(--fill-color, var(--text-color));
365
+ stroke: var( --stroke-color, var(--text-color) );
366
+ }
367
+ &:hover {
368
+ border-color: var(--border-hover-color, var(--border-color));
369
+ color: var(--text-hover-color, var(--text-color));
370
+ background-color: var(--bg-hover-color, var(--bg-color));
371
+ }
372
+ &:hover {
373
+ :where(svg path) {
374
+ fill: var( --fill-hover-color, var(--text-hover-color, var(--fill-color, var(--text-color))) );
375
+ stroke: var( --stroke-hover-color, var(--text-hover-color, var(--stroke-color, var(--text-color))) );
376
+ }
377
+ }
378
+ &:focus {
379
+ border-color: var( --border-focus-color, var(--border-hover-color, var(--border-color)) );
380
+ color: var(--text-focus-color, var(--text-hover-color, var(--text-color)));
381
+ background-color: var( --bg-focus-color, var(--bg-hover-color, var(--bg-color)) );
382
+ }
383
+ &:focus {
384
+ :where(svg path) {
385
+ fill: var( --fill-focus-color, var( --text-focus-color, var( --fill-hover-color, var(--text-hover-color, var(--fill-color, var(--text-color))) ) ) );
386
+ stroke: var( --stroke-focus-color, var( --text-focus-color, var( --stroke-hover-color, var(--text-hover-color, var(--stroke-color, var(--text-color))) ) ) );
387
+ }
388
+ }
389
+ &:active {
390
+ border-color: var(--border-active-color,);
391
+ color: var(--text-active-color);
392
+ background-color: var(--bg-active-color);
393
+ }
394
+ &:active {
395
+ :where(svg path) {
396
+ fill: var(--fill-active-color, var(--text-active-color));
397
+ stroke: var(--stroke-active-color, var(--text-active-color));
398
+ }
399
+ }
400
+ &.selected, &.checked, &[aria-current], &[aria-selected], &[aria-expanded='true'] {
401
+ border-color: var(--border-selected-color);
402
+ color: var(--text-selected-color);
403
+ background-color: var(--bg-selected-color);
404
+ }
405
+ &.selected, &.checked, &[aria-current], &[aria-selected], &[aria-expanded='true'] {
406
+ :where(svg path) {
407
+ fill: var(--fill-selected-color);
408
+ stroke: var(--stroke-selected-color);
409
+ }
410
+ }
411
+ flex-shrink: 0;
412
+ display: inline-flex;
413
+ justify-content: center;
414
+ align-items: center;
415
+ gap: 0.5em;
416
+ max-width: 100%;
417
+ padding: 0.25em 1em;
418
+ font: inherit;
419
+ font-family: var(--input-font);
420
+ text-decoration: none !important;
421
+ cursor: pointer;
422
+ * {
423
+ pointer-events: none;
424
+ }
425
+ svg path {
426
+ --transition-values: var(--transition-duration) var(--transition-delay)
427
+ var(--transition-easing);
428
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
429
+ opacity, outline, stroke, transform;
430
+ transition: var(--transition-values);
431
+ transition-property: var(--transition-props);
432
+ transition: var(--transition-values);
433
+ transition-property: var(--transition-props);
434
+ }
435
+ }
436
+ :is(a, button, .button), :where([tabindex]:not([tabindex='-1'])) {
437
+ &:focus-visible {
438
+ outline-color: var(--outline-color);
439
+ }
440
+ }
441
+ }
442
+ .input-group.stack {
443
+ *:has(~ :where(.input)), *:has(~ :where(.input)):where(astro-slot, astro-content, astro-island) > * {
444
+ z-index: 2;
445
+ display: flex;
446
+ place-self: center start;
447
+ }
448
+ :where(.input) ~ *, :where(.input) ~ *:where(astro-slot, astro-content, astro-island) > * {
449
+ display: flex;
450
+ place-self: center end;
451
+ }
452
+ }
453
+ @layer base {
454
+ textarea {
455
+ min-height: var(--textarea-height);
456
+ resize: vertical;
457
+ field-sizing: normal;
458
+ }
459
+ }
460
+ @layer components {
461
+ .backdrop:where([data-state='blur']), .backdrop-blur {
462
+ --transition-values: var(--transition-duration) var(--transition-delay)
463
+ var(--transition-easing);
464
+ --transition-props: backdrop-filter, background, border, color, fill, filter, gap, opacity,
465
+ opacity, outline, stroke, transform;
466
+ transition: var(--transition-values);
467
+ transition-property: var(--transition-props);
468
+ transition-property: backdrop-filter;
469
+ backdrop-filter: blur(var(--blur, 8px));
470
+ }
471
+ }
472
+ table {
473
+ width: 100%;
474
+ font-variant-numeric: lining-nums tabular-nums slashed-zero diagonal-fractions;
475
+ border-collapse: collapse;
476
+ &:has(thead) tr:nth-child(2n + 2) {
477
+ background-color: var(--alt-row-color);
478
+ }
479
+ &:not(:has(thead)) tr {
480
+ tr:nth-child(2n + 3) {
481
+ background-color: var(--alt-row-color);
482
+ }
483
+ }
484
+ th:where([scope='colgroup'], [scope='col'], :not([scope])) {
485
+ border-top: var(--header-row-border-top);
486
+ border-bottom: var(--header-row-border-bottom);
487
+ font-weight: bold;
488
+ }
489
+ th:where([scope='group'], [scope='row']) {
490
+ font-weight: bold;
491
+ }
492
+ :is(th, td) {
493
+ display: table-cell;
494
+ text-align: left;
495
+ padding: var(--padding, var(--padding-x, 0.375rem)) var(--padding, var(--padding-y, 0.5rem));
496
+ }
497
+ }
498
+ .table-grid:where(table, [role='table'], [role='grid']) {
499
+ width: 100%;
500
+ font-variant-numeric: lining-nums tabular-nums slashed-zero diagonal-fractions;
501
+ :where(table) & {
502
+ table-layout: auto;
503
+ }
504
+ :where(.table-grid) & {
505
+ --span: 1;
506
+ display: grid;
507
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
508
+ max-width: 100%;
509
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
510
+ --cols: 1;
511
+ grid-column: var(--colstart, auto) / span var(--span, 1);
512
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
513
+ max-width: 100%;
514
+ }
515
+ grid-template-columns: repeat(var(--cols, 1), minmax(0, auto));
516
+ }
517
+ table-layout: auto;
518
+ max-width: 100%;
519
+ }
520
+ .table-grid :where(thead, tbody, tfoot, [role='rowgroup']) {
521
+ display: contents;
522
+ }
523
+ .table-grid :where(tr, [role='row']) {
524
+ grid-column: 1/-1;
525
+ display: grid;
526
+ grid-template-columns: subgrid;
527
+ grid-template-rows: subgrid;
528
+ &:nth-child(2n + 3) {
529
+ background-color: var(--alt-row-color);
530
+ }
531
+ }
532
+ .table-grid :where( th[scope='colgroup'], th[scope='col'], th:not([scope]), [role='columnheader'] ) {
533
+ border-top: var(--header-row-border-top);
534
+ border-bottom: var(--header-row-border-bottom);
535
+ font-weight: bold;
536
+ }
537
+ .table-grid :where(th[scope='rowgroup'], th[scope='row'], [role='rowheader']) {
538
+ font-weight: bold;
539
+ }
540
+ .table-grid :where( [role='columnheader'], [role='rowheader'], [role='cell'], [role='gridcell'], th, td ) {
541
+ display: table-cell;
542
+ text-align: left;
543
+ padding: var(--padding, var(--padding-x, 0.375rem)) var(--padding, var(--padding-y, 0.5rem));
544
+ display: grid;
545
+ align-items: center;
546
+ }
547
+ :root {
548
+ --shadow-x: 0px;
549
+ --shadow-y: 1px;
550
+ --shadow-blur: 1px;
551
+ --shadow-color: rgb(0 0 0);
552
+ --shadow-alpha: 0.25;
553
+ --shadow-x-multiple: 2;
554
+ --shadow-y-multiple: 2;
555
+ --shadow-blur-multiple: 2;
556
+ }
557
+ @layer base {
558
+ :root {
559
+ --gradient-alpha: 1;
560
+ --gradient-angle: 90deg;
561
+ --gradient-position: center;
562
+ --gradient-shape: ;
563
+ --gradient-size: ;
564
+ --color-space: oklab;
565
+ --hue-interpolation: ;
566
+ }
567
+ }
568
+ @layer components {
569
+ .box {
570
+ padding: var(--padding, 1rem);
571
+ border: var(--border-width) var(--border-style) var(--border-color);
572
+ border-radius: var(--radius);
573
+ }
574
+ .card {
575
+ padding: var(--padding, 1rem);
576
+ border: var(--border-width) var(--border-style) var(--border-color);
577
+ border-radius: var(--radius);
578
+ }
579
+ .card-split {
580
+ padding: var(--padding, 1rem);
581
+ border: var(--border-width) var(--border-style) var(--border-color);
582
+ border-radius: var(--radius);
583
+ > *, :where(astro-slot, astro-island, astro-content) > * {
584
+ margin: var(--nudge, 0);
585
+ padding: var(--padding, 1rem);
586
+ }
587
+ &.card-split {
588
+ overflow: hidden;
589
+ gap: 0;
590
+ padding: 0;
591
+ > *, :where(astro-slot, astro-island, astro-content) > * {
592
+ border-radius: calc(var(--radius) - var(--nudge));
593
+ }
594
+ }
595
+ &:where(.divider-between-x, .divider-between-horizontal) > :where(.card-split) {
596
+ border-width: 0;
597
+ border-top-width: var(--border-width);
598
+ }
599
+ &:where(.divider-between-y, .divider-between-vertical) > :where(.card-split) {
600
+ border-width: 0;
601
+ border-left-width: var(--border-width);
602
+ }
603
+ }
604
+ .hero-heading {
605
+ display: flex;
606
+ flex-direction: column;
607
+ gap: var(--gap, 0.25em);
608
+ max-width: 100%;
609
+ > :where(.hero-eyebrow) {
610
+ font-size: var(--eyebrow-size, 0.6em);
611
+ }
612
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
613
+ max-width: 100%;
614
+ }
615
+ }
616
+ .hero-heading-start {
617
+ display: flex;
618
+ flex-direction: column;
619
+ gap: var(--gap, 0.25em);
620
+ max-width: 100%;
621
+ > :where(.hero-eyebrow) {
622
+ font-size: var(--eyebrow-size, 0.6em);
623
+ }
624
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
625
+ max-width: 100%;
626
+ }
627
+ text-align: start;
628
+ }
629
+ .hero-heading-center {
630
+ display: flex;
631
+ flex-direction: column;
632
+ gap: var(--gap, 0.25em);
633
+ max-width: 100%;
634
+ > :where(.hero-eyebrow) {
635
+ font-size: var(--eyebrow-size, 0.6em);
636
+ }
637
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
638
+ max-width: 100%;
639
+ }
640
+ align-self: center;
641
+ margin-inline: auto;
642
+ text-align: center;
643
+ }
644
+ .hero-heading-end {
645
+ display: flex;
646
+ flex-direction: column;
647
+ gap: var(--gap, 0.25em);
648
+ max-width: 100%;
649
+ > :where(.hero-eyebrow) {
650
+ font-size: var(--eyebrow-size, 0.6em);
651
+ }
652
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
653
+ max-width: 100%;
654
+ }
655
+ align-self: end;
656
+ margin-inline-start: auto;
657
+ text-align: end;
658
+ }
659
+ .indent-list {
660
+ --indent-list-depth: 0;
661
+ li li {
662
+ margin-inline-start: var(--indent, 1em);
663
+ }
664
+ li {
665
+ --depth: 1;
666
+ a {
667
+ --depth: 1;
668
+ }
669
+ li, li a {
670
+ --depth: 2;
671
+ }
672
+ li li, li li a {
673
+ --depth: 3;
674
+ }
675
+ li li li, li li li a {
676
+ --depth: 4;
677
+ }
678
+ li li li li, li li li li a {
679
+ --depth: 5;
680
+ }
681
+ }
682
+ :where(ul, ol, li) {
683
+ padding-inline-start: 0;
684
+ }
685
+ a {
686
+ display: block;
687
+ padding-block: 0.125em;
688
+ }
689
+ li {
690
+ list-style-type: disc;
691
+ }
692
+ }
693
+ .indent-list-guides {
694
+ --indent-list-depth: 0;
695
+ li li {
696
+ margin-inline-start: var(--indent, 1em);
697
+ }
698
+ li {
699
+ --depth: 1;
700
+ a {
701
+ --depth: 1;
702
+ }
703
+ li, li a {
704
+ --depth: 2;
705
+ }
706
+ li li, li li a {
707
+ --depth: 3;
708
+ }
709
+ li li li, li li li a {
710
+ --depth: 4;
711
+ }
712
+ li li li li, li li li li a {
713
+ --depth: 5;
714
+ }
715
+ }
716
+ :where(ul, ol, li) {
717
+ padding-inline-start: 0;
718
+ }
719
+ a {
720
+ display: block;
721
+ padding-block: 0.125em;
722
+ }
723
+ li li {
724
+ position: relative;
725
+ margin-inline-start: 0;
726
+ padding-inline-start: var(--indent, 1em);
727
+ a {
728
+ position: relative;
729
+ margin-left: calc(var(--indent, 1em) * -1);
730
+ padding-left: var(--indent, 1em);
731
+ }
732
+ &::before, a::before {
733
+ content: '';
734
+ position: absolute;
735
+ top: 0;
736
+ bottom: 0;
737
+ left: 0;
738
+ width: 1px;
739
+ background-color: var(--border-color);
740
+ }
741
+ a:hover::before {
742
+ background-color: var(--border-hover-color);
743
+ }
744
+ }
745
+ }
746
+ .writing-normal {
747
+ transition: none;
748
+ writing-mode: horizontal-tb;
749
+ }
750
+ .writing-rotated-left {
751
+ transition: none;
752
+ writing-mode: vertical-rl;
753
+ text-orientation: sideways;
754
+ transform: rotate(180deg);
755
+ }
756
+ .writing-rotated-right {
757
+ transition: none;
758
+ writing-mode: vertical-rl;
759
+ text-orientation: sideways;
760
+ }
761
+ .writing-downwards {
762
+ transition: none;
763
+ writing-mode: vertical-lr;
764
+ text-orientation: upright;
765
+ }
766
+ .writing-downards-lr {
767
+ transition: none;
768
+ writing-mode: vertical-lr;
769
+ text-orientation: upright;
770
+ }
771
+ .writing-downwards-rl {
772
+ transition: none;
773
+ writing-mode: vertical-rl;
774
+ text-orientation: upright;
775
+ }
776
+ }
777
+ @layer components {
778
+ .divider-x, .divider-horizontal {
779
+ align-self: stretch;
780
+ padding: 0 !important;
781
+ border-radius: 0 !important;
782
+ &:where(:not(:empty)) {
783
+ gap: var(--gap, 1rem);
784
+ }
785
+ &::before, &::after {
786
+ content: '';
787
+ background-color: var(--border-color, currentColor);
788
+ }
789
+ flex-grow: 1;
790
+ display: flex;
791
+ align-items: center;
792
+ &::before, &::after {
793
+ flex-grow: 1;
794
+ height: var(--border-width, 1px);
795
+ }
796
+ }
797
+ .divider-y, .divider-vertical {
798
+ align-self: stretch;
799
+ padding: 0 !important;
800
+ border-radius: 0 !important;
801
+ &:where(:not(:empty)) {
802
+ gap: var(--gap, 1rem);
803
+ }
804
+ &::before, &::after {
805
+ content: '';
806
+ background-color: var(--border-color, currentColor);
807
+ }
808
+ align-self: stretch;
809
+ display: flex;
810
+ flex-direction: column;
811
+ align-items: center;
812
+ :where(.vertical, .single-col, .wrap) > & {
813
+ flex-grow: 1;
814
+ }
815
+ &::before, &::after {
816
+ flex-grow: 1;
817
+ width: var(--border-width, 1px);
818
+ }
819
+ }
820
+ .divider-between-x, .divider-between-horizontal {
821
+ align-self: stretch;
822
+ padding: 0 !important;
823
+ border-radius: 0 !important;
824
+ &:where(:not(:empty)) {
825
+ gap: var(--gap, 1rem);
826
+ }
827
+ &::before, &::after {
828
+ content: '';
829
+ background-color: var(--border-color, currentColor);
830
+ }
831
+ flex-direction: column;
832
+ row-gap: 0;
833
+ > * + *, > * + *:where(astro-island, astro-slot) > * {
834
+ border-top-width: var(--border-width, 1px);
835
+ border-color: var(--border-color);
836
+ }
837
+ }
838
+ .divider-between-y, .divider-between-vertical {
839
+ align-self: stretch;
840
+ padding: 0 !important;
841
+ border-radius: 0 !important;
842
+ &:where(:not(:empty)) {
843
+ gap: var(--gap, 1rem);
844
+ }
845
+ &::before, &::after {
846
+ content: '';
847
+ background-color: var(--border-color, currentColor);
848
+ }
849
+ column-gap: 0;
850
+ > * + *, > * + *:where(astro-island, astro-slot) > * {
851
+ border-left-width: var(--border-width, 1px);
852
+ border-color: var(--border-color);
853
+ }
854
+ }
855
+ }
856
+ @layer components {
857
+ .horizontal {
858
+ > *, > :where(.contents) > *, > *:where(astro-island, astro-slot) > * {
859
+ flex-grow: var(--grow);
860
+ }
861
+ display: flex;
862
+ flex-direction: row;
863
+ gap: var(--gap-y, var(--gap)) var(--gap-x, var(--gap));
864
+ > .spacer {
865
+ margin-inline-start: auto;
866
+ }
867
+ }
868
+ .vertical {
869
+ > *, > :where(.contents) > *, > *:where(astro-island, astro-slot) > * {
870
+ flex-grow: var(--grow);
871
+ }
872
+ display: flex;
873
+ flex-direction: column;
874
+ gap: var(--gap-y, var(--gap)) var(--gap-x, var(--gap));
875
+ > .spacer {
876
+ margin-block-start: auto;
877
+ }
878
+ }
879
+ .flow {
880
+ > *, > :where(.contents) > *, > *:where(astro-island, astro-slot) > * {
881
+ flex-grow: var(--grow);
882
+ }
883
+ display: flex;
884
+ flex-flow: row wrap;
885
+ gap: var(--gap-y, var(--gap)) var(--gap-x, var(--gap));
886
+ }
887
+ .stack {
888
+ position: relative;
889
+ display: grid;
890
+ grid-template-columns: minmax(0, 1fr);
891
+ padding: 0;
892
+ &::before, &::after, > *, > *:where(astro-island, astro-slot) > * {
893
+ position: relative;
894
+ z-index: 1;
895
+ grid-column: 1 / span 1;
896
+ grid-row: 1 / span 1;
897
+ }
898
+ > .background {
899
+ overflow: hidden;
900
+ position: absolute;
901
+ inset: 0;
902
+ }
903
+ > .foreground {
904
+ position: relative;
905
+ z-index: 10;
906
+ }
907
+ }
908
+ .new-stacking-context {
909
+ transform: translateZ(0);
910
+ }
911
+ .scrollable {
912
+ display: flex;
913
+ gap: var(--gap, 1rem);
914
+ > :where(*) {
915
+ flex-grow: 0;
916
+ flex-shrink: 0;
917
+ scroll-snap-align: var(--snap-align);
918
+ scroll-margin: var(--scroll-margin);
919
+ }
920
+ }
921
+ .scrollable-x {
922
+ display: flex;
923
+ gap: var(--gap, 1rem);
924
+ > :where(*) {
925
+ flex-grow: 0;
926
+ flex-shrink: 0;
927
+ scroll-snap-align: var(--snap-align);
928
+ scroll-margin: var(--scroll-margin);
929
+ }
930
+ overflow: auto hidden;
931
+ flex-direction: row;
932
+ max-width: 100%;
933
+ scroll-snap-type: x var(--snap-type);
934
+ }
935
+ .scrollable-horizontal {
936
+ display: flex;
937
+ gap: var(--gap, 1rem);
938
+ > :where(*) {
939
+ flex-grow: 0;
940
+ flex-shrink: 0;
941
+ scroll-snap-align: var(--snap-align);
942
+ scroll-margin: var(--scroll-margin);
943
+ }
944
+ overflow: auto hidden;
945
+ flex-direction: row;
946
+ max-width: 100%;
947
+ scroll-snap-type: x var(--snap-type);
948
+ }
949
+ .scrollable-y {
950
+ display: flex;
951
+ gap: var(--gap, 1rem);
952
+ > :where(*) {
953
+ flex-grow: 0;
954
+ flex-shrink: 0;
955
+ scroll-snap-align: var(--snap-align);
956
+ scroll-margin: var(--scroll-margin);
957
+ }
958
+ overflow: hidden auto;
959
+ flex-direction: column;
960
+ scroll-snap-type: y var(--snap-type);
961
+ }
962
+ .scrollable-vertical {
963
+ display: flex;
964
+ gap: var(--gap, 1rem);
965
+ > :where(*) {
966
+ flex-grow: 0;
967
+ flex-shrink: 0;
968
+ scroll-snap-align: var(--snap-align);
969
+ scroll-margin: var(--scroll-margin);
970
+ }
971
+ overflow: hidden auto;
972
+ flex-direction: column;
973
+ scroll-snap-type: y var(--snap-type);
974
+ }
975
+ .scrollable-preserve-outlines {
976
+ box-sizing: content-box;
977
+ margin: calc(var(--outline-width) * -1);
978
+ padding: calc(var(--outline-width));
979
+ }
980
+ .scrollable-nosnap {
981
+ --snap-type: none;
982
+ }
983
+ }
984
+ @layer components {
985
+ .shell-simple {
986
+ display: flex;
987
+ flex-direction: column;
988
+ height: inherit;
989
+ > .content {
990
+ flex-grow: 1;
991
+ }
992
+ > .footer {
993
+ flex-shrink: 0;
994
+ }
995
+ }
996
+ .shell-grid {
997
+ display: grid;
998
+ grid-template-columns: minmax(0, var(--lsb-width, auto)) minmax(0, 1fr);
999
+ gap: var(--gap, 0);
1000
+ height: 100dvh;
1001
+ &:has(> header) {
1002
+ grid-template-rows: auto 1fr;
1003
+ }
1004
+ &:has(> .right-sidebar) {
1005
+ grid-template-columns: minmax(0, var(--lsb-width, auto)) minmax(0, var(--content-width, 1fr)) minmax(0, var(--rsb-width, auto));
1006
+ }
1007
+ & > .is(header, .Full) {
1008
+ grid-column: 1 / -1;
1009
+ }
1010
+ > .left-sidebar, > .right-sidebar, > .content {
1011
+ overflow: auto;
1012
+ grid-column-end: span var(--span, 1);
1013
+ height: auto;
1014
+ }
1015
+ }
1016
+ }
1017
+ @layer components {
1018
+ .wrap {
1019
+ padding-inline: var(--wrap-padding, 1rem);
1020
+ }
1021
+ .flex-grid {
1022
+ display: flex;
1023
+ flex-flow: row wrap;
1024
+ gap: var(--gap, 1rem);
1025
+ max-width: 100%;
1026
+ > *, > *:where(astro-island, astro-slot) > *, > :where(.contents) > * {
1027
+ --one-column: var(--gap, 1rem) * (var(--cols, 1) - 1);
1028
+ flex: var(--grow, var(--span, 1)) var(--span, 1) calc( (100% - var(--one-column)) / var(--cols, 1) * var(--span, 1) + (var(--span, 1) - 1) * var(--gap, 1rem) );
1029
+ min-width: min(100%, var(--item-width, 3rem));
1030
+ max-width: 100%;
1031
+ }
1032
+ }
1033
+ .grid-simple {
1034
+ --span: 1;
1035
+ display: grid;
1036
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1037
+ max-width: 100%;
1038
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1039
+ --cols: 1;
1040
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1041
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1042
+ max-width: 100%;
1043
+ }
1044
+ grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
1045
+ }
1046
+ .grid-repeat-auto {
1047
+ --span: 1;
1048
+ display: grid;
1049
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1050
+ max-width: 100%;
1051
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1052
+ --cols: 1;
1053
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1054
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1055
+ max-width: 100%;
1056
+ }
1057
+ grid-template-columns: repeat(var(--cols, 1), minmax(0, auto));
1058
+ }
1059
+ .grid-fr-auto {
1060
+ --span: 1;
1061
+ display: grid;
1062
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1063
+ max-width: 100%;
1064
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1065
+ --cols: 1;
1066
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1067
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1068
+ max-width: 100%;
1069
+ }
1070
+ grid-template-columns: minmax(0, 1fr) minmax(0, auto);
1071
+ }
1072
+ .grid-auto-fr {
1073
+ --span: 1;
1074
+ display: grid;
1075
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1076
+ max-width: 100%;
1077
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1078
+ --cols: 1;
1079
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1080
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1081
+ max-width: 100%;
1082
+ }
1083
+ grid-template-columns: minmax(0, auto) minmax(0, 1fr);
1084
+ }
1085
+ .grid-with-breakout {
1086
+ --span: 1;
1087
+ display: grid;
1088
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1089
+ max-width: 100%;
1090
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1091
+ --cols: 1;
1092
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1093
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1094
+ max-width: 100%;
1095
+ }
1096
+ grid-template-columns: [breakout-start] 1fr [content-start] repeat( var(--cols, 1), minmax(0, 1fr) ) [content-end] 1fr [breakout-end];
1097
+ > *:not([class*='breakout-full']) {
1098
+ grid-column: content-start / content-end;
1099
+ }
1100
+ > *:where(.breakout-full) {
1101
+ grid-column: breakout-start / breakout-end;
1102
+ }
1103
+ }
1104
+ .grid-gallery {
1105
+ --span: 1;
1106
+ display: grid;
1107
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1108
+ max-width: 100%;
1109
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1110
+ --cols: 1;
1111
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1112
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1113
+ max-width: 100%;
1114
+ }
1115
+ grid-template-columns: repeat( var(--fit, auto-fill), minmax(min(var(--item-width, 3rem), 100%), 1fr) );
1116
+ }
1117
+ .grid-gallery-fit {
1118
+ --span: 1;
1119
+ display: grid;
1120
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1121
+ max-width: 100%;
1122
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1123
+ --cols: 1;
1124
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1125
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1126
+ max-width: 100%;
1127
+ }
1128
+ grid-template-columns: repeat( var(--fit, auto-fill), minmax(min(var(--item-width, 3rem), 100%), 1fr) );
1129
+ --fit: auto-fit;
1130
+ }
1131
+ .grid-gallery-fill {
1132
+ --span: 1;
1133
+ display: grid;
1134
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1135
+ max-width: 100%;
1136
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1137
+ --cols: 1;
1138
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1139
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1140
+ max-width: 100%;
1141
+ }
1142
+ grid-template-columns: repeat( var(--fit, auto-fill), minmax(min(var(--item-width, 3rem), 100%), 1fr) );
1143
+ --fit: auto-fill;
1144
+ }
1145
+ .dense {
1146
+ grid-auto-flow: dense;
1147
+ }
1148
+ .dense-column {
1149
+ grid-auto-columns: dense;
1150
+ }
1151
+ .dense-row {
1152
+ grid-auto-rows: dense;
1153
+ }
1154
+ .masonry {
1155
+ --span: 1;
1156
+ display: grid;
1157
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1158
+ max-width: 100%;
1159
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1160
+ --cols: 1;
1161
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1162
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1163
+ max-width: 100%;
1164
+ }
1165
+ grid-template-columns: repeat(var(--cols, 1), minmax(0, auto));
1166
+ grid-template-rows: masonry;
1167
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1168
+ grid-column-end: span var(--span, 1);
1169
+ align-self: start;
1170
+ }
1171
+ }
1172
+ .masonry-gallery {
1173
+ --span: 1;
1174
+ display: grid;
1175
+ gap: var(--gap-y, var(--gap, 1rem)) var(--gap-x, var(--gap, 1rem));
1176
+ max-width: 100%;
1177
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1178
+ --cols: 1;
1179
+ grid-column: var(--colstart, auto) / span var(--span, 1);
1180
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1181
+ max-width: 100%;
1182
+ }
1183
+ grid-template-columns: repeat(var(--cols, 1), minmax(0, auto));
1184
+ grid-template-rows: masonry;
1185
+ > *, > *:where(.contents) > *, > *:where(astro-island, astro-slot) > * {
1186
+ grid-column-end: span var(--span, 1);
1187
+ align-self: start;
1188
+ }
1189
+ grid-template-columns: repeat( auto-fill, minmax(min(var(--item-width, 3rem), 100%), 1fr) );
1190
+ }
1191
+ .subgrid {
1192
+ display: grid;
1193
+ gap: inherit;
1194
+ grid-column: var(--start, auto) / span var(--span, 1);
1195
+ grid-template-columns: subgrid;
1196
+ > *:not([class*='subgrid']) {
1197
+ grid-column-end: span var(--ispan, 1);
1198
+ width: 100%;
1199
+ max-width: 100%;
1200
+ }
1201
+ display: grid;
1202
+ gap: inherit;
1203
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1204
+ grid-template-rows: subgrid;
1205
+ > *:not([class*='subgrid']) {
1206
+ grid-row-end: span var(--irowspan, 1);
1207
+ }
1208
+ grid-template-columns: subgrid;
1209
+ grid-template-rows: subgrid;
1210
+ }
1211
+ .subgrid-columns {
1212
+ display: grid;
1213
+ gap: inherit;
1214
+ grid-column: var(--start, auto) / span var(--span, 1);
1215
+ grid-template-columns: subgrid;
1216
+ > *:not([class*='subgrid']) {
1217
+ grid-column-end: span var(--ispan, 1);
1218
+ width: 100%;
1219
+ max-width: 100%;
1220
+ }
1221
+ }
1222
+ .subgrid-rows {
1223
+ display: grid;
1224
+ gap: inherit;
1225
+ grid-row: var(--rowstart, auto) / span var(--rowspan, 1);
1226
+ grid-template-rows: subgrid;
1227
+ > *:not([class*='subgrid']) {
1228
+ grid-row-end: span var(--irowspan, 1);
1229
+ }
1230
+ }
1231
+ }
1232
+ @layer components {
1233
+ .edge-top {
1234
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1235
+ :where(.stack) > & {
1236
+ box-sizing: content-box;
1237
+ }
1238
+ :where(.relative > &) {
1239
+ position: absolute;
1240
+ }
1241
+ --ty: -50%;
1242
+ :where(.stack) > & {
1243
+ place-self: start center;
1244
+ }
1245
+ :where(.relative) > & {
1246
+ inset-block-start: 0;
1247
+ }
1248
+ }
1249
+ .edge-topleft {
1250
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1251
+ :where(.stack) > & {
1252
+ box-sizing: content-box;
1253
+ }
1254
+ :where(.relative > &) {
1255
+ position: absolute;
1256
+ }
1257
+ --ty: -50%;
1258
+ --tx: -50%;
1259
+ :where(.stack) > & {
1260
+ place-self: start start;
1261
+ }
1262
+ :where(.relative) > & {
1263
+ inset-block-start: 0;
1264
+ inset-inline-start: 0;
1265
+ }
1266
+ }
1267
+ .edge-topright {
1268
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1269
+ :where(.stack) > & {
1270
+ box-sizing: content-box;
1271
+ }
1272
+ :where(.relative > &) {
1273
+ position: absolute;
1274
+ }
1275
+ --ty: -50%;
1276
+ --tx: 50%;
1277
+ :where(.stack) > & {
1278
+ place-self: start end;
1279
+ }
1280
+ :where(.relative) > & {
1281
+ inset-block-start: 0;
1282
+ inset-inline-end: 0;
1283
+ }
1284
+ }
1285
+ .edge-topfull {
1286
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1287
+ :where(.stack) > & {
1288
+ box-sizing: content-box;
1289
+ }
1290
+ :where(.relative > &) {
1291
+ position: absolute;
1292
+ }
1293
+ --ty: -50%;
1294
+ :where(.stack) > & {
1295
+ place-self: start center;
1296
+ }
1297
+ :where(.relative) > & {
1298
+ inset-block-start: 0;
1299
+ }
1300
+ }
1301
+ .edge-bottom {
1302
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1303
+ :where(.stack) > & {
1304
+ box-sizing: content-box;
1305
+ }
1306
+ :where(.relative > &) {
1307
+ position: absolute;
1308
+ }
1309
+ --ty: 50%;
1310
+ :where(.stack) > & {
1311
+ place-self: end center;
1312
+ }
1313
+ :where(.relative) > & {
1314
+ inset-block-end: 0;
1315
+ }
1316
+ }
1317
+ .edge-bottomleft {
1318
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1319
+ :where(.stack) > & {
1320
+ box-sizing: content-box;
1321
+ }
1322
+ :where(.relative > &) {
1323
+ position: absolute;
1324
+ }
1325
+ --ty: 50%;
1326
+ --tx: -50%;
1327
+ :where(.stack) > & {
1328
+ place-self: end start;
1329
+ }
1330
+ :where(.relative) > & {
1331
+ inset-block-end: 0;
1332
+ inset-inline-start: 0;
1333
+ }
1334
+ }
1335
+ .edge-bottomright {
1336
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1337
+ :where(.stack) > & {
1338
+ box-sizing: content-box;
1339
+ }
1340
+ :where(.relative > &) {
1341
+ position: absolute;
1342
+ }
1343
+ --ty: 50%;
1344
+ --tx: 50%;
1345
+ :where(.stack) > & {
1346
+ place-self: end end;
1347
+ }
1348
+ :where(.relative) > & {
1349
+ inset-block-end: 0;
1350
+ inset-inline-end: 0;
1351
+ }
1352
+ }
1353
+ .edge-bottomfull {
1354
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1355
+ :where(.stack) > & {
1356
+ box-sizing: content-box;
1357
+ }
1358
+ :where(.relative > &) {
1359
+ position: absolute;
1360
+ }
1361
+ --ty: 50%;
1362
+ :where(.stack) > & {
1363
+ place-self: end center;
1364
+ }
1365
+ :where(.relative) > & {
1366
+ inset-block-end: 0;
1367
+ }
1368
+ }
1369
+ .edge-left {
1370
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1371
+ :where(.stack) > & {
1372
+ box-sizing: content-box;
1373
+ }
1374
+ :where(.relative > &) {
1375
+ position: absolute;
1376
+ }
1377
+ --tx: -50%;
1378
+ :where(.stack) > & {
1379
+ place-self: center start;
1380
+ }
1381
+ :where(.relative) > & {
1382
+ inset-inline-start: 0;
1383
+ }
1384
+ }
1385
+ .edge-leftfull {
1386
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1387
+ :where(.stack) > & {
1388
+ box-sizing: content-box;
1389
+ }
1390
+ :where(.relative > &) {
1391
+ position: absolute;
1392
+ }
1393
+ --tx: -50%;
1394
+ :where(.stack) > & {
1395
+ place-self: center start;
1396
+ }
1397
+ :where(.relative) > & {
1398
+ inset-inline-start: 0;
1399
+ }
1400
+ }
1401
+ .edge-right {
1402
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1403
+ :where(.stack) > & {
1404
+ box-sizing: content-box;
1405
+ }
1406
+ :where(.relative > &) {
1407
+ position: absolute;
1408
+ }
1409
+ --tx: 50%;
1410
+ :where(.stack) > & {
1411
+ place-self: center end;
1412
+ }
1413
+ :where(.relative) > & {
1414
+ inset-inline-end: 0;
1415
+ }
1416
+ }
1417
+ .edge-rightfull {
1418
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1419
+ :where(.stack) > & {
1420
+ box-sizing: content-box;
1421
+ }
1422
+ :where(.relative > &) {
1423
+ position: absolute;
1424
+ }
1425
+ --tx: 50%;
1426
+ :where(.stack) > & {
1427
+ place-self: center end;
1428
+ }
1429
+ :where(.relative) > & {
1430
+ inset-inline-end: 0;
1431
+ }
1432
+ }
1433
+ .edge-topleft-start {
1434
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1435
+ :where(.stack) > & {
1436
+ box-sizing: content-box;
1437
+ }
1438
+ :where(.relative > &) {
1439
+ position: absolute;
1440
+ }
1441
+ --ty: -50%;
1442
+ --tx: -50%;
1443
+ :where(.stack) > & {
1444
+ place-self: start start;
1445
+ }
1446
+ :where(.relative) > & {
1447
+ inset-block-start: 0;
1448
+ inset-inline-start: 0;
1449
+ }
1450
+ --ty: -50%;
1451
+ --tx: -100%;
1452
+ }
1453
+ .edge-topleft-end {
1454
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1455
+ :where(.stack) > & {
1456
+ box-sizing: content-box;
1457
+ }
1458
+ :where(.relative > &) {
1459
+ position: absolute;
1460
+ }
1461
+ --ty: -50%;
1462
+ --tx: -50%;
1463
+ :where(.stack) > & {
1464
+ place-self: start start;
1465
+ }
1466
+ :where(.relative) > & {
1467
+ inset-block-start: 0;
1468
+ inset-inline-start: 0;
1469
+ }
1470
+ --ty: -50%;
1471
+ --tx: 0%;
1472
+ }
1473
+ .edge-topright-start {
1474
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1475
+ :where(.stack) > & {
1476
+ box-sizing: content-box;
1477
+ }
1478
+ :where(.relative > &) {
1479
+ position: absolute;
1480
+ }
1481
+ --ty: -50%;
1482
+ --tx: 50%;
1483
+ :where(.stack) > & {
1484
+ place-self: start end;
1485
+ }
1486
+ :where(.relative) > & {
1487
+ inset-block-start: 0;
1488
+ inset-inline-end: 0;
1489
+ }
1490
+ --ty: -50%;
1491
+ --tx: 0%;
1492
+ }
1493
+ .edge-topright-end {
1494
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1495
+ :where(.stack) > & {
1496
+ box-sizing: content-box;
1497
+ }
1498
+ :where(.relative > &) {
1499
+ position: absolute;
1500
+ }
1501
+ --ty: -50%;
1502
+ --tx: 50%;
1503
+ :where(.stack) > & {
1504
+ place-self: start end;
1505
+ }
1506
+ :where(.relative) > & {
1507
+ inset-block-start: 0;
1508
+ inset-inline-end: 0;
1509
+ }
1510
+ --ty: -50%;
1511
+ --tx: 100%;
1512
+ }
1513
+ .edge-bottomleft-start {
1514
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1515
+ :where(.stack) > & {
1516
+ box-sizing: content-box;
1517
+ }
1518
+ :where(.relative > &) {
1519
+ position: absolute;
1520
+ }
1521
+ --ty: 50%;
1522
+ --tx: -50%;
1523
+ :where(.stack) > & {
1524
+ place-self: end start;
1525
+ }
1526
+ :where(.relative) > & {
1527
+ inset-block-end: 0;
1528
+ inset-inline-start: 0;
1529
+ }
1530
+ --ty: 50%;
1531
+ --tx: -100%;
1532
+ }
1533
+ .edge-bottomleft-end {
1534
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1535
+ :where(.stack) > & {
1536
+ box-sizing: content-box;
1537
+ }
1538
+ :where(.relative > &) {
1539
+ position: absolute;
1540
+ }
1541
+ --ty: 50%;
1542
+ --tx: -50%;
1543
+ :where(.stack) > & {
1544
+ place-self: end start;
1545
+ }
1546
+ :where(.relative) > & {
1547
+ inset-block-end: 0;
1548
+ inset-inline-start: 0;
1549
+ }
1550
+ --ty: 50%;
1551
+ --tx: 0%;
1552
+ }
1553
+ .edge-bottomright-start {
1554
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1555
+ :where(.stack) > & {
1556
+ box-sizing: content-box;
1557
+ }
1558
+ :where(.relative > &) {
1559
+ position: absolute;
1560
+ }
1561
+ --ty: 50%;
1562
+ --tx: 50%;
1563
+ :where(.stack) > & {
1564
+ place-self: end end;
1565
+ }
1566
+ :where(.relative) > & {
1567
+ inset-block-end: 0;
1568
+ inset-inline-end: 0;
1569
+ }
1570
+ --ty: 50%;
1571
+ --tx: 0%;
1572
+ }
1573
+ .edge-bottomright-end {
1574
+ transform: translateX(var(--tx, 0%)) translateY(var(--ty, 0%));
1575
+ :where(.stack) > & {
1576
+ box-sizing: content-box;
1577
+ }
1578
+ :where(.relative > &) {
1579
+ position: absolute;
1580
+ }
1581
+ --ty: 50%;
1582
+ --tx: 50%;
1583
+ :where(.stack) > & {
1584
+ place-self: end end;
1585
+ }
1586
+ :where(.relative) > & {
1587
+ inset-block-end: 0;
1588
+ inset-inline-end: 0;
1589
+ }
1590
+ --ty: 50%;
1591
+ --tx: 100%;
1592
+ }
1593
+ .fixed-top {
1594
+ position: fixed;
1595
+ top: 0;
1596
+ left: 0;
1597
+ right: 0;
1598
+ }
1599
+ .fixed-topleft {
1600
+ position: fixed;
1601
+ top: 0;
1602
+ left: 0;
1603
+ right: 0;
1604
+ position: relative;
1605
+ top: var(--nudge-y, var(--nudge, 0));
1606
+ left: var(--nudge-x, var(--nudge, 0));
1607
+ right: auto;
1608
+ }
1609
+ .fixed-topright {
1610
+ position: fixed;
1611
+ top: 0;
1612
+ left: 0;
1613
+ right: 0;
1614
+ position: relative;
1615
+ top: var(--nudge-y, var(--nudge, 0));
1616
+ right: var(--nudge-x, var(--nudge, 0));
1617
+ left: auto;
1618
+ }
1619
+ .fixed-topfull {
1620
+ position: fixed;
1621
+ top: 0;
1622
+ left: 0;
1623
+ right: 0;
1624
+ position: relative;
1625
+ top: var(--nudge-y, var(--nudge, 0));
1626
+ left: var(--nudge-x, var(--nudge, 0));
1627
+ right: var(--nudge-x, var(--nudge, 0));
1628
+ }
1629
+ .fixed-bottom {
1630
+ position: fixed;
1631
+ bottom: 0;
1632
+ left: 0;
1633
+ right: 0;
1634
+ }
1635
+ .fixed-bottomleft {
1636
+ position: fixed;
1637
+ bottom: 0;
1638
+ left: 0;
1639
+ right: 0;
1640
+ position: relative;
1641
+ bottom: var(--nudge-y, var(--nudge, 0));
1642
+ left: var(--nudge-x, var(--nudge, 0));
1643
+ right: auto;
1644
+ }
1645
+ .fixed-bottomright {
1646
+ position: fixed;
1647
+ bottom: 0;
1648
+ left: 0;
1649
+ right: 0;
1650
+ position: relative;
1651
+ bottom: var(--nudge-y, var(--nudge, 0));
1652
+ right: var(--nudge-x, var(--nudge, 0));
1653
+ left: auto;
1654
+ }
1655
+ .fixed-bottomfull {
1656
+ position: fixed;
1657
+ bottom: 0;
1658
+ left: 0;
1659
+ right: 0;
1660
+ position: relative;
1661
+ bottom: var(--nudge-y, var(--nudge, 0));
1662
+ left: var(--nudge-x, var(--nudge, 0));
1663
+ right: var(--nudge-x, var(--nudge, 0));
1664
+ }
1665
+ .fixed-left {
1666
+ position: fixed;
1667
+ top: 0;
1668
+ bottom: 0;
1669
+ left: 0;
1670
+ }
1671
+ .fixed-leftfull {
1672
+ position: fixed;
1673
+ top: 0;
1674
+ bottom: 0;
1675
+ left: 0;
1676
+ position: relative;
1677
+ left: var(--nudge-x, var(--nudge, 0));
1678
+ top: var(--nudge-y, var(--nudge, 0));
1679
+ bottom: var(--nudge-y, var(--nudge, 0));
1680
+ }
1681
+ .fixed-right {
1682
+ position: fixed;
1683
+ top: 0;
1684
+ bottom: 0;
1685
+ right: 0;
1686
+ }
1687
+ .fixed-rightfull {
1688
+ position: fixed;
1689
+ top: 0;
1690
+ bottom: 0;
1691
+ right: 0;
1692
+ position: relative;
1693
+ right: var(--nudge-x, var(--nudge, 0));
1694
+ top: var(--nudge-y, var(--nudge, 0));
1695
+ bottom: var(--nudge-y, var(--nudge, 0));
1696
+ }
1697
+ .fixed-center {
1698
+ position: fixed;
1699
+ top: 50%;
1700
+ left: 50%;
1701
+ transform: translate(-50%, -50%);
1702
+ }
1703
+ .fixed-overlay {
1704
+ pointer-events: none;
1705
+ position: fixed;
1706
+ inset-block: var(--nudge-y, var(--nudge, 0));
1707
+ inset-inline: var(--nudge-x, var(--nudge, 0));
1708
+ display: grid;
1709
+ }
1710
+ .pos-top {
1711
+ position: relative;
1712
+ top: var(--nudge-y, var(--nudge, 0));
1713
+ :where([class*='stack']) > & {
1714
+ place-self: start center;
1715
+ }
1716
+ :where([class*='relative']) > & {
1717
+ position: absolute;
1718
+ inset-block-start: 0;
1719
+ }
1720
+ }
1721
+ .pos-topleft {
1722
+ position: relative;
1723
+ top: var(--nudge-y, var(--nudge, 0));
1724
+ left: var(--nudge-x, var(--nudge, 0));
1725
+ :where([class*='stack']) > & {
1726
+ place-self: start start;
1727
+ }
1728
+ :where([class*='relative']) > & {
1729
+ position: absolute;
1730
+ position: absolute;
1731
+ inset-block-start: 0;
1732
+ inset-inline-start: 0;
1733
+ }
1734
+ }
1735
+ .pos-topright {
1736
+ position: relative;
1737
+ top: var(--nudge-y, var(--nudge, 0));
1738
+ right: var(--nudge-x, var(--nudge, 0));
1739
+ :where([class*='stack']) > & {
1740
+ place-self: start end;
1741
+ }
1742
+ :where([class*='relative']) > & {
1743
+ position: absolute;
1744
+ position: absolute;
1745
+ inset-block-start: 0;
1746
+ inset-inline-end: 0;
1747
+ }
1748
+ }
1749
+ .pos-topfull {
1750
+ position: relative;
1751
+ top: var(--nudge-y, var(--nudge, 0));
1752
+ left: var(--nudge-x, var(--nudge, 0));
1753
+ right: var(--nudge-x, var(--nudge, 0));
1754
+ :where([class*='stack']) > & {
1755
+ place-self: start stretch;
1756
+ }
1757
+ :where([class*='relative']) > & {
1758
+ position: absolute;
1759
+ position: absolute;
1760
+ inset-block-start: 0;
1761
+ inset-inline: 0;
1762
+ }
1763
+ }
1764
+ .pos-bottom {
1765
+ position: relative;
1766
+ bottom: var(--nudge-y, var(--nudge, 0));
1767
+ :where([class*='stack']) > & {
1768
+ place-self: end center;
1769
+ }
1770
+ :where([class*='relative']) > & {
1771
+ position: absolute;
1772
+ inset-block-end: 0;
1773
+ }
1774
+ }
1775
+ .pos-bottomleft {
1776
+ position: relative;
1777
+ bottom: var(--nudge-y, var(--nudge, 0));
1778
+ left: var(--nudge-x, var(--nudge, 0));
1779
+ :where([class*='stack']) > & {
1780
+ place-self: end start;
1781
+ }
1782
+ :where([class*='relative']) > & {
1783
+ position: absolute;
1784
+ position: absolute;
1785
+ inset-block-end: 0;
1786
+ inset-inline-start: 0;
1787
+ }
1788
+ }
1789
+ .pos-bottomright {
1790
+ position: relative;
1791
+ bottom: var(--nudge-y, var(--nudge, 0));
1792
+ right: var(--nudge-x, var(--nudge, 0));
1793
+ :where([class*='stack']) > & {
1794
+ place-self: end end;
1795
+ }
1796
+ :where([class*='relative']) > & {
1797
+ position: absolute;
1798
+ position: absolute;
1799
+ inset-block-end: 0;
1800
+ inset-inline-end: 0;
1801
+ }
1802
+ }
1803
+ .pos-bottomfull {
1804
+ position: relative;
1805
+ bottom: var(--nudge-y, var(--nudge, 0));
1806
+ left: var(--nudge-x, var(--nudge, 0));
1807
+ right: var(--nudge-x, var(--nudge, 0));
1808
+ :where([class*='stack']) > & {
1809
+ place-self: end stretch;
1810
+ }
1811
+ :where([class*='relative']) > & {
1812
+ position: absolute;
1813
+ inset-block-end: 0;
1814
+ inset-inline: 0;
1815
+ }
1816
+ }
1817
+ .pos-left {
1818
+ position: relative;
1819
+ left: var(--nudge-x, var(--nudge, 0));
1820
+ :where([class*='stack']) > & {
1821
+ place-self: center start;
1822
+ }
1823
+ :where([class*='relative']) > & {
1824
+ position: absolute;
1825
+ inset-inline-start: 0;
1826
+ }
1827
+ }
1828
+ .pos-leftfull {
1829
+ position: relative;
1830
+ left: var(--nudge-x, var(--nudge, 0));
1831
+ top: var(--nudge-y, var(--nudge, 0));
1832
+ bottom: var(--nudge-y, var(--nudge, 0));
1833
+ :where([class*='stack']) > & {
1834
+ place-self: stretch start;
1835
+ }
1836
+ :where([class*='relative']) > & {
1837
+ position: absolute;
1838
+ position: absolute;
1839
+ inset-inline-start: 0;
1840
+ inset-block: 0;
1841
+ }
1842
+ }
1843
+ .pos-right {
1844
+ position: relative;
1845
+ right: var(--nudge-x, var(--nudge, 0));
1846
+ :where([class*='stack']) > & {
1847
+ place-self: center end;
1848
+ }
1849
+ :where([class*='relative']) > & {
1850
+ position: absolute;
1851
+ inset-inline-end: 0;
1852
+ }
1853
+ }
1854
+ .pos-rightfull {
1855
+ position: relative;
1856
+ right: var(--nudge-x, var(--nudge, 0));
1857
+ top: var(--nudge-y, var(--nudge, 0));
1858
+ bottom: var(--nudge-y, var(--nudge, 0));
1859
+ :where([class*='stack']) > & {
1860
+ place-self: stretch end;
1861
+ }
1862
+ :where([class*='relative']) > & {
1863
+ position: absolute;
1864
+ position: absolute;
1865
+ inset-inline-end: 0;
1866
+ inset-block: 0;
1867
+ }
1868
+ }
1869
+ .pos-center {
1870
+ :where([class*='stack']) > & {
1871
+ place-self: center center;
1872
+ }
1873
+ :where([class*='relative']) > & {
1874
+ position: absolute;
1875
+ top: 50%;
1876
+ left: 50%;
1877
+ transform: translate(-50%, -50%);
1878
+ }
1879
+ }
1880
+ .pos-overlay {
1881
+ :where([class*='stack']) > & {
1882
+ display: grid;
1883
+ > * {
1884
+ grid-column: 1 / span 1;
1885
+ grid-row: 1 / span 1;
1886
+ }
1887
+ }
1888
+ :where([class*='relative']) > & {
1889
+ position: absolute;
1890
+ inset: 0;
1891
+ }
1892
+ }
1893
+ .sticky {
1894
+ position: sticky;
1895
+ top: 0;
1896
+ z-index: var(--z-index, 15);
1897
+ :where([class*='grid'] > &) {
1898
+ align-self: start;
1899
+ }
1900
+ position: sticky;
1901
+ }
1902
+ }
1903
+ @layer utilities {
1904
+ .pointer-events-none {
1905
+ pointer-events: none;
1906
+ }
1907
+ .container {
1908
+ container-type: inline-size;
1909
+ }
1910
+ .contents {
1911
+ display: contents;
1912
+ }
1913
+ .grow {
1914
+ flex-grow: 1;
1915
+ }
1916
+ .grow-0 {
1917
+ flex-grow: 0;
1918
+ }
1919
+ .shrink {
1920
+ flex-shrink: 1;
1921
+ }
1922
+ .shrink-0 {
1923
+ flex-shrink: 0;
1924
+ }
1925
+ .justify-start {
1926
+ justify-content: start;
1927
+ }
1928
+ .justify-center {
1929
+ justify-content: center;
1930
+ }
1931
+ .justify-end {
1932
+ justify-content: end;
1933
+ }
1934
+ .justify-between {
1935
+ justify-content: space-between;
1936
+ }
1937
+ .justify-around {
1938
+ justify-content: space-around;
1939
+ }
1940
+ .justify-evenly {
1941
+ justify-content: space-evenly;
1942
+ }
1943
+ .justify-items-start {
1944
+ justify-items: start;
1945
+ }
1946
+ .justify-items-center {
1947
+ justify-items: center;
1948
+ }
1949
+ .justify-items-end {
1950
+ justify-items: end;
1951
+ }
1952
+ .justify-items-stretch {
1953
+ justify-items: stretch;
1954
+ }
1955
+ .justify-self-start {
1956
+ justify-self: start;
1957
+ }
1958
+ .justify-self-center {
1959
+ justify-self: center;
1960
+ }
1961
+ .justify-self-end {
1962
+ justify-self: end;
1963
+ }
1964
+ .justify-self-stretch {
1965
+ justify-self: stretch;
1966
+ }
1967
+ .content-start {
1968
+ align-content: start;
1969
+ }
1970
+ .content-center {
1971
+ align-content: center;
1972
+ }
1973
+ .content-end {
1974
+ align-content: end;
1975
+ }
1976
+ .content-between {
1977
+ align-content: space-between;
1978
+ }
1979
+ .content-around {
1980
+ align-content: space-around;
1981
+ }
1982
+ .content-stretch {
1983
+ align-content: stretch;
1984
+ }
1985
+ .content-baseline {
1986
+ align-content: baseline;
1987
+ }
1988
+ .items-start {
1989
+ align-items: start;
1990
+ }
1991
+ .items-center {
1992
+ align-items: center;
1993
+ }
1994
+ .items-end {
1995
+ align-items: end;
1996
+ }
1997
+ .items-stretch {
1998
+ align-items: stretch;
1999
+ }
2000
+ .items-baseline {
2001
+ align-items: baseline;
2002
+ }
2003
+ .self-start {
2004
+ align-self: start;
2005
+ }
2006
+ .self-center {
2007
+ align-self: center;
2008
+ }
2009
+ .self-end {
2010
+ align-self: end;
2011
+ }
2012
+ .self-stretch {
2013
+ align-self: stretch;
2014
+ }
2015
+ .self-baseline {
2016
+ align-self: baseline;
2017
+ }
2018
+ }