@loafmarkets/ui 0.0.8 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,4 +1,5 @@
1
- import * as React5 from 'react';
1
+ import * as o from 'react';
2
+ import o__default, { createElement } from 'react';
2
3
  import { Slot } from '@radix-ui/react-slot';
3
4
  import { cva } from 'class-variance-authority';
4
5
  import { clsx } from 'clsx';
@@ -7,7 +8,6 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
8
  import { Newspaper, BedDouble, Bath, CarFront } from 'lucide-react';
8
9
  import { createChart } from 'lightweight-charts';
9
10
 
10
- // src/components/button.tsx
11
11
  function cn(...inputs) {
12
12
  return twMerge(clsx(inputs));
13
13
  }
@@ -42,7 +42,7 @@ var buttonVariants = cva(
42
42
  }
43
43
  }
44
44
  );
45
- var Button = React5.forwardRef(
45
+ var Button = o.forwardRef(
46
46
  ({ className, variant, size, radius, asChild = false, ...props }, ref) => {
47
47
  const Comp = asChild ? Slot : "button";
48
48
  return /* @__PURE__ */ jsx(
@@ -80,11 +80,11 @@ var badgeVariants = cva(
80
80
  }
81
81
  }
82
82
  );
83
- var Badge = React5.forwardRef(
83
+ var Badge = o.forwardRef(
84
84
  ({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx("span", { ref, className: cn(badgeVariants({ variant, size }), className), ...props })
85
85
  );
86
86
  Badge.displayName = "Badge";
87
- var Card = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
87
+ var Card = o.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
88
88
  "div",
89
89
  {
90
90
  ref,
@@ -96,11 +96,11 @@ var Card = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ j
96
96
  }
97
97
  ));
98
98
  Card.displayName = "Card";
99
- var CardHeader = React5.forwardRef(
99
+ var CardHeader = o.forwardRef(
100
100
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
101
101
  );
102
102
  CardHeader.displayName = "CardHeader";
103
- var CardTitle = React5.forwardRef(
103
+ var CardTitle = o.forwardRef(
104
104
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx(
105
105
  "h3",
106
106
  {
@@ -111,15 +111,15 @@ var CardTitle = React5.forwardRef(
111
111
  )
112
112
  );
113
113
  CardTitle.displayName = "CardTitle";
114
- var CardDescription = React5.forwardRef(
114
+ var CardDescription = o.forwardRef(
115
115
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("p", { ref, className: cn("text-sm text-slate-500", className), ...props })
116
116
  );
117
117
  CardDescription.displayName = "CardDescription";
118
- var CardContent = React5.forwardRef(
118
+ var CardContent = o.forwardRef(
119
119
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("px-6 pb-6 pt-2 text-sm text-slate-600", className), ...props })
120
120
  );
121
121
  CardContent.displayName = "CardContent";
122
- var CardFooter = React5.forwardRef(
122
+ var CardFooter = o.forwardRef(
123
123
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("flex items-center border-t border-slate-100 px-6 py-4", className), ...props })
124
124
  );
125
125
  CardFooter.displayName = "CardFooter";
@@ -137,7 +137,7 @@ var defaultFormatSignedCurrency = (value) => {
137
137
  const sign = value >= 0 ? "+" : "-";
138
138
  return `${sign}${defaultFormatCurrency(Math.abs(value))}`;
139
139
  };
140
- var PortfolioSummary = React5.forwardRef(
140
+ var PortfolioSummary = o.forwardRef(
141
141
  ({
142
142
  availableCash,
143
143
  portfolioValue,
@@ -210,12 +210,12 @@ var PortfolioSummary = React5.forwardRef(
210
210
  }
211
211
  );
212
212
  PortfolioSummary.displayName = "PortfolioSummary";
213
- var clamp = (v, min, max) => Math.min(max, Math.max(min, v));
214
- var fmt0 = (v) => Math.abs(v).toLocaleString(void 0, { maximumFractionDigits: 0 });
213
+ var clamp = (v2, min, max) => Math.min(max, Math.max(min, v2));
214
+ var fmt0 = (v2) => Math.abs(v2).toLocaleString(void 0, { maximumFractionDigits: 0 });
215
215
  var normalizeLevels = (levels = []) => levels.filter((level) => Number.isFinite(level.price) && level.price > 0 && Number.isFinite(level.amount) && level.amount > 0);
216
216
  var estimateMarketBuyFromUsd = (levels = [], usdAmount) => {
217
217
  if (!Number.isFinite(usdAmount) || usdAmount <= 0) return { tokens: 0, value: 0, avgPrice: null };
218
- const asks = normalizeLevels(levels).sort((a, b) => a.price - b.price);
218
+ const asks = normalizeLevels(levels).sort((a2, b2) => a2.price - b2.price);
219
219
  let remainingUsd = usdAmount;
220
220
  let tokensFilled = 0;
221
221
  let spent = 0;
@@ -236,7 +236,7 @@ var estimateMarketBuyFromUsd = (levels = [], usdAmount) => {
236
236
  };
237
237
  var estimateMarketBuyFromTokens = (levels = [], tokenAmount) => {
238
238
  if (!Number.isFinite(tokenAmount) || tokenAmount <= 0) return { tokens: 0, value: 0, avgPrice: null };
239
- const asks = normalizeLevels(levels).sort((a, b) => a.price - b.price);
239
+ const asks = normalizeLevels(levels).sort((a2, b2) => a2.price - b2.price);
240
240
  let remainingTokens = tokenAmount;
241
241
  let tokensFilled = 0;
242
242
  let spent = 0;
@@ -255,7 +255,7 @@ var estimateMarketBuyFromTokens = (levels = [], tokenAmount) => {
255
255
  };
256
256
  var estimateMarketSellFromTokens = (levels = [], tokenAmount) => {
257
257
  if (!Number.isFinite(tokenAmount) || tokenAmount <= 0) return { tokens: 0, value: 0, avgPrice: null };
258
- const bids = normalizeLevels(levels).sort((a, b) => b.price - a.price);
258
+ const bids = normalizeLevels(levels).sort((a2, b2) => b2.price - a2.price);
259
259
  let remainingTokens = tokenAmount;
260
260
  let tokensFilled = 0;
261
261
  let received = 0;
@@ -287,31 +287,31 @@ function HousePositionSlider({
287
287
  className,
288
288
  ...props
289
289
  }) {
290
- const [orderMode, setOrderMode] = React5.useState("none");
291
- const [buyTrackingMode, setBuyTrackingMode] = React5.useState("dollars");
292
- const [deltaDollars, setDeltaDollars] = React5.useState(0);
293
- const [deltaTokensBuy, setDeltaTokensBuy] = React5.useState(0);
294
- const [deltaTokensSell, setDeltaTokensSell] = React5.useState(0);
295
- const [isDragging, setIsDragging] = React5.useState(false);
296
- const [visualTargetPct, setVisualTargetPct] = React5.useState(null);
297
- const [orderType, setOrderType] = React5.useState(defaultOrderType);
298
- const [limitPrice, setLimitPrice] = React5.useState(currentPrice);
299
- const [limitPriceInput, setLimitPriceInput] = React5.useState(currentPrice.toFixed(2));
300
- const [limitPriceDirty, setLimitPriceDirty] = React5.useState(false);
301
- const [ownershipInput, setOwnershipInput] = React5.useState("");
302
- const [tokenAmountInput, setTokenAmountInput] = React5.useState("");
303
- const houseRef = React5.useRef(null);
290
+ const [orderMode, setOrderMode] = o.useState("none");
291
+ const [buyTrackingMode, setBuyTrackingMode] = o.useState("dollars");
292
+ const [deltaDollars, setDeltaDollars] = o.useState(0);
293
+ const [deltaTokensBuy, setDeltaTokensBuy] = o.useState(0);
294
+ const [deltaTokensSell, setDeltaTokensSell] = o.useState(0);
295
+ const [isDragging, setIsDragging] = o.useState(false);
296
+ const [visualTargetPct, setVisualTargetPct] = o.useState(null);
297
+ const [orderType, setOrderType] = o.useState(defaultOrderType);
298
+ const [limitPrice, setLimitPrice] = o.useState(currentPrice);
299
+ const [limitPriceInput, setLimitPriceInput] = o.useState(currentPrice.toFixed(2));
300
+ const [limitPriceDirty, setLimitPriceDirty] = o.useState(false);
301
+ const [ownershipInput, setOwnershipInput] = o.useState("");
302
+ const [tokenAmountInput, setTokenAmountInput] = o.useState("");
303
+ const houseRef = o.useRef(null);
304
304
  const asks = orderbook?.asks ?? [];
305
305
  const bids = orderbook?.bids ?? [];
306
- React5.useEffect(() => {
306
+ o.useEffect(() => {
307
307
  if (orderType !== "limit") return;
308
308
  if (limitPriceDirty) return;
309
309
  setLimitPrice(currentPrice);
310
310
  setLimitPriceInput(currentPrice.toFixed(2));
311
311
  }, [currentPrice, limitPriceDirty, orderType]);
312
312
  const effectivePrice = orderType === "limit" ? limitPrice : currentPrice;
313
- const pendingBuyValue = pendingOrders.filter((o) => o.type === "buy").reduce((s, o) => s + o.value, 0);
314
- const pendingSellTokens = pendingOrders.filter((o) => o.type === "sell").reduce((s, o) => s + Math.abs(o.tokens), 0);
313
+ const pendingBuyValue = pendingOrders.filter((o2) => o2.type === "buy").reduce((s, o2) => s + o2.value, 0);
314
+ const pendingSellTokens = pendingOrders.filter((o2) => o2.type === "sell").reduce((s, o2) => s + Math.abs(o2.tokens), 0);
315
315
  const effectiveAvailableCash = Math.max(0, availableCash - pendingBuyValue);
316
316
  const effectiveTokensHeld = Math.max(0, tokensHeld - pendingSellTokens);
317
317
  const holdingsValue = tokensHeld * effectivePrice;
@@ -378,7 +378,7 @@ function HousePositionSlider({
378
378
  const impliedDisplayTargetOwnership = clamp(targetOwnership + ownershipShift, 0, 100);
379
379
  const displayTargetOwnership = visualTargetPct ?? impliedDisplayTargetOwnership;
380
380
  const estFeeTokens = Math.abs(deltaValue) * 5e-3 / (effectivePrice || 1);
381
- const resetOrder = React5.useCallback(() => {
381
+ const resetOrder = o.useCallback(() => {
382
382
  setOrderMode("none");
383
383
  setBuyTrackingMode("dollars");
384
384
  setDeltaDollars(0);
@@ -386,7 +386,7 @@ function HousePositionSlider({
386
386
  setDeltaTokensSell(0);
387
387
  setVisualTargetPct(null);
388
388
  }, []);
389
- const updateOrderFromTargetValue = React5.useCallback(
389
+ const updateOrderFromTargetValue = o.useCallback(
390
390
  (newTargetValue) => {
391
391
  const newDeltaValue = newTargetValue - holdingsValue;
392
392
  if (newDeltaValue > 0) {
@@ -410,7 +410,7 @@ function HousePositionSlider({
410
410
  },
411
411
  [effectiveAvailableCash, effectivePrice, effectiveTokensHeld, holdingsValue, resetOrder, tokensHeld]
412
412
  );
413
- const updateOrderFromOwnership = React5.useCallback(
413
+ const updateOrderFromOwnership = o.useCallback(
414
414
  (newOwnershipPercent) => {
415
415
  const nextOwnership = clamp(newOwnershipPercent, 0, 100);
416
416
  const newTargetTokens = nextOwnership / 100 * totalTokens;
@@ -419,7 +419,7 @@ function HousePositionSlider({
419
419
  },
420
420
  [effectivePrice, totalTokens, updateOrderFromTargetValue]
421
421
  );
422
- const updateOrderFromTokenAmount = React5.useCallback(
422
+ const updateOrderFromTokenAmount = o.useCallback(
423
423
  (tokenAmountSigned) => {
424
424
  if (tokenAmountSigned > 0) {
425
425
  const maxTokens = effectiveAvailableCash / (effectivePrice || 1);
@@ -442,7 +442,7 @@ function HousePositionSlider({
442
442
  },
443
443
  [effectiveAvailableCash, effectivePrice, effectiveTokensHeld, resetOrder]
444
444
  );
445
- const updateOrderFromSlider = React5.useCallback(
445
+ const updateOrderFromSlider = o.useCallback(
446
446
  (pct) => {
447
447
  const normalized = (pct - 50) / 50;
448
448
  const magnitude = Math.min(Math.abs(normalized), 1);
@@ -486,12 +486,12 @@ function HousePositionSlider({
486
486
  },
487
487
  [effectiveAvailableCash, effectiveTokensHeld, resetOrder]
488
488
  );
489
- const handleDragAtClientY = React5.useCallback(
489
+ const handleDragAtClientY = o.useCallback(
490
490
  (clientY) => {
491
491
  if (!houseRef.current) return;
492
492
  const rect = houseRef.current.getBoundingClientRect();
493
- const y = clientY - rect.top;
494
- const pct = clamp(100 - y / rect.height * 100, 0, 100);
493
+ const y2 = clientY - rect.top;
494
+ const pct = clamp(100 - y2 / rect.height * 100, 0, 100);
495
495
  updateOrderFromSlider(pct);
496
496
  },
497
497
  [updateOrderFromSlider]
@@ -526,9 +526,9 @@ function HousePositionSlider({
526
526
  const handleCancel = () => {
527
527
  resetOrder();
528
528
  };
529
- const handleOrderTypeSelection = (next) => {
530
- setOrderType(next);
531
- if (next === "limit") {
529
+ const handleOrderTypeSelection = (next2) => {
530
+ setOrderType(next2);
531
+ if (next2 === "limit") {
532
532
  setLimitPriceDirty(false);
533
533
  setLimitPrice(currentPrice);
534
534
  setLimitPriceInput(currentPrice.toFixed(2));
@@ -784,6 +784,1547 @@ function HousePositionSlider({
784
784
  ] })
785
785
  ] });
786
786
  }
787
+
788
+ // ../../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs
789
+ var __assign = function() {
790
+ __assign = Object.assign || function __assign2(t) {
791
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
792
+ s = arguments[i];
793
+ for (var p2 in s) if (Object.prototype.hasOwnProperty.call(s, p2)) t[p2] = s[p2];
794
+ }
795
+ return t;
796
+ };
797
+ return __assign.apply(this, arguments);
798
+ };
799
+ function __spreadArray(to, from2, pack) {
800
+ if (pack || arguments.length === 2) for (var i = 0, l2 = from2.length, ar; i < l2; i++) {
801
+ if (ar || !(i in from2)) {
802
+ if (!ar) ar = Array.prototype.slice.call(from2, 0, i);
803
+ ar[i] = from2[i];
804
+ }
805
+ }
806
+ return to.concat(ar || Array.prototype.slice.call(from2));
807
+ }
808
+
809
+ // ../../../node_modules/.pnpm/@emotion+memoize@0.9.0/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js
810
+ function memoize(fn) {
811
+ var cache = /* @__PURE__ */ Object.create(null);
812
+ return function(arg) {
813
+ if (cache[arg] === void 0) cache[arg] = fn(arg);
814
+ return cache[arg];
815
+ };
816
+ }
817
+
818
+ // ../../../node_modules/.pnpm/@emotion+is-prop-valid@1.4.0/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js
819
+ var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|popover|popoverTarget|popoverTargetAction|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/;
820
+ var isPropValid = /* @__PURE__ */ memoize(
821
+ function(prop) {
822
+ return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111 && prop.charCodeAt(1) === 110 && prop.charCodeAt(2) < 91;
823
+ }
824
+ /* Z+1 */
825
+ );
826
+
827
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Enum.js
828
+ var MS = "-ms-";
829
+ var MOZ = "-moz-";
830
+ var WEBKIT = "-webkit-";
831
+ var COMMENT = "comm";
832
+ var RULESET = "rule";
833
+ var DECLARATION = "decl";
834
+ var IMPORT = "@import";
835
+ var NAMESPACE = "@namespace";
836
+ var KEYFRAMES = "@keyframes";
837
+ var LAYER = "@layer";
838
+
839
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Utility.js
840
+ var abs = Math.abs;
841
+ var from = String.fromCharCode;
842
+ var assign = Object.assign;
843
+ function hash(value, length2) {
844
+ return charat(value, 0) ^ 45 ? (((length2 << 2 ^ charat(value, 0)) << 2 ^ charat(value, 1)) << 2 ^ charat(value, 2)) << 2 ^ charat(value, 3) : 0;
845
+ }
846
+ function trim(value) {
847
+ return value.trim();
848
+ }
849
+ function match(value, pattern) {
850
+ return (value = pattern.exec(value)) ? value[0] : value;
851
+ }
852
+ function replace(value, pattern, replacement) {
853
+ return value.replace(pattern, replacement);
854
+ }
855
+ function indexof(value, search, position2) {
856
+ return value.indexOf(search, position2);
857
+ }
858
+ function charat(value, index) {
859
+ return value.charCodeAt(index) | 0;
860
+ }
861
+ function substr(value, begin, end) {
862
+ return value.slice(begin, end);
863
+ }
864
+ function strlen(value) {
865
+ return value.length;
866
+ }
867
+ function sizeof(value) {
868
+ return value.length;
869
+ }
870
+ function append(value, array) {
871
+ return array.push(value), value;
872
+ }
873
+ function combine(array, callback) {
874
+ return array.map(callback).join("");
875
+ }
876
+ function filter(array, pattern) {
877
+ return array.filter(function(value) {
878
+ return !match(value, pattern);
879
+ });
880
+ }
881
+
882
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Tokenizer.js
883
+ var line = 1;
884
+ var column = 1;
885
+ var length = 0;
886
+ var position = 0;
887
+ var character = 0;
888
+ var characters = "";
889
+ function node(value, root, parent, type, props, children, length2, siblings) {
890
+ return { value, root, parent, type, props, children, line, column, length: length2, return: "", siblings };
891
+ }
892
+ function copy(root, props) {
893
+ return assign(node("", null, null, "", null, null, 0, root.siblings), root, { length: -root.length }, props);
894
+ }
895
+ function lift(root) {
896
+ while (root.root)
897
+ root = copy(root.root, { children: [root] });
898
+ append(root, root.siblings);
899
+ }
900
+ function char() {
901
+ return character;
902
+ }
903
+ function prev() {
904
+ character = position > 0 ? charat(characters, --position) : 0;
905
+ if (column--, character === 10)
906
+ column = 1, line--;
907
+ return character;
908
+ }
909
+ function next() {
910
+ character = position < length ? charat(characters, position++) : 0;
911
+ if (column++, character === 10)
912
+ column = 1, line++;
913
+ return character;
914
+ }
915
+ function peek() {
916
+ return charat(characters, position);
917
+ }
918
+ function caret() {
919
+ return position;
920
+ }
921
+ function slice(begin, end) {
922
+ return substr(characters, begin, end);
923
+ }
924
+ function token(type) {
925
+ switch (type) {
926
+ // \0 \t \n \r \s whitespace token
927
+ case 0:
928
+ case 9:
929
+ case 10:
930
+ case 13:
931
+ case 32:
932
+ return 5;
933
+ // ! + , / > @ ~ isolate token
934
+ case 33:
935
+ case 43:
936
+ case 44:
937
+ case 47:
938
+ case 62:
939
+ case 64:
940
+ case 126:
941
+ // ; { } breakpoint token
942
+ case 59:
943
+ case 123:
944
+ case 125:
945
+ return 4;
946
+ // : accompanied token
947
+ case 58:
948
+ return 3;
949
+ // " ' ( [ opening delimit token
950
+ case 34:
951
+ case 39:
952
+ case 40:
953
+ case 91:
954
+ return 2;
955
+ // ) ] closing delimit token
956
+ case 41:
957
+ case 93:
958
+ return 1;
959
+ }
960
+ return 0;
961
+ }
962
+ function alloc(value) {
963
+ return line = column = 1, length = strlen(characters = value), position = 0, [];
964
+ }
965
+ function dealloc(value) {
966
+ return characters = "", value;
967
+ }
968
+ function delimit(type) {
969
+ return trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)));
970
+ }
971
+ function whitespace(type) {
972
+ while (character = peek())
973
+ if (character < 33)
974
+ next();
975
+ else
976
+ break;
977
+ return token(type) > 2 || token(character) > 3 ? "" : " ";
978
+ }
979
+ function escaping(index, count) {
980
+ while (--count && next())
981
+ if (character < 48 || character > 102 || character > 57 && character < 65 || character > 70 && character < 97)
982
+ break;
983
+ return slice(index, caret() + (count < 6 && peek() == 32 && next() == 32));
984
+ }
985
+ function delimiter(type) {
986
+ while (next())
987
+ switch (character) {
988
+ // ] ) " '
989
+ case type:
990
+ return position;
991
+ // " '
992
+ case 34:
993
+ case 39:
994
+ if (type !== 34 && type !== 39)
995
+ delimiter(character);
996
+ break;
997
+ // (
998
+ case 40:
999
+ if (type === 41)
1000
+ delimiter(type);
1001
+ break;
1002
+ // \
1003
+ case 92:
1004
+ next();
1005
+ break;
1006
+ }
1007
+ return position;
1008
+ }
1009
+ function commenter(type, index) {
1010
+ while (next())
1011
+ if (type + character === 47 + 10)
1012
+ break;
1013
+ else if (type + character === 42 + 42 && peek() === 47)
1014
+ break;
1015
+ return "/*" + slice(index, position - 1) + "*" + from(type === 47 ? type : next());
1016
+ }
1017
+ function identifier(index) {
1018
+ while (!token(peek()))
1019
+ next();
1020
+ return slice(index, position);
1021
+ }
1022
+
1023
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Parser.js
1024
+ function compile(value) {
1025
+ return dealloc(parse("", null, null, null, [""], value = alloc(value), 0, [0], value));
1026
+ }
1027
+ function parse(value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {
1028
+ var index = 0;
1029
+ var offset = 0;
1030
+ var length2 = pseudo;
1031
+ var atrule = 0;
1032
+ var property = 0;
1033
+ var previous = 0;
1034
+ var variable = 1;
1035
+ var scanning = 1;
1036
+ var ampersand = 1;
1037
+ var character2 = 0;
1038
+ var type = "";
1039
+ var props = rules;
1040
+ var children = rulesets;
1041
+ var reference = rule;
1042
+ var characters2 = type;
1043
+ while (scanning)
1044
+ switch (previous = character2, character2 = next()) {
1045
+ // (
1046
+ case 40:
1047
+ if (previous != 108 && charat(characters2, length2 - 1) == 58) {
1048
+ if (indexof(characters2 += replace(delimit(character2), "&", "&\f"), "&\f", abs(index ? points[index - 1] : 0)) != -1)
1049
+ ampersand = -1;
1050
+ break;
1051
+ }
1052
+ // " ' [
1053
+ case 34:
1054
+ case 39:
1055
+ case 91:
1056
+ characters2 += delimit(character2);
1057
+ break;
1058
+ // \t \n \r \s
1059
+ case 9:
1060
+ case 10:
1061
+ case 13:
1062
+ case 32:
1063
+ characters2 += whitespace(previous);
1064
+ break;
1065
+ // \
1066
+ case 92:
1067
+ characters2 += escaping(caret() - 1, 7);
1068
+ continue;
1069
+ // /
1070
+ case 47:
1071
+ switch (peek()) {
1072
+ case 42:
1073
+ case 47:
1074
+ append(comment(commenter(next(), caret()), root, parent, declarations), declarations);
1075
+ if ((token(previous || 1) == 5 || token(peek() || 1) == 5) && strlen(characters2) && substr(characters2, -1, void 0) !== " ") characters2 += " ";
1076
+ break;
1077
+ default:
1078
+ characters2 += "/";
1079
+ }
1080
+ break;
1081
+ // {
1082
+ case 123 * variable:
1083
+ points[index++] = strlen(characters2) * ampersand;
1084
+ // } ; \0
1085
+ case 125 * variable:
1086
+ case 59:
1087
+ case 0:
1088
+ switch (character2) {
1089
+ // \0 }
1090
+ case 0:
1091
+ case 125:
1092
+ scanning = 0;
1093
+ // ;
1094
+ case 59 + offset:
1095
+ if (ampersand == -1) characters2 = replace(characters2, /\f/g, "");
1096
+ if (property > 0 && (strlen(characters2) - length2 || variable === 0 && previous === 47))
1097
+ append(property > 32 ? declaration(characters2 + ";", rule, parent, length2 - 1, declarations) : declaration(replace(characters2, " ", "") + ";", rule, parent, length2 - 2, declarations), declarations);
1098
+ break;
1099
+ // @ ;
1100
+ case 59:
1101
+ characters2 += ";";
1102
+ // { rule/at-rule
1103
+ default:
1104
+ append(reference = ruleset(characters2, root, parent, index, offset, rules, points, type, props = [], children = [], length2, rulesets), rulesets);
1105
+ if (character2 === 123)
1106
+ if (offset === 0)
1107
+ parse(characters2, root, reference, reference, props, rulesets, length2, points, children);
1108
+ else {
1109
+ switch (atrule) {
1110
+ // c(ontainer)
1111
+ case 99:
1112
+ if (charat(characters2, 3) === 110) break;
1113
+ // l(ayer)
1114
+ case 108:
1115
+ if (charat(characters2, 2) === 97) break;
1116
+ default:
1117
+ offset = 0;
1118
+ // d(ocument) m(edia) s(upports)
1119
+ case 100:
1120
+ case 109:
1121
+ case 115:
1122
+ }
1123
+ if (offset) parse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length2, children), children), rules, children, length2, points, rule ? props : children);
1124
+ else parse(characters2, reference, reference, reference, [""], children, 0, points, children);
1125
+ }
1126
+ }
1127
+ index = offset = property = 0, variable = ampersand = 1, type = characters2 = "", length2 = pseudo;
1128
+ break;
1129
+ // :
1130
+ case 58:
1131
+ length2 = 1 + strlen(characters2), property = previous;
1132
+ default:
1133
+ if (variable < 1) {
1134
+ if (character2 == 123)
1135
+ --variable;
1136
+ else if (character2 == 125 && variable++ == 0 && prev() == 125)
1137
+ continue;
1138
+ }
1139
+ switch (characters2 += from(character2), character2 * variable) {
1140
+ // &
1141
+ case 38:
1142
+ ampersand = offset > 0 ? 1 : (characters2 += "\f", -1);
1143
+ break;
1144
+ // ,
1145
+ case 44:
1146
+ points[index++] = (strlen(characters2) - 1) * ampersand, ampersand = 1;
1147
+ break;
1148
+ // @
1149
+ case 64:
1150
+ if (peek() === 45)
1151
+ characters2 += delimit(next());
1152
+ atrule = peek(), offset = length2 = strlen(type = characters2 += identifier(caret())), character2++;
1153
+ break;
1154
+ // -
1155
+ case 45:
1156
+ if (previous === 45 && strlen(characters2) == 2)
1157
+ variable = 0;
1158
+ }
1159
+ }
1160
+ return rulesets;
1161
+ }
1162
+ function ruleset(value, root, parent, index, offset, rules, points, type, props, children, length2, siblings) {
1163
+ var post = offset - 1;
1164
+ var rule = offset === 0 ? rules : [""];
1165
+ var size = sizeof(rule);
1166
+ for (var i = 0, j2 = 0, k2 = 0; i < index; ++i)
1167
+ for (var x2 = 0, y2 = substr(value, post + 1, post = abs(j2 = points[i])), z2 = value; x2 < size; ++x2)
1168
+ if (z2 = trim(j2 > 0 ? rule[x2] + " " + y2 : replace(y2, /&\f/g, rule[x2])))
1169
+ props[k2++] = z2;
1170
+ return node(value, root, parent, offset === 0 ? RULESET : type, props, children, length2, siblings);
1171
+ }
1172
+ function comment(value, root, parent, siblings) {
1173
+ return node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0, siblings);
1174
+ }
1175
+ function declaration(value, root, parent, length2, siblings) {
1176
+ return node(value, root, parent, DECLARATION, substr(value, 0, length2), substr(value, length2 + 1, -1), length2, siblings);
1177
+ }
1178
+
1179
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Prefixer.js
1180
+ function prefix(value, length2, children) {
1181
+ switch (hash(value, length2)) {
1182
+ // color-adjust
1183
+ case 5103:
1184
+ return WEBKIT + "print-" + value + value;
1185
+ // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
1186
+ case 5737:
1187
+ case 4201:
1188
+ case 3177:
1189
+ case 3433:
1190
+ case 1641:
1191
+ case 4457:
1192
+ case 2921:
1193
+ // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break
1194
+ case 5572:
1195
+ case 6356:
1196
+ case 5844:
1197
+ case 3191:
1198
+ case 6645:
1199
+ case 3005:
1200
+ // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)
1201
+ case 4215:
1202
+ case 6389:
1203
+ case 5109:
1204
+ case 5365:
1205
+ case 5621:
1206
+ case 3829:
1207
+ // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position
1208
+ case 6391:
1209
+ case 5879:
1210
+ case 5623:
1211
+ case 6135:
1212
+ case 4599:
1213
+ return WEBKIT + value + value;
1214
+ // mask-composite
1215
+ case 4855:
1216
+ return WEBKIT + value.replace("add", "source-over").replace("substract", "source-out").replace("intersect", "source-in").replace("exclude", "xor") + value;
1217
+ // tab-size
1218
+ case 4789:
1219
+ return MOZ + value + value;
1220
+ // appearance, user-select, transform, hyphens, text-size-adjust
1221
+ case 5349:
1222
+ case 4246:
1223
+ case 4810:
1224
+ case 6968:
1225
+ case 2756:
1226
+ return WEBKIT + value + MOZ + value + MS + value + value;
1227
+ // writing-mode
1228
+ case 5936:
1229
+ switch (charat(value, length2 + 11)) {
1230
+ // vertical-l(r)
1231
+ case 114:
1232
+ return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb") + value;
1233
+ // vertical-r(l)
1234
+ case 108:
1235
+ return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "tb-rl") + value;
1236
+ // horizontal(-)tb
1237
+ case 45:
1238
+ return WEBKIT + value + MS + replace(value, /[svh]\w+-[tblr]{2}/, "lr") + value;
1239
+ }
1240
+ // flex, flex-direction, scroll-snap-type, writing-mode
1241
+ case 6828:
1242
+ case 4268:
1243
+ case 2903:
1244
+ return WEBKIT + value + MS + value + value;
1245
+ // order
1246
+ case 6165:
1247
+ return WEBKIT + value + MS + "flex-" + value + value;
1248
+ // align-items
1249
+ case 5187:
1250
+ return WEBKIT + value + replace(value, /(\w+).+(:[^]+)/, WEBKIT + "box-$1$2" + MS + "flex-$1$2") + value;
1251
+ // align-self
1252
+ case 5443:
1253
+ return WEBKIT + value + MS + "flex-item-" + replace(value, /flex-|-self/g, "") + (!match(value, /flex-|baseline/) ? MS + "grid-row-" + replace(value, /flex-|-self/g, "") : "") + value;
1254
+ // align-content
1255
+ case 4675:
1256
+ return WEBKIT + value + MS + "flex-line-pack" + replace(value, /align-content|flex-|-self/g, "") + value;
1257
+ // flex-shrink
1258
+ case 5548:
1259
+ return WEBKIT + value + MS + replace(value, "shrink", "negative") + value;
1260
+ // flex-basis
1261
+ case 5292:
1262
+ return WEBKIT + value + MS + replace(value, "basis", "preferred-size") + value;
1263
+ // flex-grow
1264
+ case 6060:
1265
+ return WEBKIT + "box-" + replace(value, "-grow", "") + WEBKIT + value + MS + replace(value, "grow", "positive") + value;
1266
+ // transition
1267
+ case 4554:
1268
+ return WEBKIT + replace(value, /([^-])(transform)/g, "$1" + WEBKIT + "$2") + value;
1269
+ // cursor
1270
+ case 6187:
1271
+ return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + "$1"), /(image-set)/, WEBKIT + "$1"), value, "") + value;
1272
+ // background, background-image
1273
+ case 5495:
1274
+ case 3959:
1275
+ return replace(value, /(image-set\([^]*)/, WEBKIT + "$1$`$1");
1276
+ // justify-content
1277
+ case 4968:
1278
+ return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + "box-pack:$3" + MS + "flex-pack:$3"), /space-between/, "justify") + WEBKIT + value + value;
1279
+ // justify-self
1280
+ case 4200:
1281
+ if (!match(value, /flex-|baseline/)) return MS + "grid-column-align" + substr(value, length2) + value;
1282
+ break;
1283
+ // grid-template-(columns|rows)
1284
+ case 2592:
1285
+ case 3360:
1286
+ return MS + replace(value, "template-", "") + value;
1287
+ // grid-(row|column)-start
1288
+ case 4384:
1289
+ case 3616:
1290
+ if (children && children.some(function(element, index) {
1291
+ return length2 = index, match(element.props, /grid-\w+-end/);
1292
+ })) {
1293
+ return ~indexof(value + (children = children[length2].value), "span", 0) ? value : MS + replace(value, "-start", "") + value + MS + "grid-row-span:" + (~indexof(children, "span", 0) ? match(children, /\d+/) : +match(children, /\d+/) - +match(value, /\d+/)) + ";";
1294
+ }
1295
+ return MS + replace(value, "-start", "") + value;
1296
+ // grid-(row|column)-end
1297
+ case 4896:
1298
+ case 4128:
1299
+ return children && children.some(function(element) {
1300
+ return match(element.props, /grid-\w+-start/);
1301
+ }) ? value : MS + replace(replace(value, "-end", "-span"), "span ", "") + value;
1302
+ // (margin|padding)-inline-(start|end)
1303
+ case 4095:
1304
+ case 3583:
1305
+ case 4068:
1306
+ case 2532:
1307
+ return replace(value, /(.+)-inline(.+)/, WEBKIT + "$1$2") + value;
1308
+ // (min|max)?(width|height|inline-size|block-size)
1309
+ case 8116:
1310
+ case 7059:
1311
+ case 5753:
1312
+ case 5535:
1313
+ case 5445:
1314
+ case 5701:
1315
+ case 4933:
1316
+ case 4677:
1317
+ case 5533:
1318
+ case 5789:
1319
+ case 5021:
1320
+ case 4765:
1321
+ if (strlen(value) - 1 - length2 > 6)
1322
+ switch (charat(value, length2 + 1)) {
1323
+ // (m)ax-content, (m)in-content
1324
+ case 109:
1325
+ if (charat(value, length2 + 4) !== 45)
1326
+ break;
1327
+ // (f)ill-available, (f)it-content
1328
+ case 102:
1329
+ return replace(value, /(.+:)(.+)-([^]+)/, "$1" + WEBKIT + "$2-$3$1" + MOZ + (charat(value, length2 + 3) == 108 ? "$3" : "$2-$3")) + value;
1330
+ // (s)tretch
1331
+ case 115:
1332
+ return ~indexof(value, "stretch", 0) ? prefix(replace(value, "stretch", "fill-available"), length2, children) + value : value;
1333
+ }
1334
+ break;
1335
+ // grid-(column|row)
1336
+ case 5152:
1337
+ case 5920:
1338
+ return replace(value, /(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/, function(_2, a2, b2, c2, d2, e, f2) {
1339
+ return MS + a2 + ":" + b2 + f2 + (c2 ? MS + a2 + "-span:" + (d2 ? e : +e - +b2) + f2 : "") + value;
1340
+ });
1341
+ // position: sticky
1342
+ case 4949:
1343
+ if (charat(value, length2 + 6) === 121)
1344
+ return replace(value, ":", ":" + WEBKIT) + value;
1345
+ break;
1346
+ // display: (flex|inline-flex|grid|inline-grid)
1347
+ case 6444:
1348
+ switch (charat(value, charat(value, 14) === 45 ? 18 : 11)) {
1349
+ // (inline-)?fle(x)
1350
+ case 120:
1351
+ return replace(value, /(.+:)([^;\s!]+)(;|(\s+)?!.+)?/, "$1" + WEBKIT + (charat(value, 14) === 45 ? "inline-" : "") + "box$3$1" + WEBKIT + "$2$3$1" + MS + "$2box$3") + value;
1352
+ // (inline-)?gri(d)
1353
+ case 100:
1354
+ return replace(value, ":", ":" + MS) + value;
1355
+ }
1356
+ break;
1357
+ // scroll-margin, scroll-margin-(top|right|bottom|left)
1358
+ case 5719:
1359
+ case 2647:
1360
+ case 2135:
1361
+ case 3927:
1362
+ case 2391:
1363
+ return replace(value, "scroll-", "scroll-snap-") + value;
1364
+ }
1365
+ return value;
1366
+ }
1367
+
1368
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Serializer.js
1369
+ function serialize(children, callback) {
1370
+ var output = "";
1371
+ for (var i = 0; i < children.length; i++)
1372
+ output += callback(children[i], i, children, callback) || "";
1373
+ return output;
1374
+ }
1375
+ function stringify(element, index, children, callback) {
1376
+ switch (element.type) {
1377
+ case LAYER:
1378
+ if (element.children.length) break;
1379
+ case IMPORT:
1380
+ case NAMESPACE:
1381
+ case DECLARATION:
1382
+ return element.return = element.return || element.value;
1383
+ case COMMENT:
1384
+ return "";
1385
+ case KEYFRAMES:
1386
+ return element.return = element.value + "{" + serialize(element.children, callback) + "}";
1387
+ case RULESET:
1388
+ if (!strlen(element.value = element.props.join(","))) return "";
1389
+ }
1390
+ return strlen(children = serialize(element.children, callback)) ? element.return = element.value + "{" + children + "}" : "";
1391
+ }
1392
+
1393
+ // ../../../node_modules/.pnpm/stylis@4.3.6/node_modules/stylis/src/Middleware.js
1394
+ function middleware(collection) {
1395
+ var length2 = sizeof(collection);
1396
+ return function(element, index, children, callback) {
1397
+ var output = "";
1398
+ for (var i = 0; i < length2; i++)
1399
+ output += collection[i](element, index, children, callback) || "";
1400
+ return output;
1401
+ };
1402
+ }
1403
+ function rulesheet(callback) {
1404
+ return function(element) {
1405
+ if (!element.root) {
1406
+ if (element = element.return)
1407
+ callback(element);
1408
+ }
1409
+ };
1410
+ }
1411
+ function prefixer(element, index, children, callback) {
1412
+ if (element.length > -1) {
1413
+ if (!element.return)
1414
+ switch (element.type) {
1415
+ case DECLARATION:
1416
+ element.return = prefix(element.value, element.length, children);
1417
+ return;
1418
+ case KEYFRAMES:
1419
+ return serialize([copy(element, { value: replace(element.value, "@", "@" + WEBKIT) })], callback);
1420
+ case RULESET:
1421
+ if (element.length)
1422
+ return combine(children = element.props, function(value) {
1423
+ switch (match(value, callback = /(::plac\w+|:read-\w+)/)) {
1424
+ // :read-(only|write)
1425
+ case ":read-only":
1426
+ case ":read-write":
1427
+ lift(copy(element, { props: [replace(value, /:(read-\w+)/, ":" + MOZ + "$1")] }));
1428
+ lift(copy(element, { props: [value] }));
1429
+ assign(element, { props: filter(children, callback) });
1430
+ break;
1431
+ // :placeholder
1432
+ case "::placeholder":
1433
+ lift(copy(element, { props: [replace(value, /:(plac\w+)/, ":" + WEBKIT + "input-$1")] }));
1434
+ lift(copy(element, { props: [replace(value, /:(plac\w+)/, ":" + MOZ + "$1")] }));
1435
+ lift(copy(element, { props: [replace(value, /:(plac\w+)/, MS + "input-$1")] }));
1436
+ lift(copy(element, { props: [value] }));
1437
+ assign(element, { props: filter(children, callback) });
1438
+ break;
1439
+ }
1440
+ return "";
1441
+ });
1442
+ }
1443
+ }
1444
+ }
1445
+
1446
+ // ../../../node_modules/.pnpm/@emotion+unitless@0.10.0/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js
1447
+ var unitlessKeys = {
1448
+ animationIterationCount: 1,
1449
+ aspectRatio: 1,
1450
+ borderImageOutset: 1,
1451
+ borderImageSlice: 1,
1452
+ borderImageWidth: 1,
1453
+ boxFlex: 1,
1454
+ boxFlexGroup: 1,
1455
+ boxOrdinalGroup: 1,
1456
+ columnCount: 1,
1457
+ columns: 1,
1458
+ flex: 1,
1459
+ flexGrow: 1,
1460
+ flexPositive: 1,
1461
+ flexShrink: 1,
1462
+ flexNegative: 1,
1463
+ flexOrder: 1,
1464
+ gridRow: 1,
1465
+ gridRowEnd: 1,
1466
+ gridRowSpan: 1,
1467
+ gridRowStart: 1,
1468
+ gridColumn: 1,
1469
+ gridColumnEnd: 1,
1470
+ gridColumnSpan: 1,
1471
+ gridColumnStart: 1,
1472
+ msGridRow: 1,
1473
+ msGridRowSpan: 1,
1474
+ msGridColumn: 1,
1475
+ msGridColumnSpan: 1,
1476
+ fontWeight: 1,
1477
+ lineHeight: 1,
1478
+ opacity: 1,
1479
+ order: 1,
1480
+ orphans: 1,
1481
+ scale: 1,
1482
+ tabSize: 1,
1483
+ widows: 1,
1484
+ zIndex: 1,
1485
+ zoom: 1,
1486
+ WebkitLineClamp: 1,
1487
+ // SVG-related properties
1488
+ fillOpacity: 1,
1489
+ floodOpacity: 1,
1490
+ stopOpacity: 1,
1491
+ strokeDasharray: 1,
1492
+ strokeDashoffset: 1,
1493
+ strokeMiterlimit: 1,
1494
+ strokeOpacity: 1,
1495
+ strokeWidth: 1
1496
+ };
1497
+
1498
+ // ../../../node_modules/.pnpm/styled-components@6.3.6_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/styled-components/dist/styled-components.esm.js
1499
+ var a = "undefined" != typeof process && void 0 !== process.env && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR) || "data-styled";
1500
+ var c = "active";
1501
+ var u = "data-styled-version";
1502
+ var l = "6.3.6";
1503
+ var p = "/*!sc*/\n";
1504
+ var d = "undefined" != typeof window && "undefined" != typeof document;
1505
+ var h = void 0 === o__default.createContext;
1506
+ var f = Boolean("boolean" == typeof SC_DISABLE_SPEEDY ? SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.REACT_APP_SC_DISABLE_SPEEDY && "" !== process.env.REACT_APP_SC_DISABLE_SPEEDY ? "false" !== process.env.REACT_APP_SC_DISABLE_SPEEDY && process.env.REACT_APP_SC_DISABLE_SPEEDY : "undefined" != typeof process && void 0 !== process.env && void 0 !== process.env.SC_DISABLE_SPEEDY && "" !== process.env.SC_DISABLE_SPEEDY ? "false" !== process.env.SC_DISABLE_SPEEDY && process.env.SC_DISABLE_SPEEDY : "production" !== process.env.NODE_ENV);
1507
+ var y = /invalid hook call/i;
1508
+ var v = /* @__PURE__ */ new Set();
1509
+ var g = function(t, n) {
1510
+ if ("production" !== process.env.NODE_ENV) {
1511
+ if (h) return;
1512
+ var r2 = n ? ' with the id of "'.concat(n, '"') : "", s = "The component ".concat(t).concat(r2, " has been created dynamically.\n") + "You may see this warning because you've called styled inside another component.\nTo resolve this only create new StyledComponents outside of any render method and function component.\nSee https://styled-components.com/docs/basics#define-styled-components-outside-of-the-render-method for more info.\n", i = console.error;
1513
+ try {
1514
+ var a2 = true;
1515
+ console.error = function(t2) {
1516
+ for (var n2 = [], o2 = 1; o2 < arguments.length; o2++) n2[o2 - 1] = arguments[o2];
1517
+ y.test(t2) ? (a2 = false, v.delete(s)) : i.apply(void 0, __spreadArray([t2], n2, false));
1518
+ }, "function" == typeof o__default.useState && o__default.useState(null), a2 && !v.has(s) && (console.warn(s), v.add(s));
1519
+ } catch (e) {
1520
+ y.test(e.message) && v.delete(s);
1521
+ } finally {
1522
+ console.error = i;
1523
+ }
1524
+ }
1525
+ };
1526
+ var S = Object.freeze([]);
1527
+ var w = Object.freeze({});
1528
+ function b(e, t, n) {
1529
+ return void 0 === n && (n = w), e.theme !== n.theme && e.theme || t || n.theme;
1530
+ }
1531
+ var C = /* @__PURE__ */ new Set(["a", "abbr", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "blockquote", "body", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "menu", "meter", "nav", "object", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "search", "section", "select", "slot", "small", "span", "strong", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "u", "ul", "var", "video", "wbr", "circle", "clipPath", "defs", "ellipse", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "filter", "foreignObject", "g", "image", "line", "linearGradient", "marker", "mask", "path", "pattern", "polygon", "polyline", "radialGradient", "rect", "stop", "svg", "switch", "symbol", "text", "textPath", "tspan", "use"]);
1532
+ var E = /[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g;
1533
+ var N = /(^-|-$)/g;
1534
+ function A(e) {
1535
+ return e.replace(E, "-").replace(N, "");
1536
+ }
1537
+ var P = /(a)(d)/gi;
1538
+ var _ = function(e) {
1539
+ return String.fromCharCode(e + (e > 25 ? 39 : 97));
1540
+ };
1541
+ function I(e) {
1542
+ var t, n = "";
1543
+ for (t = Math.abs(e); t > 52; t = t / 52 | 0) n = _(t % 52) + n;
1544
+ return (_(t % 52) + n).replace(P, "$1-$2");
1545
+ }
1546
+ var O;
1547
+ var D = function(e, t) {
1548
+ for (var n = t.length; n; ) e = 33 * e ^ t.charCodeAt(--n);
1549
+ return e;
1550
+ };
1551
+ var T = function(e) {
1552
+ return D(5381, e);
1553
+ };
1554
+ function x(e) {
1555
+ return I(T(e) >>> 0);
1556
+ }
1557
+ function R(e) {
1558
+ return "production" !== process.env.NODE_ENV && "string" == typeof e && e || e.displayName || e.name || "Component";
1559
+ }
1560
+ function j(e) {
1561
+ return "string" == typeof e && ("production" === process.env.NODE_ENV || e.charAt(0) === e.charAt(0).toLowerCase());
1562
+ }
1563
+ var k = "function" == typeof Symbol && Symbol.for;
1564
+ var M = k ? Symbol.for("react.memo") : 60115;
1565
+ var V = k ? Symbol.for("react.forward_ref") : 60112;
1566
+ var F = { childContextTypes: true, contextType: true, contextTypes: true, defaultProps: true, displayName: true, getDefaultProps: true, getDerivedStateFromError: true, getDerivedStateFromProps: true, mixins: true, propTypes: true, type: true };
1567
+ var B = { name: true, length: true, prototype: true, caller: true, callee: true, arguments: true, arity: true };
1568
+ var L = { $$typeof: true, compare: true, defaultProps: true, displayName: true, propTypes: true, type: true };
1569
+ var z = ((O = {})[V] = { $$typeof: true, render: true, defaultProps: true, displayName: true, propTypes: true }, O[M] = L, O);
1570
+ function G(e) {
1571
+ return ("type" in (t = e) && t.type.$$typeof) === M ? L : "$$typeof" in e ? z[e.$$typeof] : F;
1572
+ var t;
1573
+ }
1574
+ var $ = Object.defineProperty;
1575
+ var Y = Object.getOwnPropertyNames;
1576
+ var W = Object.getOwnPropertySymbols;
1577
+ var q = Object.getOwnPropertyDescriptor;
1578
+ var H = Object.getPrototypeOf;
1579
+ var U = Object.prototype;
1580
+ function J(e, t, n) {
1581
+ if ("string" != typeof t) {
1582
+ if (U) {
1583
+ var o2 = H(t);
1584
+ o2 && o2 !== U && J(e, o2, n);
1585
+ }
1586
+ var r2 = Y(t);
1587
+ W && (r2 = r2.concat(W(t)));
1588
+ for (var s = G(e), i = G(t), a2 = 0; a2 < r2.length; ++a2) {
1589
+ var c2 = r2[a2];
1590
+ if (!(c2 in B || n && n[c2] || i && c2 in i || s && c2 in s)) {
1591
+ var u2 = q(t, c2);
1592
+ try {
1593
+ $(e, c2, u2);
1594
+ } catch (e2) {
1595
+ }
1596
+ }
1597
+ }
1598
+ }
1599
+ return e;
1600
+ }
1601
+ function X(e) {
1602
+ return "function" == typeof e;
1603
+ }
1604
+ function Z(e) {
1605
+ return "object" == typeof e && "styledComponentId" in e;
1606
+ }
1607
+ function K(e, t) {
1608
+ return e && t ? "".concat(e, " ").concat(t) : e || t || "";
1609
+ }
1610
+ function Q(e, t) {
1611
+ if (0 === e.length) return "";
1612
+ for (var n = e[0], o2 = 1; o2 < e.length; o2++) n += e[o2];
1613
+ return n;
1614
+ }
1615
+ function ee(e) {
1616
+ return null !== e && "object" == typeof e && e.constructor.name === Object.name && !("props" in e && e.$$typeof);
1617
+ }
1618
+ function te(e, t, n) {
1619
+ if (void 0 === n && (n = false), !n && !ee(e) && !Array.isArray(e)) return t;
1620
+ if (Array.isArray(t)) for (var o2 = 0; o2 < t.length; o2++) e[o2] = te(e[o2], t[o2]);
1621
+ else if (ee(t)) for (var o2 in t) e[o2] = te(e[o2], t[o2]);
1622
+ return e;
1623
+ }
1624
+ function ne(e, t) {
1625
+ Object.defineProperty(e, "toString", { value: t });
1626
+ }
1627
+ var oe = "production" !== process.env.NODE_ENV ? { 1: "Cannot create styled-component for component: %s.\n\n", 2: "Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\n\n- Are you trying to reuse it across renders?\n- Are you accidentally calling collectStyles twice?\n\n", 3: "Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\n\n", 4: "The `StyleSheetManager` expects a valid target or sheet prop!\n\n- Does this error occur on the client and is your target falsy?\n- Does this error occur on the server and is the sheet falsy?\n\n", 5: "The clone method cannot be used on the client!\n\n- Are you running in a client-like environment on the server?\n- Are you trying to run SSR on the client?\n\n", 6: "Trying to insert a new style tag, but the given Node is unmounted!\n\n- Are you using a custom target that isn't mounted?\n- Does your document not have a valid head element?\n- Have you accidentally removed a style tag manually?\n\n", 7: 'ThemeProvider: Please return an object from your "theme" prop function, e.g.\n\n```js\ntheme={() => ({})}\n```\n\n', 8: 'ThemeProvider: Please make your "theme" prop an object.\n\n', 9: "Missing document `<head>`\n\n", 10: "Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\n\n", 11: "_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\n\n", 12: "It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\`\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\n\n", 13: "%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\n\n", 14: 'ThemeProvider: "theme" prop is required.\n\n', 15: "A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\n\n```js\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\n```\n\n", 16: "Reached the limit of how many styled components may be created at group %s.\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\nas for instance in your render method then you may be running into this limitation.\n\n", 17: "CSSStyleSheet could not be found on HTMLStyleElement.\nHas styled-components' style tag been unmounted or altered by another script?\n", 18: "ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`" } : {};
1628
+ function re() {
1629
+ for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
1630
+ for (var n = e[0], o2 = [], r2 = 1, s = e.length; r2 < s; r2 += 1) o2.push(e[r2]);
1631
+ return o2.forEach(function(e2) {
1632
+ n = n.replace(/%[a-z]/, e2);
1633
+ }), n;
1634
+ }
1635
+ function se(t) {
1636
+ for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
1637
+ return "production" === process.env.NODE_ENV ? new Error("An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#".concat(t, " for more information.").concat(n.length > 0 ? " Args: ".concat(n.join(", ")) : "")) : new Error(re.apply(void 0, __spreadArray([oe[t]], n, false)).trim());
1638
+ }
1639
+ var ie = function() {
1640
+ function e(e2) {
1641
+ this.groupSizes = new Uint32Array(512), this.length = 512, this.tag = e2;
1642
+ }
1643
+ return e.prototype.indexOfGroup = function(e2) {
1644
+ for (var t = 0, n = 0; n < e2; n++) t += this.groupSizes[n];
1645
+ return t;
1646
+ }, e.prototype.insertRules = function(e2, t) {
1647
+ if (e2 >= this.groupSizes.length) {
1648
+ for (var n = this.groupSizes, o2 = n.length, r2 = o2; e2 >= r2; ) if ((r2 <<= 1) < 0) throw se(16, "".concat(e2));
1649
+ this.groupSizes = new Uint32Array(r2), this.groupSizes.set(n), this.length = r2;
1650
+ for (var s = o2; s < r2; s++) this.groupSizes[s] = 0;
1651
+ }
1652
+ for (var i = this.indexOfGroup(e2 + 1), a2 = (s = 0, t.length); s < a2; s++) this.tag.insertRule(i, t[s]) && (this.groupSizes[e2]++, i++);
1653
+ }, e.prototype.clearGroup = function(e2) {
1654
+ if (e2 < this.length) {
1655
+ var t = this.groupSizes[e2], n = this.indexOfGroup(e2), o2 = n + t;
1656
+ this.groupSizes[e2] = 0;
1657
+ for (var r2 = n; r2 < o2; r2++) this.tag.deleteRule(n);
1658
+ }
1659
+ }, e.prototype.getGroup = function(e2) {
1660
+ var t = "";
1661
+ if (e2 >= this.length || 0 === this.groupSizes[e2]) return t;
1662
+ for (var n = this.groupSizes[e2], o2 = this.indexOfGroup(e2), r2 = o2 + n, s = o2; s < r2; s++) t += "".concat(this.tag.getRule(s)).concat(p);
1663
+ return t;
1664
+ }, e;
1665
+ }();
1666
+ var ae = 1 << 30;
1667
+ var ce = /* @__PURE__ */ new Map();
1668
+ var ue = /* @__PURE__ */ new Map();
1669
+ var le = 1;
1670
+ var pe = function(e) {
1671
+ if (ce.has(e)) return ce.get(e);
1672
+ for (; ue.has(le); ) le++;
1673
+ var t = le++;
1674
+ if ("production" !== process.env.NODE_ENV && ((0 | t) < 0 || t > ae)) throw se(16, "".concat(t));
1675
+ return ce.set(e, t), ue.set(t, e), t;
1676
+ };
1677
+ var de = function(e, t) {
1678
+ le = t + 1, ce.set(e, t), ue.set(t, e);
1679
+ };
1680
+ var he = "style[".concat(a, "][").concat(u, '="').concat(l, '"]');
1681
+ var fe = new RegExp("^".concat(a, '\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'));
1682
+ var me = function(e, t, n) {
1683
+ for (var o2, r2 = n.split(","), s = 0, i = r2.length; s < i; s++) (o2 = r2[s]) && e.registerName(t, o2);
1684
+ };
1685
+ var ye = function(e, t) {
1686
+ for (var n, o2 = (null !== (n = t.textContent) && void 0 !== n ? n : "").split(p), r2 = [], s = 0, i = o2.length; s < i; s++) {
1687
+ var a2 = o2[s].trim();
1688
+ if (a2) {
1689
+ var c2 = a2.match(fe);
1690
+ if (c2) {
1691
+ var u2 = 0 | parseInt(c2[1], 10), l2 = c2[2];
1692
+ 0 !== u2 && (de(l2, u2), me(e, l2, c2[3]), e.getTag().insertRules(u2, r2)), r2.length = 0;
1693
+ } else r2.push(a2);
1694
+ }
1695
+ }
1696
+ };
1697
+ var ve = function(e) {
1698
+ for (var t = document.querySelectorAll(he), n = 0, o2 = t.length; n < o2; n++) {
1699
+ var r2 = t[n];
1700
+ r2 && r2.getAttribute(a) !== c && (ye(e, r2), r2.parentNode && r2.parentNode.removeChild(r2));
1701
+ }
1702
+ };
1703
+ function ge() {
1704
+ return "undefined" != typeof __webpack_nonce__ ? __webpack_nonce__ : null;
1705
+ }
1706
+ var Se = function(e) {
1707
+ var t = document.head, n = e || t, o2 = document.createElement("style"), r2 = function(e2) {
1708
+ var t2 = Array.from(e2.querySelectorAll("style[".concat(a, "]")));
1709
+ return t2[t2.length - 1];
1710
+ }(n), s = void 0 !== r2 ? r2.nextSibling : null;
1711
+ o2.setAttribute(a, c), o2.setAttribute(u, l);
1712
+ var i = ge();
1713
+ return i && o2.setAttribute("nonce", i), n.insertBefore(o2, s), o2;
1714
+ };
1715
+ var we = function() {
1716
+ function e(e2) {
1717
+ this.element = Se(e2), this.element.appendChild(document.createTextNode("")), this.sheet = function(e3) {
1718
+ if (e3.sheet) return e3.sheet;
1719
+ for (var t = document.styleSheets, n = 0, o2 = t.length; n < o2; n++) {
1720
+ var r2 = t[n];
1721
+ if (r2.ownerNode === e3) return r2;
1722
+ }
1723
+ throw se(17);
1724
+ }(this.element), this.length = 0;
1725
+ }
1726
+ return e.prototype.insertRule = function(e2, t) {
1727
+ try {
1728
+ return this.sheet.insertRule(t, e2), this.length++, true;
1729
+ } catch (e3) {
1730
+ return false;
1731
+ }
1732
+ }, e.prototype.deleteRule = function(e2) {
1733
+ this.sheet.deleteRule(e2), this.length--;
1734
+ }, e.prototype.getRule = function(e2) {
1735
+ var t = this.sheet.cssRules[e2];
1736
+ return t && t.cssText ? t.cssText : "";
1737
+ }, e;
1738
+ }();
1739
+ var be = function() {
1740
+ function e(e2) {
1741
+ this.element = Se(e2), this.nodes = this.element.childNodes, this.length = 0;
1742
+ }
1743
+ return e.prototype.insertRule = function(e2, t) {
1744
+ if (e2 <= this.length && e2 >= 0) {
1745
+ var n = document.createTextNode(t);
1746
+ return this.element.insertBefore(n, this.nodes[e2] || null), this.length++, true;
1747
+ }
1748
+ return false;
1749
+ }, e.prototype.deleteRule = function(e2) {
1750
+ this.element.removeChild(this.nodes[e2]), this.length--;
1751
+ }, e.prototype.getRule = function(e2) {
1752
+ return e2 < this.length ? this.nodes[e2].textContent : "";
1753
+ }, e;
1754
+ }();
1755
+ var Ce = function() {
1756
+ function e(e2) {
1757
+ this.rules = [], this.length = 0;
1758
+ }
1759
+ return e.prototype.insertRule = function(e2, t) {
1760
+ return e2 <= this.length && (this.rules.splice(e2, 0, t), this.length++, true);
1761
+ }, e.prototype.deleteRule = function(e2) {
1762
+ this.rules.splice(e2, 1), this.length--;
1763
+ }, e.prototype.getRule = function(e2) {
1764
+ return e2 < this.length ? this.rules[e2] : "";
1765
+ }, e;
1766
+ }();
1767
+ var Ee = d;
1768
+ var Ne = { isServer: !d, useCSSOMInjection: !f };
1769
+ var Ae = function() {
1770
+ function e(e2, n, o2) {
1771
+ void 0 === e2 && (e2 = w), void 0 === n && (n = {});
1772
+ var r2 = this;
1773
+ this.options = __assign(__assign({}, Ne), e2), this.gs = n, this.names = new Map(o2), this.server = !!e2.isServer, !this.server && d && Ee && (Ee = false, ve(this)), ne(this, function() {
1774
+ return function(e3) {
1775
+ for (var t = e3.getTag(), n2 = t.length, o3 = "", r3 = function(n3) {
1776
+ var r4 = function(e4) {
1777
+ return ue.get(e4);
1778
+ }(n3);
1779
+ if (void 0 === r4) return "continue";
1780
+ var s2 = e3.names.get(r4), i = t.getGroup(n3);
1781
+ if (void 0 === s2 || !s2.size || 0 === i.length) return "continue";
1782
+ var c2 = "".concat(a, ".g").concat(n3, '[id="').concat(r4, '"]'), u2 = "";
1783
+ void 0 !== s2 && s2.forEach(function(e4) {
1784
+ e4.length > 0 && (u2 += "".concat(e4, ","));
1785
+ }), o3 += "".concat(i).concat(c2, '{content:"').concat(u2, '"}').concat(p);
1786
+ }, s = 0; s < n2; s++) r3(s);
1787
+ return o3;
1788
+ }(r2);
1789
+ });
1790
+ }
1791
+ return e.registerId = function(e2) {
1792
+ return pe(e2);
1793
+ }, e.prototype.rehydrate = function() {
1794
+ !this.server && d && ve(this);
1795
+ }, e.prototype.reconstructWithOptions = function(n, o2) {
1796
+ return void 0 === o2 && (o2 = true), new e(__assign(__assign({}, this.options), n), this.gs, o2 && this.names || void 0);
1797
+ }, e.prototype.allocateGSInstance = function(e2) {
1798
+ return this.gs[e2] = (this.gs[e2] || 0) + 1;
1799
+ }, e.prototype.getTag = function() {
1800
+ return this.tag || (this.tag = (e2 = function(e3) {
1801
+ var t = e3.useCSSOMInjection, n = e3.target;
1802
+ return e3.isServer ? new Ce(n) : t ? new we(n) : new be(n);
1803
+ }(this.options), new ie(e2)));
1804
+ var e2;
1805
+ }, e.prototype.hasNameForId = function(e2, t) {
1806
+ return this.names.has(e2) && this.names.get(e2).has(t);
1807
+ }, e.prototype.registerName = function(e2, t) {
1808
+ if (pe(e2), this.names.has(e2)) this.names.get(e2).add(t);
1809
+ else {
1810
+ var n = /* @__PURE__ */ new Set();
1811
+ n.add(t), this.names.set(e2, n);
1812
+ }
1813
+ }, e.prototype.insertRules = function(e2, t, n) {
1814
+ this.registerName(e2, t), this.getTag().insertRules(pe(e2), n);
1815
+ }, e.prototype.clearNames = function(e2) {
1816
+ this.names.has(e2) && this.names.get(e2).clear();
1817
+ }, e.prototype.clearRules = function(e2) {
1818
+ this.getTag().clearGroup(pe(e2)), this.clearNames(e2);
1819
+ }, e.prototype.clearTag = function() {
1820
+ this.tag = void 0;
1821
+ }, e;
1822
+ }();
1823
+ var Pe = /&/g;
1824
+ var _e = 47;
1825
+ function Ie(e) {
1826
+ if (-1 === e.indexOf("}")) return false;
1827
+ for (var t = e.length, n = 0, o2 = 0, r2 = false, s = 0; s < t; s++) {
1828
+ var i = e.charCodeAt(s);
1829
+ if (0 !== o2 || r2 || i !== _e || 42 !== e.charCodeAt(s + 1)) if (r2) 42 === i && e.charCodeAt(s + 1) === _e && (r2 = false, s++);
1830
+ else if (34 !== i && 39 !== i || 0 !== s && 92 === e.charCodeAt(s - 1)) {
1831
+ if (0 === o2) {
1832
+ if (123 === i) n++;
1833
+ else if (125 === i && --n < 0) return true;
1834
+ }
1835
+ } else 0 === o2 ? o2 = i : o2 === i && (o2 = 0);
1836
+ else r2 = true, s++;
1837
+ }
1838
+ return 0 !== n || 0 !== o2;
1839
+ }
1840
+ function Oe(e, t) {
1841
+ return e.map(function(e2) {
1842
+ return "rule" === e2.type && (e2.value = "".concat(t, " ").concat(e2.value), e2.value = e2.value.replaceAll(",", ",".concat(t, " ")), e2.props = e2.props.map(function(e3) {
1843
+ return "".concat(t, " ").concat(e3);
1844
+ })), Array.isArray(e2.children) && "@keyframes" !== e2.type && (e2.children = Oe(e2.children, t)), e2;
1845
+ });
1846
+ }
1847
+ function De(e) {
1848
+ var t, n, o2, r2 = w , i = r2.options, a2 = void 0 === i ? w : i, c2 = r2.plugins, u2 = void 0 === c2 ? S : c2, l2 = function(e2, o3, r3) {
1849
+ return r3.startsWith(n) && r3.endsWith(n) && r3.replaceAll(n, "").length > 0 ? ".".concat(t) : e2;
1850
+ }, p2 = u2.slice();
1851
+ p2.push(function(e2) {
1852
+ e2.type === RULESET && e2.value.includes("&") && (e2.props[0] = e2.props[0].replace(Pe, n).replace(o2, l2));
1853
+ }), a2.prefix && p2.push(prefixer), p2.push(stringify);
1854
+ var d2 = function(e2, r3, i2, c3) {
1855
+ void 0 === r3 && (r3 = ""), void 0 === i2 && (i2 = ""), void 0 === c3 && (c3 = "&"), t = c3, n = r3, o2 = new RegExp("\\".concat(n, "\\b"), "g");
1856
+ var u3 = function(e3) {
1857
+ if (!Ie(e3)) return e3;
1858
+ for (var t2 = e3.length, n2 = "", o3 = 0, r4 = 0, s = 0, i3 = false, a3 = 0; a3 < t2; a3++) {
1859
+ var c4 = e3.charCodeAt(a3);
1860
+ if (0 !== s || i3 || c4 !== _e || 42 !== e3.charCodeAt(a3 + 1)) if (i3) 42 === c4 && e3.charCodeAt(a3 + 1) === _e && (i3 = false, a3++);
1861
+ else if (34 !== c4 && 39 !== c4 || 0 !== a3 && 92 === e3.charCodeAt(a3 - 1)) {
1862
+ if (0 === s) if (123 === c4) r4++;
1863
+ else if (125 === c4) {
1864
+ if (--r4 < 0) {
1865
+ for (var u4 = a3 + 1; u4 < t2; ) {
1866
+ var l4 = e3.charCodeAt(u4);
1867
+ if (59 === l4 || 10 === l4) break;
1868
+ u4++;
1869
+ }
1870
+ u4 < t2 && 59 === e3.charCodeAt(u4) && u4++, r4 = 0, a3 = u4 - 1, o3 = u4;
1871
+ continue;
1872
+ }
1873
+ 0 === r4 && (n2 += e3.substring(o3, a3 + 1), o3 = a3 + 1);
1874
+ } else 59 === c4 && 0 === r4 && (n2 += e3.substring(o3, a3 + 1), o3 = a3 + 1);
1875
+ } else 0 === s ? s = c4 : s === c4 && (s = 0);
1876
+ else i3 = true, a3++;
1877
+ }
1878
+ if (o3 < t2) {
1879
+ var p3 = e3.substring(o3);
1880
+ Ie(p3) || (n2 += p3);
1881
+ }
1882
+ return n2;
1883
+ }(function(e3) {
1884
+ if (-1 === e3.indexOf("//")) return e3;
1885
+ for (var t2 = e3.length, n2 = [], o3 = 0, r4 = 0, s = 0, i3 = 0; r4 < t2; ) {
1886
+ var a3 = e3.charCodeAt(r4);
1887
+ if (34 !== a3 && 39 !== a3 || 0 !== r4 && 92 === e3.charCodeAt(r4 - 1)) if (0 === s) if (40 === a3 && r4 >= 3 && 108 == (32 | e3.charCodeAt(r4 - 1)) && 114 == (32 | e3.charCodeAt(r4 - 2)) && 117 == (32 | e3.charCodeAt(r4 - 3))) i3 = 1, r4++;
1888
+ else if (i3 > 0) 41 === a3 ? i3-- : 40 === a3 && i3++, r4++;
1889
+ else if (a3 === _e && r4 + 1 < t2 && e3.charCodeAt(r4 + 1) === _e) {
1890
+ for (r4 > o3 && n2.push(e3.substring(o3, r4)); r4 < t2 && 10 !== e3.charCodeAt(r4); ) r4++;
1891
+ o3 = r4;
1892
+ } else r4++;
1893
+ else r4++;
1894
+ else 0 === s ? s = a3 : s === a3 && (s = 0), r4++;
1895
+ }
1896
+ return 0 === o3 ? e3 : (o3 < t2 && n2.push(e3.substring(o3)), n2.join(""));
1897
+ }(e2)), l3 = compile(i2 || r3 ? "".concat(i2, " ").concat(r3, " { ").concat(u3, " }") : u3);
1898
+ a2.namespace && (l3 = Oe(l3, a2.namespace));
1899
+ var d3 = [];
1900
+ return serialize(l3, middleware(p2.concat(rulesheet(function(e3) {
1901
+ return d3.push(e3);
1902
+ })))), d3;
1903
+ };
1904
+ return d2.hash = u2.length ? u2.reduce(function(e2, t2) {
1905
+ return t2.name || se(15), D(e2, t2.name);
1906
+ }, 5381).toString() : "", d2;
1907
+ }
1908
+ var Te = new Ae();
1909
+ var xe = De();
1910
+ var Re = { shouldForwardProp: void 0, styleSheet: Te, stylis: xe };
1911
+ var je = h ? { Provider: function(e) {
1912
+ return e.children;
1913
+ }, Consumer: function(e) {
1914
+ return (0, e.children)(Re);
1915
+ } } : o__default.createContext(Re);
1916
+ je.Consumer;
1917
+ h ? { } : o__default.createContext(void 0);
1918
+ function Ve() {
1919
+ return !h && o__default.useContext ? o__default.useContext(je) : Re;
1920
+ }
1921
+ var Be = function() {
1922
+ function e(e2, t) {
1923
+ var n = this;
1924
+ this.inject = function(e3, t2) {
1925
+ void 0 === t2 && (t2 = xe);
1926
+ var o2 = n.name + t2.hash;
1927
+ e3.hasNameForId(n.id, o2) || e3.insertRules(n.id, o2, t2(n.rules, o2, "@keyframes"));
1928
+ }, this.name = e2, this.id = "sc-keyframes-".concat(e2), this.rules = t, ne(this, function() {
1929
+ throw se(12, String(n.name));
1930
+ });
1931
+ }
1932
+ return e.prototype.getName = function(e2) {
1933
+ return void 0 === e2 && (e2 = xe), this.name + e2.hash;
1934
+ }, e;
1935
+ }();
1936
+ function Le(e, t) {
1937
+ return null == t || "boolean" == typeof t || "" === t ? "" : "number" != typeof t || 0 === t || e in unitlessKeys || e.startsWith("--") ? String(t).trim() : "".concat(t, "px");
1938
+ }
1939
+ var ze = function(e) {
1940
+ return e >= "A" && e <= "Z";
1941
+ };
1942
+ function Ge(e) {
1943
+ for (var t = "", n = 0; n < e.length; n++) {
1944
+ var o2 = e[n];
1945
+ if (1 === n && "-" === o2 && "-" === e[0]) return e;
1946
+ ze(o2) ? t += "-" + o2.toLowerCase() : t += o2;
1947
+ }
1948
+ return t.startsWith("ms-") ? "-" + t : t;
1949
+ }
1950
+ var $e = function(e) {
1951
+ return null == e || false === e || "" === e;
1952
+ };
1953
+ var Ye = function(t) {
1954
+ var n = [];
1955
+ for (var o2 in t) {
1956
+ var r2 = t[o2];
1957
+ t.hasOwnProperty(o2) && !$e(r2) && (Array.isArray(r2) && r2.isCss || X(r2) ? n.push("".concat(Ge(o2), ":"), r2, ";") : ee(r2) ? n.push.apply(n, __spreadArray(__spreadArray(["".concat(o2, " {")], Ye(r2), false), ["}"], false)) : n.push("".concat(Ge(o2), ": ").concat(Le(o2, r2), ";")));
1958
+ }
1959
+ return n;
1960
+ };
1961
+ function We(e, t, n, o2) {
1962
+ if ($e(e)) return [];
1963
+ if (Z(e)) return [".".concat(e.styledComponentId)];
1964
+ if (X(e)) {
1965
+ if (!X(s = e) || s.prototype && s.prototype.isReactComponent || !t) return [e];
1966
+ var r2 = e(t);
1967
+ return "production" === process.env.NODE_ENV || "object" != typeof r2 || Array.isArray(r2) || r2 instanceof Be || ee(r2) || null === r2 || console.error("".concat(R(e), " is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.")), We(r2, t, n, o2);
1968
+ }
1969
+ var s;
1970
+ return e instanceof Be ? n ? (e.inject(n, o2), [e.getName(o2)]) : [e] : ee(e) ? Ye(e) : Array.isArray(e) ? Array.prototype.concat.apply(S, e.map(function(e2) {
1971
+ return We(e2, t, n, o2);
1972
+ })) : [e.toString()];
1973
+ }
1974
+ function qe(e) {
1975
+ for (var t = 0; t < e.length; t += 1) {
1976
+ var n = e[t];
1977
+ if (X(n) && !Z(n)) return false;
1978
+ }
1979
+ return true;
1980
+ }
1981
+ var He = T(l);
1982
+ var Ue = function() {
1983
+ function e(e2, t, n) {
1984
+ this.rules = e2, this.staticRulesId = "", this.isStatic = "production" === process.env.NODE_ENV && (void 0 === n || n.isStatic) && qe(e2), this.componentId = t, this.baseHash = D(He, t), this.baseStyle = n, Ae.registerId(t);
1985
+ }
1986
+ return e.prototype.generateAndInjectStyles = function(e2, t, n) {
1987
+ var o2 = this.baseStyle ? this.baseStyle.generateAndInjectStyles(e2, t, n).className : "";
1988
+ if (this.isStatic && !n.hash) if (this.staticRulesId && t.hasNameForId(this.componentId, this.staticRulesId)) o2 = K(o2, this.staticRulesId);
1989
+ else {
1990
+ var r2 = Q(We(this.rules, e2, t, n)), s = I(D(this.baseHash, r2) >>> 0);
1991
+ if (!t.hasNameForId(this.componentId, s)) {
1992
+ var i = n(r2, ".".concat(s), void 0, this.componentId);
1993
+ t.insertRules(this.componentId, s, i);
1994
+ }
1995
+ o2 = K(o2, s), this.staticRulesId = s;
1996
+ }
1997
+ else {
1998
+ for (var a2 = D(this.baseHash, n.hash), c2 = "", u2 = 0; u2 < this.rules.length; u2++) {
1999
+ var l2 = this.rules[u2];
2000
+ if ("string" == typeof l2) c2 += l2, "production" !== process.env.NODE_ENV && (a2 = D(a2, l2));
2001
+ else if (l2) {
2002
+ var p2 = Q(We(l2, e2, t, n));
2003
+ a2 = D(a2, p2 + u2), c2 += p2;
2004
+ }
2005
+ }
2006
+ if (c2) {
2007
+ var d2 = I(a2 >>> 0);
2008
+ if (!t.hasNameForId(this.componentId, d2)) {
2009
+ var h2 = n(c2, ".".concat(d2), void 0, this.componentId);
2010
+ t.insertRules(this.componentId, d2, h2);
2011
+ }
2012
+ o2 = K(o2, d2);
2013
+ }
2014
+ }
2015
+ return { className: o2, css: "undefined" == typeof window ? t.getTag().getGroup(pe(this.componentId)) : "" };
2016
+ }, e;
2017
+ }();
2018
+ var Je = h ? { Provider: function(e) {
2019
+ return e.children;
2020
+ }, Consumer: function(e) {
2021
+ return (0, e.children)(void 0);
2022
+ } } : o__default.createContext(void 0);
2023
+ Je.Consumer;
2024
+ var Qe = {};
2025
+ var et = /* @__PURE__ */ new Set();
2026
+ function tt(e, s, i) {
2027
+ var a2 = Z(e), c2 = e, u2 = !j(e), p2 = s.attrs, d2 = void 0 === p2 ? S : p2, f2 = s.componentId, m = void 0 === f2 ? function(e2, t) {
2028
+ var n = "string" != typeof e2 ? "sc" : A(e2);
2029
+ Qe[n] = (Qe[n] || 0) + 1;
2030
+ var o2 = "".concat(n, "-").concat(x(l + n + Qe[n]));
2031
+ return t ? "".concat(t, "-").concat(o2) : o2;
2032
+ }(s.displayName, s.parentComponentId) : f2, y2 = s.displayName, v2 = void 0 === y2 ? function(e2) {
2033
+ return j(e2) ? "styled.".concat(e2) : "Styled(".concat(R(e2), ")");
2034
+ }(e) : y2, E2 = s.displayName && s.componentId ? "".concat(A(s.displayName), "-").concat(s.componentId) : s.componentId || m, N2 = a2 && c2.attrs ? c2.attrs.concat(d2).filter(Boolean) : d2, P2 = s.shouldForwardProp;
2035
+ if (a2 && c2.shouldForwardProp) {
2036
+ var _2 = c2.shouldForwardProp;
2037
+ if (s.shouldForwardProp) {
2038
+ var I2 = s.shouldForwardProp;
2039
+ P2 = function(e2, t) {
2040
+ return _2(e2, t) && I2(e2, t);
2041
+ };
2042
+ } else P2 = _2;
2043
+ }
2044
+ var O2 = new Ue(i, E2, a2 ? c2.componentStyle : void 0);
2045
+ function D2(e2, s2) {
2046
+ return function(e3, s3, i2) {
2047
+ var a3 = e3.attrs, c3 = e3.componentStyle, u3 = e3.defaultProps, l2 = e3.foldedComponentIds, p3 = e3.styledComponentId, d3 = e3.target, f3 = o__default.useContext ? o__default.useContext(Je) : void 0, m2 = Ve(), y3 = e3.shouldForwardProp || m2.shouldForwardProp;
2048
+ "production" !== process.env.NODE_ENV && o__default.useDebugValue && o__default.useDebugValue(p3);
2049
+ var v3 = b(s3, f3, u3) || w, g2 = function(e4, n, o2) {
2050
+ for (var r2, s4 = __assign(__assign({}, n), { className: void 0, theme: o2 }), i3 = 0; i3 < e4.length; i3 += 1) {
2051
+ var a4 = X(r2 = e4[i3]) ? r2(s4) : r2;
2052
+ for (var c4 in a4) "className" === c4 ? s4.className = K(s4.className, a4[c4]) : "style" === c4 ? s4.style = __assign(__assign({}, s4.style), a4[c4]) : s4[c4] = a4[c4];
2053
+ }
2054
+ return "className" in n && "string" == typeof n.className && (s4.className = K(s4.className, n.className)), s4;
2055
+ }(a3, s3, v3), S2 = g2.as || d3, E3 = {};
2056
+ for (var N3 in g2) void 0 === g2[N3] || "$" === N3[0] || "as" === N3 || "theme" === N3 && g2.theme === v3 || ("forwardedAs" === N3 ? E3.as = g2.forwardedAs : y3 && !y3(N3, S2) || (E3[N3] = g2[N3], y3 || "development" !== process.env.NODE_ENV || isPropValid(N3) || et.has(N3) || !C.has(S2) || (et.add(N3), console.warn('styled-components: it looks like an unknown prop "'.concat(N3, '" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));
2057
+ var A2 = function(e4, t) {
2058
+ var n = Ve(), r2 = e4.generateAndInjectStyles(t, n.styleSheet, n.stylis);
2059
+ return "production" !== process.env.NODE_ENV && o__default.useDebugValue && o__default.useDebugValue(r2.className), r2;
2060
+ }(c3, g2), P3 = A2.className, _3 = A2.css;
2061
+ "production" !== process.env.NODE_ENV && e3.warnTooManyClasses && e3.warnTooManyClasses(P3);
2062
+ var I3 = K(l2, p3);
2063
+ P3 && (I3 += " " + P3), g2.className && (I3 += " " + g2.className), E3[j(S2) && !C.has(S2) ? "class" : "className"] = I3, i2 && (E3.ref = i2);
2064
+ var O3 = createElement(S2, E3);
2065
+ return h && _3 ? o__default.createElement(o__default.Fragment, null, o__default.createElement("style", { precedence: "styled-components", href: "sc-".concat(p3, "-").concat(P3), children: _3 }), O3) : O3;
2066
+ }(T2, e2, s2);
2067
+ }
2068
+ D2.displayName = v2;
2069
+ var T2 = o__default.forwardRef(D2);
2070
+ return T2.attrs = N2, T2.componentStyle = O2, T2.displayName = v2, T2.shouldForwardProp = P2, T2.foldedComponentIds = a2 ? K(c2.foldedComponentIds, c2.styledComponentId) : "", T2.styledComponentId = E2, T2.target = a2 ? c2.target : e, Object.defineProperty(T2, "defaultProps", { get: function() {
2071
+ return this._foldedDefaultProps;
2072
+ }, set: function(e2) {
2073
+ this._foldedDefaultProps = a2 ? function(e3) {
2074
+ for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
2075
+ for (var o2 = 0, r2 = t; o2 < r2.length; o2++) te(e3, r2[o2], true);
2076
+ return e3;
2077
+ }({}, c2.defaultProps, e2) : e2;
2078
+ } }), "production" !== process.env.NODE_ENV && (g(v2, E2), T2.warnTooManyClasses = /* @__PURE__ */ function(e2, t) {
2079
+ var n = {}, o2 = false;
2080
+ return function(r2) {
2081
+ if (!o2 && (n[r2] = true, Object.keys(n).length >= 200)) {
2082
+ var s2 = t ? ' with the id of "'.concat(t, '"') : "";
2083
+ console.warn("Over ".concat(200, " classes were generated for component ").concat(e2).concat(s2, ".\n") + "Consider using the attrs method, together with a style object for frequently changed styles.\nExample:\n const Component = styled.div.attrs(props => ({\n style: {\n background: props.background,\n },\n }))`width: 100%;`\n\n <Component />"), o2 = true, n = {};
2084
+ }
2085
+ };
2086
+ }(v2, E2)), ne(T2, function() {
2087
+ return ".".concat(T2.styledComponentId);
2088
+ }), u2 && J(T2, e, { attrs: true, componentStyle: true, displayName: true, foldedComponentIds: true, shouldForwardProp: true, styledComponentId: true, target: true }), T2;
2089
+ }
2090
+ function nt(e, t) {
2091
+ for (var n = [e[0]], o2 = 0, r2 = t.length; o2 < r2; o2 += 1) n.push(t[o2], e[o2 + 1]);
2092
+ return n;
2093
+ }
2094
+ var ot = function(e) {
2095
+ return Object.assign(e, { isCss: true });
2096
+ };
2097
+ function rt(t) {
2098
+ for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
2099
+ if (X(t) || ee(t)) return ot(We(nt(S, __spreadArray([t], n, true))));
2100
+ var r2 = t;
2101
+ return 0 === n.length && 1 === r2.length && "string" == typeof r2[0] ? We(r2) : ot(We(nt(r2, n)));
2102
+ }
2103
+ function st(n, o2, r2) {
2104
+ if (void 0 === r2 && (r2 = w), !o2) throw se(1, o2);
2105
+ var s = function(t) {
2106
+ for (var s2 = [], i = 1; i < arguments.length; i++) s2[i - 1] = arguments[i];
2107
+ return n(o2, r2, rt.apply(void 0, __spreadArray([t], s2, false)));
2108
+ };
2109
+ return s.attrs = function(e) {
2110
+ return st(n, o2, __assign(__assign({}, r2), { attrs: Array.prototype.concat(r2.attrs, e).filter(Boolean) }));
2111
+ }, s.withConfig = function(e) {
2112
+ return st(n, o2, __assign(__assign({}, r2), e));
2113
+ }, s;
2114
+ }
2115
+ var it = function(e) {
2116
+ return st(tt, e);
2117
+ };
2118
+ var at = it;
2119
+ C.forEach(function(e) {
2120
+ at[e] = it(e);
2121
+ });
2122
+ function lt(t) {
2123
+ for (var n = [], o2 = 1; o2 < arguments.length; o2++) n[o2 - 1] = arguments[o2];
2124
+ "production" !== process.env.NODE_ENV && "undefined" != typeof navigator && "ReactNative" === navigator.product && console.warn("`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.");
2125
+ var r2 = Q(rt.apply(void 0, __spreadArray([t], n, false))), s = x(r2);
2126
+ return new Be(s, r2);
2127
+ }
2128
+ "production" !== process.env.NODE_ENV && "undefined" != typeof navigator && "ReactNative" === navigator.product && console.warn("It looks like you've imported 'styled-components' on React Native.\nPerhaps you're looking to import 'styled-components/native'?\nRead more about this at https://www.styled-components.com/docs/basics#react-native");
2129
+ var mt = "__sc-".concat(a, "__");
2130
+ "production" !== process.env.NODE_ENV && "test" !== process.env.NODE_ENV && "undefined" != typeof window && (window[mt] || (window[mt] = 0), 1 === window[mt] && console.warn("It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\n\nSee https://styled-components.com/docs/faqs#why-am-i-getting-a-warning-about-several-instances-of-module-on-the-page for more info."), window[mt] += 1);
2131
+ var pulse = lt`
2132
+ 0%, 100% {
2133
+ opacity: 0.45;
2134
+ transform: scale(1);
2135
+ }
2136
+ 50% {
2137
+ opacity: 0.7;
2138
+ transform: scale(1.08);
2139
+ }
2140
+ `;
2141
+ var shimmer = lt`
2142
+ 0% {
2143
+ background-position: -100% 0;
2144
+ }
2145
+ 100% {
2146
+ background-position: 200% 0;
2147
+ }
2148
+ `;
2149
+ var LogoContainer = at.span`
2150
+ display: inline-flex;
2151
+ align-items: center;
2152
+ gap: 0.35rem;
2153
+ padding: 0.35rem 0.6rem;
2154
+ background: linear-gradient(
2155
+ 135deg,
2156
+ rgba(240, 185, 11, 0.05) 0%,
2157
+ rgba(240, 185, 11, 0.1) 50%,
2158
+ rgba(240, 185, 11, 0.05) 100%
2159
+ );
2160
+ border: 1px solid rgba(240, 185, 11, 0.3);
2161
+ border-radius: 5px;
2162
+ position: relative;
2163
+ overflow: visible;
2164
+ cursor: pointer;
2165
+ transition: all 0.3s ease;
2166
+ line-height: 1.4;
2167
+
2168
+ ${({ $isGlowing }) => $isGlowing ? rt`
2169
+ border-color: rgba(240, 185, 11, 1);
2170
+ box-shadow:
2171
+ 0 0 25px rgba(240, 185, 11, 0.8),
2172
+ 0 0 40px rgba(240, 185, 11, 0.5),
2173
+ inset 0 0 20px rgba(240, 185, 11, 0.3);
2174
+ background: linear-gradient(
2175
+ 135deg,
2176
+ rgba(240, 185, 11, 0.2) 0%,
2177
+ rgba(240, 185, 11, 0.3) 50%,
2178
+ rgba(240, 185, 11, 0.2) 100%
2179
+ );
2180
+ animation: quickPulse 0.35s ease-out;
2181
+
2182
+ @keyframes quickPulse {
2183
+ 0% {
2184
+ transform: scale(1);
2185
+ }
2186
+ 50% {
2187
+ transform: scale(1.05);
2188
+ }
2189
+ 100% {
2190
+ transform: scale(1);
2191
+ }
2192
+ }
2193
+ ` : null}
2194
+
2195
+ @media (max-width: 768px) {
2196
+ padding: 0.3rem 0.4rem 0.3rem 0.25rem;
2197
+ gap: 0.25rem;
2198
+ border-radius: 4px;
2199
+ transition: none;
2200
+ }
2201
+
2202
+ @media (max-width: 480px) {
2203
+ padding: 0.2rem 0.3rem 0.2rem 0.2rem;
2204
+ gap: 0.2rem;
2205
+ }
2206
+
2207
+ @media (hover: hover) and (pointer: fine) {
2208
+ &:hover {
2209
+ border-color: rgba(240, 185, 11, 0.6);
2210
+ background: linear-gradient(
2211
+ 135deg,
2212
+ rgba(240, 185, 11, 0.1) 0%,
2213
+ rgba(240, 185, 11, 0.15) 50%,
2214
+ rgba(240, 185, 11, 0.1) 100%
2215
+ );
2216
+ transform: translateY(-1px);
2217
+ box-shadow: 0 4px 12px rgba(240, 185, 11, 0.2);
2218
+ }
2219
+ }
2220
+
2221
+ &::before {
2222
+ content: "";
2223
+ position: absolute;
2224
+ top: 0;
2225
+ left: 0;
2226
+ right: 0;
2227
+ bottom: 0;
2228
+ background: linear-gradient(90deg, transparent, rgba(240, 185, 11, 0.1), transparent);
2229
+ background-size: 200% 100%;
2230
+ animation: ${shimmer} 3s infinite;
2231
+ pointer-events: none;
2232
+ }
2233
+ `;
2234
+ var IconWrapper = at.span`
2235
+ display: flex;
2236
+ align-items: center;
2237
+ justify-content: center;
2238
+ position: relative;
2239
+ width: 16px;
2240
+ height: 16px;
2241
+
2242
+ @media (max-width: 480px) {
2243
+ width: 14px;
2244
+ height: 14px;
2245
+ }
2246
+ `;
2247
+ var IconCircle = at.span`
2248
+ position: absolute;
2249
+ width: ${({ size }) => size}px;
2250
+ height: ${({ size }) => size}px;
2251
+ border: 2px solid ${({ color }) => color};
2252
+ border-radius: 50%;
2253
+ animation: ${pulse} ${({ duration }) => duration}s infinite cubic-bezier(0.4, 0, 0.6, 1);
2254
+ animation-delay: ${({ delay }) => delay}s;
2255
+ transform-origin: center;
2256
+ will-change: transform, opacity;
2257
+ `;
2258
+ var IconCore = at.span`
2259
+ width: 5px;
2260
+ height: 5px;
2261
+ background: linear-gradient(135deg, #0ecb81 0%, #2ecc71 100%);
2262
+ border-radius: 50%;
2263
+ box-shadow: 0 0 6px rgba(14, 203, 129, 0.6);
2264
+ position: relative;
2265
+ z-index: 1;
2266
+ `;
2267
+ var LogoText = at.span`
2268
+ display: inline-flex;
2269
+ align-items: center;
2270
+ gap: 0.2rem;
2271
+ position: relative;
2272
+ z-index: 1;
2273
+ `;
2274
+ var LoafLogoImage = at.img`
2275
+ height: 20px;
2276
+ position: relative;
2277
+ z-index: 1;
2278
+
2279
+ @media (max-width: 480px) {
2280
+ height: 18px;
2281
+ }
2282
+ `;
2283
+ var LiquidityText = at.span`
2284
+ font-size: 0.65rem;
2285
+ font-weight: 400;
2286
+ background: linear-gradient(135deg, #f0b90b 0%, #ffd700 50%, #f0b90b 100%);
2287
+ background-size: 200% auto;
2288
+ -webkit-background-clip: text;
2289
+ -webkit-text-fill-color: transparent;
2290
+ background-clip: text;
2291
+ letter-spacing: 0.3px;
2292
+ opacity: 0.75;
2293
+ line-height: 1;
2294
+
2295
+ @media (max-width: 480px) {
2296
+ font-size: 0.55rem;
2297
+ letter-spacing: 0.1px;
2298
+ }
2299
+ `;
2300
+ var LoafLiquidityBadge = o.forwardRef(
2301
+ ({ className, isGlowing, onClick, children, ...props }, ref) => {
2302
+ return /* @__PURE__ */ jsxs(
2303
+ LogoContainer,
2304
+ {
2305
+ ref,
2306
+ onClick,
2307
+ $isGlowing: isGlowing,
2308
+ className,
2309
+ role: onClick ? "button" : void 0,
2310
+ ...props,
2311
+ children: [
2312
+ /* @__PURE__ */ jsxs(LogoText, { children: [
2313
+ /* @__PURE__ */ jsx(LoafLogoImage, { src: "/Loaf-logo-Banner.png", alt: "Loaf" }),
2314
+ /* @__PURE__ */ jsx(LiquidityText, { children: children ?? "Liquidity" })
2315
+ ] }),
2316
+ /* @__PURE__ */ jsxs(IconWrapper, { children: [
2317
+ /* @__PURE__ */ jsx(IconCore, {}),
2318
+ /* @__PURE__ */ jsx(IconCircle, { size: 10, color: "rgba(14, 203, 129, 0.5)", duration: 4, delay: 0 }),
2319
+ /* @__PURE__ */ jsx(IconCircle, { size: 13, color: "rgba(14, 203, 129, 0.35)", duration: 5.2, delay: 0.7 }),
2320
+ /* @__PURE__ */ jsx(IconCircle, { size: 16, color: "rgba(14, 203, 129, 0.25)", duration: 6.3, delay: 1.3 })
2321
+ ] })
2322
+ ]
2323
+ }
2324
+ );
2325
+ }
2326
+ );
2327
+ LoafLiquidityBadge.displayName = "LoafLiquidityBadge";
787
2328
  var formatNumber = (value, precision) => value.toFixed(precision);
788
2329
  function DepthRow({
789
2330
  side,
@@ -822,7 +2363,7 @@ var clamp2 = (value, min, max) => Math.min(max, Math.max(min, value));
822
2363
  var LEVEL_ROWS_VISIBLE = 6;
823
2364
  var DEPTH_ROW_HEIGHT_PX = 34;
824
2365
  var SECTION_HEIGHT = LEVEL_ROWS_VISIBLE * DEPTH_ROW_HEIGHT_PX;
825
- var Orderbook = React5.forwardRef(
2366
+ var Orderbook = o.forwardRef(
826
2367
  ({
827
2368
  asks,
828
2369
  bids,
@@ -835,21 +2376,21 @@ var Orderbook = React5.forwardRef(
835
2376
  amountPrecision = 2,
836
2377
  defaultTab = "orderbook",
837
2378
  onTabChange,
838
- rightHeader,
2379
+ rightHeader = /* @__PURE__ */ jsx(LoafLiquidityBadge, { className: "text-[0.6rem]" }),
839
2380
  className,
840
2381
  ...props
841
2382
  }, ref) => {
842
- const [tab, setTab] = React5.useState(defaultTab);
843
- const [tradeFilter, setTradeFilter] = React5.useState("all");
844
- React5.useEffect(() => {
2383
+ const [tab, setTab] = o.useState(defaultTab);
2384
+ const [tradeFilter, setTradeFilter] = o.useState("all");
2385
+ o.useEffect(() => {
845
2386
  setTab(defaultTab);
846
2387
  }, [defaultTab]);
847
- const handleTab = (next) => {
848
- setTab(next);
849
- onTabChange?.(next);
2388
+ const handleTab = (next2) => {
2389
+ setTab(next2);
2390
+ onTabChange?.(next2);
850
2391
  };
851
- const maxAskDepth = Math.max(1, ...asks.map((l) => l.depth ?? l.amount));
852
- const maxBidDepth = Math.max(1, ...bids.map((l) => l.depth ?? l.amount));
2392
+ const maxAskDepth = Math.max(1, ...asks.map((l2) => l2.depth ?? l2.amount));
2393
+ const maxBidDepth = Math.max(1, ...bids.map((l2) => l2.depth ?? l2.amount));
853
2394
  const midClass = midChangePercent == null ? "text-white" : midChangePercent >= 0 ? "text-[#0ecb81]" : "text-[#f6465d]";
854
2395
  const tradeFiltered = trades.filter((t) => tradeFilter === "all" || t.type === tradeFilter);
855
2396
  return /* @__PURE__ */ jsxs(
@@ -857,7 +2398,7 @@ var Orderbook = React5.forwardRef(
857
2398
  {
858
2399
  ref,
859
2400
  className: cn(
860
- "w-full max-w-[520px] overflow-hidden rounded-[12px] border border-white/10 bg-black/30 text-white shadow-md",
2401
+ "w-full max-w-[520px] overflow-hidden rounded-[12px] border border-white/10 bg-[#111111] text-white shadow-md",
861
2402
  className
862
2403
  ),
863
2404
  ...props,
@@ -967,17 +2508,17 @@ var Orderbook = React5.forwardRef(
967
2508
  {
968
2509
  className: "divide-y divide-white/5 overflow-y-auto",
969
2510
  style: { height: `${SECTION_HEIGHT}px`, scrollbarGutter: "stable" },
970
- children: asks.map((l, idx) => /* @__PURE__ */ jsx(
2511
+ children: asks.map((l2, idx) => /* @__PURE__ */ jsx(
971
2512
  DepthRow,
972
2513
  {
973
2514
  side: "ask",
974
- price: l.price,
975
- amount: l.amount,
976
- depthPct: (l.depth ?? l.amount) / maxAskDepth * 100,
2515
+ price: l2.price,
2516
+ amount: l2.amount,
2517
+ depthPct: (l2.depth ?? l2.amount) / maxAskDepth * 100,
977
2518
  precision,
978
2519
  amountPrecision
979
2520
  },
980
- `ask-${idx}-${l.price}-${l.amount}`
2521
+ `ask-${idx}-${l2.price}-${l2.amount}`
981
2522
  ))
982
2523
  }
983
2524
  ),
@@ -998,17 +2539,17 @@ var Orderbook = React5.forwardRef(
998
2539
  {
999
2540
  className: "divide-y divide-white/5 overflow-y-auto",
1000
2541
  style: { height: `${SECTION_HEIGHT}px`, scrollbarGutter: "stable" },
1001
- children: bids.map((l, idx) => /* @__PURE__ */ jsx(
2542
+ children: bids.map((l2, idx) => /* @__PURE__ */ jsx(
1002
2543
  DepthRow,
1003
2544
  {
1004
2545
  side: "bid",
1005
- price: l.price,
1006
- amount: l.amount,
1007
- depthPct: (l.depth ?? l.amount) / maxBidDepth * 100,
2546
+ price: l2.price,
2547
+ amount: l2.amount,
2548
+ depthPct: (l2.depth ?? l2.amount) / maxBidDepth * 100,
1008
2549
  precision,
1009
2550
  amountPrecision
1010
2551
  },
1011
- `bid-${idx}-${l.price}-${l.amount}`
2552
+ `bid-${idx}-${l2.price}-${l2.amount}`
1012
2553
  ))
1013
2554
  }
1014
2555
  )
@@ -1020,7 +2561,7 @@ var Orderbook = React5.forwardRef(
1020
2561
  }
1021
2562
  );
1022
2563
  Orderbook.displayName = "Orderbook";
1023
- var PropertyTour = React5.forwardRef(
2564
+ var PropertyTour = o.forwardRef(
1024
2565
  ({
1025
2566
  className,
1026
2567
  title,
@@ -1033,13 +2574,13 @@ var PropertyTour = React5.forwardRef(
1033
2574
  playsInline = true,
1034
2575
  ...props
1035
2576
  }, ref) => {
1036
- const videoRef = React5.useRef(null);
1037
- React5.useEffect(() => {
2577
+ const videoRef = o.useRef(null);
2578
+ o.useEffect(() => {
1038
2579
  const video = videoRef.current;
1039
2580
  if (!video) return;
1040
2581
  const handleFullscreenChange = () => {
1041
- const d = document;
1042
- const isFullscreen = !!(d.fullscreenElement || d.webkitFullscreenElement || d.mozFullScreenElement || d.msFullscreenElement);
2582
+ const d2 = document;
2583
+ const isFullscreen = !!(d2.fullscreenElement || d2.webkitFullscreenElement || d2.mozFullScreenElement || d2.msFullscreenElement);
1043
2584
  if (isFullscreen) {
1044
2585
  video.style.objectFit = "contain";
1045
2586
  video.style.width = "100vw";
@@ -1084,7 +2625,7 @@ var PropertyTour = React5.forwardRef(
1084
2625
  {
1085
2626
  ref,
1086
2627
  className: cn(
1087
- "w-full max-w-[820px] rounded-[12px] border border-white/10 bg-black/30 text-white backdrop-blur-md",
2628
+ "w-full max-w-[820px] rounded-[12px] border border-white/10 bg-[#111111] text-white backdrop-blur-md",
1088
2629
  className
1089
2630
  ),
1090
2631
  ...props,
@@ -1157,7 +2698,7 @@ var formatDate = (value) => {
1157
2698
  year: "numeric"
1158
2699
  });
1159
2700
  };
1160
- var PropertyNewsUpdates = React5.forwardRef(
2701
+ var PropertyNewsUpdates = o.forwardRef(
1161
2702
  ({
1162
2703
  className,
1163
2704
  heading = "Property News & Headlines",
@@ -1167,14 +2708,14 @@ var PropertyNewsUpdates = React5.forwardRef(
1167
2708
  highlightFirst = true,
1168
2709
  ...props
1169
2710
  }, ref) => {
1170
- const [page, setPage] = React5.useState(0);
1171
- React5.useEffect(() => {
2711
+ const [page, setPage] = o.useState(0);
2712
+ o.useEffect(() => {
1172
2713
  ensureAnimationsInjected();
1173
2714
  }, []);
1174
2715
  const hasItems = Array.isArray(items) && items.length > 0;
1175
- const totalPages = React5.useMemo(() => hasItems ? Math.max(1, Math.ceil(items.length / ITEMS_PER_PAGE)) : 1, [hasItems, items.length]);
1176
- React5.useEffect(() => {
1177
- setPage((prev) => Math.min(prev, totalPages - 1));
2716
+ const totalPages = o.useMemo(() => hasItems ? Math.max(1, Math.ceil(items.length / ITEMS_PER_PAGE)) : 1, [hasItems, items.length]);
2717
+ o.useEffect(() => {
2718
+ setPage((prev2) => Math.min(prev2, totalPages - 1));
1178
2719
  }, [totalPages]);
1179
2720
  const paginatedItems = hasItems ? items.slice(page * ITEMS_PER_PAGE, page * ITEMS_PER_PAGE + ITEMS_PER_PAGE) : [];
1180
2721
  return /* @__PURE__ */ jsxs(
@@ -1286,7 +2827,7 @@ var PropertyNewsUpdates = React5.forwardRef(
1286
2827
  "button",
1287
2828
  {
1288
2829
  type: "button",
1289
- onClick: () => setPage((prev) => Math.max(0, prev - 1)),
2830
+ onClick: () => setPage((prev2) => Math.max(0, prev2 - 1)),
1290
2831
  disabled: page === 0,
1291
2832
  className: cn(
1292
2833
  "rounded-full border border-white/15 px-3 py-1 uppercase tracking-[0.2em]",
@@ -1305,7 +2846,7 @@ var PropertyNewsUpdates = React5.forwardRef(
1305
2846
  "button",
1306
2847
  {
1307
2848
  type: "button",
1308
- onClick: () => setPage((prev) => Math.min(totalPages - 1, prev + 1)),
2849
+ onClick: () => setPage((prev2) => Math.min(totalPages - 1, prev2 + 1)),
1309
2850
  disabled: page >= totalPages - 1,
1310
2851
  className: cn(
1311
2852
  "rounded-full border border-white/15 px-3 py-1 uppercase tracking-[0.2em]",
@@ -1321,18 +2862,17 @@ var PropertyNewsUpdates = React5.forwardRef(
1321
2862
  }
1322
2863
  );
1323
2864
  PropertyNewsUpdates.displayName = "PropertyNewsUpdates";
1324
- var PropertyCompareBar = React5.forwardRef(
2865
+ var PropertyCompareBar = o.forwardRef(
1325
2866
  ({
1326
2867
  className,
1327
2868
  addresses,
1328
2869
  selectedAddressId,
1329
2870
  onSelectAddress,
1330
- compareLabel = "Compare",
1331
- onCompareClick,
1332
- compareIcon,
2871
+ propertyValue,
2872
+ propertyValueVariant = "classic",
1333
2873
  ...props
1334
2874
  }, ref) => {
1335
- const normalizedAddresses = React5.useMemo(() => {
2875
+ const normalizedAddresses = o.useMemo(() => {
1336
2876
  return addresses.map(
1337
2877
  (option) => typeof option === "string" ? { id: option, label: option } : option
1338
2878
  );
@@ -1340,11 +2880,11 @@ var PropertyCompareBar = React5.forwardRef(
1340
2880
  const hasAddresses = normalizedAddresses.length > 0;
1341
2881
  const firstAddressId = normalizedAddresses[0]?.id;
1342
2882
  const isControlled = selectedAddressId !== void 0;
1343
- const [internalSelectedId, setInternalSelectedId] = React5.useState(
2883
+ const [internalSelectedId, setInternalSelectedId] = o.useState(
1344
2884
  () => isControlled ? void 0 : firstAddressId
1345
2885
  );
1346
2886
  const resolvedSelectedId = isControlled ? selectedAddressId : internalSelectedId;
1347
- React5.useEffect(() => {
2887
+ o.useEffect(() => {
1348
2888
  if (!isControlled) {
1349
2889
  setInternalSelectedId((current) => {
1350
2890
  if (current != null && normalizedAddresses.some((option) => option.id === current)) {
@@ -1355,9 +2895,9 @@ var PropertyCompareBar = React5.forwardRef(
1355
2895
  }
1356
2896
  }, [firstAddressId, isControlled, normalizedAddresses]);
1357
2897
  const selectedOption = normalizedAddresses.find((option) => option.id === resolvedSelectedId) ?? normalizedAddresses[0];
1358
- const [isDropdownOpen, setIsDropdownOpen] = React5.useState(false);
1359
- const dropdownRef = React5.useRef(null);
1360
- React5.useEffect(() => {
2898
+ const [isDropdownOpen, setIsDropdownOpen] = o.useState(false);
2899
+ const dropdownRef = o.useRef(null);
2900
+ o.useEffect(() => {
1361
2901
  if (!isDropdownOpen) return;
1362
2902
  const handleClick = (event) => {
1363
2903
  if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {
@@ -1376,7 +2916,6 @@ var PropertyCompareBar = React5.forwardRef(
1376
2916
  document.removeEventListener("keydown", handleKey);
1377
2917
  };
1378
2918
  }, [isDropdownOpen]);
1379
- const defaultCompareIcon = /* @__PURE__ */ jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", "aria-hidden": "true", children: /* @__PURE__ */ jsx("path", { d: "M4 4h7v7H4V4zm0 9h7v7H4v-7zm9-9h7v7h-7V4zm0 9h7v7h-7v-7z" }) });
1380
2919
  const handleAddressSelect = (addressId) => {
1381
2920
  if (!isControlled) {
1382
2921
  setInternalSelectedId(addressId);
@@ -1384,81 +2923,206 @@ var PropertyCompareBar = React5.forwardRef(
1384
2923
  onSelectAddress?.(addressId);
1385
2924
  setIsDropdownOpen(false);
1386
2925
  };
1387
- return /* @__PURE__ */ jsxs(
1388
- "div",
1389
- {
1390
- ref,
1391
- className: cn(
1392
- "flex w-full flex-col gap-3 border border-white/10 px-4 py-3 text-white shadow-[0_18px_40px_rgba(0,0,0,0.55)] md:flex-row md:items-center md:justify-between md:gap-4",
1393
- className
1394
- ),
1395
- style: { borderRadius: "16px" },
1396
- ...props,
1397
- children: [
1398
- /* @__PURE__ */ jsxs("div", { className: "relative w-auto", ref: dropdownRef, children: [
1399
- /* @__PURE__ */ jsxs(
1400
- "button",
1401
- {
1402
- type: "button",
1403
- disabled: !hasAddresses,
1404
- onClick: () => setIsDropdownOpen((prev) => !prev),
1405
- className: cn(
1406
- "flex h-[42px] w-auto items-center gap-2 rounded-[12px] border border-transparent bg-transparent px-0 text-left text-[15px] font-semibold text-white transition hover:text-white/80 focus-visible:outline-none",
1407
- !hasAddresses && "text-white/40"
1408
- ),
1409
- children: [
1410
- /* @__PURE__ */ jsx("span", { className: "truncate", children: selectedOption ? selectedOption.label : hasAddresses ? "Select address" : "No addresses available" }),
1411
- /* @__PURE__ */ jsx("span", { className: "ml-3 flex items-center text-white/60 transition-transform", "aria-hidden": true, children: /* @__PURE__ */ jsx(
1412
- "svg",
1413
- {
1414
- width: "16",
1415
- height: "16",
1416
- viewBox: "0 0 24 24",
1417
- fill: "currentColor",
1418
- className: cn("transition-transform", isDropdownOpen && "rotate-180"),
1419
- children: /* @__PURE__ */ jsx("path", { d: "M7 10l5 5 5-5H7z" })
1420
- }
1421
- ) })
1422
- ]
1423
- }
1424
- ),
1425
- isDropdownOpen && hasAddresses ? /* @__PURE__ */ jsx("div", { className: "absolute left-0 top-[calc(100%+8px)] z-20 w-full rounded-[12px] border border-white/10 py-1 shadow-[0_25px_55px_rgba(0,0,0,0.6)] bg-black", children: normalizedAddresses.map((option) => {
1426
- const active = option.id === resolvedSelectedId;
1427
- return /* @__PURE__ */ jsx(
1428
- "button",
1429
- {
1430
- type: "button",
1431
- className: cn(
1432
- "flex w-full items-center px-4 py-2 text-left text-[14px] text-white/80 transition hover:bg-white/5 hover:text-white",
1433
- active && "text-white"
1434
- ),
1435
- onClick: () => handleAddressSelect(option.id),
1436
- children: option.label
1437
- },
1438
- option.id
1439
- );
1440
- }) }) : null
1441
- ] }),
1442
- /* @__PURE__ */ jsxs(
1443
- Button,
2926
+ const propertyValueLabel = propertyValue?.label ?? "Property Value";
2927
+ const propertyValueCurrency = propertyValue?.currencySymbol ?? "$";
2928
+ const propertyValueFormat = propertyValue?.formatOptions ?? {
2929
+ minimumFractionDigits: 2,
2930
+ maximumFractionDigits: 2
2931
+ };
2932
+ const formattedPropertyValue = propertyValue == null ? null : `${propertyValueCurrency}${propertyValue.value.toLocaleString(
2933
+ void 0,
2934
+ propertyValueFormat
2935
+ )}`;
2936
+ const formattedPropertyChange = propertyValue?.change == null ? null : `${propertyValue.change >= 0 ? "+" : "-"}${propertyValueCurrency}${Math.abs(
2937
+ propertyValue.change
2938
+ ).toLocaleString(void 0, propertyValueFormat)}`;
2939
+ propertyValue?.change == null ? void 0 : propertyValue.change >= 0 ? "text-[#0ecb81]" : "text-[#f6465d]";
2940
+ return /* @__PURE__ */ jsxs(PropertySelectorContainer, { ref, className, $variant: propertyValueVariant, ...props, children: [
2941
+ /* @__PURE__ */ jsxs(PropertySelector, { ref: dropdownRef, onClick: () => hasAddresses && setIsDropdownOpen((prev2) => !prev2), children: [
2942
+ /* @__PURE__ */ jsxs(PropertyAddress, { children: [
2943
+ selectedOption ? selectedOption.label : hasAddresses ? "Select address" : "No addresses available",
2944
+ /* @__PURE__ */ jsx(
2945
+ "svg",
1444
2946
  {
1445
- variant: "accentOutline",
1446
- size: "sm",
1447
- className: "flex items-center justify-center gap-2 rounded-[10px] border-[var(--color-accent,#e6c87e)] bg-transparent px-4 py-2 text-[14px] font-semibold text-[var(--color-accent,#e6c87e)] transition hover:bg-[rgba(230,200,126,0.08)] md:ml-auto",
1448
- onClick: onCompareClick,
1449
- disabled: !hasAddresses,
1450
- children: [
1451
- /* @__PURE__ */ jsx("span", { className: "text-base", children: compareIcon ?? defaultCompareIcon }),
1452
- compareLabel
1453
- ]
2947
+ className: "dropdown-icon",
2948
+ xmlns: "http://www.w3.org/2000/svg",
2949
+ width: "20",
2950
+ height: "20",
2951
+ viewBox: "0 0 24 24",
2952
+ fill: "currentColor",
2953
+ style: { transform: isDropdownOpen ? "rotate(180deg)" : void 0 },
2954
+ children: /* @__PURE__ */ jsx("path", { d: "M7 10l5 5 5-5H7z" })
1454
2955
  }
1455
2956
  )
1456
- ]
1457
- }
1458
- );
2957
+ ] }),
2958
+ /* @__PURE__ */ jsx(PropertySelectorDropdown, { $isOpen: isDropdownOpen && hasAddresses, children: normalizedAddresses.map((option) => /* @__PURE__ */ jsx(
2959
+ PropertySelectorOption,
2960
+ {
2961
+ onClick: (event) => {
2962
+ event.stopPropagation();
2963
+ handleAddressSelect(option.id);
2964
+ },
2965
+ children: /* @__PURE__ */ jsx(PropertySelectorName, { children: option.label })
2966
+ },
2967
+ option.id
2968
+ )) })
2969
+ ] }),
2970
+ formattedPropertyValue ? /* @__PURE__ */ jsxs(PropertyValueBlock, { $variant: propertyValueVariant, children: [
2971
+ /* @__PURE__ */ jsx(PropertyValueLabel, { children: propertyValueLabel }),
2972
+ /* @__PURE__ */ jsx(PropertyValueAmount, { children: formattedPropertyValue }),
2973
+ formattedPropertyChange ? /* @__PURE__ */ jsx(PropertyValueChange, { $isPositive: propertyValue?.change != null ? propertyValue.change >= 0 : void 0, children: formattedPropertyChange }) : null
2974
+ ] }) : null
2975
+ ] });
1459
2976
  }
1460
2977
  );
1461
2978
  PropertyCompareBar.displayName = "PropertyCompareBar";
2979
+ var PropertySelectorContainer = at.div`
2980
+ display: flex;
2981
+ align-items: center;
2982
+ justify-content: space-between;
2983
+ padding: 1rem 1.5rem;
2984
+ background-color: ${({ $variant }) => $variant === "pill" ? "#0f0f0f" : "rgba(30, 32, 38, 0.95)"};
2985
+ border: ${({ $variant }) => $variant === "pill" ? "1px solid rgba(255, 255, 255, 0.15)" : "none"};
2986
+ border-radius: 8px;
2987
+ margin-bottom: 1.5rem;
2988
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
2989
+ color: var(--color-text, #f8f9fa);
2990
+ font-family: var(--font-family, "Inter", sans-serif);
2991
+
2992
+ @media (max-width: 1024px) {
2993
+ padding: 0.75rem 1rem;
2994
+ margin-bottom: 0.75rem;
2995
+ }
2996
+
2997
+ @media (max-width: 768px) {
2998
+ border-radius: 0;
2999
+ margin-top: 0;
3000
+ padding-top: 0.5rem;
3001
+ flex-direction: column;
3002
+ align-items: flex-start;
3003
+ gap: 0.75rem;
3004
+ }
3005
+
3006
+ @media (max-width: 600px) {
3007
+ flex-direction: column;
3008
+ gap: 0.5rem;
3009
+ }
3010
+ `;
3011
+ var PropertySelector = at.div`
3012
+ position: relative;
3013
+ display: flex;
3014
+ align-items: center;
3015
+ cursor: pointer;
3016
+ padding: 0.5rem 0;
3017
+ flex: 1;
3018
+
3019
+ &:hover {
3020
+ .dropdown-icon {
3021
+ transform: translateY(2px);
3022
+ }
3023
+ }
3024
+ `;
3025
+ var PropertyAddress = at.div`
3026
+ font-size: 1.25rem;
3027
+ font-weight: 600;
3028
+ display: flex;
3029
+ align-items: center;
3030
+ gap: 0.5rem;
3031
+ color: inherit;
3032
+
3033
+ svg {
3034
+ transition: transform 0.2s;
3035
+ }
3036
+ `;
3037
+ var PropertySelectorDropdown = at.div`
3038
+ position: absolute;
3039
+ top: 100%;
3040
+ left: 0;
3041
+ width: 100%;
3042
+ max-width: 400px;
3043
+ background-color: var(--color-card, #1f232b);
3044
+ border-radius: 8px;
3045
+ box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
3046
+ z-index: 100;
3047
+ overflow: hidden;
3048
+ display: ${(props) => props.$isOpen ? "block" : "none"};
3049
+ `;
3050
+ var PropertySelectorOption = at.div`
3051
+ padding: 0.75rem 1rem;
3052
+ border-bottom: 1px solid rgba(255, 255, 255, 0.1);
3053
+ cursor: pointer;
3054
+ transition: background-color 0.2s;
3055
+
3056
+ &:hover {
3057
+ background-color: rgba(255, 255, 255, 0.05);
3058
+ }
3059
+
3060
+ &:last-child {
3061
+ border-bottom: none;
3062
+ }
3063
+ `;
3064
+ var PropertySelectorName = at.div`
3065
+ font-weight: 600;
3066
+ `;
3067
+ var PropertyValueBlock = at.div`
3068
+ display: flex;
3069
+ align-items: center;
3070
+ gap: 0.5rem;
3071
+ margin-left: 1rem;
3072
+ white-space: nowrap;
3073
+
3074
+ ${({ $variant }) => $variant === "card" && rt`
3075
+ margin-left: auto;
3076
+ flex-direction: row;
3077
+ align-items: center;
3078
+ min-width: 220px;
3079
+ border: none;
3080
+ background: rgba(30, 32, 38, 0.95);
3081
+ border-radius: 14px;
3082
+ padding: 0.9rem 1.25rem;
3083
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
3084
+ gap: 0.85rem;
3085
+ justify-content: flex-end;
3086
+ `}
3087
+
3088
+ ${({ $variant }) => $variant === "pill" && rt`
3089
+ margin-left: auto;
3090
+ margin-right: 1rem;
3091
+ background: #191919;
3092
+ border-radius: 8px;
3093
+ border: 1px solid rgba(255, 255, 255, 0.05);
3094
+ padding: 0.5rem 1rem;
3095
+ gap: 1rem;
3096
+ align-items: center;
3097
+ `}
3098
+
3099
+ @media (max-width: 768px) {
3100
+ margin-left: 0;
3101
+ }
3102
+
3103
+ @media (max-width: 600px) {
3104
+ margin: 0;
3105
+ flex-direction: column;
3106
+ align-items: flex-start;
3107
+ gap: 0.125rem;
3108
+ }
3109
+ `;
3110
+ var PropertyValueLabel = at.span`
3111
+ font-size: 0.7rem;
3112
+ color: var(--color-text-secondary, rgba(255, 255, 255, 0.6));
3113
+ text-transform: uppercase;
3114
+ letter-spacing: 0.5px;
3115
+ `;
3116
+ var PropertyValueAmount = at.span`
3117
+ font-size: 1.1rem;
3118
+ font-weight: 600;
3119
+ color: #fff;
3120
+ `;
3121
+ var PropertyValueChange = at.span`
3122
+ font-size: 0.75rem;
3123
+ font-weight: 500;
3124
+ color: ${(props) => props.$isPositive == null ? "var(--color-text-secondary, rgba(255, 255, 255, 0.6))" : props.$isPositive ? "var(--color-positive, #0ecb81)" : "var(--color-negative, #f6465d)"};
3125
+ `;
1462
3126
  var TABS = [
1463
3127
  { id: "portfolio", label: "Portfolio" },
1464
3128
  { id: "openOrders", label: "Open Orders" },
@@ -1553,9 +3217,9 @@ var formatPercent = (value, fractionDigits = 2) => {
1553
3217
  if (value == null || Number.isNaN(value)) return "\u2014";
1554
3218
  return `${value.toFixed(fractionDigits)}%`;
1555
3219
  };
1556
- var YourOrders = React5.forwardRef(
3220
+ var YourOrders = o.forwardRef(
1557
3221
  ({ className, title = "Portfolio Holdings (Demo)", orders, renderOrderActions, ...props }, ref) => {
1558
- const [activeTab, setActiveTab] = React5.useState("portfolio");
3222
+ const [activeTab, setActiveTab] = o.useState("portfolio");
1559
3223
  const hasOrders = Array.isArray(orders) && orders.length > 0;
1560
3224
  const renderPortfolio = () => {
1561
3225
  if (!hasOrders) {
@@ -1727,7 +3391,7 @@ var formatPrice = (value, currencySymbol) => {
1727
3391
  maximumFractionDigits: 2
1728
3392
  })}`;
1729
3393
  };
1730
- var PriceChart = React5.forwardRef(
3394
+ var PriceChart = o.forwardRef(
1731
3395
  ({
1732
3396
  className,
1733
3397
  title = "Price Chart",
@@ -1741,24 +3405,24 @@ var PriceChart = React5.forwardRef(
1741
3405
  height = 301.52,
1742
3406
  ...props
1743
3407
  }, ref) => {
1744
- const containerRef = React5.useRef(null);
1745
- const chartRef = React5.useRef(null);
1746
- const seriesRef = React5.useRef(null);
1747
- const priceLineRef = React5.useRef(null);
1748
- const [hoveredRange, setHoveredRange] = React5.useState(null);
1749
- const resolvedPrice = React5.useMemo(() => {
3408
+ const containerRef = o.useRef(null);
3409
+ const chartRef = o.useRef(null);
3410
+ const seriesRef = o.useRef(null);
3411
+ const priceLineRef = o.useRef(null);
3412
+ const [hoveredRange, setHoveredRange] = o.useState(null);
3413
+ const resolvedPrice = o.useMemo(() => {
1750
3414
  if (price != null) return price;
1751
3415
  const last = data.at(-1);
1752
3416
  return last?.close;
1753
3417
  }, [data, price]);
1754
- const inferredChangePercent = React5.useMemo(() => {
3418
+ const inferredChangePercent = o.useMemo(() => {
1755
3419
  if (changePercent != null) return changePercent;
1756
3420
  const first = data[0]?.open;
1757
3421
  const last = data.at(-1)?.close;
1758
3422
  if (first == null || last == null || first === 0) return void 0;
1759
3423
  return (last - first) / first * 100;
1760
3424
  }, [changePercent, data]);
1761
- React5.useEffect(() => {
3425
+ o.useEffect(() => {
1762
3426
  const el = containerRef.current;
1763
3427
  if (!el) return;
1764
3428
  const chart = createChart(el, {
@@ -1801,7 +3465,7 @@ var PriceChart = React5.forwardRef(
1801
3465
  chart.remove();
1802
3466
  };
1803
3467
  }, []);
1804
- React5.useEffect(() => {
3468
+ o.useEffect(() => {
1805
3469
  const chart = chartRef.current;
1806
3470
  const series = seriesRef.current;
1807
3471
  if (!chart || !series) return;
@@ -1853,9 +3517,9 @@ var PriceChart = React5.forwardRef(
1853
3517
  /* @__PURE__ */ jsxs(CardHeader, { className: "flex flex-row items-start justify-between gap-4 px-6 pb-2 pt-6", children: [
1854
3518
  /* @__PURE__ */ jsxs("div", { children: [
1855
3519
  /* @__PURE__ */ jsx(CardTitle, { className: "m-0 text-[1.1rem] font-semibold text-white", children: title }),
1856
- /* @__PURE__ */ jsx("div", { className: "mt-3 flex items-center gap-2", children: ranges.map((r) => {
1857
- const active = r === selectedRange;
1858
- const hovered = hoveredRange === r;
3520
+ /* @__PURE__ */ jsx("div", { className: "mt-3 flex items-center gap-2", children: ranges.map((r2) => {
3521
+ const active = r2 === selectedRange;
3522
+ const hovered = hoveredRange === r2;
1859
3523
  const style = {
1860
3524
  ...btnBaseStyle,
1861
3525
  ...hovered ? btnHoverStyle : null,
@@ -1865,16 +3529,16 @@ var PriceChart = React5.forwardRef(
1865
3529
  "button",
1866
3530
  {
1867
3531
  type: "button",
1868
- onClick: () => onRangeChange?.(r),
1869
- onMouseEnter: () => setHoveredRange(r),
1870
- onMouseLeave: () => setHoveredRange((prev) => prev === r ? null : prev),
3532
+ onClick: () => onRangeChange?.(r2),
3533
+ onMouseEnter: () => setHoveredRange(r2),
3534
+ onMouseLeave: () => setHoveredRange((prev2) => prev2 === r2 ? null : prev2),
1871
3535
  style,
1872
3536
  className: cn(
1873
3537
  "rounded border px-3 py-1 text-[0.85rem] font-medium transition-all duration-200"
1874
3538
  ),
1875
- children: r
3539
+ children: r2
1876
3540
  },
1877
- r
3541
+ r2
1878
3542
  );
1879
3543
  }) })
1880
3544
  ] }),
@@ -1907,7 +3571,7 @@ var formatPrice2 = (value, currencySymbol) => {
1907
3571
  maximumFractionDigits: 3
1908
3572
  })}`;
1909
3573
  };
1910
- var PropertyHeroHeader = React5.forwardRef(
3574
+ var PropertyHeroHeader = o.forwardRef(
1911
3575
  ({
1912
3576
  className,
1913
3577
  imageUrl,
@@ -1928,14 +3592,39 @@ var PropertyHeroHeader = React5.forwardRef(
1928
3592
  const isPositive = changePercent == null ? void 0 : changePercent >= 0;
1929
3593
  const accentColor = "#e6c87e";
1930
3594
  const tradeHoverColor = "#f5dd9a";
1931
- const [isTradeInteracting, setIsTradeInteracting] = React5.useState(false);
1932
- const [isOfferInteracting, setIsOfferInteracting] = React5.useState(false);
3595
+ const [isTradeInteracting, setIsTradeInteracting] = o.useState(false);
3596
+ const [isOfferInteracting, setIsOfferInteracting] = o.useState(false);
3597
+ const headingStyle = {
3598
+ fontSize: "2.5rem",
3599
+ marginBottom: "0.5rem",
3600
+ color: "#ffffff",
3601
+ textShadow: "0 2px 4px rgba(0, 0, 0, 0.3)",
3602
+ fontWeight: 600,
3603
+ lineHeight: 1.2
3604
+ };
3605
+ const priceBlockStyle = {
3606
+ fontSize: "1.25rem",
3607
+ fontWeight: 600,
3608
+ color: "var(--color-accent, #f0b90b)",
3609
+ marginLeft: "1rem",
3610
+ paddingLeft: "1rem",
3611
+ borderLeft: "1px solid rgba(255, 255, 255, 0.3)",
3612
+ display: "flex",
3613
+ alignItems: "center"
3614
+ };
3615
+ const locationStyle = {
3616
+ fontSize: "1.25rem",
3617
+ color: "rgba(255, 255, 255, 0.9)",
3618
+ marginBottom: "0.75rem",
3619
+ display: "flex",
3620
+ alignItems: "center"
3621
+ };
1933
3622
  return /* @__PURE__ */ jsxs(
1934
3623
  "div",
1935
3624
  {
1936
3625
  ref,
1937
3626
  className: cn(
1938
- "relative w-full overflow-hidden bg-black h-[500px] rounded-[12px] max-[768px]:h-[400px] max-[768px]:rounded-lg max-[480px]:h-[350px] max-[480px]:rounded-md",
3627
+ "relative w-[1200px] h-[500px] overflow-hidden bg-black rounded-[12px]",
1939
3628
  className
1940
3629
  ),
1941
3630
  ...props,
@@ -1945,50 +3634,45 @@ var PropertyHeroHeader = React5.forwardRef(
1945
3634
  {
1946
3635
  src: imageUrl,
1947
3636
  alt: imageAlt ?? name,
1948
- className: "h-full w-full object-cover object-center block max-w-none min-w-[120%] min-h-[120%]",
1949
- style: { transform: "scale(1.0)", transformOrigin: "center" }
3637
+ className: "absolute inset-0 block h-full w-full object-cover object-center",
3638
+ style: { transform: "scale(1.20)", transformOrigin: "center" }
1950
3639
  }
1951
3640
  ),
1952
- /* @__PURE__ */ jsxs("div", { className: "absolute bottom-0 left-0 right-0 flex w-full items-end justify-between p-8 max-[768px]:flex-col max-[768px]:items-start max-[768px]:gap-4 max-[768px]:p-6 max-[480px]:p-4", children: [
1953
- /* @__PURE__ */ jsxs("div", { className: "inline-block w-auto max-w-[70%] rounded-lg bg-black/15 px-4 py-3 text-white shadow-[0px_1px_1px_rgba(0,0,0,0.3)] backdrop-blur-[3px] max-[768px]:w-full max-[768px]:max-w-full max-[768px]:px-3 max-[768px]:py-3 max-[480px]:px-3 max-[480px]:py-2", children: [
1954
- /* @__PURE__ */ jsx("h1", { className: "mb-2 text-[2.5rem] leading-tight text-white [text-shadow:0_2px_4px_rgba(0,0,0,0.3)] max-[768px]:mb-[0.4rem] max-[768px]:text-[2rem] max-[480px]:mb-[0.3rem] max-[480px]:text-[1.75rem]", children: name }),
1955
- /* @__PURE__ */ jsxs("div", { className: "mb-3 flex flex-wrap items-center text-[1.25rem] text-white/90 max-[768px]:mb-[0.6rem] max-[768px]:text-[1.1rem] max-[480px]:mb-[0.5rem] max-[480px]:text-[1rem]", children: [
1956
- /* @__PURE__ */ jsx("span", { children: location }),
1957
- price == null ? null : /* @__PURE__ */ jsxs(
1958
- "span",
1959
- {
1960
- className: "ml-4 flex items-center border-l border-white/30 pl-4 font-semibold",
1961
- style: { color: "var(--color-accent, #e6c87e)" },
1962
- children: [
1963
- formatPrice2(price, currencySymbol),
1964
- changePercent == null ? null : /* @__PURE__ */ jsxs(
1965
- "span",
1966
- {
1967
- className: cn(
1968
- "ml-2 flex items-center text-[0.875rem] font-medium",
1969
- isPositive ? "text-[#0ecb81]" : "text-[#f6465d]"
3641
+ /* @__PURE__ */ jsxs("div", { className: "absolute bottom-0 left-0 right-0 z-10 flex w-full items-end justify-between gap-4 p-8 max-[768px]:flex-col max-[768px]:items-start max-[768px]:gap-4 max-[768px]:p-6 max-[480px]:p-4", children: [
3642
+ /* @__PURE__ */ jsxs("div", { className: "inline-block w-full rounded-lg bg-black/15 px-4 py-3 text-white shadow-[0px_1px_1px_rgba(0,0,0,0.3)] backdrop-blur-[3px] max-[768px]:w-full max-[768px]:px-3 max-[768px]:py-3 max-[480px]:px-3 max-[480px]:py-2 min-[769px]:flex-1 min-[769px]:min-w-0", children: [
3643
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 space-y-2", children: [
3644
+ /* @__PURE__ */ jsx("h1", { style: headingStyle, className: "break-words", children: name }),
3645
+ /* @__PURE__ */ jsxs("div", { className: "mb-3 flex flex-wrap items-center max-[768px]:mb-[0.6rem] max-[768px]:text-[1.1rem] max-[480px]:mb-[0.5rem] max-[480px]:text-[1rem]", children: [
3646
+ /* @__PURE__ */ jsx("span", { style: locationStyle, children: location }),
3647
+ price == null ? null : /* @__PURE__ */ jsxs("span", { style: priceBlockStyle, children: [
3648
+ formatPrice2(price, currencySymbol),
3649
+ changePercent == null ? null : /* @__PURE__ */ jsxs(
3650
+ "span",
3651
+ {
3652
+ className: cn(
3653
+ "ml-2 flex items-center text-[0.875rem] font-medium",
3654
+ isPositive ? "text-[#0ecb81]" : "text-[#f6465d]"
3655
+ ),
3656
+ children: [
3657
+ /* @__PURE__ */ jsx(
3658
+ "svg",
3659
+ {
3660
+ xmlns: "http://www.w3.org/2000/svg",
3661
+ width: "12",
3662
+ height: "12",
3663
+ viewBox: "0 0 24 24",
3664
+ fill: "currentColor",
3665
+ className: "mr-[0.15rem]",
3666
+ children: /* @__PURE__ */ jsx("path", { d: isPositive ? "M7 14l5-5 5 5H7z" : "M7 10l5 5 5-5H7z" })
3667
+ }
1970
3668
  ),
1971
- children: [
1972
- /* @__PURE__ */ jsx(
1973
- "svg",
1974
- {
1975
- xmlns: "http://www.w3.org/2000/svg",
1976
- width: "12",
1977
- height: "12",
1978
- viewBox: "0 0 24 24",
1979
- fill: "currentColor",
1980
- className: "mr-[0.15rem]",
1981
- children: /* @__PURE__ */ jsx("path", { d: isPositive ? "M7 14l5-5 5 5H7z" : "M7 10l5 5 5-5H7z" })
1982
- }
1983
- ),
1984
- Math.abs(changePercent).toFixed(2),
1985
- "%"
1986
- ]
1987
- }
1988
- )
1989
- ]
1990
- }
1991
- )
3669
+ Math.abs(changePercent).toFixed(2),
3670
+ "%"
3671
+ ]
3672
+ }
3673
+ )
3674
+ ] })
3675
+ ] })
1992
3676
  ] }),
1993
3677
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-6 text-[0.95rem] text-white/90 max-[768px]:hidden", children: [
1994
3678
  beds == null ? null : /* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
@@ -2015,7 +3699,7 @@ var PropertyHeroHeader = React5.forwardRef(
2015
3699
  propertyTypeLabel == null ? null : /* @__PURE__ */ jsx("div", { children: propertyTypeLabel })
2016
3700
  ] })
2017
3701
  ] }),
2018
- /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-3 max-[768px]:w-full max-[768px]:justify-between max-[768px]:gap-2 max-[480px]:gap-2", children: [
3702
+ /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 flex-wrap items-center gap-3 max-[768px]:w-full max-[768px]:justify-between max-[768px]:gap-2 max-[480px]:gap-2", children: [
2019
3703
  /* @__PURE__ */ jsx(
2020
3704
  "button",
2021
3705
  {
@@ -2076,18 +3760,13 @@ var PropertyHeroHeader = React5.forwardRef(
2076
3760
  }
2077
3761
  );
2078
3762
  PropertyHeroHeader.displayName = "PropertyHeroHeader";
2079
- var PropertySubheader = React5.forwardRef(
3763
+ var PropertySubheader = o.forwardRef(
2080
3764
  ({ className, tabs, activeTabId, onTabChange, actions, ...props }, ref) => {
2081
3765
  return /* @__PURE__ */ jsxs(
2082
3766
  "div",
2083
3767
  {
2084
3768
  ref,
2085
- className: cn(
2086
- "w-full font-normal",
2087
- "flex flex-col gap-3",
2088
- "md:flex-row md:items-center md:justify-between",
2089
- className
2090
- ),
3769
+ className: cn("w-full font-normal flex flex-col gap-3 md:flex-row md:items-center md:justify-between", className),
2091
3770
  ...props,
2092
3771
  children: [
2093
3772
  /* @__PURE__ */ jsx(
@@ -2103,7 +3782,7 @@ var PropertySubheader = React5.forwardRef(
2103
3782
  "md:border-b-0"
2104
3783
  ),
2105
3784
  style: { WebkitTapHighlightColor: "transparent" },
2106
- children: /* @__PURE__ */ jsx("div", { className: "flex min-w-max", children: tabs.map((tab) => {
3785
+ children: /* @__PURE__ */ jsx("div", { className: "flex min-w-max gap-2 lg:gap-4", children: tabs.map((tab) => {
2107
3786
  const active = tab.id === activeTabId;
2108
3787
  return /* @__PURE__ */ jsxs(
2109
3788
  "button",
@@ -2112,12 +3791,13 @@ var PropertySubheader = React5.forwardRef(
2112
3791
  onClick: () => onTabChange?.(tab.id),
2113
3792
  className: cn(
2114
3793
  "relative whitespace-nowrap",
2115
- "px-6 py-4",
2116
- "font-normal",
3794
+ "px-5 py-4 lg:px-6",
3795
+ "text-[16px]",
3796
+ "font-medium",
2117
3797
  "transition-colors",
2118
3798
  "max-[768px]:px-[1.2rem] max-[768px]:py-[0.8rem]",
2119
- "max-[480px]:px-4 max-[480px]:py-[0.7rem] max-[480px]:text-[0.9rem]",
2120
- active ? "font-semibold text-[var(--color-accent,#e6c87e)]" : "text-white/60 hover:text-white"
3799
+ "max-[480px]:px-4 max-[480px]:py-[0.7rem]",
3800
+ active ? "font-semibold text-[var(--color-accent,#e6c87e)] hover:text-[var(--color-accent,#f1d27a)]" : "text-white/65 hover:text-white"
2121
3801
  ),
2122
3802
  style: {
2123
3803
  borderBottom: active ? "2px solid var(--color-accent, #e6c87e)" : "2px solid transparent",
@@ -2160,10 +3840,10 @@ var PropertySubheader = React5.forwardRef(
2160
3840
  onClick: action.onClick,
2161
3841
  className: cn(
2162
3842
  "flex shrink-0 items-center gap-[5px] whitespace-nowrap",
2163
- "rounded",
2164
- "border border-white/10",
3843
+ "rounded-[6px]",
3844
+ "border border-white/15",
2165
3845
  "bg-transparent",
2166
- "px-3 py-1.5 text-[14px] font-normal",
3846
+ "px-3.5 py-1.5 text-[14px] font-medium",
2167
3847
  "transition-all",
2168
3848
  "max-[768px]:px-2.5 max-[768px]:py-[5px] max-[768px]:text-[13px]",
2169
3849
  "hover:bg-white/5 hover:border-[var(--color-accent,#e6c87e)] hover:text-[var(--color-accent,#e6c87e)]"
@@ -2184,6 +3864,6 @@ var PropertySubheader = React5.forwardRef(
2184
3864
  );
2185
3865
  PropertySubheader.displayName = "PropertySubheader";
2186
3866
 
2187
- export { Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, HousePositionSlider, Orderbook, PortfolioSummary, PriceChart, PropertyCompareBar, PropertyHeroHeader, PropertyNewsUpdates, PropertySubheader, PropertyTour, YourOrders, badgeVariants, buttonVariants };
3867
+ export { Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, HousePositionSlider, LoafLiquidityBadge, Orderbook, PortfolioSummary, PriceChart, PropertyCompareBar, PropertyHeroHeader, PropertyNewsUpdates, PropertySubheader, PropertyTour, YourOrders, badgeVariants, buttonVariants };
2188
3868
  //# sourceMappingURL=index.mjs.map
2189
3869
  //# sourceMappingURL=index.mjs.map