@lctafrica/ui 0.0.0 → 0.0.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.
package/dist/index.js ADDED
@@ -0,0 +1,3079 @@
1
+ import { jsx as se } from "react/jsx-runtime";
2
+ import * as C from "react";
3
+ function Ae(e) {
4
+ var o, r, t = "";
5
+ if (typeof e == "string" || typeof e == "number") t += e;
6
+ else if (typeof e == "object") if (Array.isArray(e)) {
7
+ var n = e.length;
8
+ for (o = 0; o < n; o++) e[o] && (r = Ae(e[o])) && (t && (t += " "), t += r);
9
+ } else for (r in e) e[r] && (t && (t += " "), t += r);
10
+ return t;
11
+ }
12
+ function Re() {
13
+ for (var e, o, r = 0, t = "", n = arguments.length; r < n; r++) (e = arguments[r]) && (o = Ae(e)) && (t && (t += " "), t += o);
14
+ return t;
15
+ }
16
+ const he = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, xe = Re, Be = (e, o) => (r) => {
17
+ var t;
18
+ if (o?.variants == null) return xe(e, r?.class, r?.className);
19
+ const { variants: n, defaultVariants: s } = o, l = Object.keys(n).map((p) => {
20
+ const f = r?.[p], g = s?.[p];
21
+ if (f === null) return null;
22
+ const v = he(f) || he(g);
23
+ return n[p][v];
24
+ }), u = r && Object.entries(r).reduce((p, f) => {
25
+ let [g, v] = f;
26
+ return v === void 0 || (p[g] = v), p;
27
+ }, {}), c = o == null || (t = o.compoundVariants) === null || t === void 0 ? void 0 : t.reduce((p, f) => {
28
+ let { class: g, className: v, ...R } = f;
29
+ return Object.entries(R).every((I) => {
30
+ let [z, y] = I;
31
+ return Array.isArray(y) ? y.includes({
32
+ ...s,
33
+ ...u
34
+ }[z]) : {
35
+ ...s,
36
+ ...u
37
+ }[z] === y;
38
+ }) ? [
39
+ ...p,
40
+ g,
41
+ v
42
+ ] : p;
43
+ }, []);
44
+ return xe(e, l, c, r?.class, r?.className);
45
+ };
46
+ function ve(e, o) {
47
+ if (typeof e == "function")
48
+ return e(o);
49
+ e != null && (e.current = o);
50
+ }
51
+ function $e(...e) {
52
+ return (o) => {
53
+ let r = !1;
54
+ const t = e.map((n) => {
55
+ const s = ve(n, o);
56
+ return !r && typeof s == "function" && (r = !0), s;
57
+ });
58
+ if (r)
59
+ return () => {
60
+ for (let n = 0; n < t.length; n++) {
61
+ const s = t[n];
62
+ typeof s == "function" ? s() : ve(e[n], null);
63
+ }
64
+ };
65
+ };
66
+ }
67
+ // @__NO_SIDE_EFFECTS__
68
+ function De(e) {
69
+ const o = /* @__PURE__ */ Ye(e), r = C.forwardRef((t, n) => {
70
+ const { children: s, ...l } = t, u = C.Children.toArray(s), c = u.find(He);
71
+ if (c) {
72
+ const p = c.props.children, f = u.map((g) => g === c ? C.Children.count(p) > 1 ? C.Children.only(null) : C.isValidElement(p) ? p.props.children : null : g);
73
+ return /* @__PURE__ */ se(o, { ...l, ref: n, children: C.isValidElement(p) ? C.cloneElement(p, void 0, f) : null });
74
+ }
75
+ return /* @__PURE__ */ se(o, { ...l, ref: n, children: s });
76
+ });
77
+ return r.displayName = `${e}.Slot`, r;
78
+ }
79
+ var Ue = /* @__PURE__ */ De("Slot");
80
+ // @__NO_SIDE_EFFECTS__
81
+ function Ye(e) {
82
+ const o = C.forwardRef((r, t) => {
83
+ const { children: n, ...s } = r;
84
+ if (C.isValidElement(n)) {
85
+ const l = Je(n), u = Xe(s, n.props);
86
+ return n.type !== C.Fragment && (u.ref = t ? $e(t, l) : l), C.cloneElement(n, u);
87
+ }
88
+ return C.Children.count(n) > 1 ? C.Children.only(null) : null;
89
+ });
90
+ return o.displayName = `${e}.SlotClone`, o;
91
+ }
92
+ var qe = /* @__PURE__ */ Symbol("radix.slottable");
93
+ function He(e) {
94
+ return C.isValidElement(e) && typeof e.type == "function" && "__radixId" in e.type && e.type.__radixId === qe;
95
+ }
96
+ function Xe(e, o) {
97
+ const r = { ...o };
98
+ for (const t in o) {
99
+ const n = e[t], s = o[t];
100
+ /^on[A-Z]/.test(t) ? n && s ? r[t] = (...u) => {
101
+ const c = s(...u);
102
+ return n(...u), c;
103
+ } : n && (r[t] = n) : t === "style" ? r[t] = { ...n, ...s } : t === "className" && (r[t] = [n, s].filter(Boolean).join(" "));
104
+ }
105
+ return { ...e, ...r };
106
+ }
107
+ function Je(e) {
108
+ let o = Object.getOwnPropertyDescriptor(e.props, "ref")?.get, r = o && "isReactWarning" in o && o.isReactWarning;
109
+ return r ? e.ref : (o = Object.getOwnPropertyDescriptor(e, "ref")?.get, r = o && "isReactWarning" in o && o.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);
110
+ }
111
+ const Ke = (e, o) => {
112
+ const r = new Array(e.length + o.length);
113
+ for (let t = 0; t < e.length; t++)
114
+ r[t] = e[t];
115
+ for (let t = 0; t < o.length; t++)
116
+ r[e.length + t] = o[t];
117
+ return r;
118
+ }, Ze = (e, o) => ({
119
+ classGroupId: e,
120
+ validator: o
121
+ }), Ie = (e = /* @__PURE__ */ new Map(), o = null, r) => ({
122
+ nextPart: e,
123
+ validators: o,
124
+ classGroupId: r
125
+ }), Z = "-", ye = [], Qe = "arbitrary..", er = (e) => {
126
+ const o = or(e), {
127
+ conflictingClassGroups: r,
128
+ conflictingClassGroupModifiers: t
129
+ } = e;
130
+ return {
131
+ getClassGroupId: (l) => {
132
+ if (l.startsWith("[") && l.endsWith("]"))
133
+ return rr(l);
134
+ const u = l.split(Z), c = u[0] === "" && u.length > 1 ? 1 : 0;
135
+ return Pe(u, c, o);
136
+ },
137
+ getConflictingClassGroupIds: (l, u) => {
138
+ if (u) {
139
+ const c = t[l], p = r[l];
140
+ return c ? p ? Ke(p, c) : c : p || ye;
141
+ }
142
+ return r[l] || ye;
143
+ }
144
+ };
145
+ }, Pe = (e, o, r) => {
146
+ if (e.length - o === 0)
147
+ return r.classGroupId;
148
+ const n = e[o], s = r.nextPart.get(n);
149
+ if (s) {
150
+ const p = Pe(e, o + 1, s);
151
+ if (p) return p;
152
+ }
153
+ const l = r.validators;
154
+ if (l === null)
155
+ return;
156
+ const u = o === 0 ? e.join(Z) : e.slice(o).join(Z), c = l.length;
157
+ for (let p = 0; p < c; p++) {
158
+ const f = l[p];
159
+ if (f.validator(u))
160
+ return f.classGroupId;
161
+ }
162
+ }, rr = (e) => e.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
163
+ const o = e.slice(1, -1), r = o.indexOf(":"), t = o.slice(0, r);
164
+ return t ? Qe + t : void 0;
165
+ })(), or = (e) => {
166
+ const {
167
+ theme: o,
168
+ classGroups: r
169
+ } = e;
170
+ return tr(r, o);
171
+ }, tr = (e, o) => {
172
+ const r = Ie();
173
+ for (const t in e) {
174
+ const n = e[t];
175
+ ie(n, r, t, o);
176
+ }
177
+ return r;
178
+ }, ie = (e, o, r, t) => {
179
+ const n = e.length;
180
+ for (let s = 0; s < n; s++) {
181
+ const l = e[s];
182
+ nr(l, o, r, t);
183
+ }
184
+ }, nr = (e, o, r, t) => {
185
+ if (typeof e == "string") {
186
+ sr(e, o, r);
187
+ return;
188
+ }
189
+ if (typeof e == "function") {
190
+ ar(e, o, r, t);
191
+ return;
192
+ }
193
+ ir(e, o, r, t);
194
+ }, sr = (e, o, r) => {
195
+ const t = e === "" ? o : Me(o, e);
196
+ t.classGroupId = r;
197
+ }, ar = (e, o, r, t) => {
198
+ if (lr(e)) {
199
+ ie(e(t), o, r, t);
200
+ return;
201
+ }
202
+ o.validators === null && (o.validators = []), o.validators.push(Ze(r, e));
203
+ }, ir = (e, o, r, t) => {
204
+ const n = Object.entries(e), s = n.length;
205
+ for (let l = 0; l < s; l++) {
206
+ const [u, c] = n[l];
207
+ ie(c, Me(o, u), r, t);
208
+ }
209
+ }, Me = (e, o) => {
210
+ let r = e;
211
+ const t = o.split(Z), n = t.length;
212
+ for (let s = 0; s < n; s++) {
213
+ const l = t[s];
214
+ let u = r.nextPart.get(l);
215
+ u || (u = Ie(), r.nextPart.set(l, u)), r = u;
216
+ }
217
+ return r;
218
+ }, lr = (e) => "isThemeGetter" in e && e.isThemeGetter === !0, cr = (e) => {
219
+ if (e < 1)
220
+ return {
221
+ get: () => {
222
+ },
223
+ set: () => {
224
+ }
225
+ };
226
+ let o = 0, r = /* @__PURE__ */ Object.create(null), t = /* @__PURE__ */ Object.create(null);
227
+ const n = (s, l) => {
228
+ r[s] = l, o++, o > e && (o = 0, t = r, r = /* @__PURE__ */ Object.create(null));
229
+ };
230
+ return {
231
+ get(s) {
232
+ let l = r[s];
233
+ if (l !== void 0)
234
+ return l;
235
+ if ((l = t[s]) !== void 0)
236
+ return n(s, l), l;
237
+ },
238
+ set(s, l) {
239
+ s in r ? r[s] = l : n(s, l);
240
+ }
241
+ };
242
+ }, ae = "!", ke = ":", dr = [], we = (e, o, r, t, n) => ({
243
+ modifiers: e,
244
+ hasImportantModifier: o,
245
+ baseClassName: r,
246
+ maybePostfixModifierPosition: t,
247
+ isExternal: n
248
+ }), mr = (e) => {
249
+ const {
250
+ prefix: o,
251
+ experimentalParseClassName: r
252
+ } = e;
253
+ let t = (n) => {
254
+ const s = [];
255
+ let l = 0, u = 0, c = 0, p;
256
+ const f = n.length;
257
+ for (let z = 0; z < f; z++) {
258
+ const y = n[z];
259
+ if (l === 0 && u === 0) {
260
+ if (y === ke) {
261
+ s.push(n.slice(c, z)), c = z + 1;
262
+ continue;
263
+ }
264
+ if (y === "/") {
265
+ p = z;
266
+ continue;
267
+ }
268
+ }
269
+ y === "[" ? l++ : y === "]" ? l-- : y === "(" ? u++ : y === ")" && u--;
270
+ }
271
+ const g = s.length === 0 ? n : n.slice(c);
272
+ let v = g, R = !1;
273
+ g.endsWith(ae) ? (v = g.slice(0, -1), R = !0) : (
274
+ /**
275
+ * In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
276
+ * @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
277
+ */
278
+ g.startsWith(ae) && (v = g.slice(1), R = !0)
279
+ );
280
+ const I = p && p > c ? p - c : void 0;
281
+ return we(s, R, v, I);
282
+ };
283
+ if (o) {
284
+ const n = o + ke, s = t;
285
+ t = (l) => l.startsWith(n) ? s(l.slice(n.length)) : we(dr, !1, l, void 0, !0);
286
+ }
287
+ if (r) {
288
+ const n = t;
289
+ t = (s) => r({
290
+ className: s,
291
+ parseClassName: n
292
+ });
293
+ }
294
+ return t;
295
+ }, ur = (e) => {
296
+ const o = /* @__PURE__ */ new Map();
297
+ return e.orderSensitiveModifiers.forEach((r, t) => {
298
+ o.set(r, 1e6 + t);
299
+ }), (r) => {
300
+ const t = [];
301
+ let n = [];
302
+ for (let s = 0; s < r.length; s++) {
303
+ const l = r[s], u = l[0] === "[", c = o.has(l);
304
+ u || c ? (n.length > 0 && (n.sort(), t.push(...n), n = []), t.push(l)) : n.push(l);
305
+ }
306
+ return n.length > 0 && (n.sort(), t.push(...n)), t;
307
+ };
308
+ }, pr = (e) => ({
309
+ cache: cr(e.cacheSize),
310
+ parseClassName: mr(e),
311
+ sortModifiers: ur(e),
312
+ ...er(e)
313
+ }), br = /\s+/, fr = (e, o) => {
314
+ const {
315
+ parseClassName: r,
316
+ getClassGroupId: t,
317
+ getConflictingClassGroupIds: n,
318
+ sortModifiers: s
319
+ } = o, l = [], u = e.trim().split(br);
320
+ let c = "";
321
+ for (let p = u.length - 1; p >= 0; p -= 1) {
322
+ const f = u[p], {
323
+ isExternal: g,
324
+ modifiers: v,
325
+ hasImportantModifier: R,
326
+ baseClassName: I,
327
+ maybePostfixModifierPosition: z
328
+ } = r(f);
329
+ if (g) {
330
+ c = f + (c.length > 0 ? " " + c : c);
331
+ continue;
332
+ }
333
+ let y = !!z, N = t(y ? I.substring(0, z) : I);
334
+ if (!N) {
335
+ if (!y) {
336
+ c = f + (c.length > 0 ? " " + c : c);
337
+ continue;
338
+ }
339
+ if (N = t(I), !N) {
340
+ c = f + (c.length > 0 ? " " + c : c);
341
+ continue;
342
+ }
343
+ y = !1;
344
+ }
345
+ const D = v.length === 0 ? "" : v.length === 1 ? v[0] : s(v).join(":"), F = R ? D + ae : D, _ = F + N;
346
+ if (l.indexOf(_) > -1)
347
+ continue;
348
+ l.push(_);
349
+ const L = n(N, y);
350
+ for (let O = 0; O < L.length; ++O) {
351
+ const B = L[O];
352
+ l.push(F + B);
353
+ }
354
+ c = f + (c.length > 0 ? " " + c : c);
355
+ }
356
+ return c;
357
+ }, gr = (...e) => {
358
+ let o = 0, r, t, n = "";
359
+ for (; o < e.length; )
360
+ (r = e[o++]) && (t = Ve(r)) && (n && (n += " "), n += t);
361
+ return n;
362
+ }, Ve = (e) => {
363
+ if (typeof e == "string")
364
+ return e;
365
+ let o, r = "";
366
+ for (let t = 0; t < e.length; t++)
367
+ e[t] && (o = Ve(e[t])) && (r && (r += " "), r += o);
368
+ return r;
369
+ }, hr = (e, ...o) => {
370
+ let r, t, n, s;
371
+ const l = (c) => {
372
+ const p = o.reduce((f, g) => g(f), e());
373
+ return r = pr(p), t = r.cache.get, n = r.cache.set, s = u, u(c);
374
+ }, u = (c) => {
375
+ const p = t(c);
376
+ if (p)
377
+ return p;
378
+ const f = fr(c, r);
379
+ return n(c, f), f;
380
+ };
381
+ return s = l, (...c) => s(gr(...c));
382
+ }, xr = [], h = (e) => {
383
+ const o = (r) => r[e] || xr;
384
+ return o.isThemeGetter = !0, o;
385
+ }, Te = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Ne = /^\((?:(\w[\w-]*):)?(.+)\)$/i, vr = /^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/, yr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, kr = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, wr = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, zr = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Cr = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, M = (e) => vr.test(e), b = (e) => !!e && !Number.isNaN(Number(e)), V = (e) => !!e && Number.isInteger(Number(e)), ne = (e) => e.endsWith("%") && b(e.slice(0, -1)), P = (e) => yr.test(e), Oe = () => !0, Sr = (e) => (
386
+ // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
387
+ // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
388
+ // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
389
+ kr.test(e) && !wr.test(e)
390
+ ), le = () => !1, Ar = (e) => zr.test(e), Rr = (e) => Cr.test(e), Ir = (e) => !a(e) && !i(e), Pr = (e) => T(e, Ge, le), a = (e) => Te.test(e), j = (e) => T(e, _e, Sr), ze = (e) => T(e, Gr, b), Mr = (e) => T(e, We, Oe), Vr = (e) => T(e, Le, le), Ce = (e) => T(e, Ee, le), Tr = (e) => T(e, je, Rr), J = (e) => T(e, Fe, Ar), i = (e) => Ne.test(e), $ = (e) => G(e, _e), Nr = (e) => G(e, Le), Se = (e) => G(e, Ee), Or = (e) => G(e, Ge), Er = (e) => G(e, je), K = (e) => G(e, Fe, !0), jr = (e) => G(e, We, !0), T = (e, o, r) => {
391
+ const t = Te.exec(e);
392
+ return t ? t[1] ? o(t[1]) : r(t[2]) : !1;
393
+ }, G = (e, o, r = !1) => {
394
+ const t = Ne.exec(e);
395
+ return t ? t[1] ? o(t[1]) : r : !1;
396
+ }, Ee = (e) => e === "position" || e === "percentage", je = (e) => e === "image" || e === "url", Ge = (e) => e === "length" || e === "size" || e === "bg-size", _e = (e) => e === "length", Gr = (e) => e === "number", Le = (e) => e === "family-name", We = (e) => e === "number" || e === "weight", Fe = (e) => e === "shadow", _r = () => {
397
+ const e = h("color"), o = h("font"), r = h("text"), t = h("font-weight"), n = h("tracking"), s = h("leading"), l = h("breakpoint"), u = h("container"), c = h("spacing"), p = h("radius"), f = h("shadow"), g = h("inset-shadow"), v = h("text-shadow"), R = h("drop-shadow"), I = h("blur"), z = h("perspective"), y = h("aspect"), N = h("ease"), D = h("animate"), F = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], _ = () => [
398
+ "center",
399
+ "top",
400
+ "bottom",
401
+ "left",
402
+ "right",
403
+ "top-left",
404
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
405
+ "left-top",
406
+ "top-right",
407
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
408
+ "right-top",
409
+ "bottom-right",
410
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
411
+ "right-bottom",
412
+ "bottom-left",
413
+ // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
414
+ "left-bottom"
415
+ ], L = () => [..._(), i, a], O = () => ["auto", "hidden", "clip", "visible", "scroll"], B = () => ["auto", "contain", "none"], d = () => [i, a, c], S = () => [M, "full", "auto", ...d()], ce = () => [V, "none", "subgrid", i, a], de = () => ["auto", {
416
+ span: ["full", V, i, a]
417
+ }, V, i, a], U = () => [V, "auto", i, a], me = () => ["auto", "min", "max", "fr", i, a], Q = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], W = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], A = () => ["auto", ...d()], E = () => [M, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...d()], ee = () => [M, "screen", "full", "dvw", "lvw", "svw", "min", "max", "fit", ...d()], re = () => [M, "screen", "full", "lh", "dvh", "lvh", "svh", "min", "max", "fit", ...d()], m = () => [e, i, a], ue = () => [..._(), Se, Ce, {
418
+ position: [i, a]
419
+ }], pe = () => ["no-repeat", {
420
+ repeat: ["", "x", "y", "space", "round"]
421
+ }], be = () => ["auto", "cover", "contain", Or, Pr, {
422
+ size: [i, a]
423
+ }], oe = () => [ne, $, j], k = () => [
424
+ // Deprecated since Tailwind CSS v4.0.0
425
+ "",
426
+ "none",
427
+ "full",
428
+ p,
429
+ i,
430
+ a
431
+ ], w = () => ["", b, $, j], Y = () => ["solid", "dashed", "dotted", "double"], fe = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], x = () => [b, ne, Se, Ce], ge = () => [
432
+ // Deprecated since Tailwind CSS v4.0.0
433
+ "",
434
+ "none",
435
+ I,
436
+ i,
437
+ a
438
+ ], q = () => ["none", b, i, a], H = () => ["none", b, i, a], te = () => [b, i, a], X = () => [M, "full", ...d()];
439
+ return {
440
+ cacheSize: 500,
441
+ theme: {
442
+ animate: ["spin", "ping", "pulse", "bounce"],
443
+ aspect: ["video"],
444
+ blur: [P],
445
+ breakpoint: [P],
446
+ color: [Oe],
447
+ container: [P],
448
+ "drop-shadow": [P],
449
+ ease: ["in", "out", "in-out"],
450
+ font: [Ir],
451
+ "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
452
+ "inset-shadow": [P],
453
+ leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
454
+ perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
455
+ radius: [P],
456
+ shadow: [P],
457
+ spacing: ["px", b],
458
+ text: [P],
459
+ "text-shadow": [P],
460
+ tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
461
+ },
462
+ classGroups: {
463
+ // --------------
464
+ // --- Layout ---
465
+ // --------------
466
+ /**
467
+ * Aspect Ratio
468
+ * @see https://tailwindcss.com/docs/aspect-ratio
469
+ */
470
+ aspect: [{
471
+ aspect: ["auto", "square", M, a, i, y]
472
+ }],
473
+ /**
474
+ * Container
475
+ * @see https://tailwindcss.com/docs/container
476
+ * @deprecated since Tailwind CSS v4.0.0
477
+ */
478
+ container: ["container"],
479
+ /**
480
+ * Columns
481
+ * @see https://tailwindcss.com/docs/columns
482
+ */
483
+ columns: [{
484
+ columns: [b, a, i, u]
485
+ }],
486
+ /**
487
+ * Break After
488
+ * @see https://tailwindcss.com/docs/break-after
489
+ */
490
+ "break-after": [{
491
+ "break-after": F()
492
+ }],
493
+ /**
494
+ * Break Before
495
+ * @see https://tailwindcss.com/docs/break-before
496
+ */
497
+ "break-before": [{
498
+ "break-before": F()
499
+ }],
500
+ /**
501
+ * Break Inside
502
+ * @see https://tailwindcss.com/docs/break-inside
503
+ */
504
+ "break-inside": [{
505
+ "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
506
+ }],
507
+ /**
508
+ * Box Decoration Break
509
+ * @see https://tailwindcss.com/docs/box-decoration-break
510
+ */
511
+ "box-decoration": [{
512
+ "box-decoration": ["slice", "clone"]
513
+ }],
514
+ /**
515
+ * Box Sizing
516
+ * @see https://tailwindcss.com/docs/box-sizing
517
+ */
518
+ box: [{
519
+ box: ["border", "content"]
520
+ }],
521
+ /**
522
+ * Display
523
+ * @see https://tailwindcss.com/docs/display
524
+ */
525
+ display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
526
+ /**
527
+ * Screen Reader Only
528
+ * @see https://tailwindcss.com/docs/display#screen-reader-only
529
+ */
530
+ sr: ["sr-only", "not-sr-only"],
531
+ /**
532
+ * Floats
533
+ * @see https://tailwindcss.com/docs/float
534
+ */
535
+ float: [{
536
+ float: ["right", "left", "none", "start", "end"]
537
+ }],
538
+ /**
539
+ * Clear
540
+ * @see https://tailwindcss.com/docs/clear
541
+ */
542
+ clear: [{
543
+ clear: ["left", "right", "both", "none", "start", "end"]
544
+ }],
545
+ /**
546
+ * Isolation
547
+ * @see https://tailwindcss.com/docs/isolation
548
+ */
549
+ isolation: ["isolate", "isolation-auto"],
550
+ /**
551
+ * Object Fit
552
+ * @see https://tailwindcss.com/docs/object-fit
553
+ */
554
+ "object-fit": [{
555
+ object: ["contain", "cover", "fill", "none", "scale-down"]
556
+ }],
557
+ /**
558
+ * Object Position
559
+ * @see https://tailwindcss.com/docs/object-position
560
+ */
561
+ "object-position": [{
562
+ object: L()
563
+ }],
564
+ /**
565
+ * Overflow
566
+ * @see https://tailwindcss.com/docs/overflow
567
+ */
568
+ overflow: [{
569
+ overflow: O()
570
+ }],
571
+ /**
572
+ * Overflow X
573
+ * @see https://tailwindcss.com/docs/overflow
574
+ */
575
+ "overflow-x": [{
576
+ "overflow-x": O()
577
+ }],
578
+ /**
579
+ * Overflow Y
580
+ * @see https://tailwindcss.com/docs/overflow
581
+ */
582
+ "overflow-y": [{
583
+ "overflow-y": O()
584
+ }],
585
+ /**
586
+ * Overscroll Behavior
587
+ * @see https://tailwindcss.com/docs/overscroll-behavior
588
+ */
589
+ overscroll: [{
590
+ overscroll: B()
591
+ }],
592
+ /**
593
+ * Overscroll Behavior X
594
+ * @see https://tailwindcss.com/docs/overscroll-behavior
595
+ */
596
+ "overscroll-x": [{
597
+ "overscroll-x": B()
598
+ }],
599
+ /**
600
+ * Overscroll Behavior Y
601
+ * @see https://tailwindcss.com/docs/overscroll-behavior
602
+ */
603
+ "overscroll-y": [{
604
+ "overscroll-y": B()
605
+ }],
606
+ /**
607
+ * Position
608
+ * @see https://tailwindcss.com/docs/position
609
+ */
610
+ position: ["static", "fixed", "absolute", "relative", "sticky"],
611
+ /**
612
+ * Inset
613
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
614
+ */
615
+ inset: [{
616
+ inset: S()
617
+ }],
618
+ /**
619
+ * Inset Inline
620
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
621
+ */
622
+ "inset-x": [{
623
+ "inset-x": S()
624
+ }],
625
+ /**
626
+ * Inset Block
627
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
628
+ */
629
+ "inset-y": [{
630
+ "inset-y": S()
631
+ }],
632
+ /**
633
+ * Inset Inline Start
634
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
635
+ * @todo class group will be renamed to `inset-s` in next major release
636
+ */
637
+ start: [{
638
+ "inset-s": S(),
639
+ /**
640
+ * @deprecated since Tailwind CSS v4.2.0 in favor of `inset-s-*` utilities.
641
+ * @see https://github.com/tailwindlabs/tailwindcss/pull/19613
642
+ */
643
+ start: S()
644
+ }],
645
+ /**
646
+ * Inset Inline End
647
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
648
+ * @todo class group will be renamed to `inset-e` in next major release
649
+ */
650
+ end: [{
651
+ "inset-e": S(),
652
+ /**
653
+ * @deprecated since Tailwind CSS v4.2.0 in favor of `inset-e-*` utilities.
654
+ * @see https://github.com/tailwindlabs/tailwindcss/pull/19613
655
+ */
656
+ end: S()
657
+ }],
658
+ /**
659
+ * Inset Block Start
660
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
661
+ */
662
+ "inset-bs": [{
663
+ "inset-bs": S()
664
+ }],
665
+ /**
666
+ * Inset Block End
667
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
668
+ */
669
+ "inset-be": [{
670
+ "inset-be": S()
671
+ }],
672
+ /**
673
+ * Top
674
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
675
+ */
676
+ top: [{
677
+ top: S()
678
+ }],
679
+ /**
680
+ * Right
681
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
682
+ */
683
+ right: [{
684
+ right: S()
685
+ }],
686
+ /**
687
+ * Bottom
688
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
689
+ */
690
+ bottom: [{
691
+ bottom: S()
692
+ }],
693
+ /**
694
+ * Left
695
+ * @see https://tailwindcss.com/docs/top-right-bottom-left
696
+ */
697
+ left: [{
698
+ left: S()
699
+ }],
700
+ /**
701
+ * Visibility
702
+ * @see https://tailwindcss.com/docs/visibility
703
+ */
704
+ visibility: ["visible", "invisible", "collapse"],
705
+ /**
706
+ * Z-Index
707
+ * @see https://tailwindcss.com/docs/z-index
708
+ */
709
+ z: [{
710
+ z: [V, "auto", i, a]
711
+ }],
712
+ // ------------------------
713
+ // --- Flexbox and Grid ---
714
+ // ------------------------
715
+ /**
716
+ * Flex Basis
717
+ * @see https://tailwindcss.com/docs/flex-basis
718
+ */
719
+ basis: [{
720
+ basis: [M, "full", "auto", u, ...d()]
721
+ }],
722
+ /**
723
+ * Flex Direction
724
+ * @see https://tailwindcss.com/docs/flex-direction
725
+ */
726
+ "flex-direction": [{
727
+ flex: ["row", "row-reverse", "col", "col-reverse"]
728
+ }],
729
+ /**
730
+ * Flex Wrap
731
+ * @see https://tailwindcss.com/docs/flex-wrap
732
+ */
733
+ "flex-wrap": [{
734
+ flex: ["nowrap", "wrap", "wrap-reverse"]
735
+ }],
736
+ /**
737
+ * Flex
738
+ * @see https://tailwindcss.com/docs/flex
739
+ */
740
+ flex: [{
741
+ flex: [b, M, "auto", "initial", "none", a]
742
+ }],
743
+ /**
744
+ * Flex Grow
745
+ * @see https://tailwindcss.com/docs/flex-grow
746
+ */
747
+ grow: [{
748
+ grow: ["", b, i, a]
749
+ }],
750
+ /**
751
+ * Flex Shrink
752
+ * @see https://tailwindcss.com/docs/flex-shrink
753
+ */
754
+ shrink: [{
755
+ shrink: ["", b, i, a]
756
+ }],
757
+ /**
758
+ * Order
759
+ * @see https://tailwindcss.com/docs/order
760
+ */
761
+ order: [{
762
+ order: [V, "first", "last", "none", i, a]
763
+ }],
764
+ /**
765
+ * Grid Template Columns
766
+ * @see https://tailwindcss.com/docs/grid-template-columns
767
+ */
768
+ "grid-cols": [{
769
+ "grid-cols": ce()
770
+ }],
771
+ /**
772
+ * Grid Column Start / End
773
+ * @see https://tailwindcss.com/docs/grid-column
774
+ */
775
+ "col-start-end": [{
776
+ col: de()
777
+ }],
778
+ /**
779
+ * Grid Column Start
780
+ * @see https://tailwindcss.com/docs/grid-column
781
+ */
782
+ "col-start": [{
783
+ "col-start": U()
784
+ }],
785
+ /**
786
+ * Grid Column End
787
+ * @see https://tailwindcss.com/docs/grid-column
788
+ */
789
+ "col-end": [{
790
+ "col-end": U()
791
+ }],
792
+ /**
793
+ * Grid Template Rows
794
+ * @see https://tailwindcss.com/docs/grid-template-rows
795
+ */
796
+ "grid-rows": [{
797
+ "grid-rows": ce()
798
+ }],
799
+ /**
800
+ * Grid Row Start / End
801
+ * @see https://tailwindcss.com/docs/grid-row
802
+ */
803
+ "row-start-end": [{
804
+ row: de()
805
+ }],
806
+ /**
807
+ * Grid Row Start
808
+ * @see https://tailwindcss.com/docs/grid-row
809
+ */
810
+ "row-start": [{
811
+ "row-start": U()
812
+ }],
813
+ /**
814
+ * Grid Row End
815
+ * @see https://tailwindcss.com/docs/grid-row
816
+ */
817
+ "row-end": [{
818
+ "row-end": U()
819
+ }],
820
+ /**
821
+ * Grid Auto Flow
822
+ * @see https://tailwindcss.com/docs/grid-auto-flow
823
+ */
824
+ "grid-flow": [{
825
+ "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
826
+ }],
827
+ /**
828
+ * Grid Auto Columns
829
+ * @see https://tailwindcss.com/docs/grid-auto-columns
830
+ */
831
+ "auto-cols": [{
832
+ "auto-cols": me()
833
+ }],
834
+ /**
835
+ * Grid Auto Rows
836
+ * @see https://tailwindcss.com/docs/grid-auto-rows
837
+ */
838
+ "auto-rows": [{
839
+ "auto-rows": me()
840
+ }],
841
+ /**
842
+ * Gap
843
+ * @see https://tailwindcss.com/docs/gap
844
+ */
845
+ gap: [{
846
+ gap: d()
847
+ }],
848
+ /**
849
+ * Gap X
850
+ * @see https://tailwindcss.com/docs/gap
851
+ */
852
+ "gap-x": [{
853
+ "gap-x": d()
854
+ }],
855
+ /**
856
+ * Gap Y
857
+ * @see https://tailwindcss.com/docs/gap
858
+ */
859
+ "gap-y": [{
860
+ "gap-y": d()
861
+ }],
862
+ /**
863
+ * Justify Content
864
+ * @see https://tailwindcss.com/docs/justify-content
865
+ */
866
+ "justify-content": [{
867
+ justify: [...Q(), "normal"]
868
+ }],
869
+ /**
870
+ * Justify Items
871
+ * @see https://tailwindcss.com/docs/justify-items
872
+ */
873
+ "justify-items": [{
874
+ "justify-items": [...W(), "normal"]
875
+ }],
876
+ /**
877
+ * Justify Self
878
+ * @see https://tailwindcss.com/docs/justify-self
879
+ */
880
+ "justify-self": [{
881
+ "justify-self": ["auto", ...W()]
882
+ }],
883
+ /**
884
+ * Align Content
885
+ * @see https://tailwindcss.com/docs/align-content
886
+ */
887
+ "align-content": [{
888
+ content: ["normal", ...Q()]
889
+ }],
890
+ /**
891
+ * Align Items
892
+ * @see https://tailwindcss.com/docs/align-items
893
+ */
894
+ "align-items": [{
895
+ items: [...W(), {
896
+ baseline: ["", "last"]
897
+ }]
898
+ }],
899
+ /**
900
+ * Align Self
901
+ * @see https://tailwindcss.com/docs/align-self
902
+ */
903
+ "align-self": [{
904
+ self: ["auto", ...W(), {
905
+ baseline: ["", "last"]
906
+ }]
907
+ }],
908
+ /**
909
+ * Place Content
910
+ * @see https://tailwindcss.com/docs/place-content
911
+ */
912
+ "place-content": [{
913
+ "place-content": Q()
914
+ }],
915
+ /**
916
+ * Place Items
917
+ * @see https://tailwindcss.com/docs/place-items
918
+ */
919
+ "place-items": [{
920
+ "place-items": [...W(), "baseline"]
921
+ }],
922
+ /**
923
+ * Place Self
924
+ * @see https://tailwindcss.com/docs/place-self
925
+ */
926
+ "place-self": [{
927
+ "place-self": ["auto", ...W()]
928
+ }],
929
+ // Spacing
930
+ /**
931
+ * Padding
932
+ * @see https://tailwindcss.com/docs/padding
933
+ */
934
+ p: [{
935
+ p: d()
936
+ }],
937
+ /**
938
+ * Padding Inline
939
+ * @see https://tailwindcss.com/docs/padding
940
+ */
941
+ px: [{
942
+ px: d()
943
+ }],
944
+ /**
945
+ * Padding Block
946
+ * @see https://tailwindcss.com/docs/padding
947
+ */
948
+ py: [{
949
+ py: d()
950
+ }],
951
+ /**
952
+ * Padding Inline Start
953
+ * @see https://tailwindcss.com/docs/padding
954
+ */
955
+ ps: [{
956
+ ps: d()
957
+ }],
958
+ /**
959
+ * Padding Inline End
960
+ * @see https://tailwindcss.com/docs/padding
961
+ */
962
+ pe: [{
963
+ pe: d()
964
+ }],
965
+ /**
966
+ * Padding Block Start
967
+ * @see https://tailwindcss.com/docs/padding
968
+ */
969
+ pbs: [{
970
+ pbs: d()
971
+ }],
972
+ /**
973
+ * Padding Block End
974
+ * @see https://tailwindcss.com/docs/padding
975
+ */
976
+ pbe: [{
977
+ pbe: d()
978
+ }],
979
+ /**
980
+ * Padding Top
981
+ * @see https://tailwindcss.com/docs/padding
982
+ */
983
+ pt: [{
984
+ pt: d()
985
+ }],
986
+ /**
987
+ * Padding Right
988
+ * @see https://tailwindcss.com/docs/padding
989
+ */
990
+ pr: [{
991
+ pr: d()
992
+ }],
993
+ /**
994
+ * Padding Bottom
995
+ * @see https://tailwindcss.com/docs/padding
996
+ */
997
+ pb: [{
998
+ pb: d()
999
+ }],
1000
+ /**
1001
+ * Padding Left
1002
+ * @see https://tailwindcss.com/docs/padding
1003
+ */
1004
+ pl: [{
1005
+ pl: d()
1006
+ }],
1007
+ /**
1008
+ * Margin
1009
+ * @see https://tailwindcss.com/docs/margin
1010
+ */
1011
+ m: [{
1012
+ m: A()
1013
+ }],
1014
+ /**
1015
+ * Margin Inline
1016
+ * @see https://tailwindcss.com/docs/margin
1017
+ */
1018
+ mx: [{
1019
+ mx: A()
1020
+ }],
1021
+ /**
1022
+ * Margin Block
1023
+ * @see https://tailwindcss.com/docs/margin
1024
+ */
1025
+ my: [{
1026
+ my: A()
1027
+ }],
1028
+ /**
1029
+ * Margin Inline Start
1030
+ * @see https://tailwindcss.com/docs/margin
1031
+ */
1032
+ ms: [{
1033
+ ms: A()
1034
+ }],
1035
+ /**
1036
+ * Margin Inline End
1037
+ * @see https://tailwindcss.com/docs/margin
1038
+ */
1039
+ me: [{
1040
+ me: A()
1041
+ }],
1042
+ /**
1043
+ * Margin Block Start
1044
+ * @see https://tailwindcss.com/docs/margin
1045
+ */
1046
+ mbs: [{
1047
+ mbs: A()
1048
+ }],
1049
+ /**
1050
+ * Margin Block End
1051
+ * @see https://tailwindcss.com/docs/margin
1052
+ */
1053
+ mbe: [{
1054
+ mbe: A()
1055
+ }],
1056
+ /**
1057
+ * Margin Top
1058
+ * @see https://tailwindcss.com/docs/margin
1059
+ */
1060
+ mt: [{
1061
+ mt: A()
1062
+ }],
1063
+ /**
1064
+ * Margin Right
1065
+ * @see https://tailwindcss.com/docs/margin
1066
+ */
1067
+ mr: [{
1068
+ mr: A()
1069
+ }],
1070
+ /**
1071
+ * Margin Bottom
1072
+ * @see https://tailwindcss.com/docs/margin
1073
+ */
1074
+ mb: [{
1075
+ mb: A()
1076
+ }],
1077
+ /**
1078
+ * Margin Left
1079
+ * @see https://tailwindcss.com/docs/margin
1080
+ */
1081
+ ml: [{
1082
+ ml: A()
1083
+ }],
1084
+ /**
1085
+ * Space Between X
1086
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1087
+ */
1088
+ "space-x": [{
1089
+ "space-x": d()
1090
+ }],
1091
+ /**
1092
+ * Space Between X Reverse
1093
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1094
+ */
1095
+ "space-x-reverse": ["space-x-reverse"],
1096
+ /**
1097
+ * Space Between Y
1098
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1099
+ */
1100
+ "space-y": [{
1101
+ "space-y": d()
1102
+ }],
1103
+ /**
1104
+ * Space Between Y Reverse
1105
+ * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1106
+ */
1107
+ "space-y-reverse": ["space-y-reverse"],
1108
+ // --------------
1109
+ // --- Sizing ---
1110
+ // --------------
1111
+ /**
1112
+ * Size
1113
+ * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
1114
+ */
1115
+ size: [{
1116
+ size: E()
1117
+ }],
1118
+ /**
1119
+ * Inline Size
1120
+ * @see https://tailwindcss.com/docs/width
1121
+ */
1122
+ "inline-size": [{
1123
+ inline: ["auto", ...ee()]
1124
+ }],
1125
+ /**
1126
+ * Min-Inline Size
1127
+ * @see https://tailwindcss.com/docs/min-width
1128
+ */
1129
+ "min-inline-size": [{
1130
+ "min-inline": ["auto", ...ee()]
1131
+ }],
1132
+ /**
1133
+ * Max-Inline Size
1134
+ * @see https://tailwindcss.com/docs/max-width
1135
+ */
1136
+ "max-inline-size": [{
1137
+ "max-inline": ["none", ...ee()]
1138
+ }],
1139
+ /**
1140
+ * Block Size
1141
+ * @see https://tailwindcss.com/docs/height
1142
+ */
1143
+ "block-size": [{
1144
+ block: ["auto", ...re()]
1145
+ }],
1146
+ /**
1147
+ * Min-Block Size
1148
+ * @see https://tailwindcss.com/docs/min-height
1149
+ */
1150
+ "min-block-size": [{
1151
+ "min-block": ["auto", ...re()]
1152
+ }],
1153
+ /**
1154
+ * Max-Block Size
1155
+ * @see https://tailwindcss.com/docs/max-height
1156
+ */
1157
+ "max-block-size": [{
1158
+ "max-block": ["none", ...re()]
1159
+ }],
1160
+ /**
1161
+ * Width
1162
+ * @see https://tailwindcss.com/docs/width
1163
+ */
1164
+ w: [{
1165
+ w: [u, "screen", ...E()]
1166
+ }],
1167
+ /**
1168
+ * Min-Width
1169
+ * @see https://tailwindcss.com/docs/min-width
1170
+ */
1171
+ "min-w": [{
1172
+ "min-w": [
1173
+ u,
1174
+ "screen",
1175
+ /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1176
+ "none",
1177
+ ...E()
1178
+ ]
1179
+ }],
1180
+ /**
1181
+ * Max-Width
1182
+ * @see https://tailwindcss.com/docs/max-width
1183
+ */
1184
+ "max-w": [{
1185
+ "max-w": [
1186
+ u,
1187
+ "screen",
1188
+ "none",
1189
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1190
+ "prose",
1191
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1192
+ {
1193
+ screen: [l]
1194
+ },
1195
+ ...E()
1196
+ ]
1197
+ }],
1198
+ /**
1199
+ * Height
1200
+ * @see https://tailwindcss.com/docs/height
1201
+ */
1202
+ h: [{
1203
+ h: ["screen", "lh", ...E()]
1204
+ }],
1205
+ /**
1206
+ * Min-Height
1207
+ * @see https://tailwindcss.com/docs/min-height
1208
+ */
1209
+ "min-h": [{
1210
+ "min-h": ["screen", "lh", "none", ...E()]
1211
+ }],
1212
+ /**
1213
+ * Max-Height
1214
+ * @see https://tailwindcss.com/docs/max-height
1215
+ */
1216
+ "max-h": [{
1217
+ "max-h": ["screen", "lh", ...E()]
1218
+ }],
1219
+ // ------------------
1220
+ // --- Typography ---
1221
+ // ------------------
1222
+ /**
1223
+ * Font Size
1224
+ * @see https://tailwindcss.com/docs/font-size
1225
+ */
1226
+ "font-size": [{
1227
+ text: ["base", r, $, j]
1228
+ }],
1229
+ /**
1230
+ * Font Smoothing
1231
+ * @see https://tailwindcss.com/docs/font-smoothing
1232
+ */
1233
+ "font-smoothing": ["antialiased", "subpixel-antialiased"],
1234
+ /**
1235
+ * Font Style
1236
+ * @see https://tailwindcss.com/docs/font-style
1237
+ */
1238
+ "font-style": ["italic", "not-italic"],
1239
+ /**
1240
+ * Font Weight
1241
+ * @see https://tailwindcss.com/docs/font-weight
1242
+ */
1243
+ "font-weight": [{
1244
+ font: [t, jr, Mr]
1245
+ }],
1246
+ /**
1247
+ * Font Stretch
1248
+ * @see https://tailwindcss.com/docs/font-stretch
1249
+ */
1250
+ "font-stretch": [{
1251
+ "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", ne, a]
1252
+ }],
1253
+ /**
1254
+ * Font Family
1255
+ * @see https://tailwindcss.com/docs/font-family
1256
+ */
1257
+ "font-family": [{
1258
+ font: [Nr, Vr, o]
1259
+ }],
1260
+ /**
1261
+ * Font Feature Settings
1262
+ * @see https://tailwindcss.com/docs/font-feature-settings
1263
+ */
1264
+ "font-features": [{
1265
+ "font-features": [a]
1266
+ }],
1267
+ /**
1268
+ * Font Variant Numeric
1269
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1270
+ */
1271
+ "fvn-normal": ["normal-nums"],
1272
+ /**
1273
+ * Font Variant Numeric
1274
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1275
+ */
1276
+ "fvn-ordinal": ["ordinal"],
1277
+ /**
1278
+ * Font Variant Numeric
1279
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1280
+ */
1281
+ "fvn-slashed-zero": ["slashed-zero"],
1282
+ /**
1283
+ * Font Variant Numeric
1284
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1285
+ */
1286
+ "fvn-figure": ["lining-nums", "oldstyle-nums"],
1287
+ /**
1288
+ * Font Variant Numeric
1289
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1290
+ */
1291
+ "fvn-spacing": ["proportional-nums", "tabular-nums"],
1292
+ /**
1293
+ * Font Variant Numeric
1294
+ * @see https://tailwindcss.com/docs/font-variant-numeric
1295
+ */
1296
+ "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
1297
+ /**
1298
+ * Letter Spacing
1299
+ * @see https://tailwindcss.com/docs/letter-spacing
1300
+ */
1301
+ tracking: [{
1302
+ tracking: [n, i, a]
1303
+ }],
1304
+ /**
1305
+ * Line Clamp
1306
+ * @see https://tailwindcss.com/docs/line-clamp
1307
+ */
1308
+ "line-clamp": [{
1309
+ "line-clamp": [b, "none", i, ze]
1310
+ }],
1311
+ /**
1312
+ * Line Height
1313
+ * @see https://tailwindcss.com/docs/line-height
1314
+ */
1315
+ leading: [{
1316
+ leading: [
1317
+ /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1318
+ s,
1319
+ ...d()
1320
+ ]
1321
+ }],
1322
+ /**
1323
+ * List Style Image
1324
+ * @see https://tailwindcss.com/docs/list-style-image
1325
+ */
1326
+ "list-image": [{
1327
+ "list-image": ["none", i, a]
1328
+ }],
1329
+ /**
1330
+ * List Style Position
1331
+ * @see https://tailwindcss.com/docs/list-style-position
1332
+ */
1333
+ "list-style-position": [{
1334
+ list: ["inside", "outside"]
1335
+ }],
1336
+ /**
1337
+ * List Style Type
1338
+ * @see https://tailwindcss.com/docs/list-style-type
1339
+ */
1340
+ "list-style-type": [{
1341
+ list: ["disc", "decimal", "none", i, a]
1342
+ }],
1343
+ /**
1344
+ * Text Alignment
1345
+ * @see https://tailwindcss.com/docs/text-align
1346
+ */
1347
+ "text-alignment": [{
1348
+ text: ["left", "center", "right", "justify", "start", "end"]
1349
+ }],
1350
+ /**
1351
+ * Placeholder Color
1352
+ * @deprecated since Tailwind CSS v3.0.0
1353
+ * @see https://v3.tailwindcss.com/docs/placeholder-color
1354
+ */
1355
+ "placeholder-color": [{
1356
+ placeholder: m()
1357
+ }],
1358
+ /**
1359
+ * Text Color
1360
+ * @see https://tailwindcss.com/docs/text-color
1361
+ */
1362
+ "text-color": [{
1363
+ text: m()
1364
+ }],
1365
+ /**
1366
+ * Text Decoration
1367
+ * @see https://tailwindcss.com/docs/text-decoration
1368
+ */
1369
+ "text-decoration": ["underline", "overline", "line-through", "no-underline"],
1370
+ /**
1371
+ * Text Decoration Style
1372
+ * @see https://tailwindcss.com/docs/text-decoration-style
1373
+ */
1374
+ "text-decoration-style": [{
1375
+ decoration: [...Y(), "wavy"]
1376
+ }],
1377
+ /**
1378
+ * Text Decoration Thickness
1379
+ * @see https://tailwindcss.com/docs/text-decoration-thickness
1380
+ */
1381
+ "text-decoration-thickness": [{
1382
+ decoration: [b, "from-font", "auto", i, j]
1383
+ }],
1384
+ /**
1385
+ * Text Decoration Color
1386
+ * @see https://tailwindcss.com/docs/text-decoration-color
1387
+ */
1388
+ "text-decoration-color": [{
1389
+ decoration: m()
1390
+ }],
1391
+ /**
1392
+ * Text Underline Offset
1393
+ * @see https://tailwindcss.com/docs/text-underline-offset
1394
+ */
1395
+ "underline-offset": [{
1396
+ "underline-offset": [b, "auto", i, a]
1397
+ }],
1398
+ /**
1399
+ * Text Transform
1400
+ * @see https://tailwindcss.com/docs/text-transform
1401
+ */
1402
+ "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
1403
+ /**
1404
+ * Text Overflow
1405
+ * @see https://tailwindcss.com/docs/text-overflow
1406
+ */
1407
+ "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
1408
+ /**
1409
+ * Text Wrap
1410
+ * @see https://tailwindcss.com/docs/text-wrap
1411
+ */
1412
+ "text-wrap": [{
1413
+ text: ["wrap", "nowrap", "balance", "pretty"]
1414
+ }],
1415
+ /**
1416
+ * Text Indent
1417
+ * @see https://tailwindcss.com/docs/text-indent
1418
+ */
1419
+ indent: [{
1420
+ indent: d()
1421
+ }],
1422
+ /**
1423
+ * Vertical Alignment
1424
+ * @see https://tailwindcss.com/docs/vertical-align
1425
+ */
1426
+ "vertical-align": [{
1427
+ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", i, a]
1428
+ }],
1429
+ /**
1430
+ * Whitespace
1431
+ * @see https://tailwindcss.com/docs/whitespace
1432
+ */
1433
+ whitespace: [{
1434
+ whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
1435
+ }],
1436
+ /**
1437
+ * Word Break
1438
+ * @see https://tailwindcss.com/docs/word-break
1439
+ */
1440
+ break: [{
1441
+ break: ["normal", "words", "all", "keep"]
1442
+ }],
1443
+ /**
1444
+ * Overflow Wrap
1445
+ * @see https://tailwindcss.com/docs/overflow-wrap
1446
+ */
1447
+ wrap: [{
1448
+ wrap: ["break-word", "anywhere", "normal"]
1449
+ }],
1450
+ /**
1451
+ * Hyphens
1452
+ * @see https://tailwindcss.com/docs/hyphens
1453
+ */
1454
+ hyphens: [{
1455
+ hyphens: ["none", "manual", "auto"]
1456
+ }],
1457
+ /**
1458
+ * Content
1459
+ * @see https://tailwindcss.com/docs/content
1460
+ */
1461
+ content: [{
1462
+ content: ["none", i, a]
1463
+ }],
1464
+ // -------------------
1465
+ // --- Backgrounds ---
1466
+ // -------------------
1467
+ /**
1468
+ * Background Attachment
1469
+ * @see https://tailwindcss.com/docs/background-attachment
1470
+ */
1471
+ "bg-attachment": [{
1472
+ bg: ["fixed", "local", "scroll"]
1473
+ }],
1474
+ /**
1475
+ * Background Clip
1476
+ * @see https://tailwindcss.com/docs/background-clip
1477
+ */
1478
+ "bg-clip": [{
1479
+ "bg-clip": ["border", "padding", "content", "text"]
1480
+ }],
1481
+ /**
1482
+ * Background Origin
1483
+ * @see https://tailwindcss.com/docs/background-origin
1484
+ */
1485
+ "bg-origin": [{
1486
+ "bg-origin": ["border", "padding", "content"]
1487
+ }],
1488
+ /**
1489
+ * Background Position
1490
+ * @see https://tailwindcss.com/docs/background-position
1491
+ */
1492
+ "bg-position": [{
1493
+ bg: ue()
1494
+ }],
1495
+ /**
1496
+ * Background Repeat
1497
+ * @see https://tailwindcss.com/docs/background-repeat
1498
+ */
1499
+ "bg-repeat": [{
1500
+ bg: pe()
1501
+ }],
1502
+ /**
1503
+ * Background Size
1504
+ * @see https://tailwindcss.com/docs/background-size
1505
+ */
1506
+ "bg-size": [{
1507
+ bg: be()
1508
+ }],
1509
+ /**
1510
+ * Background Image
1511
+ * @see https://tailwindcss.com/docs/background-image
1512
+ */
1513
+ "bg-image": [{
1514
+ bg: ["none", {
1515
+ linear: [{
1516
+ to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
1517
+ }, V, i, a],
1518
+ radial: ["", i, a],
1519
+ conic: [V, i, a]
1520
+ }, Er, Tr]
1521
+ }],
1522
+ /**
1523
+ * Background Color
1524
+ * @see https://tailwindcss.com/docs/background-color
1525
+ */
1526
+ "bg-color": [{
1527
+ bg: m()
1528
+ }],
1529
+ /**
1530
+ * Gradient Color Stops From Position
1531
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1532
+ */
1533
+ "gradient-from-pos": [{
1534
+ from: oe()
1535
+ }],
1536
+ /**
1537
+ * Gradient Color Stops Via Position
1538
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1539
+ */
1540
+ "gradient-via-pos": [{
1541
+ via: oe()
1542
+ }],
1543
+ /**
1544
+ * Gradient Color Stops To Position
1545
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1546
+ */
1547
+ "gradient-to-pos": [{
1548
+ to: oe()
1549
+ }],
1550
+ /**
1551
+ * Gradient Color Stops From
1552
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1553
+ */
1554
+ "gradient-from": [{
1555
+ from: m()
1556
+ }],
1557
+ /**
1558
+ * Gradient Color Stops Via
1559
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1560
+ */
1561
+ "gradient-via": [{
1562
+ via: m()
1563
+ }],
1564
+ /**
1565
+ * Gradient Color Stops To
1566
+ * @see https://tailwindcss.com/docs/gradient-color-stops
1567
+ */
1568
+ "gradient-to": [{
1569
+ to: m()
1570
+ }],
1571
+ // ---------------
1572
+ // --- Borders ---
1573
+ // ---------------
1574
+ /**
1575
+ * Border Radius
1576
+ * @see https://tailwindcss.com/docs/border-radius
1577
+ */
1578
+ rounded: [{
1579
+ rounded: k()
1580
+ }],
1581
+ /**
1582
+ * Border Radius Start
1583
+ * @see https://tailwindcss.com/docs/border-radius
1584
+ */
1585
+ "rounded-s": [{
1586
+ "rounded-s": k()
1587
+ }],
1588
+ /**
1589
+ * Border Radius End
1590
+ * @see https://tailwindcss.com/docs/border-radius
1591
+ */
1592
+ "rounded-e": [{
1593
+ "rounded-e": k()
1594
+ }],
1595
+ /**
1596
+ * Border Radius Top
1597
+ * @see https://tailwindcss.com/docs/border-radius
1598
+ */
1599
+ "rounded-t": [{
1600
+ "rounded-t": k()
1601
+ }],
1602
+ /**
1603
+ * Border Radius Right
1604
+ * @see https://tailwindcss.com/docs/border-radius
1605
+ */
1606
+ "rounded-r": [{
1607
+ "rounded-r": k()
1608
+ }],
1609
+ /**
1610
+ * Border Radius Bottom
1611
+ * @see https://tailwindcss.com/docs/border-radius
1612
+ */
1613
+ "rounded-b": [{
1614
+ "rounded-b": k()
1615
+ }],
1616
+ /**
1617
+ * Border Radius Left
1618
+ * @see https://tailwindcss.com/docs/border-radius
1619
+ */
1620
+ "rounded-l": [{
1621
+ "rounded-l": k()
1622
+ }],
1623
+ /**
1624
+ * Border Radius Start Start
1625
+ * @see https://tailwindcss.com/docs/border-radius
1626
+ */
1627
+ "rounded-ss": [{
1628
+ "rounded-ss": k()
1629
+ }],
1630
+ /**
1631
+ * Border Radius Start End
1632
+ * @see https://tailwindcss.com/docs/border-radius
1633
+ */
1634
+ "rounded-se": [{
1635
+ "rounded-se": k()
1636
+ }],
1637
+ /**
1638
+ * Border Radius End End
1639
+ * @see https://tailwindcss.com/docs/border-radius
1640
+ */
1641
+ "rounded-ee": [{
1642
+ "rounded-ee": k()
1643
+ }],
1644
+ /**
1645
+ * Border Radius End Start
1646
+ * @see https://tailwindcss.com/docs/border-radius
1647
+ */
1648
+ "rounded-es": [{
1649
+ "rounded-es": k()
1650
+ }],
1651
+ /**
1652
+ * Border Radius Top Left
1653
+ * @see https://tailwindcss.com/docs/border-radius
1654
+ */
1655
+ "rounded-tl": [{
1656
+ "rounded-tl": k()
1657
+ }],
1658
+ /**
1659
+ * Border Radius Top Right
1660
+ * @see https://tailwindcss.com/docs/border-radius
1661
+ */
1662
+ "rounded-tr": [{
1663
+ "rounded-tr": k()
1664
+ }],
1665
+ /**
1666
+ * Border Radius Bottom Right
1667
+ * @see https://tailwindcss.com/docs/border-radius
1668
+ */
1669
+ "rounded-br": [{
1670
+ "rounded-br": k()
1671
+ }],
1672
+ /**
1673
+ * Border Radius Bottom Left
1674
+ * @see https://tailwindcss.com/docs/border-radius
1675
+ */
1676
+ "rounded-bl": [{
1677
+ "rounded-bl": k()
1678
+ }],
1679
+ /**
1680
+ * Border Width
1681
+ * @see https://tailwindcss.com/docs/border-width
1682
+ */
1683
+ "border-w": [{
1684
+ border: w()
1685
+ }],
1686
+ /**
1687
+ * Border Width Inline
1688
+ * @see https://tailwindcss.com/docs/border-width
1689
+ */
1690
+ "border-w-x": [{
1691
+ "border-x": w()
1692
+ }],
1693
+ /**
1694
+ * Border Width Block
1695
+ * @see https://tailwindcss.com/docs/border-width
1696
+ */
1697
+ "border-w-y": [{
1698
+ "border-y": w()
1699
+ }],
1700
+ /**
1701
+ * Border Width Inline Start
1702
+ * @see https://tailwindcss.com/docs/border-width
1703
+ */
1704
+ "border-w-s": [{
1705
+ "border-s": w()
1706
+ }],
1707
+ /**
1708
+ * Border Width Inline End
1709
+ * @see https://tailwindcss.com/docs/border-width
1710
+ */
1711
+ "border-w-e": [{
1712
+ "border-e": w()
1713
+ }],
1714
+ /**
1715
+ * Border Width Block Start
1716
+ * @see https://tailwindcss.com/docs/border-width
1717
+ */
1718
+ "border-w-bs": [{
1719
+ "border-bs": w()
1720
+ }],
1721
+ /**
1722
+ * Border Width Block End
1723
+ * @see https://tailwindcss.com/docs/border-width
1724
+ */
1725
+ "border-w-be": [{
1726
+ "border-be": w()
1727
+ }],
1728
+ /**
1729
+ * Border Width Top
1730
+ * @see https://tailwindcss.com/docs/border-width
1731
+ */
1732
+ "border-w-t": [{
1733
+ "border-t": w()
1734
+ }],
1735
+ /**
1736
+ * Border Width Right
1737
+ * @see https://tailwindcss.com/docs/border-width
1738
+ */
1739
+ "border-w-r": [{
1740
+ "border-r": w()
1741
+ }],
1742
+ /**
1743
+ * Border Width Bottom
1744
+ * @see https://tailwindcss.com/docs/border-width
1745
+ */
1746
+ "border-w-b": [{
1747
+ "border-b": w()
1748
+ }],
1749
+ /**
1750
+ * Border Width Left
1751
+ * @see https://tailwindcss.com/docs/border-width
1752
+ */
1753
+ "border-w-l": [{
1754
+ "border-l": w()
1755
+ }],
1756
+ /**
1757
+ * Divide Width X
1758
+ * @see https://tailwindcss.com/docs/border-width#between-children
1759
+ */
1760
+ "divide-x": [{
1761
+ "divide-x": w()
1762
+ }],
1763
+ /**
1764
+ * Divide Width X Reverse
1765
+ * @see https://tailwindcss.com/docs/border-width#between-children
1766
+ */
1767
+ "divide-x-reverse": ["divide-x-reverse"],
1768
+ /**
1769
+ * Divide Width Y
1770
+ * @see https://tailwindcss.com/docs/border-width#between-children
1771
+ */
1772
+ "divide-y": [{
1773
+ "divide-y": w()
1774
+ }],
1775
+ /**
1776
+ * Divide Width Y Reverse
1777
+ * @see https://tailwindcss.com/docs/border-width#between-children
1778
+ */
1779
+ "divide-y-reverse": ["divide-y-reverse"],
1780
+ /**
1781
+ * Border Style
1782
+ * @see https://tailwindcss.com/docs/border-style
1783
+ */
1784
+ "border-style": [{
1785
+ border: [...Y(), "hidden", "none"]
1786
+ }],
1787
+ /**
1788
+ * Divide Style
1789
+ * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
1790
+ */
1791
+ "divide-style": [{
1792
+ divide: [...Y(), "hidden", "none"]
1793
+ }],
1794
+ /**
1795
+ * Border Color
1796
+ * @see https://tailwindcss.com/docs/border-color
1797
+ */
1798
+ "border-color": [{
1799
+ border: m()
1800
+ }],
1801
+ /**
1802
+ * Border Color Inline
1803
+ * @see https://tailwindcss.com/docs/border-color
1804
+ */
1805
+ "border-color-x": [{
1806
+ "border-x": m()
1807
+ }],
1808
+ /**
1809
+ * Border Color Block
1810
+ * @see https://tailwindcss.com/docs/border-color
1811
+ */
1812
+ "border-color-y": [{
1813
+ "border-y": m()
1814
+ }],
1815
+ /**
1816
+ * Border Color Inline Start
1817
+ * @see https://tailwindcss.com/docs/border-color
1818
+ */
1819
+ "border-color-s": [{
1820
+ "border-s": m()
1821
+ }],
1822
+ /**
1823
+ * Border Color Inline End
1824
+ * @see https://tailwindcss.com/docs/border-color
1825
+ */
1826
+ "border-color-e": [{
1827
+ "border-e": m()
1828
+ }],
1829
+ /**
1830
+ * Border Color Block Start
1831
+ * @see https://tailwindcss.com/docs/border-color
1832
+ */
1833
+ "border-color-bs": [{
1834
+ "border-bs": m()
1835
+ }],
1836
+ /**
1837
+ * Border Color Block End
1838
+ * @see https://tailwindcss.com/docs/border-color
1839
+ */
1840
+ "border-color-be": [{
1841
+ "border-be": m()
1842
+ }],
1843
+ /**
1844
+ * Border Color Top
1845
+ * @see https://tailwindcss.com/docs/border-color
1846
+ */
1847
+ "border-color-t": [{
1848
+ "border-t": m()
1849
+ }],
1850
+ /**
1851
+ * Border Color Right
1852
+ * @see https://tailwindcss.com/docs/border-color
1853
+ */
1854
+ "border-color-r": [{
1855
+ "border-r": m()
1856
+ }],
1857
+ /**
1858
+ * Border Color Bottom
1859
+ * @see https://tailwindcss.com/docs/border-color
1860
+ */
1861
+ "border-color-b": [{
1862
+ "border-b": m()
1863
+ }],
1864
+ /**
1865
+ * Border Color Left
1866
+ * @see https://tailwindcss.com/docs/border-color
1867
+ */
1868
+ "border-color-l": [{
1869
+ "border-l": m()
1870
+ }],
1871
+ /**
1872
+ * Divide Color
1873
+ * @see https://tailwindcss.com/docs/divide-color
1874
+ */
1875
+ "divide-color": [{
1876
+ divide: m()
1877
+ }],
1878
+ /**
1879
+ * Outline Style
1880
+ * @see https://tailwindcss.com/docs/outline-style
1881
+ */
1882
+ "outline-style": [{
1883
+ outline: [...Y(), "none", "hidden"]
1884
+ }],
1885
+ /**
1886
+ * Outline Offset
1887
+ * @see https://tailwindcss.com/docs/outline-offset
1888
+ */
1889
+ "outline-offset": [{
1890
+ "outline-offset": [b, i, a]
1891
+ }],
1892
+ /**
1893
+ * Outline Width
1894
+ * @see https://tailwindcss.com/docs/outline-width
1895
+ */
1896
+ "outline-w": [{
1897
+ outline: ["", b, $, j]
1898
+ }],
1899
+ /**
1900
+ * Outline Color
1901
+ * @see https://tailwindcss.com/docs/outline-color
1902
+ */
1903
+ "outline-color": [{
1904
+ outline: m()
1905
+ }],
1906
+ // ---------------
1907
+ // --- Effects ---
1908
+ // ---------------
1909
+ /**
1910
+ * Box Shadow
1911
+ * @see https://tailwindcss.com/docs/box-shadow
1912
+ */
1913
+ shadow: [{
1914
+ shadow: [
1915
+ // Deprecated since Tailwind CSS v4.0.0
1916
+ "",
1917
+ "none",
1918
+ f,
1919
+ K,
1920
+ J
1921
+ ]
1922
+ }],
1923
+ /**
1924
+ * Box Shadow Color
1925
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
1926
+ */
1927
+ "shadow-color": [{
1928
+ shadow: m()
1929
+ }],
1930
+ /**
1931
+ * Inset Box Shadow
1932
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
1933
+ */
1934
+ "inset-shadow": [{
1935
+ "inset-shadow": ["none", g, K, J]
1936
+ }],
1937
+ /**
1938
+ * Inset Box Shadow Color
1939
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
1940
+ */
1941
+ "inset-shadow-color": [{
1942
+ "inset-shadow": m()
1943
+ }],
1944
+ /**
1945
+ * Ring Width
1946
+ * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
1947
+ */
1948
+ "ring-w": [{
1949
+ ring: w()
1950
+ }],
1951
+ /**
1952
+ * Ring Width Inset
1953
+ * @see https://v3.tailwindcss.com/docs/ring-width#inset-rings
1954
+ * @deprecated since Tailwind CSS v4.0.0
1955
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
1956
+ */
1957
+ "ring-w-inset": ["ring-inset"],
1958
+ /**
1959
+ * Ring Color
1960
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
1961
+ */
1962
+ "ring-color": [{
1963
+ ring: m()
1964
+ }],
1965
+ /**
1966
+ * Ring Offset Width
1967
+ * @see https://v3.tailwindcss.com/docs/ring-offset-width
1968
+ * @deprecated since Tailwind CSS v4.0.0
1969
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
1970
+ */
1971
+ "ring-offset-w": [{
1972
+ "ring-offset": [b, j]
1973
+ }],
1974
+ /**
1975
+ * Ring Offset Color
1976
+ * @see https://v3.tailwindcss.com/docs/ring-offset-color
1977
+ * @deprecated since Tailwind CSS v4.0.0
1978
+ * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
1979
+ */
1980
+ "ring-offset-color": [{
1981
+ "ring-offset": m()
1982
+ }],
1983
+ /**
1984
+ * Inset Ring Width
1985
+ * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
1986
+ */
1987
+ "inset-ring-w": [{
1988
+ "inset-ring": w()
1989
+ }],
1990
+ /**
1991
+ * Inset Ring Color
1992
+ * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
1993
+ */
1994
+ "inset-ring-color": [{
1995
+ "inset-ring": m()
1996
+ }],
1997
+ /**
1998
+ * Text Shadow
1999
+ * @see https://tailwindcss.com/docs/text-shadow
2000
+ */
2001
+ "text-shadow": [{
2002
+ "text-shadow": ["none", v, K, J]
2003
+ }],
2004
+ /**
2005
+ * Text Shadow Color
2006
+ * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
2007
+ */
2008
+ "text-shadow-color": [{
2009
+ "text-shadow": m()
2010
+ }],
2011
+ /**
2012
+ * Opacity
2013
+ * @see https://tailwindcss.com/docs/opacity
2014
+ */
2015
+ opacity: [{
2016
+ opacity: [b, i, a]
2017
+ }],
2018
+ /**
2019
+ * Mix Blend Mode
2020
+ * @see https://tailwindcss.com/docs/mix-blend-mode
2021
+ */
2022
+ "mix-blend": [{
2023
+ "mix-blend": [...fe(), "plus-darker", "plus-lighter"]
2024
+ }],
2025
+ /**
2026
+ * Background Blend Mode
2027
+ * @see https://tailwindcss.com/docs/background-blend-mode
2028
+ */
2029
+ "bg-blend": [{
2030
+ "bg-blend": fe()
2031
+ }],
2032
+ /**
2033
+ * Mask Clip
2034
+ * @see https://tailwindcss.com/docs/mask-clip
2035
+ */
2036
+ "mask-clip": [{
2037
+ "mask-clip": ["border", "padding", "content", "fill", "stroke", "view"]
2038
+ }, "mask-no-clip"],
2039
+ /**
2040
+ * Mask Composite
2041
+ * @see https://tailwindcss.com/docs/mask-composite
2042
+ */
2043
+ "mask-composite": [{
2044
+ mask: ["add", "subtract", "intersect", "exclude"]
2045
+ }],
2046
+ /**
2047
+ * Mask Image
2048
+ * @see https://tailwindcss.com/docs/mask-image
2049
+ */
2050
+ "mask-image-linear-pos": [{
2051
+ "mask-linear": [b]
2052
+ }],
2053
+ "mask-image-linear-from-pos": [{
2054
+ "mask-linear-from": x()
2055
+ }],
2056
+ "mask-image-linear-to-pos": [{
2057
+ "mask-linear-to": x()
2058
+ }],
2059
+ "mask-image-linear-from-color": [{
2060
+ "mask-linear-from": m()
2061
+ }],
2062
+ "mask-image-linear-to-color": [{
2063
+ "mask-linear-to": m()
2064
+ }],
2065
+ "mask-image-t-from-pos": [{
2066
+ "mask-t-from": x()
2067
+ }],
2068
+ "mask-image-t-to-pos": [{
2069
+ "mask-t-to": x()
2070
+ }],
2071
+ "mask-image-t-from-color": [{
2072
+ "mask-t-from": m()
2073
+ }],
2074
+ "mask-image-t-to-color": [{
2075
+ "mask-t-to": m()
2076
+ }],
2077
+ "mask-image-r-from-pos": [{
2078
+ "mask-r-from": x()
2079
+ }],
2080
+ "mask-image-r-to-pos": [{
2081
+ "mask-r-to": x()
2082
+ }],
2083
+ "mask-image-r-from-color": [{
2084
+ "mask-r-from": m()
2085
+ }],
2086
+ "mask-image-r-to-color": [{
2087
+ "mask-r-to": m()
2088
+ }],
2089
+ "mask-image-b-from-pos": [{
2090
+ "mask-b-from": x()
2091
+ }],
2092
+ "mask-image-b-to-pos": [{
2093
+ "mask-b-to": x()
2094
+ }],
2095
+ "mask-image-b-from-color": [{
2096
+ "mask-b-from": m()
2097
+ }],
2098
+ "mask-image-b-to-color": [{
2099
+ "mask-b-to": m()
2100
+ }],
2101
+ "mask-image-l-from-pos": [{
2102
+ "mask-l-from": x()
2103
+ }],
2104
+ "mask-image-l-to-pos": [{
2105
+ "mask-l-to": x()
2106
+ }],
2107
+ "mask-image-l-from-color": [{
2108
+ "mask-l-from": m()
2109
+ }],
2110
+ "mask-image-l-to-color": [{
2111
+ "mask-l-to": m()
2112
+ }],
2113
+ "mask-image-x-from-pos": [{
2114
+ "mask-x-from": x()
2115
+ }],
2116
+ "mask-image-x-to-pos": [{
2117
+ "mask-x-to": x()
2118
+ }],
2119
+ "mask-image-x-from-color": [{
2120
+ "mask-x-from": m()
2121
+ }],
2122
+ "mask-image-x-to-color": [{
2123
+ "mask-x-to": m()
2124
+ }],
2125
+ "mask-image-y-from-pos": [{
2126
+ "mask-y-from": x()
2127
+ }],
2128
+ "mask-image-y-to-pos": [{
2129
+ "mask-y-to": x()
2130
+ }],
2131
+ "mask-image-y-from-color": [{
2132
+ "mask-y-from": m()
2133
+ }],
2134
+ "mask-image-y-to-color": [{
2135
+ "mask-y-to": m()
2136
+ }],
2137
+ "mask-image-radial": [{
2138
+ "mask-radial": [i, a]
2139
+ }],
2140
+ "mask-image-radial-from-pos": [{
2141
+ "mask-radial-from": x()
2142
+ }],
2143
+ "mask-image-radial-to-pos": [{
2144
+ "mask-radial-to": x()
2145
+ }],
2146
+ "mask-image-radial-from-color": [{
2147
+ "mask-radial-from": m()
2148
+ }],
2149
+ "mask-image-radial-to-color": [{
2150
+ "mask-radial-to": m()
2151
+ }],
2152
+ "mask-image-radial-shape": [{
2153
+ "mask-radial": ["circle", "ellipse"]
2154
+ }],
2155
+ "mask-image-radial-size": [{
2156
+ "mask-radial": [{
2157
+ closest: ["side", "corner"],
2158
+ farthest: ["side", "corner"]
2159
+ }]
2160
+ }],
2161
+ "mask-image-radial-pos": [{
2162
+ "mask-radial-at": _()
2163
+ }],
2164
+ "mask-image-conic-pos": [{
2165
+ "mask-conic": [b]
2166
+ }],
2167
+ "mask-image-conic-from-pos": [{
2168
+ "mask-conic-from": x()
2169
+ }],
2170
+ "mask-image-conic-to-pos": [{
2171
+ "mask-conic-to": x()
2172
+ }],
2173
+ "mask-image-conic-from-color": [{
2174
+ "mask-conic-from": m()
2175
+ }],
2176
+ "mask-image-conic-to-color": [{
2177
+ "mask-conic-to": m()
2178
+ }],
2179
+ /**
2180
+ * Mask Mode
2181
+ * @see https://tailwindcss.com/docs/mask-mode
2182
+ */
2183
+ "mask-mode": [{
2184
+ mask: ["alpha", "luminance", "match"]
2185
+ }],
2186
+ /**
2187
+ * Mask Origin
2188
+ * @see https://tailwindcss.com/docs/mask-origin
2189
+ */
2190
+ "mask-origin": [{
2191
+ "mask-origin": ["border", "padding", "content", "fill", "stroke", "view"]
2192
+ }],
2193
+ /**
2194
+ * Mask Position
2195
+ * @see https://tailwindcss.com/docs/mask-position
2196
+ */
2197
+ "mask-position": [{
2198
+ mask: ue()
2199
+ }],
2200
+ /**
2201
+ * Mask Repeat
2202
+ * @see https://tailwindcss.com/docs/mask-repeat
2203
+ */
2204
+ "mask-repeat": [{
2205
+ mask: pe()
2206
+ }],
2207
+ /**
2208
+ * Mask Size
2209
+ * @see https://tailwindcss.com/docs/mask-size
2210
+ */
2211
+ "mask-size": [{
2212
+ mask: be()
2213
+ }],
2214
+ /**
2215
+ * Mask Type
2216
+ * @see https://tailwindcss.com/docs/mask-type
2217
+ */
2218
+ "mask-type": [{
2219
+ "mask-type": ["alpha", "luminance"]
2220
+ }],
2221
+ /**
2222
+ * Mask Image
2223
+ * @see https://tailwindcss.com/docs/mask-image
2224
+ */
2225
+ "mask-image": [{
2226
+ mask: ["none", i, a]
2227
+ }],
2228
+ // ---------------
2229
+ // --- Filters ---
2230
+ // ---------------
2231
+ /**
2232
+ * Filter
2233
+ * @see https://tailwindcss.com/docs/filter
2234
+ */
2235
+ filter: [{
2236
+ filter: [
2237
+ // Deprecated since Tailwind CSS v3.0.0
2238
+ "",
2239
+ "none",
2240
+ i,
2241
+ a
2242
+ ]
2243
+ }],
2244
+ /**
2245
+ * Blur
2246
+ * @see https://tailwindcss.com/docs/blur
2247
+ */
2248
+ blur: [{
2249
+ blur: ge()
2250
+ }],
2251
+ /**
2252
+ * Brightness
2253
+ * @see https://tailwindcss.com/docs/brightness
2254
+ */
2255
+ brightness: [{
2256
+ brightness: [b, i, a]
2257
+ }],
2258
+ /**
2259
+ * Contrast
2260
+ * @see https://tailwindcss.com/docs/contrast
2261
+ */
2262
+ contrast: [{
2263
+ contrast: [b, i, a]
2264
+ }],
2265
+ /**
2266
+ * Drop Shadow
2267
+ * @see https://tailwindcss.com/docs/drop-shadow
2268
+ */
2269
+ "drop-shadow": [{
2270
+ "drop-shadow": [
2271
+ // Deprecated since Tailwind CSS v4.0.0
2272
+ "",
2273
+ "none",
2274
+ R,
2275
+ K,
2276
+ J
2277
+ ]
2278
+ }],
2279
+ /**
2280
+ * Drop Shadow Color
2281
+ * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
2282
+ */
2283
+ "drop-shadow-color": [{
2284
+ "drop-shadow": m()
2285
+ }],
2286
+ /**
2287
+ * Grayscale
2288
+ * @see https://tailwindcss.com/docs/grayscale
2289
+ */
2290
+ grayscale: [{
2291
+ grayscale: ["", b, i, a]
2292
+ }],
2293
+ /**
2294
+ * Hue Rotate
2295
+ * @see https://tailwindcss.com/docs/hue-rotate
2296
+ */
2297
+ "hue-rotate": [{
2298
+ "hue-rotate": [b, i, a]
2299
+ }],
2300
+ /**
2301
+ * Invert
2302
+ * @see https://tailwindcss.com/docs/invert
2303
+ */
2304
+ invert: [{
2305
+ invert: ["", b, i, a]
2306
+ }],
2307
+ /**
2308
+ * Saturate
2309
+ * @see https://tailwindcss.com/docs/saturate
2310
+ */
2311
+ saturate: [{
2312
+ saturate: [b, i, a]
2313
+ }],
2314
+ /**
2315
+ * Sepia
2316
+ * @see https://tailwindcss.com/docs/sepia
2317
+ */
2318
+ sepia: [{
2319
+ sepia: ["", b, i, a]
2320
+ }],
2321
+ /**
2322
+ * Backdrop Filter
2323
+ * @see https://tailwindcss.com/docs/backdrop-filter
2324
+ */
2325
+ "backdrop-filter": [{
2326
+ "backdrop-filter": [
2327
+ // Deprecated since Tailwind CSS v3.0.0
2328
+ "",
2329
+ "none",
2330
+ i,
2331
+ a
2332
+ ]
2333
+ }],
2334
+ /**
2335
+ * Backdrop Blur
2336
+ * @see https://tailwindcss.com/docs/backdrop-blur
2337
+ */
2338
+ "backdrop-blur": [{
2339
+ "backdrop-blur": ge()
2340
+ }],
2341
+ /**
2342
+ * Backdrop Brightness
2343
+ * @see https://tailwindcss.com/docs/backdrop-brightness
2344
+ */
2345
+ "backdrop-brightness": [{
2346
+ "backdrop-brightness": [b, i, a]
2347
+ }],
2348
+ /**
2349
+ * Backdrop Contrast
2350
+ * @see https://tailwindcss.com/docs/backdrop-contrast
2351
+ */
2352
+ "backdrop-contrast": [{
2353
+ "backdrop-contrast": [b, i, a]
2354
+ }],
2355
+ /**
2356
+ * Backdrop Grayscale
2357
+ * @see https://tailwindcss.com/docs/backdrop-grayscale
2358
+ */
2359
+ "backdrop-grayscale": [{
2360
+ "backdrop-grayscale": ["", b, i, a]
2361
+ }],
2362
+ /**
2363
+ * Backdrop Hue Rotate
2364
+ * @see https://tailwindcss.com/docs/backdrop-hue-rotate
2365
+ */
2366
+ "backdrop-hue-rotate": [{
2367
+ "backdrop-hue-rotate": [b, i, a]
2368
+ }],
2369
+ /**
2370
+ * Backdrop Invert
2371
+ * @see https://tailwindcss.com/docs/backdrop-invert
2372
+ */
2373
+ "backdrop-invert": [{
2374
+ "backdrop-invert": ["", b, i, a]
2375
+ }],
2376
+ /**
2377
+ * Backdrop Opacity
2378
+ * @see https://tailwindcss.com/docs/backdrop-opacity
2379
+ */
2380
+ "backdrop-opacity": [{
2381
+ "backdrop-opacity": [b, i, a]
2382
+ }],
2383
+ /**
2384
+ * Backdrop Saturate
2385
+ * @see https://tailwindcss.com/docs/backdrop-saturate
2386
+ */
2387
+ "backdrop-saturate": [{
2388
+ "backdrop-saturate": [b, i, a]
2389
+ }],
2390
+ /**
2391
+ * Backdrop Sepia
2392
+ * @see https://tailwindcss.com/docs/backdrop-sepia
2393
+ */
2394
+ "backdrop-sepia": [{
2395
+ "backdrop-sepia": ["", b, i, a]
2396
+ }],
2397
+ // --------------
2398
+ // --- Tables ---
2399
+ // --------------
2400
+ /**
2401
+ * Border Collapse
2402
+ * @see https://tailwindcss.com/docs/border-collapse
2403
+ */
2404
+ "border-collapse": [{
2405
+ border: ["collapse", "separate"]
2406
+ }],
2407
+ /**
2408
+ * Border Spacing
2409
+ * @see https://tailwindcss.com/docs/border-spacing
2410
+ */
2411
+ "border-spacing": [{
2412
+ "border-spacing": d()
2413
+ }],
2414
+ /**
2415
+ * Border Spacing X
2416
+ * @see https://tailwindcss.com/docs/border-spacing
2417
+ */
2418
+ "border-spacing-x": [{
2419
+ "border-spacing-x": d()
2420
+ }],
2421
+ /**
2422
+ * Border Spacing Y
2423
+ * @see https://tailwindcss.com/docs/border-spacing
2424
+ */
2425
+ "border-spacing-y": [{
2426
+ "border-spacing-y": d()
2427
+ }],
2428
+ /**
2429
+ * Table Layout
2430
+ * @see https://tailwindcss.com/docs/table-layout
2431
+ */
2432
+ "table-layout": [{
2433
+ table: ["auto", "fixed"]
2434
+ }],
2435
+ /**
2436
+ * Caption Side
2437
+ * @see https://tailwindcss.com/docs/caption-side
2438
+ */
2439
+ caption: [{
2440
+ caption: ["top", "bottom"]
2441
+ }],
2442
+ // ---------------------------------
2443
+ // --- Transitions and Animation ---
2444
+ // ---------------------------------
2445
+ /**
2446
+ * Transition Property
2447
+ * @see https://tailwindcss.com/docs/transition-property
2448
+ */
2449
+ transition: [{
2450
+ transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", i, a]
2451
+ }],
2452
+ /**
2453
+ * Transition Behavior
2454
+ * @see https://tailwindcss.com/docs/transition-behavior
2455
+ */
2456
+ "transition-behavior": [{
2457
+ transition: ["normal", "discrete"]
2458
+ }],
2459
+ /**
2460
+ * Transition Duration
2461
+ * @see https://tailwindcss.com/docs/transition-duration
2462
+ */
2463
+ duration: [{
2464
+ duration: [b, "initial", i, a]
2465
+ }],
2466
+ /**
2467
+ * Transition Timing Function
2468
+ * @see https://tailwindcss.com/docs/transition-timing-function
2469
+ */
2470
+ ease: [{
2471
+ ease: ["linear", "initial", N, i, a]
2472
+ }],
2473
+ /**
2474
+ * Transition Delay
2475
+ * @see https://tailwindcss.com/docs/transition-delay
2476
+ */
2477
+ delay: [{
2478
+ delay: [b, i, a]
2479
+ }],
2480
+ /**
2481
+ * Animation
2482
+ * @see https://tailwindcss.com/docs/animation
2483
+ */
2484
+ animate: [{
2485
+ animate: ["none", D, i, a]
2486
+ }],
2487
+ // ------------------
2488
+ // --- Transforms ---
2489
+ // ------------------
2490
+ /**
2491
+ * Backface Visibility
2492
+ * @see https://tailwindcss.com/docs/backface-visibility
2493
+ */
2494
+ backface: [{
2495
+ backface: ["hidden", "visible"]
2496
+ }],
2497
+ /**
2498
+ * Perspective
2499
+ * @see https://tailwindcss.com/docs/perspective
2500
+ */
2501
+ perspective: [{
2502
+ perspective: [z, i, a]
2503
+ }],
2504
+ /**
2505
+ * Perspective Origin
2506
+ * @see https://tailwindcss.com/docs/perspective-origin
2507
+ */
2508
+ "perspective-origin": [{
2509
+ "perspective-origin": L()
2510
+ }],
2511
+ /**
2512
+ * Rotate
2513
+ * @see https://tailwindcss.com/docs/rotate
2514
+ */
2515
+ rotate: [{
2516
+ rotate: q()
2517
+ }],
2518
+ /**
2519
+ * Rotate X
2520
+ * @see https://tailwindcss.com/docs/rotate
2521
+ */
2522
+ "rotate-x": [{
2523
+ "rotate-x": q()
2524
+ }],
2525
+ /**
2526
+ * Rotate Y
2527
+ * @see https://tailwindcss.com/docs/rotate
2528
+ */
2529
+ "rotate-y": [{
2530
+ "rotate-y": q()
2531
+ }],
2532
+ /**
2533
+ * Rotate Z
2534
+ * @see https://tailwindcss.com/docs/rotate
2535
+ */
2536
+ "rotate-z": [{
2537
+ "rotate-z": q()
2538
+ }],
2539
+ /**
2540
+ * Scale
2541
+ * @see https://tailwindcss.com/docs/scale
2542
+ */
2543
+ scale: [{
2544
+ scale: H()
2545
+ }],
2546
+ /**
2547
+ * Scale X
2548
+ * @see https://tailwindcss.com/docs/scale
2549
+ */
2550
+ "scale-x": [{
2551
+ "scale-x": H()
2552
+ }],
2553
+ /**
2554
+ * Scale Y
2555
+ * @see https://tailwindcss.com/docs/scale
2556
+ */
2557
+ "scale-y": [{
2558
+ "scale-y": H()
2559
+ }],
2560
+ /**
2561
+ * Scale Z
2562
+ * @see https://tailwindcss.com/docs/scale
2563
+ */
2564
+ "scale-z": [{
2565
+ "scale-z": H()
2566
+ }],
2567
+ /**
2568
+ * Scale 3D
2569
+ * @see https://tailwindcss.com/docs/scale
2570
+ */
2571
+ "scale-3d": ["scale-3d"],
2572
+ /**
2573
+ * Skew
2574
+ * @see https://tailwindcss.com/docs/skew
2575
+ */
2576
+ skew: [{
2577
+ skew: te()
2578
+ }],
2579
+ /**
2580
+ * Skew X
2581
+ * @see https://tailwindcss.com/docs/skew
2582
+ */
2583
+ "skew-x": [{
2584
+ "skew-x": te()
2585
+ }],
2586
+ /**
2587
+ * Skew Y
2588
+ * @see https://tailwindcss.com/docs/skew
2589
+ */
2590
+ "skew-y": [{
2591
+ "skew-y": te()
2592
+ }],
2593
+ /**
2594
+ * Transform
2595
+ * @see https://tailwindcss.com/docs/transform
2596
+ */
2597
+ transform: [{
2598
+ transform: [i, a, "", "none", "gpu", "cpu"]
2599
+ }],
2600
+ /**
2601
+ * Transform Origin
2602
+ * @see https://tailwindcss.com/docs/transform-origin
2603
+ */
2604
+ "transform-origin": [{
2605
+ origin: L()
2606
+ }],
2607
+ /**
2608
+ * Transform Style
2609
+ * @see https://tailwindcss.com/docs/transform-style
2610
+ */
2611
+ "transform-style": [{
2612
+ transform: ["3d", "flat"]
2613
+ }],
2614
+ /**
2615
+ * Translate
2616
+ * @see https://tailwindcss.com/docs/translate
2617
+ */
2618
+ translate: [{
2619
+ translate: X()
2620
+ }],
2621
+ /**
2622
+ * Translate X
2623
+ * @see https://tailwindcss.com/docs/translate
2624
+ */
2625
+ "translate-x": [{
2626
+ "translate-x": X()
2627
+ }],
2628
+ /**
2629
+ * Translate Y
2630
+ * @see https://tailwindcss.com/docs/translate
2631
+ */
2632
+ "translate-y": [{
2633
+ "translate-y": X()
2634
+ }],
2635
+ /**
2636
+ * Translate Z
2637
+ * @see https://tailwindcss.com/docs/translate
2638
+ */
2639
+ "translate-z": [{
2640
+ "translate-z": X()
2641
+ }],
2642
+ /**
2643
+ * Translate None
2644
+ * @see https://tailwindcss.com/docs/translate
2645
+ */
2646
+ "translate-none": ["translate-none"],
2647
+ // ---------------------
2648
+ // --- Interactivity ---
2649
+ // ---------------------
2650
+ /**
2651
+ * Accent Color
2652
+ * @see https://tailwindcss.com/docs/accent-color
2653
+ */
2654
+ accent: [{
2655
+ accent: m()
2656
+ }],
2657
+ /**
2658
+ * Appearance
2659
+ * @see https://tailwindcss.com/docs/appearance
2660
+ */
2661
+ appearance: [{
2662
+ appearance: ["none", "auto"]
2663
+ }],
2664
+ /**
2665
+ * Caret Color
2666
+ * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2667
+ */
2668
+ "caret-color": [{
2669
+ caret: m()
2670
+ }],
2671
+ /**
2672
+ * Color Scheme
2673
+ * @see https://tailwindcss.com/docs/color-scheme
2674
+ */
2675
+ "color-scheme": [{
2676
+ scheme: ["normal", "dark", "light", "light-dark", "only-dark", "only-light"]
2677
+ }],
2678
+ /**
2679
+ * Cursor
2680
+ * @see https://tailwindcss.com/docs/cursor
2681
+ */
2682
+ cursor: [{
2683
+ cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", i, a]
2684
+ }],
2685
+ /**
2686
+ * Field Sizing
2687
+ * @see https://tailwindcss.com/docs/field-sizing
2688
+ */
2689
+ "field-sizing": [{
2690
+ "field-sizing": ["fixed", "content"]
2691
+ }],
2692
+ /**
2693
+ * Pointer Events
2694
+ * @see https://tailwindcss.com/docs/pointer-events
2695
+ */
2696
+ "pointer-events": [{
2697
+ "pointer-events": ["auto", "none"]
2698
+ }],
2699
+ /**
2700
+ * Resize
2701
+ * @see https://tailwindcss.com/docs/resize
2702
+ */
2703
+ resize: [{
2704
+ resize: ["none", "", "y", "x"]
2705
+ }],
2706
+ /**
2707
+ * Scroll Behavior
2708
+ * @see https://tailwindcss.com/docs/scroll-behavior
2709
+ */
2710
+ "scroll-behavior": [{
2711
+ scroll: ["auto", "smooth"]
2712
+ }],
2713
+ /**
2714
+ * Scroll Margin
2715
+ * @see https://tailwindcss.com/docs/scroll-margin
2716
+ */
2717
+ "scroll-m": [{
2718
+ "scroll-m": d()
2719
+ }],
2720
+ /**
2721
+ * Scroll Margin Inline
2722
+ * @see https://tailwindcss.com/docs/scroll-margin
2723
+ */
2724
+ "scroll-mx": [{
2725
+ "scroll-mx": d()
2726
+ }],
2727
+ /**
2728
+ * Scroll Margin Block
2729
+ * @see https://tailwindcss.com/docs/scroll-margin
2730
+ */
2731
+ "scroll-my": [{
2732
+ "scroll-my": d()
2733
+ }],
2734
+ /**
2735
+ * Scroll Margin Inline Start
2736
+ * @see https://tailwindcss.com/docs/scroll-margin
2737
+ */
2738
+ "scroll-ms": [{
2739
+ "scroll-ms": d()
2740
+ }],
2741
+ /**
2742
+ * Scroll Margin Inline End
2743
+ * @see https://tailwindcss.com/docs/scroll-margin
2744
+ */
2745
+ "scroll-me": [{
2746
+ "scroll-me": d()
2747
+ }],
2748
+ /**
2749
+ * Scroll Margin Block Start
2750
+ * @see https://tailwindcss.com/docs/scroll-margin
2751
+ */
2752
+ "scroll-mbs": [{
2753
+ "scroll-mbs": d()
2754
+ }],
2755
+ /**
2756
+ * Scroll Margin Block End
2757
+ * @see https://tailwindcss.com/docs/scroll-margin
2758
+ */
2759
+ "scroll-mbe": [{
2760
+ "scroll-mbe": d()
2761
+ }],
2762
+ /**
2763
+ * Scroll Margin Top
2764
+ * @see https://tailwindcss.com/docs/scroll-margin
2765
+ */
2766
+ "scroll-mt": [{
2767
+ "scroll-mt": d()
2768
+ }],
2769
+ /**
2770
+ * Scroll Margin Right
2771
+ * @see https://tailwindcss.com/docs/scroll-margin
2772
+ */
2773
+ "scroll-mr": [{
2774
+ "scroll-mr": d()
2775
+ }],
2776
+ /**
2777
+ * Scroll Margin Bottom
2778
+ * @see https://tailwindcss.com/docs/scroll-margin
2779
+ */
2780
+ "scroll-mb": [{
2781
+ "scroll-mb": d()
2782
+ }],
2783
+ /**
2784
+ * Scroll Margin Left
2785
+ * @see https://tailwindcss.com/docs/scroll-margin
2786
+ */
2787
+ "scroll-ml": [{
2788
+ "scroll-ml": d()
2789
+ }],
2790
+ /**
2791
+ * Scroll Padding
2792
+ * @see https://tailwindcss.com/docs/scroll-padding
2793
+ */
2794
+ "scroll-p": [{
2795
+ "scroll-p": d()
2796
+ }],
2797
+ /**
2798
+ * Scroll Padding Inline
2799
+ * @see https://tailwindcss.com/docs/scroll-padding
2800
+ */
2801
+ "scroll-px": [{
2802
+ "scroll-px": d()
2803
+ }],
2804
+ /**
2805
+ * Scroll Padding Block
2806
+ * @see https://tailwindcss.com/docs/scroll-padding
2807
+ */
2808
+ "scroll-py": [{
2809
+ "scroll-py": d()
2810
+ }],
2811
+ /**
2812
+ * Scroll Padding Inline Start
2813
+ * @see https://tailwindcss.com/docs/scroll-padding
2814
+ */
2815
+ "scroll-ps": [{
2816
+ "scroll-ps": d()
2817
+ }],
2818
+ /**
2819
+ * Scroll Padding Inline End
2820
+ * @see https://tailwindcss.com/docs/scroll-padding
2821
+ */
2822
+ "scroll-pe": [{
2823
+ "scroll-pe": d()
2824
+ }],
2825
+ /**
2826
+ * Scroll Padding Block Start
2827
+ * @see https://tailwindcss.com/docs/scroll-padding
2828
+ */
2829
+ "scroll-pbs": [{
2830
+ "scroll-pbs": d()
2831
+ }],
2832
+ /**
2833
+ * Scroll Padding Block End
2834
+ * @see https://tailwindcss.com/docs/scroll-padding
2835
+ */
2836
+ "scroll-pbe": [{
2837
+ "scroll-pbe": d()
2838
+ }],
2839
+ /**
2840
+ * Scroll Padding Top
2841
+ * @see https://tailwindcss.com/docs/scroll-padding
2842
+ */
2843
+ "scroll-pt": [{
2844
+ "scroll-pt": d()
2845
+ }],
2846
+ /**
2847
+ * Scroll Padding Right
2848
+ * @see https://tailwindcss.com/docs/scroll-padding
2849
+ */
2850
+ "scroll-pr": [{
2851
+ "scroll-pr": d()
2852
+ }],
2853
+ /**
2854
+ * Scroll Padding Bottom
2855
+ * @see https://tailwindcss.com/docs/scroll-padding
2856
+ */
2857
+ "scroll-pb": [{
2858
+ "scroll-pb": d()
2859
+ }],
2860
+ /**
2861
+ * Scroll Padding Left
2862
+ * @see https://tailwindcss.com/docs/scroll-padding
2863
+ */
2864
+ "scroll-pl": [{
2865
+ "scroll-pl": d()
2866
+ }],
2867
+ /**
2868
+ * Scroll Snap Align
2869
+ * @see https://tailwindcss.com/docs/scroll-snap-align
2870
+ */
2871
+ "snap-align": [{
2872
+ snap: ["start", "end", "center", "align-none"]
2873
+ }],
2874
+ /**
2875
+ * Scroll Snap Stop
2876
+ * @see https://tailwindcss.com/docs/scroll-snap-stop
2877
+ */
2878
+ "snap-stop": [{
2879
+ snap: ["normal", "always"]
2880
+ }],
2881
+ /**
2882
+ * Scroll Snap Type
2883
+ * @see https://tailwindcss.com/docs/scroll-snap-type
2884
+ */
2885
+ "snap-type": [{
2886
+ snap: ["none", "x", "y", "both"]
2887
+ }],
2888
+ /**
2889
+ * Scroll Snap Type Strictness
2890
+ * @see https://tailwindcss.com/docs/scroll-snap-type
2891
+ */
2892
+ "snap-strictness": [{
2893
+ snap: ["mandatory", "proximity"]
2894
+ }],
2895
+ /**
2896
+ * Touch Action
2897
+ * @see https://tailwindcss.com/docs/touch-action
2898
+ */
2899
+ touch: [{
2900
+ touch: ["auto", "none", "manipulation"]
2901
+ }],
2902
+ /**
2903
+ * Touch Action X
2904
+ * @see https://tailwindcss.com/docs/touch-action
2905
+ */
2906
+ "touch-x": [{
2907
+ "touch-pan": ["x", "left", "right"]
2908
+ }],
2909
+ /**
2910
+ * Touch Action Y
2911
+ * @see https://tailwindcss.com/docs/touch-action
2912
+ */
2913
+ "touch-y": [{
2914
+ "touch-pan": ["y", "up", "down"]
2915
+ }],
2916
+ /**
2917
+ * Touch Action Pinch Zoom
2918
+ * @see https://tailwindcss.com/docs/touch-action
2919
+ */
2920
+ "touch-pz": ["touch-pinch-zoom"],
2921
+ /**
2922
+ * User Select
2923
+ * @see https://tailwindcss.com/docs/user-select
2924
+ */
2925
+ select: [{
2926
+ select: ["none", "text", "all", "auto"]
2927
+ }],
2928
+ /**
2929
+ * Will Change
2930
+ * @see https://tailwindcss.com/docs/will-change
2931
+ */
2932
+ "will-change": [{
2933
+ "will-change": ["auto", "scroll", "contents", "transform", i, a]
2934
+ }],
2935
+ // -----------
2936
+ // --- SVG ---
2937
+ // -----------
2938
+ /**
2939
+ * Fill
2940
+ * @see https://tailwindcss.com/docs/fill
2941
+ */
2942
+ fill: [{
2943
+ fill: ["none", ...m()]
2944
+ }],
2945
+ /**
2946
+ * Stroke Width
2947
+ * @see https://tailwindcss.com/docs/stroke-width
2948
+ */
2949
+ "stroke-w": [{
2950
+ stroke: [b, $, j, ze]
2951
+ }],
2952
+ /**
2953
+ * Stroke
2954
+ * @see https://tailwindcss.com/docs/stroke
2955
+ */
2956
+ stroke: [{
2957
+ stroke: ["none", ...m()]
2958
+ }],
2959
+ // ---------------------
2960
+ // --- Accessibility ---
2961
+ // ---------------------
2962
+ /**
2963
+ * Forced Color Adjust
2964
+ * @see https://tailwindcss.com/docs/forced-color-adjust
2965
+ */
2966
+ "forced-color-adjust": [{
2967
+ "forced-color-adjust": ["auto", "none"]
2968
+ }]
2969
+ },
2970
+ conflictingClassGroups: {
2971
+ overflow: ["overflow-x", "overflow-y"],
2972
+ overscroll: ["overscroll-x", "overscroll-y"],
2973
+ inset: ["inset-x", "inset-y", "inset-bs", "inset-be", "start", "end", "top", "right", "bottom", "left"],
2974
+ "inset-x": ["right", "left"],
2975
+ "inset-y": ["top", "bottom"],
2976
+ flex: ["basis", "grow", "shrink"],
2977
+ gap: ["gap-x", "gap-y"],
2978
+ p: ["px", "py", "ps", "pe", "pbs", "pbe", "pt", "pr", "pb", "pl"],
2979
+ px: ["pr", "pl"],
2980
+ py: ["pt", "pb"],
2981
+ m: ["mx", "my", "ms", "me", "mbs", "mbe", "mt", "mr", "mb", "ml"],
2982
+ mx: ["mr", "ml"],
2983
+ my: ["mt", "mb"],
2984
+ size: ["w", "h"],
2985
+ "font-size": ["leading"],
2986
+ "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
2987
+ "fvn-ordinal": ["fvn-normal"],
2988
+ "fvn-slashed-zero": ["fvn-normal"],
2989
+ "fvn-figure": ["fvn-normal"],
2990
+ "fvn-spacing": ["fvn-normal"],
2991
+ "fvn-fraction": ["fvn-normal"],
2992
+ "line-clamp": ["display", "overflow"],
2993
+ rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
2994
+ "rounded-s": ["rounded-ss", "rounded-es"],
2995
+ "rounded-e": ["rounded-se", "rounded-ee"],
2996
+ "rounded-t": ["rounded-tl", "rounded-tr"],
2997
+ "rounded-r": ["rounded-tr", "rounded-br"],
2998
+ "rounded-b": ["rounded-br", "rounded-bl"],
2999
+ "rounded-l": ["rounded-tl", "rounded-bl"],
3000
+ "border-spacing": ["border-spacing-x", "border-spacing-y"],
3001
+ "border-w": ["border-w-x", "border-w-y", "border-w-s", "border-w-e", "border-w-bs", "border-w-be", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
3002
+ "border-w-x": ["border-w-r", "border-w-l"],
3003
+ "border-w-y": ["border-w-t", "border-w-b"],
3004
+ "border-color": ["border-color-x", "border-color-y", "border-color-s", "border-color-e", "border-color-bs", "border-color-be", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
3005
+ "border-color-x": ["border-color-r", "border-color-l"],
3006
+ "border-color-y": ["border-color-t", "border-color-b"],
3007
+ translate: ["translate-x", "translate-y", "translate-none"],
3008
+ "translate-none": ["translate", "translate-x", "translate-y", "translate-z"],
3009
+ "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mbs", "scroll-mbe", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
3010
+ "scroll-mx": ["scroll-mr", "scroll-ml"],
3011
+ "scroll-my": ["scroll-mt", "scroll-mb"],
3012
+ "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pbs", "scroll-pbe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
3013
+ "scroll-px": ["scroll-pr", "scroll-pl"],
3014
+ "scroll-py": ["scroll-pt", "scroll-pb"],
3015
+ touch: ["touch-x", "touch-y", "touch-pz"],
3016
+ "touch-x": ["touch"],
3017
+ "touch-y": ["touch"],
3018
+ "touch-pz": ["touch"]
3019
+ },
3020
+ conflictingClassGroupModifiers: {
3021
+ "font-size": ["leading"]
3022
+ },
3023
+ orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
3024
+ };
3025
+ }, Lr = /* @__PURE__ */ hr(_r);
3026
+ function Wr(...e) {
3027
+ return Lr(Re(e));
3028
+ }
3029
+ const Fr = Be(
3030
+ "group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
3031
+ {
3032
+ variants: {
3033
+ variant: {
3034
+ default: "bg-primary text-primary-foreground [a]:hover:bg-primary/80",
3035
+ outline: "border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",
3036
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",
3037
+ ghost: "hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",
3038
+ destructive: "bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",
3039
+ link: "text-primary underline-offset-4 hover:underline"
3040
+ },
3041
+ size: {
3042
+ default: "h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",
3043
+ xs: "h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",
3044
+ sm: "h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",
3045
+ lg: "h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3",
3046
+ icon: "size-8",
3047
+ "icon-xs": "size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3",
3048
+ "icon-sm": "size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg",
3049
+ "icon-lg": "size-9"
3050
+ }
3051
+ },
3052
+ defaultVariants: {
3053
+ variant: "default",
3054
+ size: "default"
3055
+ }
3056
+ }
3057
+ );
3058
+ function $r({
3059
+ className: e,
3060
+ variant: o = "default",
3061
+ size: r = "default",
3062
+ asChild: t = !1,
3063
+ ...n
3064
+ }) {
3065
+ return /* @__PURE__ */ se(
3066
+ t ? Ue : "button",
3067
+ {
3068
+ "data-slot": "button",
3069
+ "data-variant": o,
3070
+ "data-size": r,
3071
+ className: Wr(Fr({ variant: o, size: r, className: e })),
3072
+ ...n
3073
+ }
3074
+ );
3075
+ }
3076
+ export {
3077
+ $r as Button,
3078
+ Fr as buttonVariants
3079
+ };