fiboui 2.6.0 → 2.6.2

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/server.js CHANGED
@@ -1,27 +1,27 @@
1
- var ki = Object.defineProperty;
2
- var _i = (t, o, i) => o in t ? ki(t, o, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[o] = i;
3
- var c = (t, o, i) => _i(t, typeof o != "symbol" ? o + "" : o, i);
1
+ var _i = Object.defineProperty;
2
+ var zi = (t, o, i) => o in t ? _i(t, o, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[o] = i;
3
+ var c = (t, o, i) => zi(t, typeof o != "symbol" ? o + "" : o, i);
4
4
  import p from "react";
5
- function zi(t) {
5
+ function Si(t) {
6
6
  return !!t && typeof t == "object" && "build" in t && typeof t.build == "function";
7
7
  }
8
8
  function _o(t) {
9
- return zi(t) ? t.build() : (p.isValidElement(t), t);
9
+ return Si(t) ? t.build() : (p.isValidElement(t), t);
10
10
  }
11
11
  function zo(t) {
12
12
  return typeof t == "string" || typeof t == "number";
13
13
  }
14
- function Si(t, o) {
14
+ function Ci(t, o) {
15
15
  return p.isValidElement(t) && zo(t.key) && t.key !== "" ? t.key : `.$fibo-${o}`;
16
16
  }
17
- function Ci(t, o) {
18
- return !p.isValidElement(t) || zo(t.key) && t.key !== "" ? t : p.cloneElement(t, { key: Si(t, o) });
17
+ function Fi(t, o) {
18
+ return !p.isValidElement(t) || zo(t.key) && t.key !== "" ? t : p.cloneElement(t, { key: Ci(t, o) });
19
19
  }
20
20
  function Eo(t) {
21
21
  if (t == null)
22
22
  return [];
23
23
  const o = typeof t == "function" ? t() : t;
24
- return (Array.isArray(o) ? o : [o]).map((e, r) => Ci(_o(e), r));
24
+ return (Array.isArray(o) ? o : [o]).map((e, r) => Fi(_o(e), r));
25
25
  }
26
26
  const Ao = [
27
27
  "fadeIn",
@@ -39,12 +39,12 @@ const Ao = [
39
39
  "blur",
40
40
  "pop",
41
41
  "bounce"
42
- ], Fi = {
42
+ ], Ti = {
43
43
  fade: "fadeIn",
44
44
  scale: "scaleIn",
45
45
  blur: "blurIn"
46
46
  };
47
- function Ti(t) {
47
+ function $i(t) {
48
48
  if (!t || typeof t != "object") return !1;
49
49
  const o = t;
50
50
  return typeof o.from == "object" && o.from !== null && typeof o.to == "object" && o.to !== null;
@@ -56,13 +56,13 @@ function Bo(t) {
56
56
  return `${r}: ${n}`;
57
57
  }).join("; ");
58
58
  }
59
- function $i(t) {
59
+ function Ni(t) {
60
60
  let o = 5381;
61
61
  for (let i = 0; i < t.length; i += 1) o = (o << 5) + o ^ t.charCodeAt(i);
62
62
  return (o >>> 0).toString(36);
63
63
  }
64
- function Ni(t) {
65
- const o = Fi[t] ?? t;
64
+ function Ri(t) {
65
+ const o = Ti[t] ?? t;
66
66
  if (!Ao.includes(o))
67
67
  throw new Error(`Unknown motion preset "${t}". Use: ${Ao.join(", ")}`);
68
68
  return o;
@@ -321,77 +321,77 @@ const D = class D {
321
321
  };
322
322
  c(D, "instance");
323
323
  let H = D;
324
- const g = H.getInstance();
325
- function j() {
324
+ const m = H.getInstance();
325
+ function X() {
326
326
  H.getInstance().ensureDefaults();
327
327
  }
328
- function Zo() {
328
+ function qo() {
329
329
  return H.getInstance().getCss();
330
330
  }
331
- function Me() {
332
- const o = `<style id="fibo-dynamic-styles" data-fibo="1">${Zo().replace(/<\/style/gi, "<\\/style")}</style>`;
331
+ function We() {
332
+ const o = `<style id="fibo-dynamic-styles" data-fibo="1">${qo().replace(/<\/style/gi, "<\\/style")}</style>`;
333
333
  return typeof document > "u" && H.resetForTests(), o;
334
334
  }
335
- function We() {
335
+ function Pe() {
336
336
  H.resetForTests();
337
337
  }
338
- function qo() {
339
- return j(), p.createElement("style", {
338
+ function Jo() {
339
+ return X(), p.createElement("style", {
340
340
  id: "fibo-dynamic-styles",
341
341
  "data-fibo": "1",
342
342
  suppressHydrationWarning: !0,
343
- dangerouslySetInnerHTML: { __html: Zo() }
343
+ dangerouslySetInnerHTML: { __html: qo() }
344
344
  });
345
345
  }
346
- function Ri() {
347
- return j(), p.createElement("style", {
346
+ function Ei() {
347
+ return X(), p.createElement("style", {
348
348
  id: "fibo-motion-presets",
349
349
  "data-fibo-motion": "1",
350
350
  dangerouslySetInnerHTML: { __html: yo }
351
351
  });
352
352
  }
353
- function Pe(t, o = {}) {
353
+ function Le(t, o = {}) {
354
354
  const { styles: i = !0 } = o;
355
355
  function e() {
356
356
  const r = _o(t());
357
- return i ? p.createElement(p.Fragment, null, r, p.createElement(qo)) : p.createElement(p.Fragment, null, r);
357
+ return i ? p.createElement(p.Fragment, null, r, p.createElement(Jo)) : p.createElement(p.Fragment, null, r);
358
358
  }
359
359
  return e.displayName = "FiboPage", e;
360
360
  }
361
- function Le(t) {
361
+ function Xe(t) {
362
362
  return p.createElement(
363
363
  p.Fragment,
364
364
  null,
365
365
  _o(t),
366
- p.createElement(qo)
366
+ p.createElement(Jo)
367
367
  );
368
368
  }
369
- const Jo = {
369
+ const Qo = {
370
370
  sm: 640,
371
371
  md: 768,
372
372
  lg: 1024,
373
373
  xl: 1280
374
374
  };
375
- function Ei(t) {
376
- return t in Jo;
377
- }
378
375
  function Ai(t) {
379
- if (Ei(t))
380
- return `(min-width: ${Jo[t]}px)`;
376
+ return t in Qo;
377
+ }
378
+ function Bi(t) {
379
+ if (Ai(t))
380
+ return `(min-width: ${Qo[t]}px)`;
381
381
  const o = t.trim();
382
382
  return o.startsWith("@media") ? o.replace(/^@media\s+/, "") : o;
383
383
  }
384
- class Bi {
384
+ class Ii {
385
385
  constructor() {
386
386
  c(this, "activeEffect", null);
387
387
  }
388
388
  }
389
- const Qo = new Bi(), Mo = [Qo];
390
- function Ii() {
391
- return Mo[Mo.length - 1] ?? Qo;
392
- }
389
+ const oi = new Ii(), Mo = [oi];
393
390
  function Mi() {
394
- return Ii().activeEffect;
391
+ return Mo[Mo.length - 1] ?? oi;
392
+ }
393
+ function Wi() {
394
+ return Mi().activeEffect;
395
395
  }
396
396
  class bo {
397
397
  constructor(o) {
@@ -401,7 +401,7 @@ class bo {
401
401
  this._value = o;
402
402
  }
403
403
  get value() {
404
- const o = Mi();
404
+ const o = Wi();
405
405
  return o && o.track(this), this._value;
406
406
  }
407
407
  set value(o) {
@@ -430,52 +430,52 @@ class bo {
430
430
  }
431
431
  }
432
432
  }
433
- function Wi({ children: t }) {
433
+ function Pi({ children: t }) {
434
434
  return t();
435
435
  }
436
- function Pi({
436
+ function Li({
437
437
  children: t
438
438
  }) {
439
439
  return t();
440
440
  }
441
- function Li({
441
+ function Xi({
442
442
  children: t
443
443
  }) {
444
444
  return t();
445
445
  }
446
- function ji({ children: t }) {
446
+ function Oi({ children: t }) {
447
447
  return t;
448
448
  }
449
- function Xi({
449
+ function ji({
450
450
  children: t
451
451
  }) {
452
452
  return t;
453
453
  }
454
- function oi(t) {
454
+ function ii(t) {
455
455
  var o, i, e = "";
456
456
  if (typeof t == "string" || typeof t == "number") e += t;
457
457
  else if (typeof t == "object") if (Array.isArray(t)) {
458
458
  var r = t.length;
459
- for (o = 0; o < r; o++) t[o] && (i = oi(t[o])) && (e && (e += " "), e += i);
459
+ for (o = 0; o < r; o++) t[o] && (i = ii(t[o])) && (e && (e += " "), e += i);
460
460
  } else for (i in t) t[i] && (e && (e += " "), e += i);
461
461
  return e;
462
462
  }
463
- function Oi() {
464
- for (var t, o, i = 0, e = "", r = arguments.length; i < r; i++) (t = arguments[i]) && (o = oi(t)) && (e && (e += " "), e += o);
463
+ function Yi() {
464
+ for (var t, o, i = 0, e = "", r = arguments.length; i < r; i++) (t = arguments[i]) && (o = ii(t)) && (e && (e += " "), e += o);
465
465
  return e;
466
466
  }
467
- function Yi(t) {
467
+ function Vi(t) {
468
468
  const o = t.match(/oklch\(\s*([\d.]+)\s+([\d.]+)\s+([\d.]+)\s*\)/);
469
469
  if (!o)
470
470
  return t;
471
- const [, i, e, r] = o, n = parseFloat(i), f = parseFloat(e), s = parseFloat(r), a = f * Math.cos(s * Math.PI / 180), b = f * Math.sin(s * Math.PI / 180), l = n + 0.3963377774 * a + 0.2158037573 * b, x = n - 0.1055613458 * a - 0.0638541728 * b, d = n - 0.0894841775 * a - 1.291485548 * b, v = l * l * l, z = x * x * x, k = d * d * d, _ = 4.0767416621 * v - 3.3077115913 * z + 0.2309699292 * k, R = -1.2684380046 * v + 2.6097574011 * z - 0.3413193965 * k, $ = -0.0041960863 * v - 0.7034186147 * z + 1.707614701 * k, S = (m) => m >= 31308e-7 ? 1.055 * m ** (1 / 2.4) - 0.055 : 12.92 * m, C = Math.max(0, Math.min(1, S(_))), F = Math.max(0, Math.min(1, S(R))), M = Math.max(0, Math.min(1, S($))), W = (m) => {
471
+ const [, i, e, r] = o, n = parseFloat(i), f = parseFloat(e), s = parseFloat(r), a = f * Math.cos(s * Math.PI / 180), b = f * Math.sin(s * Math.PI / 180), l = n + 0.3963377774 * a + 0.2158037573 * b, x = n - 0.1055613458 * a - 0.0638541728 * b, d = n - 0.0894841775 * a - 1.291485548 * b, v = l * l * l, z = x * x * x, k = d * d * d, _ = 4.0767416621 * v - 3.3077115913 * z + 0.2309699292 * k, R = -1.2684380046 * v + 2.6097574011 * z - 0.3413193965 * k, $ = -0.0041960863 * v - 0.7034186147 * z + 1.707614701 * k, S = (g) => g >= 31308e-7 ? 1.055 * g ** (1 / 2.4) - 0.055 : 12.92 * g, C = Math.max(0, Math.min(1, S(_))), F = Math.max(0, Math.min(1, S(R))), M = Math.max(0, Math.min(1, S($))), W = (g) => {
472
472
  var G;
473
- const E = (G = Math.round(m * 255).toString(16)) == null ? void 0 : G.toUpperCase();
473
+ const E = (G = Math.round(g * 255).toString(16)) == null ? void 0 : G.toUpperCase();
474
474
  return E.length === 1 ? `0${E}` : E;
475
475
  };
476
476
  return `#${W(C)}${W(F)}${W(M)}`;
477
477
  }
478
- function Vi(t) {
478
+ function Di(t) {
479
479
  const o = {}, i = {}, e = t.split(`
480
480
  `);
481
481
  for (const r of e) {
@@ -484,7 +484,7 @@ function Vi(t) {
484
484
  continue;
485
485
  const f = n.match(/^--color-([a-z0-9\-]+): (oklch\([^)]+\));?$/), s = n.match(/^--color-([a-z0-9\-]+): (#[a-fA-F0-9]{3,6});?$/);
486
486
  if (f) {
487
- const [, a, b] = f, l = Yi(b);
487
+ const [, a, b] = f, l = Vi(b);
488
488
  o[l.toLowerCase()] = `bg-${a}`, i[l.toLowerCase()] = `text-${a}`;
489
489
  } else if (s) {
490
490
  const [, a, b] = s;
@@ -493,13 +493,13 @@ function Vi(t) {
493
493
  }
494
494
  return { background: o, text: i };
495
495
  }
496
- const Di = (t) => {
496
+ const Hi = (t) => {
497
497
  if (t !== void 0)
498
498
  return typeof t == "number" ? `${t}px` : t.toString();
499
499
  }, J = (t, o) => {
500
- const i = Di(o);
500
+ const i = Hi(o);
501
501
  return i === void 0 ? "" : `${t}-[${i}]`;
502
- }, Hi = `
502
+ }, Gi = `
503
503
  --color-red-50: oklch(0.971 0.013 17.38);
504
504
  --color-red-100: oklch(0.936 0.032 17.717);
505
505
  --color-red-200: oklch(0.885 0.062 18.334);
@@ -744,7 +744,7 @@ const Di = (t) => {
744
744
  --color-stone-950: oklch(0.147 0.004 49.25);
745
745
  --color-black: #000;
746
746
  --color-white: #fff;
747
- `, Gi = Vi(Hi), ii = {
747
+ `, Ui = Di(Gi), ti = {
748
748
  borderRadius: {
749
749
  0: "rounded-none",
750
750
  "0px": "rounded-none",
@@ -841,7 +841,7 @@ const Di = (t) => {
841
841
  fixed: "fixed",
842
842
  sticky: "sticky"
843
843
  }
844
- }, Ui = (t, o) => ({
844
+ }, Ki = (t, o) => ({
845
845
  // 背景色
846
846
  backgroundColor: (i) => i.backgroundColor ? [t.background[i.backgroundColor.toLowerCase()] || `bg-[${i.backgroundColor}]`] : [],
847
847
  // 文字色
@@ -850,7 +850,7 @@ const Di = (t) => {
850
850
  borderRadius: (i) => {
851
851
  if (!i.borderRadius)
852
852
  return [];
853
- const e = ii.borderRadius[i.borderRadius] || J("rounded", i.borderRadius);
853
+ const e = ti.borderRadius[i.borderRadius] || J("rounded", i.borderRadius);
854
854
  return e ? [e] : [];
855
855
  },
856
856
  // 外边距
@@ -997,7 +997,7 @@ const Di = (t) => {
997
997
  },
998
998
  // 自定义类名
999
999
  className: (i) => i.className ? [i.className] : []
1000
- }), Ki = {
1000
+ }), Zi = {
1001
1001
  backgroundColor: "backgroundColor",
1002
1002
  color: "color",
1003
1003
  borderRadius: "borderRadius",
@@ -1031,10 +1031,10 @@ const Di = (t) => {
1031
1031
  position: "position",
1032
1032
  opacity: "opacity",
1033
1033
  className: "className"
1034
- }, Zi = (t, o) => {
1035
- const i = (o == null ? void 0 : o.colorMaps) || Gi, e = (o == null ? void 0 : o.styleMaps) || ii, r = Ui(i, e), n = [], f = /* @__PURE__ */ new Set();
1034
+ }, qi = (t, o) => {
1035
+ const i = (o == null ? void 0 : o.colorMaps) || Ui, e = (o == null ? void 0 : o.styleMaps) || ti, r = Ki(i, e), n = [], f = /* @__PURE__ */ new Set();
1036
1036
  return Object.keys(t).forEach((s) => {
1037
- const a = Ki[s];
1037
+ const a = Zi[s];
1038
1038
  if (a && !f.has(a)) {
1039
1039
  const b = r[a];
1040
1040
  if (b) {
@@ -1044,23 +1044,23 @@ const Di = (t) => {
1044
1044
  }
1045
1045
  }), n.filter(Boolean).join(" ");
1046
1046
  };
1047
- function qi({ children: t }) {
1047
+ function Ji({ children: t }) {
1048
1048
  return t;
1049
1049
  }
1050
- function Ji({ children: t }) {
1050
+ function Qi({ children: t }) {
1051
1051
  return p.createElement(p.Fragment, null, t);
1052
1052
  }
1053
- function Qi({ children: t }) {
1053
+ function ot({ children: t }) {
1054
1054
  return t;
1055
1055
  }
1056
- const Wo = /* @__PURE__ */ new Map(), ot = {
1056
+ const Wo = /* @__PURE__ */ new Map(), it = {
1057
1057
  easeIn: "ease-in",
1058
1058
  easeOut: "ease-out",
1059
1059
  easeInOut: "ease-in-out",
1060
1060
  linear: "linear",
1061
1061
  ease: "ease"
1062
1062
  };
1063
- function ti(t = {}) {
1063
+ function ei(t = {}) {
1064
1064
  const o = t.stiffness ?? 170, i = t.damping ?? 26, e = t.mass ?? 1, r = `${o}:${i}:${e}`, n = Wo.get(r);
1065
1065
  if (n) return n;
1066
1066
  const f = 1 / 60, s = 1;
@@ -1080,9 +1080,9 @@ function ti(t = {}) {
1080
1080
  return Wo.set(r, z), z;
1081
1081
  }
1082
1082
  function oo(t, o) {
1083
- return t === "spring" ? ti(o) : ot[t] ?? t;
1083
+ return t === "spring" ? ei(o) : it[t] ?? t;
1084
1084
  }
1085
- const ei = [
1085
+ const ri = [
1086
1086
  // —— 2D Transitions ——
1087
1087
  "grow",
1088
1088
  "shrink",
@@ -1299,29 +1299,29 @@ const ei = [
1299
1299
  "hvr-float": "float",
1300
1300
  "hvr-sweep-to-right": "sweepToRight"
1301
1301
  };
1302
- function it(t) {
1302
+ function tt(t) {
1303
1303
  return t.replace(/[A-Z]/g, (o) => `-${o.toLowerCase()}`);
1304
1304
  }
1305
1305
  function Lo(t) {
1306
- return ei.includes(t);
1306
+ return ri.includes(t);
1307
1307
  }
1308
- function tt(t) {
1308
+ function et(t) {
1309
1309
  const o = t.trim(), i = Po[o] ?? Po[o.toLowerCase()];
1310
1310
  if (i) return i;
1311
1311
  if (Lo(o)) return o;
1312
1312
  const e = o.replace(/-([a-z])/g, (r, n) => n.toUpperCase());
1313
1313
  if (Lo(e)) return e;
1314
1314
  throw new Error(
1315
- `Unknown interaction effect "${t}". Use one of ${ei.length} presets — see INTERACTION_EFFECTS.`
1315
+ `Unknown interaction effect "${t}". Use one of ${ri.length} presets — see INTERACTION_EFFECTS.`
1316
1316
  );
1317
1317
  }
1318
- function et(t, o = !1) {
1318
+ function rt(t, o = !1) {
1319
1319
  return o ? `fibo-fx-on-group-${t}` : `fibo-fx-on-${t}`;
1320
1320
  }
1321
- function rt(t) {
1322
- return `fibo-fx-${it(t)}`;
1321
+ function nt(t) {
1322
+ return `fibo-fx-${tt(t)}`;
1323
1323
  }
1324
- const nt = `
1324
+ const ft = `
1325
1325
  @keyframes fibo-fx-pulse { 25% { transform: scale(1.1); } 75% { transform: scale(0.9); } }
1326
1326
  @keyframes fibo-fx-pulse-grow { to { transform: scale(1.1); } }
1327
1327
  @keyframes fibo-fx-pulse-shrink { to { transform: scale(0.9); } }
@@ -2614,12 +2614,12 @@ const nt = `
2614
2614
  }
2615
2615
  }
2616
2616
  `.trim();
2617
- let jo = !1;
2618
- function ft() {
2619
- if (jo) return;
2620
- jo = !0;
2617
+ let Xo = !1;
2618
+ function st() {
2619
+ if (Xo) return;
2620
+ Xo = !0;
2621
2621
  const t = H.getInstance();
2622
- t.ensureDefaults(), t.injectExtra(nt, "fibo-interaction-fx");
2622
+ t.ensureDefaults(), t.injectExtra(ft, "fibo-interaction-fx");
2623
2623
  }
2624
2624
  function no(t, o, i, e = 0) {
2625
2625
  const r = (Array.isArray(t) ? t : [t]).flatMap((s) => String(s).split(",")).map((s) => s.trim()).filter(Boolean);
@@ -2631,27 +2631,27 @@ function mo(t) {
2631
2631
  const o = { ...t };
2632
2632
  let i = !1;
2633
2633
  const e = o.background;
2634
- typeof e == "string" && e.trim() && o.backgroundColor == null && at(e) && (o.backgroundColor = e, delete o.background, i = !0);
2634
+ typeof e == "string" && e.trim() && o.backgroundColor == null && ct(e) && (o.backgroundColor = e, delete o.background, i = !0);
2635
2635
  const r = o.border;
2636
2636
  if (typeof r == "string" && r.trim()) {
2637
- const n = ct(r);
2637
+ const n = lt(r);
2638
2638
  n && (o.borderWidth == null && n.width != null && (o.borderWidth = n.width), o.borderStyle == null && n.style != null && (o.borderStyle = n.style), o.borderColor == null && n.color != null && (o.borderColor = n.color), delete o.border, i = !0);
2639
2639
  }
2640
2640
  return i ? o : t;
2641
2641
  }
2642
- const st = "translate3d(0, 0, 0)";
2643
- function Xo(t) {
2644
- return t.transform != null && String(t.transform).trim() !== "" ? t : { ...t, transform: st };
2642
+ const at = "translate3d(0, 0, 0)";
2643
+ function Oo(t) {
2644
+ return t.transform != null && String(t.transform).trim() !== "" ? t : { ...t, transform: at };
2645
2645
  }
2646
- function Oo(t, o) {
2646
+ function jo(t, o) {
2647
2647
  const i = typeof o == "number" ? `${o}px` : o;
2648
2648
  return t === "x" ? `translate3d(${i}, 0, 0)` : `translate3d(0, ${i}, 0)`;
2649
2649
  }
2650
- function at(t) {
2650
+ function ct(t) {
2651
2651
  const o = t.trim().toLowerCase();
2652
2652
  return !(!o || o.includes("gradient(") || o.includes("url(") || o.includes("image(") || o.includes("element(") || o.startsWith("repeat") || o.includes(" / "));
2653
2653
  }
2654
- function ct(t) {
2654
+ function lt(t) {
2655
2655
  const o = t.trim();
2656
2656
  if (!o) return null;
2657
2657
  const i = o.match(/^(\S+)\s+(\S+)\s+(.+)$/);
@@ -2695,7 +2695,7 @@ const Yo = /* @__PURE__ */ new Set([
2695
2695
  function So(t) {
2696
2696
  return t.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase();
2697
2697
  }
2698
- const lt = {
2698
+ const bt = {
2699
2699
  paddingHorizontal: ["paddingLeft", "paddingRight"],
2700
2700
  paddingVertical: ["paddingTop", "paddingBottom"],
2701
2701
  paddingX: ["paddingLeft", "paddingRight"],
@@ -2727,11 +2727,11 @@ const lt = {
2727
2727
  gapX: ["columnGap"],
2728
2728
  gapY: ["rowGap"]
2729
2729
  };
2730
- function ri(t) {
2731
- const o = lt[t];
2730
+ function ni(t) {
2731
+ const o = bt[t];
2732
2732
  return o ? [...o] : null;
2733
2733
  }
2734
- function ni(t, o) {
2734
+ function fi(t, o) {
2735
2735
  if (o == null) return "";
2736
2736
  if (typeof o == "boolean") return o ? "true" : "false";
2737
2737
  if (typeof o == "number")
@@ -2739,7 +2739,7 @@ function ni(t, o) {
2739
2739
  const i = String(o);
2740
2740
  return (i === "0" || i === "0px") && Vo.has(t) ? "none" : i;
2741
2741
  }
2742
- const bt = {
2742
+ const ut = {
2743
2743
  "background-color": ["background-color"],
2744
2744
  "border-color": ["border-color"],
2745
2745
  color: ["color"],
@@ -2771,9 +2771,9 @@ class I {
2771
2771
  };
2772
2772
  }
2773
2773
  return (b) => {
2774
- const x = ri(s) ?? [s];
2774
+ const x = ni(s) ?? [s];
2775
2775
  for (const d of x)
2776
- r.set(So(d), ni(d, b));
2776
+ r.set(So(d), fi(d, b));
2777
2777
  return n;
2778
2778
  };
2779
2779
  }
@@ -2786,9 +2786,9 @@ class I {
2786
2786
  * Stamps CSS classes; sheet is fiboui-owned (not a Hover.css vendor).
2787
2787
  */
2788
2788
  effect(o) {
2789
- const i = tt(o);
2790
- return ft(), this.parentBuilder.addClassName("fibo-fx"), this.parentBuilder.addClassName(rt(i)), this.parentBuilder.addClassName(
2791
- et(this.pseudoState, this.isGroup)
2789
+ const i = et(o);
2790
+ return st(), this.parentBuilder.addClassName("fibo-fx"), this.parentBuilder.addClassName(nt(i)), this.parentBuilder.addClassName(
2791
+ rt(this.pseudoState, this.isGroup)
2792
2792
  ), this.parentBuilder.prepareSmoothInteraction([
2793
2793
  "opacity",
2794
2794
  "box-shadow",
@@ -2820,10 +2820,10 @@ class I {
2820
2820
  return this.transforms.set("scale", `scale(${o})`), this.flushTransform();
2821
2821
  }
2822
2822
  translateX(o) {
2823
- return this.transforms.set("translateX", Oo("x", o)), this.flushTransform();
2823
+ return this.transforms.set("translateX", jo("x", o)), this.flushTransform();
2824
2824
  }
2825
2825
  translateY(o) {
2826
- return this.transforms.set("translateY", Oo("y", o)), this.flushTransform();
2826
+ return this.transforms.set("translateY", jo("y", o)), this.flushTransform();
2827
2827
  }
2828
2828
  rotate(o) {
2829
2829
  return this.transforms.set("rotate", `rotate(${o}deg)`), this.flushTransform();
@@ -2873,16 +2873,16 @@ class I {
2873
2873
  return this.set("transform", [...this.transforms.values()].join(" "));
2874
2874
  }
2875
2875
  set(o, i) {
2876
- const e = bt[o];
2876
+ const e = ut[o];
2877
2877
  e && this.parentBuilder.prepareSmoothInteraction(e);
2878
- const r = g.registerPseudo(this.pseudoState, o, i, this.isGroup);
2878
+ const r = m.registerPseudo(this.pseudoState, o, i, this.isGroup);
2879
2879
  return this.parentBuilder.addClassName(r), this;
2880
2880
  }
2881
2881
  end() {
2882
2882
  return this.parentBuilder;
2883
2883
  }
2884
2884
  }
2885
- const ut = {
2885
+ const ht = {
2886
2886
  name: "material",
2887
2887
  colors: {
2888
2888
  primary: "#6750A4",
@@ -2965,7 +2965,7 @@ const ut = {
2965
2965
  lg: "0 8px 16px rgba(0,0,0,0.14)"
2966
2966
  },
2967
2967
  fontFamily: "Roboto, sans-serif"
2968
- }, ht = {
2968
+ }, xt = {
2969
2969
  name: "cupertino",
2970
2970
  colors: {
2971
2971
  primary: "#007AFF",
@@ -3047,7 +3047,7 @@ const ut = {
3047
3047
  lg: "0 4px 16px rgba(0,0,0,0.12)"
3048
3048
  },
3049
3049
  fontFamily: '-apple-system, BlinkMacSystemFont, "SF Pro Text", sans-serif'
3050
- }, xt = {
3050
+ }, pt = {
3051
3051
  name: "web",
3052
3052
  colors: {
3053
3053
  primary: "#3B82F6",
@@ -3126,7 +3126,7 @@ const ut = {
3126
3126
  lg: "0 10px 15px rgba(0,0,0,0.1)"
3127
3127
  },
3128
3128
  fontFamily: "Inter, system-ui, sans-serif"
3129
- }, pt = {
3129
+ }, dt = {
3130
3130
  name: "noir",
3131
3131
  colors: {
3132
3132
  primary: "#F4F4F6",
@@ -3220,24 +3220,24 @@ const ut = {
3220
3220
  lg: "0 30px 80px rgba(0,0,0,0.75)"
3221
3221
  },
3222
3222
  fontFamily: 'var(--font-sans-loaded, "Plus Jakarta Sans"), system-ui, -apple-system, sans-serif'
3223
- }, dt = {
3224
- material: ut,
3225
- cupertino: ht,
3226
- web: xt,
3227
- noir: pt
3223
+ }, gt = {
3224
+ material: ht,
3225
+ cupertino: xt,
3226
+ web: pt,
3227
+ noir: dt
3228
3228
  };
3229
- function gt(t) {
3229
+ function mt(t) {
3230
3230
  if (typeof t == "string") {
3231
- const o = dt[t];
3231
+ const o = gt[t];
3232
3232
  if (!o) throw new Error(`Unknown fiboui theme preset: ${t}`);
3233
3233
  return o;
3234
3234
  }
3235
3235
  return t;
3236
3236
  }
3237
- function mt(t) {
3237
+ function vt(t) {
3238
3238
  return `--fibo-text-${t}`;
3239
3239
  }
3240
- function vt(t) {
3240
+ function wt(t) {
3241
3241
  const o = t.colors, i = {
3242
3242
  "--fibo-primary": o.primary,
3243
3243
  "--fibo-on-primary": o.onPrimary,
@@ -3263,18 +3263,18 @@ function vt(t) {
3263
3263
  "--fibo-shadow-lg": t.shadows.lg
3264
3264
  };
3265
3265
  return o.primaryVariant && (i["--fibo-primary-variant"] = o.primaryVariant), o.secondaryVariant && (i["--fibo-secondary-variant"] = o.secondaryVariant), o.success && (i["--fibo-success"] = o.success), o.warning && (i["--fibo-warning"] = o.warning), o.info && (i["--fibo-info"] = o.info), o.onError && (i["--fibo-on-error"] = o.onError), o.outline && (i["--fibo-outline"] = o.outline), i["--fibo-primary-container"] = o.primaryVariant ?? o.primary, i["--fibo-on-primary-container"] = o.onPrimary, i["--fibo-secondary-container"] = o.secondaryVariant ?? o.secondary, i["--fibo-on-secondary-container"] = o.onSecondary, i["--fibo-tertiary"] = o.secondary, i["--fibo-on-tertiary"] = o.onSecondary, i["--fibo-tertiary-container"] = o.secondaryVariant ?? o.secondary, i["--fibo-on-tertiary-container"] = o.onSecondary, i["--fibo-surface-variant"] = o.surface, i["--fibo-on-surface-variant"] = o.onSurface, Object.keys(t.typography).forEach((e) => {
3266
- const r = t.typography[e], n = mt(e);
3266
+ const r = t.typography[e], n = vt(e);
3267
3267
  r.fontSize != null && (i[`${n}-size`] = String(r.fontSize)), r.fontWeight != null && (i[`${n}-weight`] = String(r.fontWeight)), r.letterSpacing != null && (i[`${n}-tracking`] = String(r.letterSpacing)), r.lineHeight != null && (i[`${n}-height`] = String(r.lineHeight)), r.color != null && (i[`${n}-color`] = String(r.color));
3268
3268
  }), i;
3269
3269
  }
3270
- function wt(t) {
3271
- return vt(t);
3272
- }
3273
3270
  function yt(t) {
3271
+ return wt(t);
3272
+ }
3273
+ function kt(t) {
3274
3274
  return `fibo-theme-${t.name || "custom"}`;
3275
3275
  }
3276
- const fi = 64, kt = `${fi}px`;
3277
- class X {
3276
+ const si = 64, _t = `${si}px`;
3277
+ class O {
3278
3278
  constructor() {
3279
3279
  /** @internal Extra DOM props forwarded to the host element. */
3280
3280
  c(this, "_props", {});
@@ -3313,6 +3313,11 @@ class X {
3313
3313
  c(this, "_explicitScrollMargin", !1);
3314
3314
  /** Shrink-wrap: skip the default `w-full` / `self-stretch` on Row and Column. */
3315
3315
  c(this, "_hug", !1);
3316
+ /**
3317
+ * Drop the built-in chrome (padding, border, fill, radius, shadow, fixed height, type size).
3318
+ * Layout (flex, width, gap) stays. Chain `.style()`, `.px()`, `.border()` after this to put back only what you want.
3319
+ */
3320
+ c(this, "_resetStyle", !1);
3316
3321
  // Transition properties
3317
3322
  c(this, "_transitionDuration", 200);
3318
3323
  // ms
@@ -3322,6 +3327,12 @@ class X {
3322
3327
  c(this, "_transitionProperties", ["all"]);
3323
3328
  c(this, "_childFunction");
3324
3329
  }
3330
+ resetStyle() {
3331
+ return this._resetStyle = !0, this.addClassName("fibo-reset"), this;
3332
+ }
3333
+ isReset() {
3334
+ return this._resetStyle;
3335
+ }
3325
3336
  hug() {
3326
3337
  return this._hug = !0, this;
3327
3338
  }
@@ -3337,7 +3348,7 @@ class X {
3337
3348
  */
3338
3349
  anchor(o) {
3339
3350
  return this.id(o), this._explicitScrollMargin || this._classNames.push(
3340
- g.register("scroll-margin-top", "var(--fibo-sticky-offset, 0px)")
3351
+ m.register("scroll-margin-top", "var(--fibo-sticky-offset, 0px)")
3341
3352
  ), this;
3342
3353
  }
3343
3354
  /**
@@ -3347,7 +3358,7 @@ class X {
3347
3358
  scrollMargin(o) {
3348
3359
  this._explicitScrollMargin = !0;
3349
3360
  const i = typeof o == "number" ? `${o}px` : o;
3350
- return this._classNames.push(g.register("scroll-margin-top", i)), this;
3361
+ return this._classNames.push(m.register("scroll-margin-top", i)), this;
3351
3362
  }
3352
3363
  /** Stamp a class onto the host. Used by PseudoStateBuilder (hashed `:hover` etc.). */
3353
3364
  addClassName(o) {
@@ -3364,26 +3375,51 @@ class X {
3364
3375
  return i && typeof i == "object" && (this.__fiboElementProps = { ...i, key: String(o) }), this;
3365
3376
  }
3366
3377
  paddingHorizontal(o) {
3367
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("padding-left", i), r = g.register("padding-right", i);
3378
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("padding-left", i), r = m.register("padding-right", i);
3368
3379
  return this._classNames.push(e, r), this;
3369
3380
  }
3370
3381
  paddingVertical(o) {
3371
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("padding-top", i), r = g.register("padding-bottom", i);
3382
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("padding-top", i), r = m.register("padding-bottom", i);
3372
3383
  return this._classNames.push(e, r), this;
3373
3384
  }
3374
3385
  marginHorizontal(o) {
3375
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("margin-left", i), r = g.register("margin-right", i);
3386
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("margin-left", i), r = m.register("margin-right", i);
3376
3387
  return this._classNames.push(e, r), this;
3377
3388
  }
3378
3389
  marginVertical(o) {
3379
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("margin-top", i), r = g.register("margin-bottom", i);
3390
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("margin-top", i), r = m.register("margin-bottom", i);
3380
3391
  return this._classNames.push(e, r), this;
3381
3392
  }
3393
+ /** Inline layout wins over a host that hardcodes flex on the element (Form, Scaffold). */
3394
+ layoutStyle(o) {
3395
+ return this._style = { ...this._style, ...o }, this;
3396
+ }
3382
3397
  flexDirection(o) {
3383
- return this._classNames.push(`flex-${o}`), this;
3398
+ return this.layoutStyle({ flexDirection: o });
3384
3399
  }
3385
3400
  alignItems(o) {
3386
- return this._classNames.push(`items-${o}`), this;
3401
+ const i = {
3402
+ start: "flex-start",
3403
+ center: "center",
3404
+ end: "flex-end",
3405
+ stretch: "stretch",
3406
+ baseline: "baseline"
3407
+ };
3408
+ return this.layoutStyle({ alignItems: i[o] });
3409
+ }
3410
+ alignSelf(o) {
3411
+ const i = {
3412
+ auto: "auto",
3413
+ start: "flex-start",
3414
+ center: "center",
3415
+ end: "flex-end",
3416
+ stretch: "stretch",
3417
+ baseline: "baseline"
3418
+ };
3419
+ return this.layoutStyle({ alignSelf: i[o] });
3420
+ }
3421
+ flexWrap(o) {
3422
+ return this.layoutStyle({ flexWrap: o });
3387
3423
  }
3388
3424
  /**
3389
3425
  * Main-axis distribution. Accepts Tailwind shortcuts (`between`) and CSS/Flutter
@@ -3391,87 +3427,92 @@ class X {
3391
3427
  */
3392
3428
  justifyContent(o) {
3393
3429
  const i = {
3394
- start: "justify-start",
3395
- center: "justify-center",
3396
- end: "justify-end",
3397
- between: "justify-between",
3398
- around: "justify-around",
3399
- evenly: "justify-evenly",
3400
- "space-between": "justify-between",
3401
- "space-around": "justify-around",
3402
- "space-evenly": "justify-evenly",
3403
- spaceBetween: "justify-between",
3404
- spaceAround: "justify-around",
3405
- spaceEvenly: "justify-evenly"
3430
+ start: "flex-start",
3431
+ center: "center",
3432
+ end: "flex-end",
3433
+ between: "space-between",
3434
+ around: "space-around",
3435
+ evenly: "space-evenly",
3436
+ "space-between": "space-between",
3437
+ "space-around": "space-around",
3438
+ "space-evenly": "space-evenly",
3439
+ spaceBetween: "space-between",
3440
+ spaceAround: "space-around",
3441
+ spaceEvenly: "space-evenly"
3406
3442
  };
3407
- return this._classNames.push(i[o] ?? `justify-${o}`), this;
3443
+ return this.layoutStyle({ justifyContent: i[o] ?? o });
3408
3444
  }
3409
3445
  flex(o) {
3410
- if (this._classNames.push("flex"), o !== void 0)
3411
- if (typeof o == "number") {
3412
- const i = g.register("flex", String(o));
3413
- this._classNames.push(i);
3414
- } else typeof o == "string" && this._classNames.push(`flex-${o}`);
3415
- return this;
3446
+ const e = o === void 0 ? void 0 : typeof o == "number" ? String(o) : {
3447
+ 1: "1 1 0%",
3448
+ auto: "1 1 auto",
3449
+ initial: "0 1 auto",
3450
+ none: "none"
3451
+ }[o] ?? o;
3452
+ return this.layoutStyle({ display: "flex", ...e !== void 0 ? { flex: e } : {} });
3416
3453
  }
3417
3454
  grid() {
3418
- return this._classNames.push("grid"), this;
3455
+ return this.layoutStyle({ display: "grid" });
3419
3456
  }
3420
3457
  inlineFlex() {
3421
- return this._classNames.push("inline-flex"), this;
3458
+ return this.layoutStyle({ display: "inline-flex" });
3422
3459
  }
3423
3460
  inlineGrid() {
3424
- return this._classNames.push("inline-grid"), this;
3461
+ return this.layoutStyle({ display: "inline-grid" });
3425
3462
  }
3426
3463
  block() {
3427
- return this._classNames.push("block"), this;
3464
+ return this.layoutStyle({ display: "block" });
3428
3465
  }
3429
3466
  inlineBlock() {
3430
- return this._classNames.push("inline-block"), this;
3467
+ return this.layoutStyle({ display: "inline-block" });
3431
3468
  }
3432
3469
  hidden() {
3433
- return this._classNames.push("hidden"), this;
3470
+ return this.layoutStyle({ display: "none" });
3434
3471
  }
3435
3472
  center() {
3436
- return this._classNames.push("flex", "items-center", "justify-center"), this;
3473
+ return this.layoutStyle({
3474
+ display: "flex",
3475
+ alignItems: "center",
3476
+ justifyContent: "center"
3477
+ });
3437
3478
  }
3438
3479
  centerX() {
3439
- return this._classNames.push("flex", "justify-center"), this;
3480
+ return this.layoutStyle({ display: "flex", justifyContent: "center" });
3440
3481
  }
3441
3482
  centerY() {
3442
- return this._classNames.push("flex", "items-center"), this;
3483
+ return this.layoutStyle({ display: "flex", alignItems: "center" });
3443
3484
  }
3444
3485
  spaceBetween() {
3445
- return this._classNames.push("justify-between"), this;
3486
+ return this.layoutStyle({ justifyContent: "space-between" });
3446
3487
  }
3447
3488
  spaceAround() {
3448
- return this._classNames.push("justify-around"), this;
3489
+ return this.layoutStyle({ justifyContent: "space-around" });
3449
3490
  }
3450
3491
  spaceEvenly() {
3451
- return this._classNames.push("justify-evenly"), this;
3492
+ return this.layoutStyle({ justifyContent: "space-evenly" });
3452
3493
  }
3453
3494
  fill() {
3454
- return this._classNames.push("w-full", "h-full"), this;
3495
+ return this.layoutStyle({ width: "100%", height: "100%" });
3455
3496
  }
3456
3497
  fillWidth() {
3457
- return this._classNames.push("w-full"), this;
3498
+ return this.layoutStyle({ width: "100%" });
3458
3499
  }
3459
3500
  fillHeight() {
3460
- return this._classNames.push("h-full"), this;
3501
+ return this.layoutStyle({ height: "100%" });
3461
3502
  }
3462
3503
  square(o) {
3463
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("width", i), r = g.register("height", i);
3504
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("width", i), r = m.register("height", i);
3464
3505
  return this._classNames.push(e, r), this;
3465
3506
  }
3466
3507
  circle() {
3467
3508
  return this._classNames.push("rounded-full"), this;
3468
3509
  }
3469
3510
  opacity(o) {
3470
- const i = g.register("opacity", String(o));
3511
+ const i = m.register("opacity", String(o));
3471
3512
  return this._classNames.push(i), this;
3472
3513
  }
3473
3514
  p(o) {
3474
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("padding", i);
3515
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("padding", i);
3475
3516
  return this._classNames.push(e), this;
3476
3517
  }
3477
3518
  px(o) {
@@ -3487,7 +3528,7 @@ class X {
3487
3528
  return this.paddingVertical(o);
3488
3529
  }
3489
3530
  m(o) {
3490
- const i = typeof o == "number" ? `${o}px` : o, e = g.register("margin", i);
3531
+ const i = typeof o == "number" ? `${o}px` : o, e = m.register("margin", i);
3491
3532
  return this._classNames.push(e), this;
3492
3533
  }
3493
3534
  mx(o) {
@@ -3503,15 +3544,15 @@ class X {
3503
3544
  return this.marginVertical(o);
3504
3545
  }
3505
3546
  bg(o) {
3506
- const i = typeof o == "string" && !o.startsWith("#") && !o.startsWith("rgb") ? this.resolveSemanticColor(o) : o, e = g.register("background-color", i);
3547
+ const i = typeof o == "string" && !o.startsWith("#") && !o.startsWith("rgb") ? this.resolveSemanticColor(o) : o, e = m.register("background-color", i);
3507
3548
  return this._classNames.push(e), this;
3508
3549
  }
3509
3550
  text(o) {
3510
- const i = typeof o == "string" && !o.startsWith("#") && !o.startsWith("rgb") ? this.resolveSemanticColor(o) : o, e = g.register("color", i);
3551
+ const i = typeof o == "string" && !o.startsWith("#") && !o.startsWith("rgb") ? this.resolveSemanticColor(o) : o, e = m.register("color", i);
3511
3552
  return this._classNames.push(e), this;
3512
3553
  }
3513
3554
  color(o) {
3514
- const i = typeof o == "string" && !o.startsWith("#") && !o.startsWith("rgb") ? this.resolveSemanticColor(o) : o, e = g.register("color", i);
3555
+ const i = typeof o == "string" && !o.startsWith("#") && !o.startsWith("rgb") ? this.resolveSemanticColor(o) : o, e = m.register("color", i);
3515
3556
  return this._classNames.push(e), this;
3516
3557
  }
3517
3558
  resolveSemanticColor(o) {
@@ -3544,7 +3585,7 @@ class X {
3544
3585
  }
3545
3586
  shadow(o) {
3546
3587
  if (o === null || o === "none" || o === 0 || o === "0") {
3547
- const n = g.register("box-shadow", "none");
3588
+ const n = m.register("box-shadow", "none");
3548
3589
  return this._classNames.push(n), this;
3549
3590
  }
3550
3591
  const i = {
@@ -3592,29 +3633,29 @@ class X {
3592
3633
  }
3593
3634
  };
3594
3635
  if (!o) {
3595
- const n = g.register("box-shadow", i.md);
3636
+ const n = m.register("box-shadow", i.md);
3596
3637
  return this._classNames.push(n), this;
3597
3638
  }
3598
3639
  if (typeof o == "string") {
3599
3640
  if (e(o)) {
3600
- const s = r("all", "md", o), a = g.register("box-shadow", s);
3641
+ const s = r("all", "md", o), a = m.register("box-shadow", s);
3601
3642
  return this._classNames.push(a), this;
3602
3643
  }
3603
- const n = i[o] || i.md, f = g.register("box-shadow", n);
3644
+ const n = i[o] || i.md, f = m.register("box-shadow", n);
3604
3645
  return this._classNames.push(f), this;
3605
3646
  }
3606
3647
  if (Array.isArray(o)) {
3607
3648
  const [n, f, s, a] = o;
3608
3649
  if (typeof n == "string" && e(n)) {
3609
- const x = r("all", "md", n, f), d = g.register("box-shadow", x);
3650
+ const x = r("all", "md", n, f), d = m.register("box-shadow", x);
3610
3651
  return this._classNames.push(d), this;
3611
3652
  }
3612
3653
  const b = n;
3613
3654
  if (typeof f == "string" && e(f)) {
3614
- const x = r(b, "md", f, s), d = g.register("box-shadow", x);
3655
+ const x = r(b, "md", f, s), d = m.register("box-shadow", x);
3615
3656
  return this._classNames.push(d), this;
3616
3657
  } else {
3617
- const d = r(b, f, s, a), v = g.register("box-shadow", d);
3658
+ const d = r(b, f, s, a), v = m.register("box-shadow", d);
3618
3659
  return this._classNames.push(v), this;
3619
3660
  }
3620
3661
  }
@@ -3634,7 +3675,7 @@ class X {
3634
3675
  * @example Box().padding(8).media('md', { padding: 16 }).media('(prefers-color-scheme: dark)', { backgroundColor: '#111' })
3635
3676
  */
3636
3677
  media(o, i) {
3637
- return this.registerMediaStyles(Ai(o), i), this;
3678
+ return this.registerMediaStyles(Bi(o), i), this;
3638
3679
  }
3639
3680
  registerMediaStyles(o, i) {
3640
3681
  if (!i) return;
@@ -3652,7 +3693,7 @@ class X {
3652
3693
  for (const [r, n] of Object.entries(i)) {
3653
3694
  if (n == null) continue;
3654
3695
  const f = r.replace(/[A-Z]/g, (a) => `-${a.toLowerCase()}`), s = typeof n == "number" && !e.has(r) && !e.has(f) ? `${n}px` : String(n);
3655
- this._classNames.push(g.registerMedia(o, f, s));
3696
+ this._classNames.push(m.registerMedia(o, f, s));
3656
3697
  }
3657
3698
  }
3658
3699
  sm(o) {
@@ -3669,23 +3710,23 @@ class X {
3669
3710
  }
3670
3711
  rounded(o) {
3671
3712
  if (typeof o == "number") {
3672
- const i = g.register("border-radius", `${o}px`);
3713
+ const i = m.register("border-radius", `${o}px`);
3673
3714
  this._classNames.push(i);
3674
3715
  } else if (typeof o == "string" && (o.startsWith("rounded-") || ["sm", "md", "lg", "xl", "2xl", "3xl", "full", "none"].includes(o))) {
3675
3716
  const i = o.startsWith("rounded-") ? o : `rounded-${o}`;
3676
3717
  this._classNames.push(i);
3677
3718
  } else {
3678
- const i = g.register("border-radius", o);
3719
+ const i = m.register("border-radius", o);
3679
3720
  this._classNames.push(i);
3680
3721
  }
3681
3722
  return this;
3682
3723
  }
3683
3724
  borderRadius(o) {
3684
3725
  if (typeof o == "number") {
3685
- const i = g.register("border-radius", `${o}px`);
3726
+ const i = m.register("border-radius", `${o}px`);
3686
3727
  this._classNames.push(i);
3687
3728
  } else {
3688
- const i = g.register("border-radius", o);
3729
+ const i = m.register("border-radius", o);
3689
3730
  this._classNames.push(i);
3690
3731
  }
3691
3732
  return this;
@@ -3696,48 +3737,42 @@ class X {
3696
3737
  else if (["red", "blue", "green", "gray", "white", "black", "transparent"].some((i) => o.includes(i)))
3697
3738
  this._classNames.push(`border-${o}`);
3698
3739
  else {
3699
- const i = g.register("border-color", o);
3740
+ const i = m.register("border-color", o);
3700
3741
  this._classNames.push(i);
3701
3742
  }
3702
3743
  return this;
3703
3744
  }
3704
3745
  width(o) {
3705
3746
  if (typeof o == "number") {
3706
- const i = g.register("width", `${o}px`);
3747
+ const i = m.register("width", `${o}px`);
3707
3748
  this._classNames.push(i);
3708
3749
  } else if (typeof o == "string" && (o.startsWith("w-") || o === "full" || o === "screen" || o === "min" || o === "max" || o === "fit")) {
3709
3750
  const i = o.startsWith("w-") ? o : `w-${o}`;
3710
3751
  this._classNames.push(i);
3711
3752
  } else {
3712
- const i = g.register("width", o);
3753
+ const i = m.register("width", o);
3713
3754
  this._classNames.push(i);
3714
3755
  }
3715
3756
  return this;
3716
3757
  }
3717
3758
  height(o) {
3718
3759
  if (typeof o == "number") {
3719
- const i = g.register("height", `${o}px`);
3760
+ const i = m.register("height", `${o}px`);
3720
3761
  this._classNames.push(i);
3721
3762
  } else if (typeof o == "string" && (o.startsWith("h-") || o === "full" || o === "screen" || o === "min" || o === "max" || o === "fit")) {
3722
3763
  const i = o.startsWith("h-") ? o : `h-${o}`;
3723
3764
  this._classNames.push(i);
3724
3765
  } else {
3725
- const i = g.register("height", o);
3766
+ const i = m.register("height", o);
3726
3767
  this._classNames.push(i);
3727
3768
  }
3728
3769
  return this;
3729
3770
  }
3730
3771
  gap(o) {
3731
- if (typeof o == "number") {
3732
- const i = g.register("gap", `${o}px`);
3733
- this._classNames.push(i);
3734
- } else if (typeof o == "string" && o.startsWith("gap-"))
3735
- this._classNames.push(o);
3736
- else {
3737
- const i = g.register("gap", o);
3738
- this._classNames.push(i);
3739
- }
3740
- return this;
3772
+ if (typeof o == "string" && o.startsWith("gap-"))
3773
+ return this._classNames.push(o), this;
3774
+ const i = typeof o == "number" ? `${o}px` : o;
3775
+ return this.layoutStyle({ gap: i });
3741
3776
  }
3742
3777
  clean() {
3743
3778
  return this._classNames.push(
@@ -3796,7 +3831,7 @@ class X {
3796
3831
  }
3797
3832
  weight(o) {
3798
3833
  if (typeof o == "number") {
3799
- const i = g.register("font-weight", String(o));
3834
+ const i = m.register("font-weight", String(o));
3800
3835
  this._classNames.push(i);
3801
3836
  } else {
3802
3837
  const i = {
@@ -3813,7 +3848,7 @@ class X {
3813
3848
  if (i[o])
3814
3849
  this._classNames.push(i[o]);
3815
3850
  else {
3816
- const e = g.register("font-weight", o);
3851
+ const e = m.register("font-weight", o);
3817
3852
  this._classNames.push(e);
3818
3853
  }
3819
3854
  }
@@ -3884,10 +3919,10 @@ class X {
3884
3919
  }
3885
3920
  transition(o, i, e, r) {
3886
3921
  if (this._autoEffectTransition = !1, this._effectTransitionProps = [], typeof o == "string" && i === void 0)
3887
- return this.replaceTransitionClass(g.register("transition", o)), this;
3922
+ return this.replaceTransitionClass(m.register("transition", o)), this;
3888
3923
  const n = Array.isArray(o) ? o : [o], f = oo(e || this._transitionEasing);
3889
3924
  return this.replaceTransitionClass(
3890
- g.register(
3925
+ m.register(
3891
3926
  "transition",
3892
3927
  no(n, i || this._transitionDuration, f, r || 0)
3893
3928
  )
@@ -3930,7 +3965,7 @@ class X {
3930
3965
  */
3931
3966
  _applyTransition() {
3932
3967
  this._autoEffectTransition = !1, this._effectTransitionProps = [], this.replaceTransitionClass(
3933
- g.register(
3968
+ m.register(
3934
3969
  "transition",
3935
3970
  no(
3936
3971
  this._transitionProperties,
@@ -3945,8 +3980,8 @@ class X {
3945
3980
  this._transitionClass && (this._classNames = this._classNames.filter((i) => i !== this._transitionClass)), this._transitionClass = o, this._classNames.push(o);
3946
3981
  }
3947
3982
  animate(o, i) {
3948
- j(), this._usesCssMotion = !0, this._motionClass && (this._classNames = this._classNames.filter((l) => l !== this._motionClass));
3949
- const e = Ti(o), r = (e ? o.duration : i == null ? void 0 : i.duration) ?? this._transitionDuration, n = (e ? o.delay : i == null ? void 0 : i.delay) ?? this._transitionDelay;
3983
+ X(), this._usesCssMotion = !0, this._motionClass && (this._classNames = this._classNames.filter((l) => l !== this._motionClass));
3984
+ const e = $i(o), r = (e ? o.duration : i == null ? void 0 : i.duration) ?? this._transitionDuration, n = (e ? o.delay : i == null ? void 0 : i.delay) ?? this._transitionDelay;
3950
3985
  let f = e ? o.ease : i == null ? void 0 : i.ease;
3951
3986
  const s = {
3952
3987
  stiffness: (e ? o.stiffness : i == null ? void 0 : i.stiffness) ?? void 0,
@@ -3954,10 +3989,10 @@ class X {
3954
3989
  mass: (e ? o.mass : i == null ? void 0 : i.mass) ?? void 0
3955
3990
  };
3956
3991
  if (e) {
3957
- const l = Bo(o.from), x = Bo(o.to), d = g.registerKeyframes($i(`${l}=>${x}`), l, x);
3992
+ const l = Bo(o.from), x = Bo(o.to), d = m.registerKeyframes(Ni(`${l}=>${x}`), l, x);
3958
3993
  this._motionClass = `fibo-anim ${d}`, this._props["data-fibo-anim"] = "custom";
3959
3994
  } else {
3960
- const l = Ni(o);
3995
+ const l = Ri(o);
3961
3996
  this._motionClass = `fibo-anim fibo-anim-${l}`, this._props["data-fibo-anim"] = l, (i == null ? void 0 : i.from) !== void 0 && (this._style["--fibo-from"] = typeof i.from == "number" ? `${i.from}px` : i.from), !f && l === "pop" && (f = "spring");
3962
3997
  }
3963
3998
  const a = oo(f ?? "ease", s);
@@ -3967,7 +4002,7 @@ class X {
3967
4002
  }
3968
4003
  /** CSS `linear()` spring. Works on `.animate()` and `.transition()` / `.hover()`. */
3969
4004
  spring(o) {
3970
- const i = ti(o);
4005
+ const i = ei(o);
3971
4006
  return this._transitionEasing = i, this._motionClass ? (this._style["--fibo-ease"] = i, this) : (this._applyTransition(), this);
3972
4007
  }
3973
4008
  reducedMotion(o = "reduce") {
@@ -4024,11 +4059,11 @@ class X {
4024
4059
  return o ? (o(i), this) : i;
4025
4060
  }
4026
4061
  stagger(o) {
4027
- return this._staggerMs = o, this._usesCssMotion = !0, this._style["--fibo-stagger"] = `${o}ms`, j(), this;
4062
+ return this._staggerMs = o, this._usesCssMotion = !0, this._style["--fibo-stagger"] = `${o}ms`, X(), this;
4028
4063
  }
4029
4064
  /** Scroll-reveal: IntersectionObserver toggles `.fibo-inview`. */
4030
4065
  reveal(o = "fadeUp") {
4031
- return this._reveal = typeof o == "string" ? { preset: o, once: !0 } : { preset: "fadeUp", once: !0, ...o }, this._usesCssMotion = !0, j(), this;
4066
+ return this._reveal = typeof o == "string" ? { preset: o, once: !0 } : { preset: "fadeUp", once: !0, ...o }, this._usesCssMotion = !0, X(), this;
4032
4067
  }
4033
4068
  /** Alias of `.reveal()` for scroll-triggered presets. */
4034
4069
  onScroll(o = "fadeIn") {
@@ -4036,26 +4071,26 @@ class X {
4036
4071
  }
4037
4072
  /** CSS `animation-timeline: view()` / `scroll()`; IntersectionObserver reveal is the fallback. */
4038
4073
  scrollTimeline(o = "view") {
4039
- return j(), this._classNames.push(o === "scroll" ? "fibo-scroll-timeline" : "fibo-view-timeline"), this._usesCssMotion = !0, o === "view" && !this._reveal && (this._reveal = { preset: "fadeUp", once: !0 }), this;
4074
+ return X(), this._classNames.push(o === "scroll" ? "fibo-scroll-timeline" : "fibo-view-timeline"), this._usesCssMotion = !0, o === "view" && !this._reveal && (this._reveal = { preset: "fadeUp", once: !0 }), this;
4040
4075
  }
4041
4076
  scrollProgress() {
4042
- return j(), this._scrollProgress = !0, this._classNames.push("fibo-scroll-progress"), this._usesCssMotion = !0, this;
4077
+ return X(), this._scrollProgress = !0, this._classNames.push("fibo-scroll-progress"), this._usesCssMotion = !0, this;
4043
4078
  }
4044
4079
  smoothScroll() {
4045
- return this._classNames.push(g.register("scroll-behavior", "smooth")), this;
4080
+ return this._classNames.push(m.register("scroll-behavior", "smooth")), this;
4046
4081
  }
4047
4082
  scrollSnap(o = "y") {
4048
- return j(), this._classNames.push(`fibo-snap-${o}`), this;
4083
+ return X(), this._classNames.push(`fibo-snap-${o}`), this;
4049
4084
  }
4050
4085
  scrollSnapAlign(o = "start") {
4051
- return j(), this._classNames.push(`fibo-snap-${o}`), this;
4086
+ return X(), this._classNames.push(`fibo-snap-${o}`), this;
4052
4087
  }
4053
4088
  sticky(o = 0) {
4054
4089
  if (o === !1) return this;
4055
- this._classNames.push(g.register("position", "sticky"));
4090
+ this._classNames.push(m.register("position", "sticky"));
4056
4091
  const i = o === !0 ? "0px" : typeof o == "number" ? `${o}px` : o;
4057
- this._classNames.push(g.register("top", i));
4058
- const e = o === !0 || o === 0 ? kt : typeof o == "number" ? `${Math.max(o, fi)}px` : o;
4092
+ this._classNames.push(m.register("top", i));
4093
+ const e = o === !0 || o === 0 ? _t : typeof o == "number" ? `${Math.max(o, si)}px` : o;
4059
4094
  return this.publishStickyOffset(e), this;
4060
4095
  }
4061
4096
  /**
@@ -4064,7 +4099,7 @@ class X {
4064
4099
  */
4065
4100
  publishStickyOffset(o) {
4066
4101
  const i = typeof o == "number" ? `${o}px` : o;
4067
- g.registerRoot("--fibo-sticky-offset", i), g.ensureScrollPadding();
4102
+ m.registerRoot("--fibo-sticky-offset", i), m.ensureScrollPadding();
4068
4103
  }
4069
4104
  viewTransition(o) {
4070
4105
  return this._viewTransition = o, this._style.viewTransitionName = o, this;
@@ -4098,7 +4133,7 @@ class X {
4098
4133
  }
4099
4134
  /** @internal Stamp translate3d(0,0,0) when no resting transform exists. */
4100
4135
  ensureRestTransform() {
4101
- const o = Xo(this._style);
4136
+ const o = Oo(this._style);
4102
4137
  o !== this._style && (this._style = o);
4103
4138
  }
4104
4139
  /**
@@ -4114,7 +4149,7 @@ class X {
4114
4149
  i.add("transform"), i.add("opacity"), this._effectTransitionProps = [...i], this._autoEffectTransition = !0;
4115
4150
  const e = this._transitionEasing === "ease-in-out" ? "ease-out" : this._transitionEasing, r = this._transitionDuration === 200 ? 240 : this._transitionDuration;
4116
4151
  this.replaceTransitionClass(
4117
- g.register(
4152
+ m.register(
4118
4153
  "transition",
4119
4154
  no(this._effectTransitionProps, r, e)
4120
4155
  )
@@ -4126,8 +4161,8 @@ class X {
4126
4161
  * SSR-safe: class + inline vars on first paint (no useEffect).
4127
4162
  */
4128
4163
  theme(o) {
4129
- const i = gt(o);
4130
- return this._theme = i, this.addClassName(yt(i)), this;
4164
+ const i = mt(o);
4165
+ return this._theme = i, this.addClassName(kt(i)), this;
4131
4166
  }
4132
4167
  /** Prefer dark/light system chrome for native controls under this subtree. */
4133
4168
  colorScheme(o) {
@@ -4192,12 +4227,12 @@ class X {
4192
4227
  }
4193
4228
  getClassName() {
4194
4229
  let o;
4195
- return Object.keys(this._cssStyles).length > 0 && (o = Zi(this._cssStyles) || void 0), Oi(this._classNames, o);
4230
+ return Object.keys(this._cssStyles).length > 0 && (o = qi(this._cssStyles) || void 0), Yi(this._classNames, o);
4196
4231
  }
4197
4232
  getStyle() {
4198
4233
  let o = { ...this._style, ...this._cssStyles };
4199
- if (this._smoothSurface && (o = mo(o), this._smoothNeedsRestTransform && (o = Xo(o))), this._theme && (o = {
4200
- ...wt(this._theme),
4234
+ if (this._smoothSurface && (o = mo(o), this._smoothNeedsRestTransform && (o = Oo(o))), this._theme && (o = {
4235
+ ...yt(this._theme),
4201
4236
  ...o,
4202
4237
  backgroundColor: o.backgroundColor ?? this._theme.colors.background,
4203
4238
  color: o.color ?? this._theme.colors.onBackground,
@@ -4230,7 +4265,7 @@ class X {
4230
4265
  return this._childFunction;
4231
4266
  }
4232
4267
  }
4233
- const _t = /* @__PURE__ */ new Set([
4268
+ const zt = /* @__PURE__ */ new Set([
4234
4269
  "$$typeof",
4235
4270
  "type",
4236
4271
  "props",
@@ -4243,17 +4278,17 @@ const _t = /* @__PURE__ */ new Set([
4243
4278
  "_debugTask",
4244
4279
  "_debugInfo"
4245
4280
  ]);
4246
- function zt(t) {
4281
+ function St(t) {
4247
4282
  var i;
4248
4283
  const o = (i = t._props) == null ? void 0 : i.key;
4249
4284
  if (!(o == null || o === ""))
4250
4285
  return o;
4251
4286
  }
4252
- function St(t) {
4253
- const o = t._isObserver, i = t._signals, e = t._observers, r = t._state, n = t._providers, f = zt(t), s = () => {
4287
+ function Ct(t) {
4288
+ const o = t._isObserver, i = t._signals, e = t._observers, r = t._state, n = t._providers, f = St(t), s = () => {
4254
4289
  let d = t.build();
4255
4290
  const v = t._animatedProps, z = t._animationConfig;
4256
- v && v.size > 0 && (d = p.createElement(qi, {
4291
+ v && v.size > 0 && (d = p.createElement(Ji, {
4257
4292
  key: f,
4258
4293
  animatedProps: v,
4259
4294
  animationConfig: z,
@@ -4264,7 +4299,7 @@ function St(t) {
4264
4299
  const R = t._style || {}, $ = {};
4265
4300
  for (const S of ["--fibo-dur", "--fibo-ease", "--fibo-delay", "--fibo-stagger", "--fibo-from"])
4266
4301
  R[S] != null && ($[S] = R[S]);
4267
- d = p.createElement(Ji, {
4302
+ d = p.createElement(Qi, {
4268
4303
  key: f,
4269
4304
  preset: k.preset,
4270
4305
  once: k.once,
@@ -4275,38 +4310,38 @@ function St(t) {
4275
4310
  children: d
4276
4311
  });
4277
4312
  }
4278
- t._scrollProgress && (d = p.createElement(Qi, { key: f, children: d })), t._usesCssMotion && (d = p.createElement(
4313
+ t._scrollProgress && (d = p.createElement(ot, { key: f, children: d })), t._usesCssMotion && (d = p.createElement(
4279
4314
  p.Fragment,
4280
4315
  { key: f },
4281
- p.createElement(Ri),
4316
+ p.createElement(Ei),
4282
4317
  d
4283
4318
  ));
4284
4319
  const _ = t._gesture;
4285
4320
  return _ && (d = _.wrap(d)), d;
4286
- }, a = typeof t.hasStateManagement == "function" ? t.hasStateManagement() : !!(o || i && i.size || e && e.size || r && r.size || n && n.size), b = o ? p.createElement(Wi, {
4321
+ }, a = typeof t.hasStateManagement == "function" ? t.hasStateManagement() : !!(o || i && i.size || e && e.size || r && r.size || n && n.size), b = o ? p.createElement(Pi, {
4287
4322
  key: f,
4288
4323
  children: s
4289
4324
  }) : null, l = () => b ?? s();
4290
4325
  let x = l();
4291
- return a && i && i.size > 0 ? x = p.createElement(Pi, {
4326
+ return a && i && i.size > 0 ? x = p.createElement(Li, {
4292
4327
  key: f,
4293
4328
  signals: i,
4294
4329
  children: l
4295
- }) : a && e && e.size > 0 && (x = p.createElement(Li, {
4330
+ }) : a && e && e.size > 0 && (x = p.createElement(Xi, {
4296
4331
  key: f,
4297
4332
  observables: e,
4298
4333
  children: l
4299
- })), a && r && r.size > 0 && (x = p.createElement(ji, {
4334
+ })), a && r && r.size > 0 && (x = p.createElement(Oi, {
4300
4335
  key: f,
4301
4336
  stateMap: r,
4302
4337
  children: x
4303
- })), a && n && n.size > 0 && (x = p.createElement(Xi, {
4338
+ })), a && n && n.size > 0 && (x = p.createElement(ji, {
4304
4339
  key: f,
4305
4340
  providers: n,
4306
4341
  children: x
4307
4342
  })), x;
4308
4343
  }
4309
- function Ct(t, o, i) {
4344
+ function Ft(t, o, i) {
4310
4345
  const e = function() {
4311
4346
  return o();
4312
4347
  };
@@ -4323,10 +4358,10 @@ function Ct(t, o, i) {
4323
4358
  writable: !0
4324
4359
  }), t.ref = r.ref ?? null, t.__fiboElementProps = r.props ?? {}, r._owner !== void 0 && (t._owner = r._owner), t._store = { validated: 1 };
4325
4360
  }
4326
- function O(t) {
4361
+ function j(t) {
4327
4362
  return (...o) => {
4328
- const i = new t(...o), e = t.name.replace(/Builder$/, "") || "Fibo", r = () => St(i);
4329
- return Ct(i, r, e), new Proxy(i, {
4363
+ const i = new t(...o), e = t.name.replace(/Builder$/, "") || "Fibo", r = () => Ct(i);
4364
+ return Ft(i, r, e), new Proxy(i, {
4330
4365
  get(n, f, s) {
4331
4366
  var a, b;
4332
4367
  if (f === "build")
@@ -4352,11 +4387,11 @@ function O(t) {
4352
4387
  const l = Reflect.get(n, f), x = Object.getPrototypeOf(n), d = x != null ? x.type : void 0;
4353
4388
  return typeof d != "function" || typeof l != "function" ? l : (n.__fiboType || (n.__fiboType = (v, z) => typeof v == "string" || typeof v == "number" ? (d.call(n, v), s) : l(v, z)), n.__fiboType);
4354
4389
  }
4355
- return _t.has(f) || Reflect.has(n, f) ? Reflect.get(n, f, s) : (l) => {
4356
- const d = ri(f) ?? [f];
4390
+ return zt.has(f) || Reflect.has(n, f) ? Reflect.get(n, f, s) : (l) => {
4391
+ const d = ni(f) ?? [f];
4357
4392
  for (const v of d) {
4358
- const z = So(v), k = ni(v, l);
4359
- n.className(g.register(z, k));
4393
+ const z = So(v), k = fi(v, l);
4394
+ n.className(m.register(z, k));
4360
4395
  }
4361
4396
  return s;
4362
4397
  };
@@ -4364,7 +4399,7 @@ function O(t) {
4364
4399
  });
4365
4400
  };
4366
4401
  }
4367
- class Ft extends X {
4402
+ class Tt extends O {
4368
4403
  build() {
4369
4404
  const i = [
4370
4405
  "fibo-center",
@@ -4384,8 +4419,8 @@ class Ft extends X {
4384
4419
  );
4385
4420
  }
4386
4421
  }
4387
- const je = O(Ft);
4388
- class Tt extends X {
4422
+ const Oe = j(Tt);
4423
+ class $t extends O {
4389
4424
  constructor() {
4390
4425
  super(...arguments);
4391
4426
  c(this, "_mainAxisAlignment", "start");
@@ -4447,8 +4482,8 @@ class Tt extends X {
4447
4482
  );
4448
4483
  }
4449
4484
  }
4450
- const Xe = O(Tt);
4451
- class $t extends X {
4485
+ const je = j($t);
4486
+ class Nt extends O {
4452
4487
  build() {
4453
4488
  const o = this.getClassName(), i = this.getStyle(), e = this.processChildren();
4454
4489
  return p.createElement(
@@ -4462,8 +4497,8 @@ class $t extends X {
4462
4497
  );
4463
4498
  }
4464
4499
  }
4465
- const Oe = O($t);
4466
- class Nt extends X {
4500
+ const Ye = j(Nt);
4501
+ class Rt extends O {
4467
4502
  constructor() {
4468
4503
  super(...arguments);
4469
4504
  c(this, "_mainAxisAlignment", "start");
@@ -4518,13 +4553,17 @@ class Nt extends X {
4518
4553
  );
4519
4554
  }
4520
4555
  }
4521
- const Ye = O(Nt);
4522
- class Rt extends X {
4556
+ const Ve = j(Rt);
4557
+ function Do(t) {
4558
+ return typeof t == "number" ? `${t}px` : t;
4559
+ }
4560
+ class Et extends O {
4523
4561
  constructor() {
4524
4562
  super(...arguments);
4525
4563
  c(this, "_height");
4526
4564
  c(this, "_width");
4527
- c(this, "_direction");
4565
+ c(this, "_grow");
4566
+ c(this, "_expand");
4528
4567
  }
4529
4568
  height(i) {
4530
4569
  return this._height = i, this;
@@ -4533,23 +4572,28 @@ class Rt extends X {
4533
4572
  return this._width = i, this;
4534
4573
  }
4535
4574
  vertical() {
4536
- return this._direction = "vertical", this;
4575
+ return this._expand = !0, this;
4537
4576
  }
4538
4577
  horizontal() {
4539
- return this._direction = "horizontal", this;
4578
+ return this._expand = !0, this;
4579
+ }
4580
+ /** Grow factor inside a Row or Column. Does not turn the spacer into a flex container. */
4581
+ flex(i = 1) {
4582
+ const e = typeof i == "number" ? i : Number(i);
4583
+ return this._grow = Number.isFinite(e) ? e : 1, this._expand = !0, this;
4540
4584
  }
4541
4585
  build() {
4542
- const i = this.getStyle();
4543
- this._direction === "vertical" ? (i.flex = "1", i.height = this._height ? typeof this._height == "number" ? `${this._height}px` : this._height : "auto") : this._direction === "horizontal" ? (i.flex = "1", i.width = this._width ? typeof this._width == "number" ? `${this._width}px` : this._width : "auto") : (this._height && (i.height = typeof this._height == "number" ? `${this._height}px` : this._height), this._width && (i.width = typeof this._width == "number" ? `${this._width}px` : this._width));
4544
- const e = this.getClassName();
4586
+ const i = this.getStyle(), e = this._height != null || this._width != null, r = this._expand ?? !e;
4587
+ this._height != null && (i.height = Do(this._height)), this._width != null && (i.width = Do(this._width)), r ? (i.flex = `${this._grow ?? 1} 1 0%`, i.alignSelf = i.alignSelf ?? "stretch", i.minWidth = 0, i.minHeight = 0) : i.flex = "0 0 auto";
4588
+ const n = this.getClassName();
4545
4589
  return p.createElement("div", {
4546
- className: `fibo-spacer ${e}`,
4590
+ className: `fibo-spacer ${n}`,
4547
4591
  style: i,
4548
4592
  ...this._props
4549
4593
  });
4550
4594
  }
4551
4595
  }
4552
- const Ve = O(Rt), Et = p.memo((t) => {
4596
+ const De = j(Et), At = p.memo((t) => {
4553
4597
  const { className: o, style: i, children: e, ...r } = t;
4554
4598
  return p.createElement(
4555
4599
  "div",
@@ -4561,7 +4605,7 @@ const Ve = O(Rt), Et = p.memo((t) => {
4561
4605
  ...e
4562
4606
  );
4563
4607
  });
4564
- class At extends X {
4608
+ class Bt extends O {
4565
4609
  build() {
4566
4610
  const i = [
4567
4611
  "fibo-box",
@@ -4573,10 +4617,10 @@ class At extends X {
4573
4617
  children: r,
4574
4618
  ...this._props
4575
4619
  };
4576
- return p.createElement(Et, n);
4620
+ return p.createElement(At, n);
4577
4621
  }
4578
4622
  }
4579
- const De = O(At), Bt = p.memo((t) => {
4623
+ const He = j(Bt), It = p.memo((t) => {
4580
4624
  const { text: o, subtitle: i, number: e, color: r, className: n, style: f, children: s, ...a } = t;
4581
4625
  return p.createElement(
4582
4626
  "div",
@@ -4613,7 +4657,7 @@ const De = O(At), Bt = p.memo((t) => {
4613
4657
  )
4614
4658
  );
4615
4659
  });
4616
- class It extends X {
4660
+ class Mt extends O {
4617
4661
  constructor() {
4618
4662
  super(...arguments);
4619
4663
  c(this, "_text", "");
@@ -4654,32 +4698,32 @@ class It extends X {
4654
4698
  children: this.processChildren(),
4655
4699
  ...this._props
4656
4700
  };
4657
- return p.createElement(Bt, r);
4701
+ return p.createElement(It, r);
4658
4702
  }
4659
4703
  }
4660
- const He = O(It);
4661
- function Mt({ children: t }) {
4704
+ const Ge = j(Mt);
4705
+ function Wt({ children: t }) {
4662
4706
  return p.createElement(p.Fragment, null, t);
4663
4707
  }
4664
- const Wt = "FIBO:", si = /\uE000FIBO:(\d+)\uE001/g, ai = [];
4665
- function Pt(t) {
4666
- return t.includes(Wt);
4667
- }
4708
+ const Pt = "FIBO:", ai = /\uE000FIBO:(\d+)\uE001/g, ci = [];
4668
4709
  function Lt(t) {
4710
+ return t.includes(Pt);
4711
+ }
4712
+ function Xt(t) {
4669
4713
  const o = [];
4670
- for (const i of t.matchAll(si)) {
4671
- const e = ai[Number(i[1])];
4714
+ for (const i of t.matchAll(ai)) {
4715
+ const e = ci[Number(i[1])];
4672
4716
  e && o.push(e);
4673
4717
  }
4674
4718
  return o;
4675
4719
  }
4676
- function jt(t) {
4677
- return t.replace(si, (o, i) => {
4678
- const e = ai[Number(i)];
4720
+ function Ot(t) {
4721
+ return t.replace(ai, (o, i) => {
4722
+ const e = ci[Number(i)];
4679
4723
  return e == null ? "" : String(e.value);
4680
4724
  });
4681
4725
  }
4682
- const Xt = {
4726
+ const jt = {
4683
4727
  h1: {
4684
4728
  fontSize: "var(--fibo-text-h1-size, 2.25rem)",
4685
4729
  fontWeight: "var(--fibo-text-h1-weight, 700)",
@@ -4739,17 +4783,17 @@ const Xt = {
4739
4783
  color: "var(--fibo-text-label-color, inherit)"
4740
4784
  }
4741
4785
  };
4742
- function ci(t, o) {
4786
+ function li(t, o) {
4743
4787
  return {
4744
4788
  margin: 0,
4745
4789
  overflowWrap: "anywhere",
4746
4790
  wordBreak: "break-word",
4747
4791
  maxWidth: "100%",
4748
- ...Xt[t],
4792
+ ...jt[t],
4749
4793
  ...o
4750
4794
  };
4751
4795
  }
4752
- const Ot = p.memo((t) => {
4796
+ const Yt = p.memo((t) => {
4753
4797
  const { text: o, type: i, className: e, style: r, ...n } = t, f = {
4754
4798
  h1: "h1",
4755
4799
  h2: "h2",
@@ -4765,13 +4809,13 @@ const Ot = p.memo((t) => {
4765
4809
  f[i],
4766
4810
  {
4767
4811
  className: `fibo-text fibo-text-${i} min-w-0 ${e}`,
4768
- style: ci(i, r),
4812
+ style: li(i, r),
4769
4813
  ...n
4770
4814
  },
4771
4815
  o
4772
4816
  );
4773
4817
  });
4774
- class Yt extends X {
4818
+ class Vt extends O {
4775
4819
  constructor(i = "") {
4776
4820
  super();
4777
4821
  c(this, "_text", "");
@@ -4779,9 +4823,9 @@ class Yt extends X {
4779
4823
  this.text(i);
4780
4824
  }
4781
4825
  text(i) {
4782
- if (typeof i == "string" && Pt(i)) {
4783
- this._text = () => jt(i);
4784
- for (const e of Lt(i))
4826
+ if (typeof i == "string" && Lt(i)) {
4827
+ this._text = () => Ot(i);
4828
+ for (const e of Xt(i))
4785
4829
  super.bindSignal(e);
4786
4830
  return this;
4787
4831
  }
@@ -4828,11 +4872,11 @@ class Yt extends X {
4828
4872
  };
4829
4873
  if (typeof this._text == "function") {
4830
4874
  const r = this._text;
4831
- return p.createElement(Mt, {
4875
+ return p.createElement(Wt, {
4832
4876
  compute: r,
4833
4877
  as: i[this._type],
4834
4878
  className: `fibo-text fibo-text-${this._type} min-w-0 ${this.getClassName()}`,
4835
- style: ci(this._type, this.getStyle()),
4879
+ style: li(this._type, this.getStyle()),
4836
4880
  ...this._props
4837
4881
  });
4838
4882
  }
@@ -4843,49 +4887,49 @@ class Yt extends X {
4843
4887
  style: this.getStyle(),
4844
4888
  ...this._props
4845
4889
  };
4846
- return p.createElement(Ot, e);
4890
+ return p.createElement(Yt, e);
4847
4891
  }
4848
4892
  }
4849
- const Ge = O(Yt), Vt = (t, o) => {
4893
+ const Ue = j(Vt), Dt = (t, o) => {
4850
4894
  const i = new Array(t.length + o.length);
4851
4895
  for (let e = 0; e < t.length; e++)
4852
4896
  i[e] = t[e];
4853
4897
  for (let e = 0; e < o.length; e++)
4854
4898
  i[t.length + e] = o[e];
4855
4899
  return i;
4856
- }, Dt = (t, o) => ({
4900
+ }, Ht = (t, o) => ({
4857
4901
  classGroupId: t,
4858
4902
  validator: o
4859
- }), li = (t = /* @__PURE__ */ new Map(), o = null, i) => ({
4903
+ }), bi = (t = /* @__PURE__ */ new Map(), o = null, i) => ({
4860
4904
  nextPart: t,
4861
4905
  validators: o,
4862
4906
  classGroupId: i
4863
- }), xo = "-", Do = [], Ht = "arbitrary..", Gt = (t) => {
4864
- const o = Kt(t), {
4907
+ }), xo = "-", Ho = [], Gt = "arbitrary..", Ut = (t) => {
4908
+ const o = Zt(t), {
4865
4909
  conflictingClassGroups: i,
4866
4910
  conflictingClassGroupModifiers: e
4867
4911
  } = t;
4868
4912
  return {
4869
4913
  getClassGroupId: (f) => {
4870
4914
  if (f.startsWith("[") && f.endsWith("]"))
4871
- return Ut(f);
4915
+ return Kt(f);
4872
4916
  const s = f.split(xo), a = s[0] === "" && s.length > 1 ? 1 : 0;
4873
- return bi(s, a, o);
4917
+ return ui(s, a, o);
4874
4918
  },
4875
4919
  getConflictingClassGroupIds: (f, s) => {
4876
4920
  if (s) {
4877
4921
  const a = e[f], b = i[f];
4878
- return a ? b ? Vt(b, a) : a : b || Do;
4922
+ return a ? b ? Dt(b, a) : a : b || Ho;
4879
4923
  }
4880
- return i[f] || Do;
4924
+ return i[f] || Ho;
4881
4925
  }
4882
4926
  };
4883
- }, bi = (t, o, i) => {
4927
+ }, ui = (t, o, i) => {
4884
4928
  if (t.length - o === 0)
4885
4929
  return i.classGroupId;
4886
4930
  const r = t[o], n = i.nextPart.get(r);
4887
4931
  if (n) {
4888
- const b = bi(t, o + 1, n);
4932
+ const b = ui(t, o + 1, n);
4889
4933
  if (b) return b;
4890
4934
  }
4891
4935
  const f = i.validators;
@@ -4897,17 +4941,17 @@ const Ge = O(Yt), Vt = (t, o) => {
4897
4941
  if (l.validator(s))
4898
4942
  return l.classGroupId;
4899
4943
  }
4900
- }, Ut = (t) => t.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
4944
+ }, Kt = (t) => t.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
4901
4945
  const o = t.slice(1, -1), i = o.indexOf(":"), e = o.slice(0, i);
4902
- return e ? Ht + e : void 0;
4903
- })(), Kt = (t) => {
4946
+ return e ? Gt + e : void 0;
4947
+ })(), Zt = (t) => {
4904
4948
  const {
4905
4949
  theme: o,
4906
4950
  classGroups: i
4907
4951
  } = t;
4908
- return Zt(i, o);
4909
- }, Zt = (t, o) => {
4910
- const i = li();
4952
+ return qt(i, o);
4953
+ }, qt = (t, o) => {
4954
+ const i = bi();
4911
4955
  for (const e in t) {
4912
4956
  const r = t[e];
4913
4957
  Co(r, i, e, o);
@@ -4917,43 +4961,43 @@ const Ge = O(Yt), Vt = (t, o) => {
4917
4961
  const r = t.length;
4918
4962
  for (let n = 0; n < r; n++) {
4919
4963
  const f = t[n];
4920
- qt(f, o, i, e);
4964
+ Jt(f, o, i, e);
4921
4965
  }
4922
- }, qt = (t, o, i, e) => {
4966
+ }, Jt = (t, o, i, e) => {
4923
4967
  if (typeof t == "string") {
4924
- Jt(t, o, i);
4968
+ Qt(t, o, i);
4925
4969
  return;
4926
4970
  }
4927
4971
  if (typeof t == "function") {
4928
- Qt(t, o, i, e);
4972
+ oe(t, o, i, e);
4929
4973
  return;
4930
4974
  }
4931
- oe(t, o, i, e);
4932
- }, Jt = (t, o, i) => {
4933
- const e = t === "" ? o : ui(o, t);
4975
+ ie(t, o, i, e);
4976
+ }, Qt = (t, o, i) => {
4977
+ const e = t === "" ? o : hi(o, t);
4934
4978
  e.classGroupId = i;
4935
- }, Qt = (t, o, i, e) => {
4936
- if (ie(t)) {
4979
+ }, oe = (t, o, i, e) => {
4980
+ if (te(t)) {
4937
4981
  Co(t(e), o, i, e);
4938
4982
  return;
4939
4983
  }
4940
- o.validators === null && (o.validators = []), o.validators.push(Dt(i, t));
4941
- }, oe = (t, o, i, e) => {
4984
+ o.validators === null && (o.validators = []), o.validators.push(Ht(i, t));
4985
+ }, ie = (t, o, i, e) => {
4942
4986
  const r = Object.entries(t), n = r.length;
4943
4987
  for (let f = 0; f < n; f++) {
4944
4988
  const [s, a] = r[f];
4945
- Co(a, ui(o, s), i, e);
4989
+ Co(a, hi(o, s), i, e);
4946
4990
  }
4947
- }, ui = (t, o) => {
4991
+ }, hi = (t, o) => {
4948
4992
  let i = t;
4949
4993
  const e = o.split(xo), r = e.length;
4950
4994
  for (let n = 0; n < r; n++) {
4951
4995
  const f = e[n];
4952
4996
  let s = i.nextPart.get(f);
4953
- s || (s = li(), i.nextPart.set(f, s)), i = s;
4997
+ s || (s = bi(), i.nextPart.set(f, s)), i = s;
4954
4998
  }
4955
4999
  return i;
4956
- }, ie = (t) => "isThemeGetter" in t && t.isThemeGetter === !0, te = (t) => {
5000
+ }, te = (t) => "isThemeGetter" in t && t.isThemeGetter === !0, ee = (t) => {
4957
5001
  if (t < 1)
4958
5002
  return {
4959
5003
  get: () => {
@@ -4977,13 +5021,13 @@ const Ge = O(Yt), Vt = (t, o) => {
4977
5021
  n in i ? i[n] = f : r(n, f);
4978
5022
  }
4979
5023
  };
4980
- }, ko = "!", Ho = ":", ee = [], Go = (t, o, i, e, r) => ({
5024
+ }, ko = "!", Go = ":", re = [], Uo = (t, o, i, e, r) => ({
4981
5025
  modifiers: t,
4982
5026
  hasImportantModifier: o,
4983
5027
  baseClassName: i,
4984
5028
  maybePostfixModifierPosition: e,
4985
5029
  isExternal: r
4986
- }), re = (t) => {
5030
+ }), ne = (t) => {
4987
5031
  const {
4988
5032
  prefix: o,
4989
5033
  experimentalParseClassName: i
@@ -4995,7 +5039,7 @@ const Ge = O(Yt), Vt = (t, o) => {
4995
5039
  for (let k = 0; k < l; k++) {
4996
5040
  const _ = r[k];
4997
5041
  if (f === 0 && s === 0) {
4998
- if (_ === Ho) {
5042
+ if (_ === Go) {
4999
5043
  n.push(r.slice(a, k)), a = k + 1;
5000
5044
  continue;
5001
5045
  }
@@ -5016,11 +5060,11 @@ const Ge = O(Yt), Vt = (t, o) => {
5016
5060
  x.startsWith(ko) && (d = x.slice(1), v = !0)
5017
5061
  );
5018
5062
  const z = b && b > a ? b - a : void 0;
5019
- return Go(n, v, d, z);
5063
+ return Uo(n, v, d, z);
5020
5064
  };
5021
5065
  if (o) {
5022
- const r = o + Ho, n = e;
5023
- e = (f) => f.startsWith(r) ? n(f.slice(r.length)) : Go(ee, !1, f, void 0, !0);
5066
+ const r = o + Go, n = e;
5067
+ e = (f) => f.startsWith(r) ? n(f.slice(r.length)) : Uo(re, !1, f, void 0, !0);
5024
5068
  }
5025
5069
  if (i) {
5026
5070
  const r = e;
@@ -5030,7 +5074,7 @@ const Ge = O(Yt), Vt = (t, o) => {
5030
5074
  });
5031
5075
  }
5032
5076
  return e;
5033
- }, ne = (t) => {
5077
+ }, fe = (t) => {
5034
5078
  const o = /* @__PURE__ */ new Map();
5035
5079
  return t.orderSensitiveModifiers.forEach((i, e) => {
5036
5080
  o.set(i, 1e6 + e);
@@ -5043,18 +5087,18 @@ const Ge = O(Yt), Vt = (t, o) => {
5043
5087
  }
5044
5088
  return r.length > 0 && (r.sort(), e.push(...r)), e;
5045
5089
  };
5046
- }, fe = (t) => ({
5047
- cache: te(t.cacheSize),
5048
- parseClassName: re(t),
5049
- sortModifiers: ne(t),
5050
- ...Gt(t)
5051
- }), se = /\s+/, ae = (t, o) => {
5090
+ }, se = (t) => ({
5091
+ cache: ee(t.cacheSize),
5092
+ parseClassName: ne(t),
5093
+ sortModifiers: fe(t),
5094
+ ...Ut(t)
5095
+ }), ae = /\s+/, ce = (t, o) => {
5052
5096
  const {
5053
5097
  parseClassName: i,
5054
5098
  getClassGroupId: e,
5055
5099
  getConflictingClassGroupIds: r,
5056
5100
  sortModifiers: n
5057
- } = o, f = [], s = t.trim().split(se);
5101
+ } = o, f = [], s = t.trim().split(ae);
5058
5102
  let a = "";
5059
5103
  for (let b = s.length - 1; b >= 0; b -= 1) {
5060
5104
  const l = s[b], {
@@ -5092,46 +5136,46 @@ const Ge = O(Yt), Vt = (t, o) => {
5092
5136
  a = l + (a.length > 0 ? " " + a : a);
5093
5137
  }
5094
5138
  return a;
5095
- }, ce = (...t) => {
5139
+ }, le = (...t) => {
5096
5140
  let o = 0, i, e, r = "";
5097
5141
  for (; o < t.length; )
5098
- (i = t[o++]) && (e = hi(i)) && (r && (r += " "), r += e);
5142
+ (i = t[o++]) && (e = xi(i)) && (r && (r += " "), r += e);
5099
5143
  return r;
5100
- }, hi = (t) => {
5144
+ }, xi = (t) => {
5101
5145
  if (typeof t == "string")
5102
5146
  return t;
5103
5147
  let o, i = "";
5104
5148
  for (let e = 0; e < t.length; e++)
5105
- t[e] && (o = hi(t[e])) && (i && (i += " "), i += o);
5149
+ t[e] && (o = xi(t[e])) && (i && (i += " "), i += o);
5106
5150
  return i;
5107
- }, le = (t, ...o) => {
5151
+ }, be = (t, ...o) => {
5108
5152
  let i, e, r, n;
5109
5153
  const f = (a) => {
5110
5154
  const b = o.reduce((l, x) => x(l), t());
5111
- return i = fe(b), e = i.cache.get, r = i.cache.set, n = s, s(a);
5155
+ return i = se(b), e = i.cache.get, r = i.cache.set, n = s, s(a);
5112
5156
  }, s = (a) => {
5113
5157
  const b = e(a);
5114
5158
  if (b)
5115
5159
  return b;
5116
- const l = ae(a, i);
5160
+ const l = ce(a, i);
5117
5161
  return r(a, l), l;
5118
5162
  };
5119
- return n = f, (...a) => n(ce(...a));
5120
- }, be = [], T = (t) => {
5121
- const o = (i) => i[t] || be;
5163
+ return n = f, (...a) => n(le(...a));
5164
+ }, ue = [], T = (t) => {
5165
+ const o = (i) => i[t] || ue;
5122
5166
  return o.isThemeGetter = !0, o;
5123
- }, xi = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, pi = /^\((?:(\w[\w-]*):)?(.+)\)$/i, ue = /^\d+\/\d+$/, he = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, xe = /\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$/, pe = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, de = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, ge = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Q = (t) => ue.test(t), y = (t) => !!t && !Number.isNaN(Number(t)), V = (t) => !!t && Number.isInteger(Number(t)), vo = (t) => t.endsWith("%") && y(t.slice(0, -1)), L = (t) => he.test(t), me = () => !0, ve = (t) => (
5167
+ }, pi = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, di = /^\((?:(\w[\w-]*):)?(.+)\)$/i, he = /^\d+\/\d+$/, xe = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, pe = /\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$/, de = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, ge = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, me = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Q = (t) => he.test(t), y = (t) => !!t && !Number.isNaN(Number(t)), V = (t) => !!t && Number.isInteger(Number(t)), vo = (t) => t.endsWith("%") && y(t.slice(0, -1)), L = (t) => xe.test(t), ve = () => !0, we = (t) => (
5124
5168
  // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
5125
5169
  // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
5126
5170
  // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
5127
- xe.test(t) && !pe.test(t)
5128
- ), di = () => !1, we = (t) => de.test(t), ye = (t) => ge.test(t), ke = (t) => !u(t) && !h(t), _e = (t) => io(t, vi, di), u = (t) => xi.test(t), Z = (t) => io(t, wi, ve), wo = (t) => io(t, Te, y), Uo = (t) => io(t, gi, di), ze = (t) => io(t, mi, ye), uo = (t) => io(t, yi, we), h = (t) => pi.test(t), ro = (t) => to(t, wi), Se = (t) => to(t, $e), Ko = (t) => to(t, gi), Ce = (t) => to(t, vi), Fe = (t) => to(t, mi), ho = (t) => to(t, yi, !0), io = (t, o, i) => {
5129
- const e = xi.exec(t);
5171
+ pe.test(t) && !de.test(t)
5172
+ ), gi = () => !1, ye = (t) => ge.test(t), ke = (t) => me.test(t), _e = (t) => !u(t) && !h(t), ze = (t) => io(t, wi, gi), u = (t) => pi.test(t), Z = (t) => io(t, yi, we), wo = (t) => io(t, $e, y), Ko = (t) => io(t, mi, gi), Se = (t) => io(t, vi, ke), uo = (t) => io(t, ki, ye), h = (t) => di.test(t), ro = (t) => to(t, yi), Ce = (t) => to(t, Ne), Zo = (t) => to(t, mi), Fe = (t) => to(t, wi), Te = (t) => to(t, vi), ho = (t) => to(t, ki, !0), io = (t, o, i) => {
5173
+ const e = pi.exec(t);
5130
5174
  return e ? e[1] ? o(e[1]) : i(e[2]) : !1;
5131
5175
  }, to = (t, o, i = !1) => {
5132
- const e = pi.exec(t);
5176
+ const e = di.exec(t);
5133
5177
  return e ? e[1] ? o(e[1]) : i : !1;
5134
- }, gi = (t) => t === "position" || t === "percentage", mi = (t) => t === "image" || t === "url", vi = (t) => t === "length" || t === "size" || t === "bg-size", wi = (t) => t === "length", Te = (t) => t === "number", $e = (t) => t === "family-name", yi = (t) => t === "shadow", Ne = () => {
5178
+ }, mi = (t) => t === "position" || t === "percentage", vi = (t) => t === "image" || t === "url", wi = (t) => t === "length" || t === "size" || t === "bg-size", yi = (t) => t === "length", $e = (t) => t === "number", Ne = (t) => t === "family-name", ki = (t) => t === "shadow", Re = () => {
5135
5179
  const t = T("color"), o = T("font"), i = T("text"), e = T("font-weight"), r = T("tracking"), n = T("leading"), f = T("breakpoint"), s = T("container"), a = T("spacing"), b = T("radius"), l = T("shadow"), x = T("inset-shadow"), d = T("text-shadow"), v = T("drop-shadow"), z = T("blur"), k = T("perspective"), _ = T("aspect"), R = T("ease"), $ = T("animate"), S = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], C = () => [
5136
5180
  "center",
5137
5181
  "top",
@@ -5150,13 +5194,13 @@ const Ge = O(Yt), Vt = (t, o) => {
5150
5194
  "bottom-left",
5151
5195
  // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
5152
5196
  "left-bottom"
5153
- ], F = () => [...C(), h, u], M = () => ["auto", "hidden", "clip", "visible", "scroll"], W = () => ["auto", "contain", "none"], m = () => [h, u, a], E = () => [Q, "full", "auto", ...m()], G = () => [V, "none", "subgrid", h, u], Y = () => ["auto", {
5197
+ ], F = () => [...C(), h, u], M = () => ["auto", "hidden", "clip", "visible", "scroll"], W = () => ["auto", "contain", "none"], g = () => [h, u, a], E = () => [Q, "full", "auto", ...g()], G = () => [V, "none", "subgrid", h, u], Y = () => ["auto", {
5154
5198
  span: ["full", V, h, u]
5155
- }, V, h, u], U = () => [V, "auto", h, u], fo = () => ["auto", "min", "max", "fr", h, u], eo = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], q = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], P = () => ["auto", ...m()], K = () => [Q, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...m()], w = () => [t, h, u], Fo = () => [...C(), Ko, Uo, {
5199
+ }, V, h, u], U = () => [V, "auto", h, u], fo = () => ["auto", "min", "max", "fr", h, u], eo = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], q = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], P = () => ["auto", ...g()], K = () => [Q, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...g()], w = () => [t, h, u], Fo = () => [...C(), Zo, Ko, {
5156
5200
  position: [h, u]
5157
5201
  }], To = () => ["no-repeat", {
5158
5202
  repeat: ["", "x", "y", "space", "round"]
5159
- }], $o = () => ["auto", "cover", "contain", Ce, _e, {
5203
+ }], $o = () => ["auto", "cover", "contain", Fe, ze, {
5160
5204
  size: [h, u]
5161
5205
  }], po = () => [vo, ro, Z], A = () => [
5162
5206
  // Deprecated since Tailwind CSS v4.0.0
@@ -5166,14 +5210,14 @@ const Ge = O(Yt), Vt = (t, o) => {
5166
5210
  b,
5167
5211
  h,
5168
5212
  u
5169
- ], B = () => ["", y, ro, Z], so = () => ["solid", "dashed", "dotted", "double"], No = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], N = () => [y, vo, Ko, Uo], Ro = () => [
5213
+ ], B = () => ["", y, ro, Z], so = () => ["solid", "dashed", "dotted", "double"], No = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], N = () => [y, vo, Zo, Ko], Ro = () => [
5170
5214
  // Deprecated since Tailwind CSS v4.0.0
5171
5215
  "",
5172
5216
  "none",
5173
5217
  z,
5174
5218
  h,
5175
5219
  u
5176
- ], ao = () => ["none", y, h, u], co = () => ["none", y, h, u], go = () => [y, h, u], lo = () => [Q, "full", ...m()];
5220
+ ], ao = () => ["none", y, h, u], co = () => ["none", y, h, u], go = () => [y, h, u], lo = () => [Q, "full", ...g()];
5177
5221
  return {
5178
5222
  cacheSize: 500,
5179
5223
  theme: {
@@ -5181,11 +5225,11 @@ const Ge = O(Yt), Vt = (t, o) => {
5181
5225
  aspect: ["video"],
5182
5226
  blur: [L],
5183
5227
  breakpoint: [L],
5184
- color: [me],
5228
+ color: [ve],
5185
5229
  container: [L],
5186
5230
  "drop-shadow": [L],
5187
5231
  ease: ["in", "out", "in-out"],
5188
- font: [ke],
5232
+ font: [_e],
5189
5233
  "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
5190
5234
  "inset-shadow": [L],
5191
5235
  leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
@@ -5429,7 +5473,7 @@ const Ge = O(Yt), Vt = (t, o) => {
5429
5473
  * @see https://tailwindcss.com/docs/flex-basis
5430
5474
  */
5431
5475
  basis: [{
5432
- basis: [Q, "full", "auto", s, ...m()]
5476
+ basis: [Q, "full", "auto", s, ...g()]
5433
5477
  }],
5434
5478
  /**
5435
5479
  * Flex Direction
@@ -5555,21 +5599,21 @@ const Ge = O(Yt), Vt = (t, o) => {
5555
5599
  * @see https://tailwindcss.com/docs/gap
5556
5600
  */
5557
5601
  gap: [{
5558
- gap: m()
5602
+ gap: g()
5559
5603
  }],
5560
5604
  /**
5561
5605
  * Gap X
5562
5606
  * @see https://tailwindcss.com/docs/gap
5563
5607
  */
5564
5608
  "gap-x": [{
5565
- "gap-x": m()
5609
+ "gap-x": g()
5566
5610
  }],
5567
5611
  /**
5568
5612
  * Gap Y
5569
5613
  * @see https://tailwindcss.com/docs/gap
5570
5614
  */
5571
5615
  "gap-y": [{
5572
- "gap-y": m()
5616
+ "gap-y": g()
5573
5617
  }],
5574
5618
  /**
5575
5619
  * Justify Content
@@ -5644,63 +5688,63 @@ const Ge = O(Yt), Vt = (t, o) => {
5644
5688
  * @see https://tailwindcss.com/docs/padding
5645
5689
  */
5646
5690
  p: [{
5647
- p: m()
5691
+ p: g()
5648
5692
  }],
5649
5693
  /**
5650
5694
  * Padding X
5651
5695
  * @see https://tailwindcss.com/docs/padding
5652
5696
  */
5653
5697
  px: [{
5654
- px: m()
5698
+ px: g()
5655
5699
  }],
5656
5700
  /**
5657
5701
  * Padding Y
5658
5702
  * @see https://tailwindcss.com/docs/padding
5659
5703
  */
5660
5704
  py: [{
5661
- py: m()
5705
+ py: g()
5662
5706
  }],
5663
5707
  /**
5664
5708
  * Padding Start
5665
5709
  * @see https://tailwindcss.com/docs/padding
5666
5710
  */
5667
5711
  ps: [{
5668
- ps: m()
5712
+ ps: g()
5669
5713
  }],
5670
5714
  /**
5671
5715
  * Padding End
5672
5716
  * @see https://tailwindcss.com/docs/padding
5673
5717
  */
5674
5718
  pe: [{
5675
- pe: m()
5719
+ pe: g()
5676
5720
  }],
5677
5721
  /**
5678
5722
  * Padding Top
5679
5723
  * @see https://tailwindcss.com/docs/padding
5680
5724
  */
5681
5725
  pt: [{
5682
- pt: m()
5726
+ pt: g()
5683
5727
  }],
5684
5728
  /**
5685
5729
  * Padding Right
5686
5730
  * @see https://tailwindcss.com/docs/padding
5687
5731
  */
5688
5732
  pr: [{
5689
- pr: m()
5733
+ pr: g()
5690
5734
  }],
5691
5735
  /**
5692
5736
  * Padding Bottom
5693
5737
  * @see https://tailwindcss.com/docs/padding
5694
5738
  */
5695
5739
  pb: [{
5696
- pb: m()
5740
+ pb: g()
5697
5741
  }],
5698
5742
  /**
5699
5743
  * Padding Left
5700
5744
  * @see https://tailwindcss.com/docs/padding
5701
5745
  */
5702
5746
  pl: [{
5703
- pl: m()
5747
+ pl: g()
5704
5748
  }],
5705
5749
  /**
5706
5750
  * Margin
@@ -5770,7 +5814,7 @@ const Ge = O(Yt), Vt = (t, o) => {
5770
5814
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
5771
5815
  */
5772
5816
  "space-x": [{
5773
- "space-x": m()
5817
+ "space-x": g()
5774
5818
  }],
5775
5819
  /**
5776
5820
  * Space Between X Reverse
@@ -5782,7 +5826,7 @@ const Ge = O(Yt), Vt = (t, o) => {
5782
5826
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
5783
5827
  */
5784
5828
  "space-y": [{
5785
- "space-y": m()
5829
+ "space-y": g()
5786
5830
  }],
5787
5831
  /**
5788
5832
  * Space Between Y Reverse
@@ -5897,7 +5941,7 @@ const Ge = O(Yt), Vt = (t, o) => {
5897
5941
  * @see https://tailwindcss.com/docs/font-family
5898
5942
  */
5899
5943
  "font-family": [{
5900
- font: [Se, u, o]
5944
+ font: [Ce, u, o]
5901
5945
  }],
5902
5946
  /**
5903
5947
  * Font Variant Numeric
@@ -5951,7 +5995,7 @@ const Ge = O(Yt), Vt = (t, o) => {
5951
5995
  leading: [
5952
5996
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
5953
5997
  n,
5954
- ...m()
5998
+ ...g()
5955
5999
  ]
5956
6000
  }],
5957
6001
  /**
@@ -6052,7 +6096,7 @@ const Ge = O(Yt), Vt = (t, o) => {
6052
6096
  * @see https://tailwindcss.com/docs/text-indent
6053
6097
  */
6054
6098
  indent: [{
6055
- indent: m()
6099
+ indent: g()
6056
6100
  }],
6057
6101
  /**
6058
6102
  * Vertical Alignment
@@ -6152,7 +6196,7 @@ const Ge = O(Yt), Vt = (t, o) => {
6152
6196
  }, V, h, u],
6153
6197
  radial: ["", h, u],
6154
6198
  conic: [V, h, u]
6155
- }, Fe, ze]
6199
+ }, Te, Se]
6156
6200
  }],
6157
6201
  /**
6158
6202
  * Background Color
@@ -7016,21 +7060,21 @@ const Ge = O(Yt), Vt = (t, o) => {
7016
7060
  * @see https://tailwindcss.com/docs/border-spacing
7017
7061
  */
7018
7062
  "border-spacing": [{
7019
- "border-spacing": m()
7063
+ "border-spacing": g()
7020
7064
  }],
7021
7065
  /**
7022
7066
  * Border Spacing X
7023
7067
  * @see https://tailwindcss.com/docs/border-spacing
7024
7068
  */
7025
7069
  "border-spacing-x": [{
7026
- "border-spacing-x": m()
7070
+ "border-spacing-x": g()
7027
7071
  }],
7028
7072
  /**
7029
7073
  * Border Spacing Y
7030
7074
  * @see https://tailwindcss.com/docs/border-spacing
7031
7075
  */
7032
7076
  "border-spacing-y": [{
7033
- "border-spacing-y": m()
7077
+ "border-spacing-y": g()
7034
7078
  }],
7035
7079
  /**
7036
7080
  * Table Layout
@@ -7322,126 +7366,126 @@ const Ge = O(Yt), Vt = (t, o) => {
7322
7366
  * @see https://tailwindcss.com/docs/scroll-margin
7323
7367
  */
7324
7368
  "scroll-m": [{
7325
- "scroll-m": m()
7369
+ "scroll-m": g()
7326
7370
  }],
7327
7371
  /**
7328
7372
  * Scroll Margin X
7329
7373
  * @see https://tailwindcss.com/docs/scroll-margin
7330
7374
  */
7331
7375
  "scroll-mx": [{
7332
- "scroll-mx": m()
7376
+ "scroll-mx": g()
7333
7377
  }],
7334
7378
  /**
7335
7379
  * Scroll Margin Y
7336
7380
  * @see https://tailwindcss.com/docs/scroll-margin
7337
7381
  */
7338
7382
  "scroll-my": [{
7339
- "scroll-my": m()
7383
+ "scroll-my": g()
7340
7384
  }],
7341
7385
  /**
7342
7386
  * Scroll Margin Start
7343
7387
  * @see https://tailwindcss.com/docs/scroll-margin
7344
7388
  */
7345
7389
  "scroll-ms": [{
7346
- "scroll-ms": m()
7390
+ "scroll-ms": g()
7347
7391
  }],
7348
7392
  /**
7349
7393
  * Scroll Margin End
7350
7394
  * @see https://tailwindcss.com/docs/scroll-margin
7351
7395
  */
7352
7396
  "scroll-me": [{
7353
- "scroll-me": m()
7397
+ "scroll-me": g()
7354
7398
  }],
7355
7399
  /**
7356
7400
  * Scroll Margin Top
7357
7401
  * @see https://tailwindcss.com/docs/scroll-margin
7358
7402
  */
7359
7403
  "scroll-mt": [{
7360
- "scroll-mt": m()
7404
+ "scroll-mt": g()
7361
7405
  }],
7362
7406
  /**
7363
7407
  * Scroll Margin Right
7364
7408
  * @see https://tailwindcss.com/docs/scroll-margin
7365
7409
  */
7366
7410
  "scroll-mr": [{
7367
- "scroll-mr": m()
7411
+ "scroll-mr": g()
7368
7412
  }],
7369
7413
  /**
7370
7414
  * Scroll Margin Bottom
7371
7415
  * @see https://tailwindcss.com/docs/scroll-margin
7372
7416
  */
7373
7417
  "scroll-mb": [{
7374
- "scroll-mb": m()
7418
+ "scroll-mb": g()
7375
7419
  }],
7376
7420
  /**
7377
7421
  * Scroll Margin Left
7378
7422
  * @see https://tailwindcss.com/docs/scroll-margin
7379
7423
  */
7380
7424
  "scroll-ml": [{
7381
- "scroll-ml": m()
7425
+ "scroll-ml": g()
7382
7426
  }],
7383
7427
  /**
7384
7428
  * Scroll Padding
7385
7429
  * @see https://tailwindcss.com/docs/scroll-padding
7386
7430
  */
7387
7431
  "scroll-p": [{
7388
- "scroll-p": m()
7432
+ "scroll-p": g()
7389
7433
  }],
7390
7434
  /**
7391
7435
  * Scroll Padding X
7392
7436
  * @see https://tailwindcss.com/docs/scroll-padding
7393
7437
  */
7394
7438
  "scroll-px": [{
7395
- "scroll-px": m()
7439
+ "scroll-px": g()
7396
7440
  }],
7397
7441
  /**
7398
7442
  * Scroll Padding Y
7399
7443
  * @see https://tailwindcss.com/docs/scroll-padding
7400
7444
  */
7401
7445
  "scroll-py": [{
7402
- "scroll-py": m()
7446
+ "scroll-py": g()
7403
7447
  }],
7404
7448
  /**
7405
7449
  * Scroll Padding Start
7406
7450
  * @see https://tailwindcss.com/docs/scroll-padding
7407
7451
  */
7408
7452
  "scroll-ps": [{
7409
- "scroll-ps": m()
7453
+ "scroll-ps": g()
7410
7454
  }],
7411
7455
  /**
7412
7456
  * Scroll Padding End
7413
7457
  * @see https://tailwindcss.com/docs/scroll-padding
7414
7458
  */
7415
7459
  "scroll-pe": [{
7416
- "scroll-pe": m()
7460
+ "scroll-pe": g()
7417
7461
  }],
7418
7462
  /**
7419
7463
  * Scroll Padding Top
7420
7464
  * @see https://tailwindcss.com/docs/scroll-padding
7421
7465
  */
7422
7466
  "scroll-pt": [{
7423
- "scroll-pt": m()
7467
+ "scroll-pt": g()
7424
7468
  }],
7425
7469
  /**
7426
7470
  * Scroll Padding Right
7427
7471
  * @see https://tailwindcss.com/docs/scroll-padding
7428
7472
  */
7429
7473
  "scroll-pr": [{
7430
- "scroll-pr": m()
7474
+ "scroll-pr": g()
7431
7475
  }],
7432
7476
  /**
7433
7477
  * Scroll Padding Bottom
7434
7478
  * @see https://tailwindcss.com/docs/scroll-padding
7435
7479
  */
7436
7480
  "scroll-pb": [{
7437
- "scroll-pb": m()
7481
+ "scroll-pb": g()
7438
7482
  }],
7439
7483
  /**
7440
7484
  * Scroll Padding Left
7441
7485
  * @see https://tailwindcss.com/docs/scroll-padding
7442
7486
  */
7443
7487
  "scroll-pl": [{
7444
- "scroll-pl": m()
7488
+ "scroll-pl": g()
7445
7489
  }],
7446
7490
  /**
7447
7491
  * Scroll Snap Align
@@ -7601,7 +7645,7 @@ const Ge = O(Yt), Vt = (t, o) => {
7601
7645
  },
7602
7646
  orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
7603
7647
  };
7604
- }, Re = /* @__PURE__ */ le(Ne), Ee = p.memo((t) => {
7648
+ }, Ee = /* @__PURE__ */ be(Re), Ae = p.memo((t) => {
7605
7649
  const {
7606
7650
  text: o,
7607
7651
  variant: i,
@@ -7630,10 +7674,10 @@ const Ge = O(Yt), Vt = (t, o) => {
7630
7674
  const S = l === "inverse";
7631
7675
  let C = "";
7632
7676
  i === "ghost" ? C = S ? "bg-transparent text-white shadow-none border border-transparent" : "bg-transparent text-[var(--fibo-on-surface)] shadow-none border border-transparent hover:bg-[color-mix(in_srgb,var(--fibo-on-surface)_8%,transparent)]" : i === "text" ? C = S ? "bg-transparent text-white shadow-none border-none px-2" : "bg-transparent text-[var(--fibo-on-surface)] shadow-none border-none px-2 hover:bg-[color-mix(in_srgb,var(--fibo-on-surface)_8%,transparent)]" : i === "soft" ? C = "bg-[color-mix(in_srgb,var(--fibo-primary)_12%,transparent)] text-[var(--fibo-primary)] shadow-none border-none hover:bg-[color-mix(in_srgb,var(--fibo-primary)_18%,transparent)]" : i === "outline" || i === "outlined" ? C = S ? "bg-black text-white shadow-none border border-[#3b3b3b]" : "bg-transparent border-[1.5px] border-[var(--fibo-outline,rgba(0,0,0,0.12))] text-[var(--fibo-on-surface)] shadow-none hover:bg-[color-mix(in_srgb,var(--fibo-on-surface)_6%,transparent)]" : i === "solid" ? C = S ? "bg-[#f2f2f2] text-black shadow-none border border-[#f2f2f2]" : "bg-[var(--fibo-primary)] text-[var(--fibo-on-primary)] shadow-none border-none hover:opacity-90" : i === "filled" || i === "primary" ? C = "bg-[var(--fibo-primary)] text-[var(--fibo-on-primary)] shadow-sm border-none hover:opacity-90 active:opacity-100" : i === "elevated" ? C = "bg-[var(--fibo-surface)] text-[var(--fibo-primary)] shadow-md border-none hover:shadow-lg" : i === "tonal" ? C = "bg-[var(--fibo-secondary-container)] text-[var(--fibo-on-secondary-container)] shadow-sm border-none" : i === "raw" && (C = "bg-transparent border-none shadow-none p-0 h-auto gap-0 text-inherit font-inherit hover:bg-transparent", $ = ""), b === "soft" && i !== "raw" && (C += " shadow-[0_8px_20px_-6px_rgba(59,130,246,0.4)]");
7633
- const F = z || {}, M = F.padding !== void 0 || F.paddingTop !== void 0 || F.paddingBottom !== void 0 || F.paddingLeft !== void 0 || F.paddingRight !== void 0 || F.fontSize !== void 0 || F.height !== void 0, W = F.borderRadius !== void 0, m = F.fontWeight !== void 0 || e === "xs" || S, E = i === "raw" || x === "none" || S || e === "xs", G = Re(
7677
+ const F = z || {}, M = F.padding !== void 0 || F.paddingTop !== void 0 || F.paddingBottom !== void 0 || F.paddingLeft !== void 0 || F.paddingRight !== void 0 || F.fontSize !== void 0 || F.height !== void 0, W = F.borderRadius !== void 0, g = F.fontWeight !== void 0 || e === "xs" || S, E = i === "raw" || x === "none" || S || e === "xs", G = Ee(
7634
7678
  "fibo-button",
7635
7679
  "inline-flex items-center justify-center whitespace-nowrap",
7636
- m ? "" : "font-semibold",
7680
+ g ? "" : "font-semibold",
7637
7681
  // Resting scale(1) so active:scale eases instead of snapping from none.
7638
7682
  E ? "" : "scale-100 active:scale-[0.96] transform transition-transform duration-200 ease-out",
7639
7683
  f ? "cursor-not-allowed opacity-60" : "cursor-pointer",
@@ -7670,7 +7714,7 @@ const Ge = O(Yt), Vt = (t, o) => {
7670
7714
  ...Y
7671
7715
  );
7672
7716
  });
7673
- class Ae extends X {
7717
+ class Be extends O {
7674
7718
  constructor(i = "") {
7675
7719
  super();
7676
7720
  c(this, "_text", "");
@@ -7766,25 +7810,25 @@ class Ae extends X {
7766
7810
  ...this._props,
7767
7811
  type: this._htmlType
7768
7812
  };
7769
- return p.createElement(Ee, r);
7813
+ return p.createElement(Ae, r);
7770
7814
  }
7771
7815
  }
7772
- const Ue = O(Ae);
7816
+ const Ke = j(Be);
7773
7817
  export {
7774
- De as Box,
7775
- Ue as Button,
7776
- He as Card,
7777
- je as Center,
7778
- Xe as Column,
7779
- Oe as Container,
7780
- qo as FiboStyles,
7781
- Ri as MotionStyles,
7782
- Ye as Row,
7783
- Ve as Spacer,
7784
- Ge as Text,
7785
- We as endSsrRequest,
7786
- Zo as getCss,
7787
- Me as getStyleTag,
7788
- Pe as page,
7789
- Le as withFiboStyles
7818
+ He as Box,
7819
+ Ke as Button,
7820
+ Ge as Card,
7821
+ Oe as Center,
7822
+ je as Column,
7823
+ Ye as Container,
7824
+ Jo as FiboStyles,
7825
+ Ei as MotionStyles,
7826
+ Ve as Row,
7827
+ De as Spacer,
7828
+ Ue as Text,
7829
+ Pe as endSsrRequest,
7830
+ qo as getCss,
7831
+ We as getStyleTag,
7832
+ Le as page,
7833
+ Xe as withFiboStyles
7790
7834
  };