santycss 2.4.8 → 2.6.1

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.
@@ -1,3 +1,4 @@
1
+ /* @SANTYMOD:reset */
1
2
  /* ============================================================
2
3
  SantyCSS v2.3.0 — Plain-English Utility CSS Framework
3
4
  https://github.com/santybad/santy_css
@@ -37,6 +38,8 @@
37
38
  --santy-shadow-inner: inset 0 2px 4px 0 rgba(0,0,0,0.06);
38
39
  }
39
40
 
41
+
42
+ /* @SANTYMOD:layout */
40
43
  /* ── Display ── */
41
44
  .make-block { display: block; }
42
45
  .make-inline { display: inline; }
@@ -54,6 +57,8 @@
54
57
  .make-invisible { visibility: hidden; }
55
58
  .make-collapse { visibility: collapse; }
56
59
 
60
+
61
+ /* @SANTYMOD:flex */
57
62
  /* ── Flex Direction ── */
58
63
  .flex-row { flex-direction: row; }
59
64
  .flex-row-reverse { flex-direction: row-reverse; }
@@ -142,6 +147,8 @@
142
147
  .order-11 { order: 11; }
143
148
  .order-12 { order: 12; }
144
149
 
150
+ /* @SANTYMOD:grid */
151
+
145
152
  /* ── Grid Template Columns ── */
146
153
  .grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
147
154
  .grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@@ -196,6 +203,8 @@
196
203
  .grid-auto-cols-fr { grid-auto-columns: minmax(0, 1fr); }
197
204
 
198
205
 
206
+ /* @SANTYMOD:spacing */
207
+
199
208
  /* ── Padding ── */
200
209
  .add-padding-0 { padding: 0px; }
201
210
  .add-padding-top-0 { padding-top: 0px; }
@@ -833,6 +842,8 @@
833
842
  .gap-x-1024 { column-gap: 1024px; }
834
843
  .gap-y-1024 { row-gap: 1024px; }
835
844
 
845
+ /* @SANTYMOD:sizing */
846
+
836
847
  /* ── Width ── */
837
848
  .set-width-0 { width: 0px; }
838
849
  .set-width-1 { width: 1px; }
@@ -1073,6 +1084,8 @@
1073
1084
  .min-width-none { min-width: none; }
1074
1085
  .max-width-none { max-width: none; }
1075
1086
 
1087
+ /* @SANTYMOD:borders */
1088
+
1076
1089
  /* ── Border Width ── */
1077
1090
  .add-border-0 { border: 0px solid; }
1078
1091
  .add-border-top-0 { border-top: 0px solid; }
@@ -1313,6 +1326,8 @@
1313
1326
  .round-left-128 { border-top-left-radius: 128px; border-bottom-left-radius: 128px; }
1314
1327
  .round-right-128 { border-top-right-radius: 128px; border-bottom-right-radius: 128px; }
1315
1328
 
1329
+ /* @SANTYMOD:typography */
1330
+
1316
1331
  /* ── Font Size ── */
1317
1332
  .set-text-8 { font-size: 8px; }
1318
1333
  .set-text-9 { font-size: 9px; }
@@ -1436,6 +1451,8 @@
1436
1451
  .letter-space-wider { letter-spacing: 0.05em; }
1437
1452
  .letter-space-widest { letter-spacing: 0.1em; }
1438
1453
 
1454
+ /* @SANTYMOD:colors */
1455
+
1439
1456
  /* ── Text Colors ── */
1440
1457
  .color-red-50 { color: #fef2f2; }
1441
1458
  .color-red-100 { color: #fee2e2; }
@@ -2402,6 +2419,8 @@
2402
2419
  .gradient-to-bottom-right { background-image: linear-gradient(to bottom right, var(--grad-from, transparent), var(--grad-to, transparent)); }
2403
2420
 
2404
2421
 
2422
+ /* @SANTYMOD:layout */
2423
+
2405
2424
  /* ── Position ── */
2406
2425
  .position-static { position: static; }
2407
2426
  .position-relative { position: relative; }
@@ -2598,6 +2617,8 @@
2598
2617
  .overflow-y-visible { overflow-y: visible; }
2599
2618
 
2600
2619
 
2620
+ /* @SANTYMOD:effects */
2621
+
2601
2622
  /* ── Opacity ── */
2602
2623
  .opacity-0 { opacity: 0; }
2603
2624
  .opacity-5 { opacity: 0.05; }
@@ -2730,6 +2751,8 @@
2730
2751
  .cursor-none { cursor: none; }
2731
2752
 
2732
2753
 
2754
+ /* @SANTYMOD:layout */
2755
+
2733
2756
  /* ── Object Fit ── */
2734
2757
  .fit-cover { object-fit: cover; }
2735
2758
  .fit-contain { object-fit: contain; }
@@ -2774,6 +2797,8 @@
2774
2797
  .aspect-video { aspect-ratio: 16 / 9; }
2775
2798
 
2776
2799
 
2800
+ /* @SANTYMOD:effects */
2801
+
2777
2802
  /* ── Filter ── */
2778
2803
  .blur-sm { filter: blur(4px); }
2779
2804
  .blur { filter: blur(8px); }
@@ -2924,6 +2949,8 @@
2924
2949
  .will-change-transform { will-change: transform; }
2925
2950
 
2926
2951
 
2952
+ /* @SANTYMOD:variants */
2953
+
2927
2954
  /* ═══════════════════════════════════════════════════════════════
2928
2955
  RESPONSIVE VARIANTS
2929
2956
  Usage: class="on-mobile:make-hidden md:make-flex lg:grid-cols-3"
@@ -4331,3 +4358,6 @@
4331
4358
  .make-container-named-section { container: section / inline-size; }
4332
4359
  .make-container-named-widget { container: widget / inline-size; }
4333
4360
 
4361
+
4362
+
4363
+ /* @SANTYMOD:animations */
@@ -0,0 +1,283 @@
1
+ /* SantyCSS — effects module
2
+ Import individually to reduce bundle size.
3
+ https://santycss.santy.in */
4
+
5
+ /* ── Opacity ── */
6
+ .opacity-0 { opacity: 0; }
7
+ .opacity-5 { opacity: 0.05; }
8
+ .opacity-10 { opacity: 0.1; }
9
+ .opacity-15 { opacity: 0.15; }
10
+ .opacity-20 { opacity: 0.2; }
11
+ .opacity-25 { opacity: 0.25; }
12
+ .opacity-30 { opacity: 0.3; }
13
+ .opacity-35 { opacity: 0.35; }
14
+ .opacity-40 { opacity: 0.4; }
15
+ .opacity-45 { opacity: 0.45; }
16
+ .opacity-50 { opacity: 0.5; }
17
+ .opacity-55 { opacity: 0.55; }
18
+ .opacity-60 { opacity: 0.6; }
19
+ .opacity-65 { opacity: 0.65; }
20
+ .opacity-70 { opacity: 0.7; }
21
+ .opacity-75 { opacity: 0.75; }
22
+ .opacity-80 { opacity: 0.8; }
23
+ .opacity-85 { opacity: 0.85; }
24
+ .opacity-90 { opacity: 0.9; }
25
+ .opacity-95 { opacity: 0.95; }
26
+ .opacity-100 { opacity: 1; }
27
+
28
+ /* ── Box Shadow ── */
29
+ .add-shadow-sm { box-shadow: var(--santy-shadow-sm); }
30
+ .add-shadow { box-shadow: var(--santy-shadow); }
31
+ .add-shadow-md { box-shadow: var(--santy-shadow-md); }
32
+ .add-shadow-lg { box-shadow: var(--santy-shadow-lg); }
33
+ .add-shadow-xl { box-shadow: var(--santy-shadow-xl); }
34
+ .add-shadow-inner { box-shadow: var(--santy-shadow-inner); }
35
+ .add-shadow-none { box-shadow: none; }
36
+ .no-shadow { box-shadow: none; }
37
+
38
+ /* ── Drop Shadow (filter) ── */
39
+ .drop-shadow-sm { filter: drop-shadow(0 1px 1px rgba(0,0,0,0.05)); }
40
+ .drop-shadow { filter: drop-shadow(0 1px 2px rgba(0,0,0,0.1)); }
41
+ .drop-shadow-md { filter: drop-shadow(0 4px 3px rgba(0,0,0,0.07)); }
42
+ .drop-shadow-lg { filter: drop-shadow(0 10px 8px rgba(0,0,0,0.04)); }
43
+ .drop-shadow-xl { filter: drop-shadow(0 20px 13px rgba(0,0,0,0.03)); }
44
+ .drop-shadow-none { filter: drop-shadow(0 0 #0000); }
45
+
46
+ /* ── Text Shadow ── */
47
+ .text-shadow-sm { text-shadow: 0 1px 2px rgba(0,0,0,0.2); }
48
+ .text-shadow { text-shadow: 0 2px 4px rgba(0,0,0,0.3); }
49
+ .text-shadow-lg { text-shadow: 0 4px 8px rgba(0,0,0,0.4); }
50
+ .text-shadow-none{ text-shadow: none; }
51
+
52
+
53
+ /* ── Transition ── */
54
+ .transition-fast { transition: var(--santy-transition-fast); }
55
+ .transition-normal { transition: var(--santy-transition-normal); }
56
+ .transition-slow { transition: var(--santy-transition-slow); }
57
+ .transition-none { transition: none; }
58
+ .transition-colors { transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease; }
59
+ .transition-opacity{ transition: opacity 0.3s ease; }
60
+ .transition-transform{ transition: transform 0.3s ease; }
61
+
62
+ /* ── Transform ── */
63
+ .flip-horizontal { transform: scaleX(-1); }
64
+ .flip-vertical { transform: scaleY(-1); }
65
+ .rotate-45 { transform: rotate(45deg); }
66
+ .rotate-90 { transform: rotate(90deg); }
67
+ .rotate-135 { transform: rotate(135deg); }
68
+ .rotate-180 { transform: rotate(180deg); }
69
+ .rotate-270 { transform: rotate(270deg); }
70
+ .rotate-minus-45 { transform: rotate(-45deg); }
71
+ .rotate-minus-90 { transform: rotate(-90deg); }
72
+ .scale-75 { transform: scale(0.75); }
73
+ .scale-90 { transform: scale(0.90); }
74
+ .scale-95 { transform: scale(0.95); }
75
+ .scale-100 { transform: scale(1); }
76
+ .scale-105 { transform: scale(1.05); }
77
+ .scale-110 { transform: scale(1.10); }
78
+ .scale-125 { transform: scale(1.25); }
79
+ .scale-150 { transform: scale(1.50); }
80
+ .skew-x-3 { transform: skewX(3deg); }
81
+ .skew-x-6 { transform: skewX(6deg); }
82
+ .skew-x-12 { transform: skewX(12deg); }
83
+ .skew-y-3 { transform: skewY(3deg); }
84
+ .skew-y-6 { transform: skewY(6deg); }
85
+ .skew-y-12 { transform: skewY(12deg); }
86
+ .transform-origin-center { transform-origin: center; }
87
+ .transform-origin-top { transform-origin: top; }
88
+ .transform-origin-top-right { transform-origin: top right; }
89
+ .transform-origin-right { transform-origin: right; }
90
+ .transform-origin-bottom-right{ transform-origin: bottom right; }
91
+ .transform-origin-bottom { transform-origin: bottom; }
92
+ .transform-origin-bottom-left { transform-origin: bottom left; }
93
+ .transform-origin-left { transform-origin: left; }
94
+ .transform-origin-top-left { transform-origin: top left; }
95
+
96
+ /* ── Animation ── */
97
+ .animate-spin { animation: santy-spin 1s linear infinite; }
98
+ .animate-ping { animation: santy-ping 1s cubic-bezier(0,0,0.2,1) infinite; }
99
+ .animate-pulse { animation: santy-pulse 2s cubic-bezier(0.4,0,0.6,1) infinite; }
100
+ .animate-bounce { animation: santy-bounce 1s infinite; }
101
+ .animate-fade-in { animation: santy-fade-in 0.5s ease; }
102
+ .animate-fade-out { animation: santy-fade-out 0.5s ease; }
103
+ .animate-slide-up { animation: santy-slide-up 0.4s ease; }
104
+ .animate-slide-down { animation: santy-slide-down 0.4s ease; }
105
+ .animate-zoom-in { animation: santy-zoom-in 0.3s ease; }
106
+ .animation-paused { animation-play-state: paused; }
107
+ .animation-none { animation: none; }
108
+
109
+ @keyframes santy-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
110
+ @keyframes santy-ping { 75%, 100% { transform: scale(2); opacity: 0; } }
111
+ @keyframes santy-pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
112
+ @keyframes santy-bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8,0,1,1); } 50% { transform: translateY(0); animation-timing-function: cubic-bezier(0,0,0.2,1); } }
113
+ @keyframes santy-fade-in { from { opacity: 0; } to { opacity: 1; } }
114
+ @keyframes santy-fade-out { from { opacity: 1; } to { opacity: 0; } }
115
+ @keyframes santy-slide-up { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
116
+ @keyframes santy-slide-down { from { transform: translateY(-20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
117
+ @keyframes santy-zoom-in { from { transform: scale(0.9); opacity: 0; } to { transform: scale(1); opacity: 1; } }
118
+
119
+
120
+ /* ── Cursor ── */
121
+ .cursor-auto { cursor: auto; }
122
+ .cursor-default { cursor: default; }
123
+ .cursor-pointer { cursor: pointer; }
124
+ .cursor-wait { cursor: wait; }
125
+ .cursor-text { cursor: text; }
126
+ .cursor-move { cursor: move; }
127
+ .cursor-not-allowed { cursor: not-allowed; }
128
+ .cursor-crosshair { cursor: crosshair; }
129
+ .cursor-grab { cursor: grab; }
130
+ .cursor-grabbing { cursor: grabbing; }
131
+ .cursor-zoom-in { cursor: zoom-in; }
132
+ .cursor-zoom-out { cursor: zoom-out; }
133
+ .cursor-help { cursor: help; }
134
+ .cursor-none { cursor: none; }
135
+
136
+ /* ── Filter ── */
137
+ .blur-sm { filter: blur(4px); }
138
+ .blur { filter: blur(8px); }
139
+ .blur-md { filter: blur(12px); }
140
+ .blur-lg { filter: blur(16px); }
141
+ .blur-xl { filter: blur(24px); }
142
+ .blur-none{ filter: blur(0); }
143
+ .brightness-50 { filter: brightness(0.5); }
144
+ .brightness-75 { filter: brightness(0.75); }
145
+ .brightness-90 { filter: brightness(0.9); }
146
+ .brightness-100 { filter: brightness(1); }
147
+ .brightness-110 { filter: brightness(1.1); }
148
+ .brightness-125 { filter: brightness(1.25); }
149
+ .brightness-150 { filter: brightness(1.5); }
150
+ .brightness-200 { filter: brightness(2); }
151
+ .contrast-50 { filter: contrast(0.5); }
152
+ .contrast-75 { filter: contrast(0.75); }
153
+ .contrast-100 { filter: contrast(1); }
154
+ .contrast-125 { filter: contrast(1.25); }
155
+ .contrast-150 { filter: contrast(1.5); }
156
+ .contrast-200 { filter: contrast(2); }
157
+ .grayscale { filter: grayscale(100%); }
158
+ .grayscale-0 { filter: grayscale(0); }
159
+ .sepia { filter: sepia(100%); }
160
+ .sepia-0 { filter: sepia(0); }
161
+ .invert { filter: invert(100%); }
162
+ .invert-0 { filter: invert(0); }
163
+ .saturate-0 { filter: saturate(0); }
164
+ .saturate-50 { filter: saturate(0.5); }
165
+ .saturate-100 { filter: saturate(1); }
166
+ .saturate-150 { filter: saturate(1.5); }
167
+ .saturate-200 { filter: saturate(2); }
168
+ .hue-rotate-30 { filter: hue-rotate(30deg); }
169
+ .hue-rotate-60 { filter: hue-rotate(60deg); }
170
+ .hue-rotate-90 { filter: hue-rotate(90deg); }
171
+ .hue-rotate-180 { filter: hue-rotate(180deg); }
172
+
173
+
174
+ /* ── Pointer Events ── */
175
+ .pointer-none { pointer-events: none; }
176
+ .pointer-auto { pointer-events: auto; }
177
+ .pointer-all { pointer-events: all; }
178
+ /* Standard pointer-events-* aliases */
179
+ .pointer-events-none { pointer-events: none; }
180
+ .pointer-events-auto { pointer-events: auto; }
181
+
182
+ /* ── User Select ── */
183
+ .select-none { user-select: none; }
184
+ .select-text { user-select: text; }
185
+ .select-all { user-select: all; }
186
+ .select-auto { user-select: auto; }
187
+
188
+ /* ── Resize ── */
189
+ .resize-none { resize: none; }
190
+ .resize { resize: both; }
191
+ .resize-x { resize: horizontal; }
192
+ .resize-y { resize: vertical; }
193
+
194
+ /* ── Appearance ── */
195
+ .appearance-none { appearance: none; -webkit-appearance: none; }
196
+ .appearance-auto { appearance: auto; }
197
+
198
+ /* ── Outline ── */
199
+ .outline-none { outline: none; }
200
+ .outline { outline: 2px solid currentColor; }
201
+ .outline-dashed { outline: 2px dashed currentColor; }
202
+ .outline-offset-2 { outline-offset: 2px; }
203
+ .outline-offset-4 { outline-offset: 4px; }
204
+
205
+ /* ── List Style ── */
206
+ .list-none { list-style-type: none; padding-left: 0; }
207
+ .list-disc { list-style-type: disc; }
208
+ .list-decimal{ list-style-type: decimal; }
209
+ .list-inside { list-style-position: inside; }
210
+ .list-outside{ list-style-position: outside; }
211
+
212
+ /* ── Table ── */
213
+ .table-auto { table-layout: auto; }
214
+ .table-fixed { table-layout: fixed; }
215
+ .border-collapse{ border-collapse: collapse; }
216
+ .border-separate{ border-collapse: separate; }
217
+
218
+ /* ── Columns ── */
219
+ .columns-auto { columns: auto; }
220
+
221
+ .columns-1 { columns: 1; }
222
+ .columns-2 { columns: 2; }
223
+ .columns-3 { columns: 3; }
224
+ .columns-4 { columns: 4; }
225
+ .columns-5 { columns: 5; }
226
+ .columns-6 { columns: 6; }
227
+
228
+ /* ── Screen Reader Only ── */
229
+ .sr-only {
230
+ position: absolute;
231
+ width: 1px;
232
+ height: 1px;
233
+ padding: 0;
234
+ margin: -1px;
235
+ overflow: hidden;
236
+ clip: rect(0,0,0,0);
237
+ white-space: nowrap;
238
+ border-width: 0;
239
+ }
240
+ .not-sr-only {
241
+ position: static;
242
+ width: auto;
243
+ height: auto;
244
+ padding: 0;
245
+ margin: 0;
246
+ overflow: visible;
247
+ clip: auto;
248
+ white-space: normal;
249
+ }
250
+
251
+ /* ── Break ── */
252
+ .break-before-auto { break-before: auto; }
253
+ .break-before-always { break-before: always; }
254
+ .break-before-avoid { break-before: avoid; }
255
+ .break-after-auto { break-after: auto; }
256
+ .break-after-always { break-after: always; }
257
+ .break-after-avoid { break-after: avoid; }
258
+ .break-inside-auto { break-inside: auto; }
259
+ .break-inside-avoid { break-inside: avoid; }
260
+
261
+ /* ── Isolation ── */
262
+ .isolate { isolation: isolate; }
263
+ .isolation-auto { isolation: auto; }
264
+
265
+ /* ── Mix Blend Mode ── */
266
+ .blend-normal { mix-blend-mode: normal; }
267
+ .blend-multiply { mix-blend-mode: multiply; }
268
+ .blend-screen { mix-blend-mode: screen; }
269
+ .blend-overlay { mix-blend-mode: overlay; }
270
+ .blend-darken { mix-blend-mode: darken; }
271
+ .blend-lighten { mix-blend-mode: lighten; }
272
+ .blend-difference { mix-blend-mode: difference; }
273
+ .blend-exclusion { mix-blend-mode: exclusion; }
274
+ .blend-hue { mix-blend-mode: hue; }
275
+ .blend-saturation { mix-blend-mode: saturation; }
276
+ .blend-color { mix-blend-mode: color; }
277
+ .blend-luminosity { mix-blend-mode: luminosity; }
278
+
279
+ /* ── Will Change ── */
280
+ .will-change-auto { will-change: auto; }
281
+ .will-change-scroll { will-change: scroll-position; }
282
+ .will-change-contents { will-change: contents; }
283
+ .will-change-transform { will-change: transform; }
@@ -0,0 +1,91 @@
1
+ /* SantyCSS — flex module
2
+ Import individually to reduce bundle size.
3
+ https://santycss.santy.in */
4
+
5
+ /* ── Flex Direction ── */
6
+ .flex-row { flex-direction: row; }
7
+ .flex-row-reverse { flex-direction: row-reverse; }
8
+ .flex-column { flex-direction: column; }
9
+ .flex-column-reverse { flex-direction: column-reverse; }
10
+
11
+ /* ── Flex Wrap ── */
12
+ .flex-wrap { flex-wrap: wrap; }
13
+ .flex-wrap-reverse{ flex-wrap: wrap-reverse; }
14
+ .flex-nowrap { flex-wrap: nowrap; }
15
+
16
+ /* ── Flex Grow / Shrink / None ── */
17
+ .flex-grow { flex-grow: 1; }
18
+ .flex-grow-none { flex-grow: 0; }
19
+ .flex-shrink { flex-shrink: 1; }
20
+ .flex-shrink-none { flex-shrink: 0; }
21
+ .flex-auto { flex: 1 1 auto; }
22
+ .flex-initial { flex: 0 1 auto; }
23
+ .flex-none { flex: none; }
24
+ .flex-equal { flex: 1; }
25
+
26
+ /* ── Align Items ── */
27
+ .align-start { align-items: flex-start; }
28
+ .align-end { align-items: flex-end; }
29
+ .align-center { align-items: center; }
30
+ .align-stretch { align-items: stretch; }
31
+ .align-baseline { align-items: baseline; }
32
+
33
+ /* ── Align Self ── */
34
+ .self-start { align-self: flex-start; }
35
+ .self-end { align-self: flex-end; }
36
+ .self-center { align-self: center; }
37
+ .self-stretch { align-self: stretch; }
38
+ .self-baseline { align-self: baseline; }
39
+ .self-auto { align-self: auto; }
40
+
41
+ /* ── Align Content ── */
42
+ .content-start { align-content: flex-start; }
43
+ .content-end { align-content: flex-end; }
44
+ .content-center { align-content: center; }
45
+ .content-stretch { align-content: stretch; }
46
+ .content-between { align-content: space-between; }
47
+ .content-around { align-content: space-around; }
48
+ .content-evenly { align-content: space-evenly; }
49
+
50
+ /* ── Justify Content ── */
51
+ .justify-start { justify-content: flex-start; }
52
+ .justify-end { justify-content: flex-end; }
53
+ .justify-center { justify-content: center; }
54
+ .justify-between { justify-content: space-between; }
55
+ .justify-around { justify-content: space-around; }
56
+ .justify-evenly { justify-content: space-evenly; }
57
+
58
+ /* ── Justify Items ── */
59
+ .justify-items-start { justify-items: start; }
60
+ .justify-items-end { justify-items: end; }
61
+ .justify-items-center { justify-items: center; }
62
+ .justify-items-stretch { justify-items: stretch; }
63
+
64
+ /* ── Justify Self ── */
65
+ .justify-self-start { justify-self: start; }
66
+ .justify-self-end { justify-self: end; }
67
+ .justify-self-center { justify-self: center; }
68
+ .justify-self-stretch { justify-self: stretch; }
69
+ .justify-self-auto { justify-self: auto; }
70
+
71
+ /* ── Place Content / Items / Self ── */
72
+ .place-center { place-items: center; place-content: center; }
73
+ .place-stretch { place-items: stretch; }
74
+
75
+ /* ── Order ── */
76
+ .order-first { order: -9999; }
77
+ .order-last { order: 9999; }
78
+ .order-none { order: 0; }
79
+
80
+ .order-1 { order: 1; }
81
+ .order-2 { order: 2; }
82
+ .order-3 { order: 3; }
83
+ .order-4 { order: 4; }
84
+ .order-5 { order: 5; }
85
+ .order-6 { order: 6; }
86
+ .order-7 { order: 7; }
87
+ .order-8 { order: 8; }
88
+ .order-9 { order: 9; }
89
+ .order-10 { order: 10; }
90
+ .order-11 { order: 11; }
91
+ .order-12 { order: 12; }
@@ -0,0 +1,56 @@
1
+ /* SantyCSS — grid module
2
+ Import individually to reduce bundle size.
3
+ https://santycss.santy.in */
4
+
5
+ /* ── Grid Template Columns ── */
6
+ .grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
7
+ .grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
8
+ .grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
9
+ .grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
10
+ .grid-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
11
+ .grid-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
12
+ .grid-cols-7 { grid-template-columns: repeat(7, minmax(0, 1fr)); }
13
+ .grid-cols-8 { grid-template-columns: repeat(8, minmax(0, 1fr)); }
14
+ .grid-cols-9 { grid-template-columns: repeat(9, minmax(0, 1fr)); }
15
+ .grid-cols-10 { grid-template-columns: repeat(10, minmax(0, 1fr)); }
16
+ .grid-cols-11 { grid-template-columns: repeat(11, minmax(0, 1fr)); }
17
+ .grid-cols-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
18
+ .grid-cols-none { grid-template-columns: none; }
19
+
20
+ /* ── Grid Template Rows ── */
21
+ .grid-rows-1 { grid-template-rows: repeat(1, minmax(0, 1fr)); }
22
+ .grid-rows-2 { grid-template-rows: repeat(2, minmax(0, 1fr)); }
23
+ .grid-rows-3 { grid-template-rows: repeat(3, minmax(0, 1fr)); }
24
+ .grid-rows-4 { grid-template-rows: repeat(4, minmax(0, 1fr)); }
25
+ .grid-rows-5 { grid-template-rows: repeat(5, minmax(0, 1fr)); }
26
+ .grid-rows-6 { grid-template-rows: repeat(6, minmax(0, 1fr)); }
27
+
28
+ /* ── Grid Column / Row Span ── */
29
+ .span-col-1 { grid-column: span 1 / span 1; }
30
+ .span-col-2 { grid-column: span 2 / span 2; }
31
+ .span-col-3 { grid-column: span 3 / span 3; }
32
+ .span-col-4 { grid-column: span 4 / span 4; }
33
+ .span-col-5 { grid-column: span 5 / span 5; }
34
+ .span-col-6 { grid-column: span 6 / span 6; }
35
+ .span-col-7 { grid-column: span 7 / span 7; }
36
+ .span-col-8 { grid-column: span 8 / span 8; }
37
+ .span-col-9 { grid-column: span 9 / span 9; }
38
+ .span-col-10 { grid-column: span 10 / span 10; }
39
+ .span-col-11 { grid-column: span 11 / span 11; }
40
+ .span-col-12 { grid-column: span 12 / span 12; }
41
+ .span-row-1 { grid-row: span 1 / span 1; }
42
+ .span-row-2 { grid-row: span 2 / span 2; }
43
+ .span-row-3 { grid-row: span 3 / span 3; }
44
+ .span-row-4 { grid-row: span 4 / span 4; }
45
+ .span-row-5 { grid-row: span 5 / span 5; }
46
+ .span-row-6 { grid-row: span 6 / span 6; }
47
+ .span-col-full { grid-column: 1 / -1; }
48
+ .span-row-full { grid-row: 1 / -1; }
49
+
50
+ /* ── Grid Auto Flow ── */
51
+ .grid-flow-row { grid-auto-flow: row; }
52
+ .grid-flow-col { grid-auto-flow: column; }
53
+ .grid-flow-dense { grid-auto-flow: dense; }
54
+ .grid-auto-cols-min { grid-auto-columns: min-content; }
55
+ .grid-auto-cols-max { grid-auto-columns: max-content; }
56
+ .grid-auto-cols-fr { grid-auto-columns: minmax(0, 1fr); }