@loafmarkets/ui 0.1.55 → 0.1.57

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,11 +1,11 @@
1
1
  import * as React5 from 'react';
2
- import React5__default, { createContext, useState, useEffect, useMemo, useCallback, useRef, useContext } from 'react';
2
+ import React5__default, { createContext, useState, useEffect, useMemo, useCallback, useContext, useRef } from 'react';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
4
  import { cva } from 'class-variance-authority';
5
5
  import { clsx } from 'clsx';
6
6
  import { twMerge } from 'tailwind-merge';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
- import styled24, { keyframes, css } from 'styled-components';
8
+ import styled25, { keyframes, css } from 'styled-components';
9
9
  import { Newspaper, BedDouble, Bath, CarFront } from 'lucide-react';
10
10
  import * as LightweightCharts from 'lightweight-charts';
11
11
  import { BiChevronUp, BiChevronDown, BiX, BiCoin, BiWallet, BiCreditCard, BiCalendar, BiInfoCircle, BiPencil, BiImages, BiVideo, BiMap } from 'react-icons/bi';
@@ -1553,7 +1553,7 @@ var shimmer = keyframes`
1553
1553
  background-position: 200% 0;
1554
1554
  }
1555
1555
  `;
1556
- var LogoContainer = styled24.span`
1556
+ var LogoContainer = styled25.span`
1557
1557
  display: inline-flex;
1558
1558
  align-items: center;
1559
1559
  gap: 0.35rem;
@@ -1638,7 +1638,7 @@ var LogoContainer = styled24.span`
1638
1638
  pointer-events: none;
1639
1639
  }
1640
1640
  `;
1641
- var IconWrapper = styled24.span`
1641
+ var IconWrapper = styled25.span`
1642
1642
  display: flex;
1643
1643
  align-items: center;
1644
1644
  justify-content: center;
@@ -1651,7 +1651,7 @@ var IconWrapper = styled24.span`
1651
1651
  height: 14px;
1652
1652
  }
1653
1653
  `;
1654
- var IconCircle = styled24.span`
1654
+ var IconCircle = styled25.span`
1655
1655
  position: absolute;
1656
1656
  width: ${({ size }) => size}px;
1657
1657
  height: ${({ size }) => size}px;
@@ -1662,7 +1662,7 @@ var IconCircle = styled24.span`
1662
1662
  transform-origin: center;
1663
1663
  will-change: transform, opacity;
1664
1664
  `;
1665
- var IconCore = styled24.span`
1665
+ var IconCore = styled25.span`
1666
1666
  width: 5px;
1667
1667
  height: 5px;
1668
1668
  background: linear-gradient(135deg, #0ecb81 0%, #2ecc71 100%);
@@ -1671,14 +1671,14 @@ var IconCore = styled24.span`
1671
1671
  position: relative;
1672
1672
  z-index: 1;
1673
1673
  `;
1674
- var LogoText = styled24.span`
1674
+ var LogoText = styled25.span`
1675
1675
  display: inline-flex;
1676
1676
  align-items: center;
1677
1677
  gap: 0.2rem;
1678
1678
  position: relative;
1679
1679
  z-index: 1;
1680
1680
  `;
1681
- var LoafLogoImage = styled24.img`
1681
+ var LoafLogoImage = styled25.img`
1682
1682
  height: 20px;
1683
1683
  position: relative;
1684
1684
  z-index: 1;
@@ -1687,7 +1687,7 @@ var LoafLogoImage = styled24.img`
1687
1687
  height: 18px;
1688
1688
  }
1689
1689
  `;
1690
- var LiquidityText = styled24.span`
1690
+ var LiquidityText = styled25.span`
1691
1691
  font-size: 0.65rem;
1692
1692
  font-weight: 400;
1693
1693
  background: linear-gradient(135deg, #f0b90b 0%, #ffd700 50%, #f0b90b 100%);
@@ -1909,7 +1909,8 @@ function DepthRow({
1909
1909
  depthPct,
1910
1910
  precision,
1911
1911
  amountPrecision,
1912
- hasUserOrder
1912
+ hasUserOrder,
1913
+ onPriceClick
1913
1914
  }) {
1914
1915
  const isAsk = side === "ask";
1915
1916
  const rowRef = React5.useRef(null);
@@ -1919,7 +1920,8 @@ function DepthRow({
1919
1920
  {
1920
1921
  ref: rowRef,
1921
1922
  className: "relative grid grid-cols-3 items-center gap-3 px-3 text-[0.8rem]",
1922
- style: { height: `${DEPTH_ROW_HEIGHT_PX}px` },
1923
+ style: { height: `${DEPTH_ROW_HEIGHT_PX}px`, cursor: onPriceClick ? "pointer" : void 0 },
1924
+ onClick: onPriceClick ? () => onPriceClick(price) : void 0,
1923
1925
  children: [
1924
1926
  /* @__PURE__ */ jsx(
1925
1927
  "div",
@@ -1935,7 +1937,7 @@ function DepthRow({
1935
1937
  "span",
1936
1938
  {
1937
1939
  "aria-label": "Your order at this price",
1938
- className: "absolute left-2 top-1/2 -translate-y-1/2 z-[2] h-[6px] w-[6px] rounded-full bg-[#C9A227] shadow-[0_0_6px_rgba(201,162,39,0.7)]"
1940
+ className: "absolute left-0 top-1/2 -translate-y-1/2 z-[2] h-[6px] w-[6px] rounded-full bg-[#C9A227] shadow-[0_0_6px_rgba(201,162,39,0.7)]"
1939
1941
  }
1940
1942
  ) : null,
1941
1943
  /* @__PURE__ */ jsxs("div", { className: cn("relative z-[1] tabular-nums", isAsk ? "text-[#f6465d]" : "text-[#0ecb81]"), children: [
@@ -1971,6 +1973,7 @@ var Orderbook = React5.forwardRef(
1971
1973
  variant = "auto",
1972
1974
  userOrderPrices,
1973
1975
  isLoading = false,
1976
+ onPriceClick,
1974
1977
  onLoafLiquidityClick,
1975
1978
  tradeExplorerUrl,
1976
1979
  className,
@@ -2066,7 +2069,8 @@ var Orderbook = React5.forwardRef(
2066
2069
  userBidPrices,
2067
2070
  isLoading,
2068
2071
  seenTradeKeysRef,
2069
- tradeExplorerUrl
2072
+ tradeExplorerUrl,
2073
+ onPriceClick
2070
2074
  };
2071
2075
  return /* @__PURE__ */ jsx(
2072
2076
  Card,
@@ -2132,7 +2136,8 @@ function DesktopOrderbookLayout({
2132
2136
  userBidPrices,
2133
2137
  isLoading,
2134
2138
  seenTradeKeysRef,
2135
- tradeExplorerUrl
2139
+ tradeExplorerUrl,
2140
+ onPriceClick
2136
2141
  }) {
2137
2142
  const midRef = React5.useRef(null);
2138
2143
  useMidPriceFlash(midRef, midPrice, "#0b1a24");
@@ -2253,7 +2258,8 @@ function DesktopOrderbookLayout({
2253
2258
  depthPct: askCumDepths[i] / combinedMaxCumDepth * 100,
2254
2259
  precision,
2255
2260
  amountPrecision,
2256
- hasUserOrder: userAskPrices.has(l.price)
2261
+ hasUserOrder: userAskPrices.has(l.price),
2262
+ onPriceClick
2257
2263
  },
2258
2264
  `ask-${l.price}`
2259
2265
  ))
@@ -2293,7 +2299,8 @@ function DesktopOrderbookLayout({
2293
2299
  depthPct: bidCumDepths[i] / combinedMaxCumDepth * 100,
2294
2300
  precision,
2295
2301
  amountPrecision,
2296
- hasUserOrder: userBidPrices.has(l.price)
2302
+ hasUserOrder: userBidPrices.has(l.price),
2303
+ onPriceClick
2297
2304
  },
2298
2305
  `bid-${l.price}`
2299
2306
  ))
@@ -2327,7 +2334,8 @@ function MobileOrderbookLayout({
2327
2334
  userBidPrices,
2328
2335
  isLoading,
2329
2336
  seenTradeKeysRef,
2330
- tradeExplorerUrl
2337
+ tradeExplorerUrl,
2338
+ onPriceClick
2331
2339
  }) {
2332
2340
  const midRef = React5.useRef(null);
2333
2341
  useMidPriceFlash(midRef, midPrice, "transparent");
@@ -2408,7 +2416,8 @@ function MobileOrderbookLayout({
2408
2416
  depthPct: askCumDepths[i] / combinedMaxCumDepth * 100,
2409
2417
  precision,
2410
2418
  amountPrecision,
2411
- hasUserOrder: userAskPrices.has(l.price)
2419
+ hasUserOrder: userAskPrices.has(l.price),
2420
+ onPriceClick
2412
2421
  },
2413
2422
  `mobile-ask-${l.price}`
2414
2423
  )) }),
@@ -2454,7 +2463,8 @@ function MobileOrderbookLayout({
2454
2463
  depthPct: bidCumDepths[i] / combinedMaxCumDepth * 100,
2455
2464
  precision,
2456
2465
  amountPrecision,
2457
- hasUserOrder: userBidPrices.has(l.price)
2466
+ hasUserOrder: userBidPrices.has(l.price),
2467
+ onPriceClick
2458
2468
  },
2459
2469
  `mobile-bid-${l.price}`
2460
2470
  )) })
@@ -2497,7 +2507,8 @@ function MobileDepthRow({
2497
2507
  depthPct,
2498
2508
  precision,
2499
2509
  amountPrecision,
2500
- hasUserOrder
2510
+ hasUserOrder,
2511
+ onPriceClick
2501
2512
  }) {
2502
2513
  const isAsk = side === "ask";
2503
2514
  const rowRef = React5.useRef(null);
@@ -2511,8 +2522,10 @@ function MobileDepthRow({
2511
2522
  gridTemplateColumns: "1.2fr 0.8fr",
2512
2523
  padding: "0.2rem 0",
2513
2524
  fontSize: "0.8rem",
2514
- position: "relative"
2525
+ position: "relative",
2526
+ cursor: onPriceClick ? "pointer" : void 0
2515
2527
  },
2528
+ onClick: onPriceClick ? () => onPriceClick(price) : void 0,
2516
2529
  children: [
2517
2530
  hasUserOrder ? /* @__PURE__ */ jsx(
2518
2531
  "span",
@@ -2520,7 +2533,7 @@ function MobileDepthRow({
2520
2533
  "aria-label": "Your order at this price",
2521
2534
  style: {
2522
2535
  position: "absolute",
2523
- left: "6px",
2536
+ left: "2px",
2524
2537
  top: "50%",
2525
2538
  transform: "translateY(-50%)",
2526
2539
  width: "6px",
@@ -2532,7 +2545,7 @@ function MobileDepthRow({
2532
2545
  }
2533
2546
  }
2534
2547
  ) : null,
2535
- /* @__PURE__ */ jsxs("div", { style: { position: "relative", zIndex: 1, color: isAsk ? "#f6465d" : "#0ecb81" }, children: [
2548
+ /* @__PURE__ */ jsxs("div", { style: { position: "relative", zIndex: 1, color: isAsk ? "#f6465d" : "#0ecb81", paddingLeft: hasUserOrder ? "10px" : void 0 }, children: [
2536
2549
  "$",
2537
2550
  formatNumber(price, precision)
2538
2551
  ] }),
@@ -3260,7 +3273,7 @@ var TradingSlider = React5.forwardRef(
3260
3273
  }
3261
3274
  );
3262
3275
  TradingSlider.displayName = "TradingSlider";
3263
- var MobileToggleContainer = styled24.div`
3276
+ var MobileToggleContainer = styled25.div`
3264
3277
  display: none;
3265
3278
 
3266
3279
  @media (max-width: 1024px) {
@@ -3278,7 +3291,7 @@ var MobileToggleContainer = styled24.div`
3278
3291
  box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.3);
3279
3292
  }
3280
3293
  `;
3281
- var MobileToggleButton = styled24.button`
3294
+ var MobileToggleButton = styled25.button`
3282
3295
  flex: 1;
3283
3296
  padding: 0.75rem;
3284
3297
  background-color: ${(props) => props.active ? "var(--color-accent)" : "transparent"};
@@ -3633,7 +3646,7 @@ var shimmer2 = keyframes`
3633
3646
  background-position: 200% 0;
3634
3647
  }
3635
3648
  `;
3636
- var LogoContainer2 = styled24.span`
3649
+ var LogoContainer2 = styled25.span`
3637
3650
  display: inline-flex;
3638
3651
  align-items: center;
3639
3652
  gap: 0.35rem;
@@ -3728,7 +3741,7 @@ var LogoContainer2 = styled24.span`
3728
3741
  pointer-events: none;
3729
3742
  }
3730
3743
  `;
3731
- var IconWrapper2 = styled24.div`
3744
+ var IconWrapper2 = styled25.div`
3732
3745
  display: flex;
3733
3746
  align-items: center;
3734
3747
  justify-content: center;
@@ -3746,7 +3759,7 @@ var IconWrapper2 = styled24.div`
3746
3759
  height: 14px;
3747
3760
  }
3748
3761
  `;
3749
- var IconCircle2 = styled24.div`
3762
+ var IconCircle2 = styled25.div`
3750
3763
  position: absolute;
3751
3764
  width: ${(props) => props.$size}px;
3752
3765
  height: ${(props) => props.$size}px;
@@ -3757,7 +3770,7 @@ var IconCircle2 = styled24.div`
3757
3770
  transform-origin: center;
3758
3771
  will-change: transform, opacity;
3759
3772
  `;
3760
- var IconCore2 = styled24.div`
3773
+ var IconCore2 = styled25.div`
3761
3774
  width: 5px;
3762
3775
  height: 5px;
3763
3776
  background: linear-gradient(135deg, #0ecb81 0%, #2ecc71 100%);
@@ -3766,7 +3779,7 @@ var IconCore2 = styled24.div`
3766
3779
  position: relative;
3767
3780
  z-index: 1;
3768
3781
  `;
3769
- var LogoText2 = styled24.span`
3782
+ var LogoText2 = styled25.span`
3770
3783
  display: inline-flex;
3771
3784
  align-items: center;
3772
3785
  gap: 0.2rem;
@@ -3774,7 +3787,7 @@ var LogoText2 = styled24.span`
3774
3787
  z-index: 1;
3775
3788
  vertical-align: middle;
3776
3789
  `;
3777
- var LoafLogoImage2 = styled24.img`
3790
+ var LoafLogoImage2 = styled25.img`
3778
3791
  height: 20px;
3779
3792
  position: relative;
3780
3793
  z-index: 1;
@@ -3787,7 +3800,7 @@ var LoafLogoImage2 = styled24.img`
3787
3800
  height: 18px;
3788
3801
  }
3789
3802
  `;
3790
- var LiquidityText2 = styled24.span`
3803
+ var LiquidityText2 = styled25.span`
3791
3804
  font-size: 0.65rem;
3792
3805
  font-weight: 400;
3793
3806
  background: linear-gradient(135deg, #f0b90b 0%, #ffd700 50%, #f0b90b 100%);
@@ -4900,14 +4913,14 @@ var PropertyHeroHeader = React5.forwardRef(
4900
4913
  }
4901
4914
  );
4902
4915
  PropertyHeroHeader.displayName = "PropertyHeroHeader";
4903
- var OuterWrapper = styled24.div`
4916
+ var OuterWrapper = styled25.div`
4904
4917
  width: 100%;
4905
4918
  margin: 0 auto;
4906
4919
  display: flex;
4907
4920
  flex-direction: column;
4908
4921
  gap: 0.5rem;
4909
4922
  `;
4910
- var HeroContainer = styled24.div`
4923
+ var HeroContainer = styled25.div`
4911
4924
  position: relative;
4912
4925
  width: calc(100vw - 1.5rem);
4913
4926
  left: 50%;
@@ -4939,7 +4952,7 @@ var HeroContainer = styled24.div`
4939
4952
  border-radius: 6px;
4940
4953
  }
4941
4954
  `;
4942
- var MobileAmenities = styled24.div`
4955
+ var MobileAmenities = styled25.div`
4943
4956
  display: none;
4944
4957
  align-items: center;
4945
4958
  justify-content: space-between;
@@ -4956,7 +4969,7 @@ var MobileAmenities = styled24.div`
4956
4969
  flex-wrap: wrap;
4957
4970
  }
4958
4971
  `;
4959
- var MobileAmenity = styled24.span`
4972
+ var MobileAmenity = styled25.span`
4960
4973
  display: inline-flex;
4961
4974
  align-items: center;
4962
4975
  gap: 0.35rem;
@@ -4965,7 +4978,7 @@ var MobileAmenity = styled24.span`
4965
4978
  background: rgba(255, 255, 255, 0.08);
4966
4979
  font-weight: 500;
4967
4980
  `;
4968
- var HeroImage = styled24.img`
4981
+ var HeroImage = styled25.img`
4969
4982
  width: 100%;
4970
4983
  height: 100%;
4971
4984
  object-fit: cover;
@@ -4979,7 +4992,7 @@ var HeroImage = styled24.img`
4979
4992
  transform: scale(1.0);
4980
4993
  transform-origin: center;
4981
4994
  `;
4982
- var HeroGradient = styled24.div`
4995
+ var HeroGradient = styled25.div`
4983
4996
  position: absolute;
4984
4997
  bottom: 0;
4985
4998
  left: 0;
@@ -4988,7 +5001,7 @@ var HeroGradient = styled24.div`
4988
5001
  z-index: 1;
4989
5002
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
4990
5003
  `;
4991
- var ActionButtons = styled24.div`
5004
+ var ActionButtons = styled25.div`
4992
5005
  display: flex;
4993
5006
  flex-wrap: wrap;
4994
5007
  align-items: center;
@@ -5003,7 +5016,7 @@ var ActionButtons = styled24.div`
5003
5016
  display: none;
5004
5017
  }
5005
5018
  `;
5006
- var InfoCard = styled24.div`
5019
+ var InfoCard = styled25.div`
5007
5020
  display: inline-block;
5008
5021
  width: fit-content;
5009
5022
  max-width: 70%;
@@ -5028,7 +5041,7 @@ var InfoCard = styled24.div`
5028
5041
  max-width: 95%;
5029
5042
  }
5030
5043
  `;
5031
- var InfoRow = styled24.div`
5044
+ var InfoRow = styled25.div`
5032
5045
  display: grid;
5033
5046
  grid-template-columns: minmax(0, 1fr) auto;
5034
5047
  align-items: center;
@@ -5039,7 +5052,7 @@ var InfoRow = styled24.div`
5039
5052
  gap: 0.5rem;
5040
5053
  }
5041
5054
  `;
5042
- var LocationText = styled24.span`
5055
+ var LocationText = styled25.span`
5043
5056
  font-size: clamp(1rem, 2.6vw, 1.25rem);
5044
5057
  color: rgba(255, 255, 255, 0.9);
5045
5058
  font-weight: 500;
@@ -5047,7 +5060,7 @@ var LocationText = styled24.span`
5047
5060
  text-overflow: ellipsis;
5048
5061
  white-space: nowrap;
5049
5062
  `;
5050
- var PriceBlock = styled24.span`
5063
+ var PriceBlock = styled25.span`
5051
5064
  display: flex;
5052
5065
  align-items: center;
5053
5066
  font-size: clamp(1rem, 2.2vw, 1.25rem);
@@ -5057,7 +5070,7 @@ var PriceBlock = styled24.span`
5057
5070
  border-left: 1px solid rgba(255, 255, 255, 0.25);
5058
5071
  min-height: 1.5rem;
5059
5072
  `;
5060
- var StatusBadge = styled24.div`
5073
+ var StatusBadge = styled25.div`
5061
5074
  position: absolute;
5062
5075
  top: 1rem;
5063
5076
  left: 1rem;
@@ -5074,7 +5087,7 @@ var StatusBadge = styled24.div`
5074
5087
  border: ${({ $isLive }) => $isLive ? "1px solid rgba(240, 185, 11, 0.5)" : "none"};
5075
5088
  backdrop-filter: blur(8px);
5076
5089
  `;
5077
- var PulsingDot = styled24.span`
5090
+ var PulsingDot = styled25.span`
5078
5091
  display: inline-block;
5079
5092
  width: 8px;
5080
5093
  height: 8px;
@@ -5597,7 +5610,7 @@ var Header = ({
5597
5610
  ] });
5598
5611
  };
5599
5612
  Header.displayName = "Header";
5600
- var SafeAreaCover = styled24.div`
5613
+ var SafeAreaCover = styled25.div`
5601
5614
  position: fixed;
5602
5615
  top: 0;
5603
5616
  left: 0;
@@ -5608,7 +5621,7 @@ var SafeAreaCover = styled24.div`
5608
5621
  z-index: 1001;
5609
5622
  pointer-events: none;
5610
5623
  `;
5611
- var Overlay = styled24.div`
5624
+ var Overlay = styled25.div`
5612
5625
  display: ${(props) => props.$isOpen ? "block" : "none"};
5613
5626
  position: fixed;
5614
5627
  top: 0;
@@ -5619,7 +5632,7 @@ var Overlay = styled24.div`
5619
5632
  backdrop-filter: blur(3px);
5620
5633
  z-index: 999;
5621
5634
  `;
5622
- var MobileOnlyButton = styled24.button.attrs({ type: "button" })`
5635
+ var MobileOnlyButton = styled25.button.attrs({ type: "button" })`
5623
5636
  display: none;
5624
5637
  background-color: ${(props) => props.$isOpen ? "rgba(240, 185, 11, 0.2)" : "#f0b90b"};
5625
5638
  color: ${(props) => props.$isOpen ? "#ffffff" : "#0b0e11"};
@@ -5650,7 +5663,7 @@ var MobileOnlyButton = styled24.button.attrs({ type: "button" })`
5650
5663
  display: flex;
5651
5664
  }
5652
5665
  `;
5653
- var HeaderContainer = styled24.header`
5666
+ var HeaderContainer = styled25.header`
5654
5667
  display: flex;
5655
5668
  justify-content: space-between;
5656
5669
  align-items: center;
@@ -5676,13 +5689,13 @@ var HeaderContainer = styled24.header`
5676
5689
  padding-top: max(env(safe-area-inset-top, 0px), var(--telegram-safe-top, 0px));
5677
5690
  }
5678
5691
  `;
5679
- var HeaderSpacer = styled24.div`
5692
+ var HeaderSpacer = styled25.div`
5680
5693
  width: 100%;
5681
5694
  min-height: 56px;
5682
5695
  min-height: calc(56px + max(env(safe-area-inset-top, 0px), var(--telegram-safe-top, 0px)));
5683
5696
  flex-shrink: 0;
5684
5697
  `;
5685
- var Logo = styled24.div`
5698
+ var Logo = styled25.div`
5686
5699
  display: flex;
5687
5700
  align-items: center;
5688
5701
  margin-right: 24px;
@@ -5703,11 +5716,11 @@ var Logo = styled24.div`
5703
5716
  }
5704
5717
  }
5705
5718
  `;
5706
- var LogoLink = styled24.a`
5719
+ var LogoLink = styled25.a`
5707
5720
  display: inline-flex;
5708
5721
  align-items: center;
5709
5722
  `;
5710
- var Nav = styled24.nav`
5723
+ var Nav = styled25.nav`
5711
5724
  display: flex;
5712
5725
  flex-direction: column;
5713
5726
 
@@ -5759,7 +5772,7 @@ var Nav = styled24.nav`
5759
5772
  }
5760
5773
  }
5761
5774
  `;
5762
- var NavLink = styled24.a`
5775
+ var NavLink = styled25.a`
5763
5776
  margin: 0 12px;
5764
5777
  color: #eaecef;
5765
5778
  font-weight: 500;
@@ -5818,7 +5831,7 @@ var NavLink = styled24.a`
5818
5831
  }
5819
5832
  }
5820
5833
  `;
5821
- var Button2 = styled24.button.attrs({ type: "button" })`
5834
+ var Button2 = styled25.button.attrs({ type: "button" })`
5822
5835
  padding: 0.5rem 1rem;
5823
5836
  border-radius: 6px;
5824
5837
  font-weight: 500;
@@ -5856,7 +5869,7 @@ var Button2 = styled24.button.attrs({ type: "button" })`
5856
5869
  margin-left: 0.5rem;
5857
5870
  }
5858
5871
  `;
5859
- var UserMenu = styled24.div`
5872
+ var UserMenu = styled25.div`
5860
5873
  position: relative;
5861
5874
  margin-left: 0.75rem;
5862
5875
  height: 56px;
@@ -5867,7 +5880,7 @@ var UserMenu = styled24.div`
5867
5880
  margin-left: auto;
5868
5881
  }
5869
5882
  `;
5870
- var UserButton = styled24.button.attrs({ type: "button" })`
5883
+ var UserButton = styled25.button.attrs({ type: "button" })`
5871
5884
  display: flex;
5872
5885
  align-items: center;
5873
5886
  background: transparent;
@@ -5892,7 +5905,7 @@ var UserButton = styled24.button.attrs({ type: "button" })`
5892
5905
  transform: ${(props) => props.$isOpen ? "rotate(180deg)" : "rotate(0)"};
5893
5906
  }
5894
5907
  `;
5895
- var DropdownMenu = styled24.div`
5908
+ var DropdownMenu = styled25.div`
5896
5909
  position: absolute;
5897
5910
  top: 100%;
5898
5911
  /* Anchor to the button's right edge so a short label (narrow button) near
@@ -5920,7 +5933,7 @@ var DropdownMenu = styled24.div`
5920
5933
  display: block;
5921
5934
  }
5922
5935
  `;
5923
- var MenuItem = styled24.div`
5936
+ var MenuItem = styled25.div`
5924
5937
  padding: 0.75rem 1.25rem;
5925
5938
  cursor: pointer;
5926
5939
  transition: all 0.2s ease;
@@ -5940,7 +5953,7 @@ var MenuItem = styled24.div`
5940
5953
  color: #f6465d;
5941
5954
  }
5942
5955
  `;
5943
- var MobileMenuHeader = styled24.div`
5956
+ var MobileMenuHeader = styled25.div`
5944
5957
  display: flex;
5945
5958
  justify-content: flex-end;
5946
5959
  align-items: center;
@@ -5949,7 +5962,7 @@ var MobileMenuHeader = styled24.div`
5949
5962
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
5950
5963
  background: rgba(0, 0, 0, 0.2);
5951
5964
  `;
5952
- var MobileMenuClose = styled24.button.attrs({ type: "button" })`
5965
+ var MobileMenuClose = styled25.button.attrs({ type: "button" })`
5953
5966
  background: none;
5954
5967
  border: none;
5955
5968
  color: #eaecef;
@@ -5960,7 +5973,7 @@ var MobileMenuClose = styled24.button.attrs({ type: "button" })`
5960
5973
  align-items: center;
5961
5974
  justify-content: center;
5962
5975
  `;
5963
- var SearchBar = styled24.div`
5976
+ var SearchBar = styled25.div`
5964
5977
  display: flex;
5965
5978
  align-items: center;
5966
5979
  background: rgba(255, 255, 255, 0.03);
@@ -5996,7 +6009,7 @@ var SearchBar = styled24.div`
5996
6009
  }
5997
6010
  }
5998
6011
  `;
5999
- var MobileNavItem = styled24.div`
6012
+ var MobileNavItem = styled25.div`
6000
6013
  display: flex;
6001
6014
  align-items: center;
6002
6015
  padding: 14px 20px;
@@ -6736,7 +6749,7 @@ var LoginPopup = ({
6736
6749
  }
6737
6750
  return null;
6738
6751
  };
6739
- var Overlay2 = styled24.div`
6752
+ var Overlay2 = styled25.div`
6740
6753
  position: fixed;
6741
6754
  top: 0;
6742
6755
  left: 0;
@@ -6759,7 +6772,7 @@ var Overlay2 = styled24.div`
6759
6772
  }
6760
6773
  }
6761
6774
  `;
6762
- var PopupContainer = styled24.div`
6775
+ var PopupContainer = styled25.div`
6763
6776
  background-color: var(--color-background, #0a0a0a);
6764
6777
  border: 1px solid rgba(230, 198, 86, 0.3);
6765
6778
  border-radius: var(--border-radius, 12px);
@@ -6786,7 +6799,7 @@ var PopupContainer = styled24.div`
6786
6799
  max-width: 90%;
6787
6800
  }
6788
6801
  `;
6789
- var KycPopupContainer = styled24.div`
6802
+ var KycPopupContainer = styled25.div`
6790
6803
  background-color: var(--color-background, #0a0a0a);
6791
6804
  border: 1px solid rgba(230, 198, 86, 0.3);
6792
6805
  border-radius: var(--border-radius, 12px);
@@ -6814,7 +6827,7 @@ var KycPopupContainer = styled24.div`
6814
6827
  max-width: 95%;
6815
6828
  }
6816
6829
  `;
6817
- var KycWidgetContainer = styled24.div`
6830
+ var KycWidgetContainer = styled25.div`
6818
6831
  min-height: 500px;
6819
6832
  width: 100%;
6820
6833
  display: flex;
@@ -6822,7 +6835,7 @@ var KycWidgetContainer = styled24.div`
6822
6835
  position: relative;
6823
6836
  gap: 0.75rem;
6824
6837
  `;
6825
- var InlineCloseButton = styled24.button`
6838
+ var InlineCloseButton = styled25.button`
6826
6839
  position: absolute;
6827
6840
  top: -12px;
6828
6841
  right: -12px;
@@ -6848,7 +6861,7 @@ var InlineCloseButton = styled24.button`
6848
6861
  height: 18px;
6849
6862
  }
6850
6863
  `;
6851
- var CloseButton = styled24.button`
6864
+ var CloseButton = styled25.button`
6852
6865
  position: absolute;
6853
6866
  top: 1rem;
6854
6867
  right: 1rem;
@@ -6867,7 +6880,7 @@ var CloseButton = styled24.button`
6867
6880
  color: var(--color-accent, #e6c656);
6868
6881
  }
6869
6882
  `;
6870
- var Title = styled24.h2`
6883
+ var Title = styled25.h2`
6871
6884
  font-size: 1.75rem;
6872
6885
  font-weight: 600;
6873
6886
  color: var(--color-text, #eaecef);
@@ -6879,21 +6892,21 @@ var Title = styled24.h2`
6879
6892
  justify-content: center;
6880
6893
  gap: 1rem;
6881
6894
  `;
6882
- var LogoContainer3 = styled24.div`
6895
+ var LogoContainer3 = styled25.div`
6883
6896
  display: flex;
6884
6897
  justify-content: center;
6885
6898
  margin-bottom: 0.5rem;
6886
6899
  `;
6887
- var LogoImage = styled24.img`
6900
+ var LogoImage = styled25.img`
6888
6901
  height: 60px;
6889
6902
  `;
6890
- var ButtonsContainer = styled24.div`
6903
+ var ButtonsContainer = styled25.div`
6891
6904
  display: flex;
6892
6905
  flex-direction: column;
6893
6906
  gap: 1rem;
6894
6907
  margin-bottom: 1.5rem;
6895
6908
  `;
6896
- var LoginButton = styled24.button`
6909
+ var LoginButton = styled25.button`
6897
6910
  display: flex;
6898
6911
  align-items: center;
6899
6912
  justify-content: center;
@@ -6919,7 +6932,7 @@ var LoginButton = styled24.button`
6919
6932
  color: var(--color-accent, #e6c656);
6920
6933
  }
6921
6934
  `;
6922
- var Divider = styled24.div`
6935
+ var Divider = styled25.div`
6923
6936
  display: flex;
6924
6937
  align-items: center;
6925
6938
  margin: 1.5rem 0;
@@ -6932,13 +6945,13 @@ var Divider = styled24.div`
6932
6945
  background-color: rgba(230, 198, 86, 0.2);
6933
6946
  }
6934
6947
  `;
6935
- var InfoText = styled24.p`
6948
+ var InfoText = styled25.p`
6936
6949
  color: var(--color-text-secondary, #848e9c);
6937
6950
  font-size: 0.875rem;
6938
6951
  text-align: center;
6939
6952
  line-height: 1.5;
6940
6953
  `;
6941
- var AnnotationContainer = styled24.div`
6954
+ var AnnotationContainer = styled25.div`
6942
6955
  display: flex;
6943
6956
  flex-direction: column;
6944
6957
  gap: 0.75rem;
@@ -6946,7 +6959,7 @@ var AnnotationContainer = styled24.div`
6946
6959
  padding-top: 1.5rem;
6947
6960
  border-top: 1px solid rgba(230, 198, 86, 0.2);
6948
6961
  `;
6949
- var Annotation = styled24.div`
6962
+ var Annotation = styled25.div`
6950
6963
  display: flex;
6951
6964
  align-items: flex-start;
6952
6965
  gap: 1rem;
@@ -6961,22 +6974,22 @@ var Annotation = styled24.div`
6961
6974
  color: var(--color-accent, #e6c656);
6962
6975
  }
6963
6976
  `;
6964
- var AnnotationText = styled24.span`
6977
+ var AnnotationText = styled25.span`
6965
6978
  flex: 1;
6966
6979
  line-height: 1.4;
6967
6980
  `;
6968
- var AnnotationLabel = styled24.span`
6981
+ var AnnotationLabel = styled25.span`
6969
6982
  color: var(--color-text, #eaecef);
6970
6983
  font-weight: 500;
6971
6984
  margin-right: 0.25rem;
6972
6985
  `;
6973
- var EmailFormContainer = styled24.div`
6986
+ var EmailFormContainer = styled25.div`
6974
6987
  display: flex;
6975
6988
  flex-direction: column;
6976
6989
  gap: 1rem;
6977
6990
  margin-bottom: 1.5rem;
6978
6991
  `;
6979
- var EmailInput = styled24.input`
6992
+ var EmailInput = styled25.input`
6980
6993
  width: 100%;
6981
6994
  padding: 1rem 1.25rem;
6982
6995
  background-color: var(--color-background-light, #1a1a1a);
@@ -6995,12 +7008,12 @@ var EmailInput = styled24.input`
6995
7008
  color: var(--color-text-secondary, #848e9c);
6996
7009
  }
6997
7010
  `;
6998
- var OTPContainer = styled24.div`
7011
+ var OTPContainer = styled25.div`
6999
7012
  display: flex;
7000
7013
  gap: 0.5rem;
7001
7014
  justify-content: center;
7002
7015
  `;
7003
- var OTPInput = styled24.input`
7016
+ var OTPInput = styled25.input`
7004
7017
  width: 48px;
7005
7018
  height: 56px;
7006
7019
  text-align: center;
@@ -7018,7 +7031,7 @@ var OTPInput = styled24.input`
7018
7031
  box-shadow: 0 0 0 2px rgba(230, 198, 86, 0.2);
7019
7032
  }
7020
7033
  `;
7021
- var SubmitButton = styled24.button`
7034
+ var SubmitButton = styled25.button`
7022
7035
  width: 100%;
7023
7036
  padding: 0.85rem;
7024
7037
  background-color: var(--color-accent, #e6c656);
@@ -7041,7 +7054,7 @@ var SubmitButton = styled24.button`
7041
7054
  cursor: not-allowed;
7042
7055
  }
7043
7056
  `;
7044
- var BackButton = styled24.button`
7057
+ var BackButton = styled25.button`
7045
7058
  background: none;
7046
7059
  border: none;
7047
7060
  color: var(--color-text-secondary, #848e9c);
@@ -7056,13 +7069,13 @@ var BackButton = styled24.button`
7056
7069
  color: var(--color-accent, #e6c656);
7057
7070
  }
7058
7071
  `;
7059
- var StatusMessage = styled24.p`
7072
+ var StatusMessage = styled25.p`
7060
7073
  color: ${(props) => props.$error ? "#f6465d" : "#0ecb81"};
7061
7074
  font-size: 0.875rem;
7062
7075
  text-align: center;
7063
7076
  margin-top: 0.5rem;
7064
7077
  `;
7065
- var OnboardingStepContainer = styled24.div`
7078
+ var OnboardingStepContainer = styled25.div`
7066
7079
  display: flex;
7067
7080
  flex-direction: column;
7068
7081
  align-items: center;
@@ -7070,25 +7083,25 @@ var OnboardingStepContainer = styled24.div`
7070
7083
  padding: 0.25rem 0;
7071
7084
  gap: 0.5rem;
7072
7085
  `;
7073
- var OnboardingHeading = styled24.h2`
7086
+ var OnboardingHeading = styled25.h2`
7074
7087
  font-size: 1.2rem;
7075
7088
  font-weight: 600;
7076
7089
  color: var(--color-text, #eaecef);
7077
7090
  margin: 0;
7078
7091
  `;
7079
- var OnboardingSubtext = styled24.p`
7092
+ var OnboardingSubtext = styled25.p`
7080
7093
  font-size: 0.95rem;
7081
7094
  color: var(--color-text-secondary, #848e9c);
7082
7095
  line-height: 1.6;
7083
7096
  margin-bottom: 2rem;
7084
7097
  `;
7085
- var OnboardingButtonGroup = styled24.div`
7098
+ var OnboardingButtonGroup = styled25.div`
7086
7099
  display: flex;
7087
7100
  flex-direction: column;
7088
7101
  gap: 0.75rem;
7089
7102
  width: 100%;
7090
7103
  `;
7091
- var OnboardingSkipButton = styled24.button`
7104
+ var OnboardingSkipButton = styled25.button`
7092
7105
  width: 100%;
7093
7106
  padding: 0.75rem 0.9rem;
7094
7107
  background-color: rgba(255, 255, 255, 0.05);
@@ -7105,7 +7118,7 @@ var OnboardingSkipButton = styled24.button`
7105
7118
  color: var(--color-text, #eaecef);
7106
7119
  }
7107
7120
  `;
7108
- var ModalOptionCard = styled24.button`
7121
+ var ModalOptionCard = styled25.button`
7109
7122
  display: flex;
7110
7123
  align-items: center;
7111
7124
  gap: 1rem;
@@ -7128,7 +7141,7 @@ var ModalOptionCard = styled24.button`
7128
7141
  cursor: not-allowed;
7129
7142
  }
7130
7143
  `;
7131
- var FundingPopupContainer = styled24.div`
7144
+ var FundingPopupContainer = styled25.div`
7132
7145
  background-color: var(--color-background, #0a0a0a);
7133
7146
  border: 1px solid rgba(230, 198, 86, 0.3);
7134
7147
  border-radius: var(--border-radius, 12px);
@@ -7156,7 +7169,7 @@ var FundingPopupContainer = styled24.div`
7156
7169
  max-width: 95%;
7157
7170
  }
7158
7171
  `;
7159
- var TransakWidgetContainer = styled24.div`
7172
+ var TransakWidgetContainer = styled25.div`
7160
7173
  width: 100%;
7161
7174
  height: 700px;
7162
7175
  display: flex;
@@ -7168,7 +7181,7 @@ var TransakWidgetContainer = styled24.div`
7168
7181
  height: 600px;
7169
7182
  }
7170
7183
  `;
7171
- var TransakIframe = styled24.iframe`
7184
+ var TransakIframe = styled25.iframe`
7172
7185
  width: 100%;
7173
7186
  height: 100%;
7174
7187
  border: none;
@@ -7505,7 +7518,7 @@ var PropertyCompareBar = React5.forwardRef(
7505
7518
  }
7506
7519
  );
7507
7520
  PropertyCompareBar.displayName = "PropertyCompareBar";
7508
- var PropertySelectorContainer = styled24.div`
7521
+ var PropertySelectorContainer = styled25.div`
7509
7522
  display: flex;
7510
7523
  align-items: center;
7511
7524
  justify-content: space-between;
@@ -7559,7 +7572,7 @@ var PropertySelectorContainer = styled24.div`
7559
7572
  `};
7560
7573
  }
7561
7574
  `;
7562
- var PropertySelector = styled24.div`
7575
+ var PropertySelector = styled25.div`
7563
7576
  position: relative;
7564
7577
  display: flex;
7565
7578
  align-items: center;
@@ -7573,7 +7586,7 @@ var PropertySelector = styled24.div`
7573
7586
  }
7574
7587
  }
7575
7588
  `;
7576
- var PropertyAddress = styled24.div`
7589
+ var PropertyAddress = styled25.div`
7577
7590
  font-size: 1.125rem;
7578
7591
  font-weight: 600;
7579
7592
  display: flex;
@@ -7594,7 +7607,7 @@ var PropertyAddress = styled24.div`
7594
7607
  white-space: normal;
7595
7608
  }
7596
7609
  `;
7597
- var PropertySelectorDropdown = styled24.div`
7610
+ var PropertySelectorDropdown = styled25.div`
7598
7611
  position: absolute;
7599
7612
  top: calc(100% + 12px);
7600
7613
  left: 0;
@@ -7614,7 +7627,7 @@ var PropertySelectorDropdown = styled24.div`
7614
7627
  to { opacity: 1; transform: translateY(0); }
7615
7628
  }
7616
7629
  `;
7617
- var PropertySelectorOption = styled24.div`
7630
+ var PropertySelectorOption = styled25.div`
7618
7631
  padding: 1.25rem 1.5rem;
7619
7632
  transition: all 0.2s ease;
7620
7633
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
@@ -7640,13 +7653,13 @@ var PropertySelectorOption = styled24.div`
7640
7653
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0%, transparent 100%);
7641
7654
  }
7642
7655
  `;
7643
- var PropertySelectorName = styled24.div`
7656
+ var PropertySelectorName = styled25.div`
7644
7657
  font-weight: 600;
7645
7658
  font-size: 1rem;
7646
7659
  color: #ffffff;
7647
7660
  margin-bottom: 0.15rem;
7648
7661
  `;
7649
- var PropertySelectorSubtitle = styled24.div`
7662
+ var PropertySelectorSubtitle = styled25.div`
7650
7663
  font-size: 0.875rem;
7651
7664
  color: rgba(255, 255, 255, 0.5);
7652
7665
  span {
@@ -7655,7 +7668,7 @@ var PropertySelectorSubtitle = styled24.div`
7655
7668
  font-size: 0.75rem;
7656
7669
  }
7657
7670
  `;
7658
- var PropertyValueBlock = styled24.div`
7671
+ var PropertyValueBlock = styled25.div`
7659
7672
  display: flex;
7660
7673
  align-items: center;
7661
7674
  gap: 0.5rem;
@@ -7723,7 +7736,7 @@ var PropertyValueBlock = styled24.div`
7723
7736
  white-space: normal;
7724
7737
  }
7725
7738
  `;
7726
- var PropertyValueLabel = styled24.span`
7739
+ var PropertyValueLabel = styled25.span`
7727
7740
  font-size: 0.7rem;
7728
7741
  color: var(--color-text-secondary, rgba(255, 255, 255, 0.6));
7729
7742
  text-transform: uppercase;
@@ -7734,7 +7747,7 @@ var PropertyValueLabel = styled24.span`
7734
7747
  letter-spacing: 0.4px;
7735
7748
  }
7736
7749
  `;
7737
- var PropertyValueAmount = styled24.span`
7750
+ var PropertyValueAmount = styled25.span`
7738
7751
  font-size: 1.1rem;
7739
7752
  font-weight: 600;
7740
7753
  color: #fff;
@@ -7743,7 +7756,7 @@ var PropertyValueAmount = styled24.span`
7743
7756
  font-size: 0.95rem;
7744
7757
  }
7745
7758
  `;
7746
- var PropertyValueChange = styled24.span`
7759
+ var PropertyValueChange = styled25.span`
7747
7760
  font-size: 0.75rem;
7748
7761
  font-weight: 500;
7749
7762
  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)"};
@@ -7752,7 +7765,7 @@ var PropertyValueChange = styled24.span`
7752
7765
  font-size: 0.65rem;
7753
7766
  }
7754
7767
  `;
7755
- var PriceBlock2 = styled24.div`
7768
+ var PriceBlock2 = styled25.div`
7756
7769
  display: none;
7757
7770
 
7758
7771
  ${({ $variant }) => $variant === "pill" && css`
@@ -7767,13 +7780,13 @@ var PriceBlock2 = styled24.div`
7767
7780
  }
7768
7781
  `}
7769
7782
  `;
7770
- var PriceAmount = styled24.span`
7783
+ var PriceAmount = styled25.span`
7771
7784
  font-size: 1.6rem;
7772
7785
  font-weight: 600;
7773
7786
  color: #fff;
7774
7787
  letter-spacing: 0.2px;
7775
7788
  `;
7776
- var PriceChange = styled24.span`
7789
+ var PriceChange = styled25.span`
7777
7790
  font-size: 0.85rem;
7778
7791
  font-weight: 500;
7779
7792
  display: inline-flex;
@@ -7908,7 +7921,7 @@ function GalleryMapSection({
7908
7921
  ] })
7909
7922
  ] });
7910
7923
  }
7911
- var Row = styled24.div`
7924
+ var Row = styled25.div`
7912
7925
  display: grid;
7913
7926
  grid-template-columns: 2fr 1fr;
7914
7927
  gap: 1.5rem;
@@ -7919,14 +7932,14 @@ var Row = styled24.div`
7919
7932
  width: 100%;
7920
7933
  @media (max-width: 1024px) { grid-template-columns: 1fr; }
7921
7934
  `;
7922
- var PanelBase = styled24.div`
7935
+ var PanelBase = styled25.div`
7923
7936
  background: var(--color-card-darker, #111);
7924
7937
  border-radius: 8px;
7925
7938
  padding: 1rem;
7926
7939
  display: flex;
7927
7940
  flex-direction: column;
7928
7941
  `;
7929
- var PanelHeader = styled24.div`
7942
+ var PanelHeader = styled25.div`
7930
7943
  display: flex;
7931
7944
  justify-content: space-between;
7932
7945
  align-items: center;
@@ -7941,32 +7954,32 @@ var PanelHeader = styled24.div`
7941
7954
  }
7942
7955
  span { font-size: 0.75rem; color: var(--color-text-secondary); }
7943
7956
  `;
7944
- var GalleryPanel = styled24(PanelBase)`
7957
+ var GalleryPanel = styled25(PanelBase)`
7945
7958
  min-width: 0; overflow: hidden;
7946
7959
  `;
7947
- var Carousel = styled24.div`
7960
+ var Carousel = styled25.div`
7948
7961
  position: relative; width: 100%; overflow: hidden; border-radius: 8px;
7949
7962
  `;
7950
- var VideoOverlay = styled24.div`
7963
+ var VideoOverlay = styled25.div`
7951
7964
  position: absolute; inset: 0; z-index: 3; background: #000; border-radius: 8px;
7952
7965
  display: flex; align-items: center; justify-content: center;
7953
7966
  `;
7954
- var Track = styled24.div`
7967
+ var Track = styled25.div`
7955
7968
  display: flex; transition: transform 0.4s ease;
7956
7969
  `;
7957
- var Slide = styled24.div`
7970
+ var Slide = styled25.div`
7958
7971
  min-width: 100%; position: relative; cursor: pointer;
7959
7972
  img { width: 100%; height: 315px; object-fit: cover; border-radius: 8px; }
7960
7973
  @media (max-width: 768px) { img { height: 155px; } }
7961
7974
  `;
7962
- var SlideCaption = styled24.div`
7975
+ var SlideCaption = styled25.div`
7963
7976
  position: absolute; bottom: 0; left: 0; right: 0; padding: 1rem;
7964
7977
  background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
7965
7978
  border-radius: 0 0 8px 8px;
7966
7979
  h4 { margin: 0; font-size: 0.95rem; font-weight: 600; color: #fff; }
7967
7980
  p { margin: 0.25rem 0 0; font-size: 0.75rem; color: rgba(255,255,255,0.7); }
7968
7981
  `;
7969
- var CarouselButton = styled24.button`
7982
+ var CarouselButton = styled25.button`
7970
7983
  position: absolute; top: 50%; transform: translateY(-50%);
7971
7984
  background: rgba(0,0,0,0.8); border: 2px solid rgba(255,255,255,0.3);
7972
7985
  color: white; width: 56px; height: 56px; border-radius: 50%;
@@ -7977,30 +7990,30 @@ var CarouselButton = styled24.button`
7977
7990
  svg { width: 28px; height: 28px; stroke: #fff; }
7978
7991
  @media (max-width: 768px) { width: 36px; height: 36px; svg { width: 18px; height: 18px; } }
7979
7992
  `;
7980
- var ThumbStrip = styled24.div`
7993
+ var ThumbStrip = styled25.div`
7981
7994
  display: flex; align-items: center; gap: 0; margin-top: 1rem;
7982
7995
  `;
7983
- var ThumbScroll = styled24.div`
7996
+ var ThumbScroll = styled25.div`
7984
7997
  display: flex; gap: 0.5rem; overflow-x: auto; flex: 1; min-width: 0;
7985
7998
  padding-bottom: 0.5rem;
7986
7999
  scrollbar-width: none;
7987
8000
  &::-webkit-scrollbar { display: none; }
7988
8001
  `;
7989
- var Thumbnail = styled24.div`
8002
+ var Thumbnail = styled25.div`
7990
8003
  min-width: 60px; height: 45px; border-radius: 4px; overflow: hidden;
7991
8004
  cursor: pointer; border: 2px solid transparent; opacity: 0.6;
7992
8005
  transition: all 0.2s ease; flex-shrink: 0;
7993
8006
  &[data-active='true'] { border-color: #D4AF37; opacity: 1; }
7994
8007
  img { width: 100%; height: 100%; object-fit: cover; }
7995
8008
  `;
7996
- var ThumbDivider = styled24.div`
8009
+ var ThumbDivider = styled25.div`
7997
8010
  width: 1px; height: 36px; background: rgba(255,255,255,0.15);
7998
8011
  margin: 0 0.5rem; flex-shrink: 0; align-self: center;
7999
8012
  `;
8000
- var FixedButtons = styled24.div`
8013
+ var FixedButtons = styled25.div`
8001
8014
  display: flex; gap: 0.4rem; flex-shrink: 0; align-self: center;
8002
8015
  `;
8003
- var FixedBtn = styled24.button`
8016
+ var FixedBtn = styled25.button`
8004
8017
  height: 45px; padding: 0 0.75rem; border-radius: 4px;
8005
8018
  display: flex; align-items: center; justify-content: center; gap: 0.4rem;
8006
8019
  cursor: pointer; transition: all 0.2s ease;
@@ -8009,7 +8022,7 @@ var FixedBtn = styled24.button`
8009
8022
  color: ${(p) => p.$active ? "#D4AF37" : "rgba(255,255,255,0.7)"};
8010
8023
  font-size: 0.75rem; font-weight: 500; letter-spacing: 0.02em; white-space: nowrap;
8011
8024
  `;
8012
- var CategoryRow = styled24.div`
8025
+ var CategoryRow = styled25.div`
8013
8026
  display: flex; justify-content: center; gap: 0.5rem; margin-top: 0.75rem;
8014
8027
  overflow-x: auto; -webkit-overflow-scrolling: touch;
8015
8028
  scrollbar-width: none; &::-webkit-scrollbar { display: none; }
@@ -8021,14 +8034,14 @@ var CategoryRow = styled24.div`
8021
8034
  }
8022
8035
  button[data-active='true'] { background: rgba(212,175,55,0.2); border-color: #D4AF37; color: #D4AF37; }
8023
8036
  `;
8024
- var MapPanel = styled24(PanelBase)`
8037
+ var MapPanel = styled25(PanelBase)`
8025
8038
  min-height: 280px; padding: 1.5rem;
8026
8039
  min-width: 0; overflow: hidden;
8027
8040
  `;
8028
- var MapFrame = styled24.div`
8041
+ var MapFrame = styled25.div`
8029
8042
  flex: 1; border-radius: 6px; overflow: hidden; min-height: 280px; position: relative;
8030
8043
  `;
8031
- var IframeShield = styled24.div`
8044
+ var IframeShield = styled25.div`
8032
8045
  position: absolute; inset: 0; z-index: 1; cursor: pointer;
8033
8046
  `;
8034
8047
  var BedIcon = /* @__PURE__ */ jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
@@ -8241,43 +8254,43 @@ function PropertyOverview({
8241
8254
  ] })
8242
8255
  ] });
8243
8256
  }
8244
- var TopGrid = styled24.div`
8257
+ var TopGrid = styled25.div`
8245
8258
  display: grid;
8246
8259
  grid-template-columns: 1fr 1fr;
8247
8260
  gap: 2rem;
8248
8261
  margin-bottom: 2rem;
8249
8262
  @media (max-width: 768px) { grid-template-columns: 1fr; }
8250
8263
  `;
8251
- var Panel = styled24.div`
8264
+ var Panel = styled25.div`
8252
8265
  background: #111;
8253
8266
  border-radius: 12px;
8254
8267
  padding: 1.5rem;
8255
8268
  `;
8256
- var PanelHeading = styled24.h2`
8269
+ var PanelHeading = styled25.h2`
8257
8270
  font-size: 1.25rem;
8258
8271
  margin-bottom: 1rem;
8259
8272
  color: #fff;
8260
8273
  font-weight: 600;
8261
8274
  `;
8262
- var DescriptionWrap = styled24.div`
8275
+ var DescriptionWrap = styled25.div`
8263
8276
  position: relative;
8264
8277
  max-height: ${(p) => p.$expanded ? "2000px" : "150px"};
8265
8278
  overflow: hidden;
8266
8279
  transition: max-height 0.3s ease;
8267
8280
  `;
8268
- var DescFade = styled24.div`
8281
+ var DescFade = styled25.div`
8269
8282
  position: absolute;
8270
8283
  bottom: 0; left: 0; right: 0;
8271
8284
  height: 60px;
8272
8285
  background: linear-gradient(to bottom, rgba(17,17,17,0), #111);
8273
8286
  pointer-events: none;
8274
8287
  `;
8275
- var ButtonRow = styled24.div`
8288
+ var ButtonRow = styled25.div`
8276
8289
  margin-top: 1.5rem;
8277
8290
  display: flex;
8278
8291
  gap: 0.75rem;
8279
8292
  `;
8280
- var OutlineBtn = styled24.button`
8293
+ var OutlineBtn = styled25.button`
8281
8294
  padding: 0.55rem 1.35rem;
8282
8295
  border-radius: 10px;
8283
8296
  border: 1px solid rgba(255,255,255,0.28);
@@ -8287,7 +8300,7 @@ var OutlineBtn = styled24.button`
8287
8300
  font-weight: 600;
8288
8301
  cursor: pointer;
8289
8302
  `;
8290
- var PrimaryBtn = styled24.button`
8303
+ var PrimaryBtn = styled25.button`
8291
8304
  padding: 0.75rem 1.5rem;
8292
8305
  border-radius: 4px;
8293
8306
  border: none;
@@ -8297,26 +8310,26 @@ var PrimaryBtn = styled24.button`
8297
8310
  font-weight: 600;
8298
8311
  cursor: pointer;
8299
8312
  `;
8300
- var FinancialGrid = styled24.div`
8313
+ var FinancialGrid = styled25.div`
8301
8314
  display: grid;
8302
8315
  grid-template-columns: 1fr 1fr;
8303
8316
  gap: 0.75rem;
8304
8317
  `;
8305
- var FinancialCard = styled24.div`
8318
+ var FinancialCard = styled25.div`
8306
8319
  background: rgba(255,255,255,0.03);
8307
8320
  border-radius: 10px;
8308
8321
  padding: 1rem 1.25rem;
8309
8322
  border: 1px solid ${(p) => p.$gold ? "rgba(212,175,55,0.3)" : "rgba(255,255,255,0.06)"};
8310
8323
  position: relative;
8311
8324
  `;
8312
- var BadgeSpan = styled24.span`
8325
+ var BadgeSpan = styled25.span`
8313
8326
  position: absolute;
8314
8327
  top: 0.5rem; right: 0.75rem;
8315
8328
  font-size: 0.65rem;
8316
8329
  color: #4CAF50;
8317
8330
  display: flex; align-items: center; gap: 4px;
8318
8331
  `;
8319
- var FinancialLabel = styled24.div`
8332
+ var FinancialLabel = styled25.div`
8320
8333
  font-size: 0.65rem;
8321
8334
  color: ${(p) => p.$gold ? "#D4AF37" : "rgba(255,255,255,0.6)"};
8322
8335
  text-transform: uppercase;
@@ -8324,49 +8337,49 @@ var FinancialLabel = styled24.div`
8324
8337
  margin-bottom: 0.4rem;
8325
8338
  font-weight: 500;
8326
8339
  `;
8327
- var FinancialValue = styled24.div`
8340
+ var FinancialValue = styled25.div`
8328
8341
  font-size: 1.25rem;
8329
8342
  font-weight: 700;
8330
8343
  color: ${(p) => p.$gold ? "#D4AF37" : "#fff"};
8331
8344
  line-height: 1;
8332
8345
  `;
8333
- var AssetDetailsPanel = styled24.div`
8346
+ var AssetDetailsPanel = styled25.div`
8334
8347
  margin-bottom: 2rem; background: #111; border-radius: 12px; padding: 1.5rem;
8335
8348
  `;
8336
- var AssetPanelsGrid = styled24.div`
8349
+ var AssetPanelsGrid = styled25.div`
8337
8350
  display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem;
8338
8351
  @media (max-width: 768px) { grid-template-columns: 1fr; }
8339
8352
  `;
8340
- var MetricsPanel = styled24.div`
8353
+ var MetricsPanel = styled25.div`
8341
8354
  background: rgba(255,255,255,0.03); border-radius: 12px;
8342
8355
  border: 1px solid rgba(255,255,255,0.06); padding: 1.25rem 1.5rem; overflow: hidden;
8343
8356
  `;
8344
- var InfoPanel = styled24(MetricsPanel)``;
8345
- var MetricsPanelTitle = styled24.div`
8357
+ var InfoPanel = styled25(MetricsPanel)``;
8358
+ var MetricsPanelTitle = styled25.div`
8346
8359
  font-size: 0.65rem; color: #D4AF37; text-transform: uppercase;
8347
8360
  letter-spacing: 0.12em; font-weight: 600; margin-bottom: 1rem;
8348
8361
  padding-bottom: 0.75rem; border-bottom: 1px solid rgba(255,255,255,0.06);
8349
8362
  `;
8350
- var LandFloorCard = styled24.div`
8363
+ var LandFloorCard = styled25.div`
8351
8364
  background: linear-gradient(135deg, rgba(212,175,55,0.12), rgba(184,134,11,0.06));
8352
8365
  border-radius: 10px; padding: 0.85rem 1rem;
8353
8366
  border: 1px solid rgba(212,175,55,0.25);
8354
8367
  display: flex; gap: 1rem; margin-bottom: 0.75rem;
8355
8368
  `;
8356
- var MetricLabel = styled24.div`
8369
+ var MetricLabel = styled25.div`
8357
8370
  font-size: 0.65rem; color: #D4AF37; text-transform: uppercase;
8358
8371
  letter-spacing: 0.1em; margin-bottom: 0.4rem; font-weight: 500;
8359
8372
  `;
8360
- var MetricValueRow = styled24.div`
8373
+ var MetricValueRow = styled25.div`
8361
8374
  display: flex; align-items: baseline; gap: 0.25rem;
8362
8375
  `;
8363
- var MetricBig = styled24.span`
8376
+ var MetricBig = styled25.span`
8364
8377
  font-size: 1.5rem; font-weight: 700; color: #D4AF37; line-height: 1;
8365
8378
  `;
8366
- var MetricUnit = styled24.span`
8379
+ var MetricUnit = styled25.span`
8367
8380
  font-size: 0.7rem; color: rgba(212,175,55,0.7); font-weight: 500;
8368
8381
  `;
8369
- var FeaturesGrid = styled24.div`
8382
+ var FeaturesGrid = styled25.div`
8370
8383
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.75rem;
8371
8384
  @media (max-width: 768px) { grid-template-columns: repeat(2, 1fr); }
8372
8385
  `;
@@ -8451,7 +8464,7 @@ function PropertyOffers({ offers }) {
8451
8464
  )) })
8452
8465
  ] });
8453
8466
  }
8454
- var OfferPricePulse = styled24.span`
8467
+ var OfferPricePulse = styled25.span`
8455
8468
  width: 8px;
8456
8469
  height: 8px;
8457
8470
  border-radius: 999px;
@@ -8853,7 +8866,7 @@ function generateMockPastSales() {
8853
8866
  }
8854
8867
  ];
8855
8868
  }
8856
- var FilterButtonsContainer = styled24.div`
8869
+ var FilterButtonsContainer = styled25.div`
8857
8870
  display: flex;
8858
8871
  gap: 0.5rem;
8859
8872
  flex-wrap: wrap;
@@ -8862,7 +8875,7 @@ var FilterButtonsContainer = styled24.div`
8862
8875
  gap: 0.25rem;
8863
8876
  }
8864
8877
  `;
8865
- var FilterButton = styled24.button`
8878
+ var FilterButton = styled25.button`
8866
8879
  background-color: ${(props) => props.$active ? "var(--color-accent, #f0b90b)" : "transparent"};
8867
8880
  color: ${(props) => props.$active ? "#000" : "#fff"};
8868
8881
  border: 1px solid var(--color-accent, #f0b90b);
@@ -8881,7 +8894,7 @@ var FilterButton = styled24.button`
8881
8894
  font-size: 0.75rem;
8882
8895
  }
8883
8896
  `;
8884
- var HistoryContainer = styled24.div`
8897
+ var HistoryContainer = styled25.div`
8885
8898
  display: flex;
8886
8899
  flex-direction: column;
8887
8900
  gap: 1.5rem;
@@ -8898,7 +8911,7 @@ var HistoryContainer = styled24.div`
8898
8911
  z-index: 0;
8899
8912
  }
8900
8913
  `;
8901
- var HistoryPanel = styled24.div`
8914
+ var HistoryPanel = styled25.div`
8902
8915
  margin-bottom: 1.5rem;
8903
8916
  margin-left: 2rem;
8904
8917
  border: 1px solid rgba(240, 185, 11, 0.15);
@@ -8940,7 +8953,7 @@ var HistoryPanel = styled24.div`
8940
8953
  }
8941
8954
  `}
8942
8955
  `;
8943
- var LeaseSection = styled24.div`
8956
+ var LeaseSection = styled25.div`
8944
8957
  margin: 0.3rem 1rem;
8945
8958
  padding: 0.3rem 1rem 0.3rem;
8946
8959
  background-color: rgba(30, 32, 38, 0.2);
@@ -8958,7 +8971,7 @@ var LeaseSection = styled24.div`
8958
8971
  background-color: rgba(255, 255, 255, 0.15);
8959
8972
  }
8960
8973
  `;
8961
- var HistoryRow = styled24.tr`
8974
+ var HistoryRow = styled25.tr`
8962
8975
  background-color: ${(props) => props.$isOwnershipStart ? "rgba(240, 185, 11, 0.05)" : "transparent"};
8963
8976
 
8964
8977
  td {
@@ -8975,7 +8988,7 @@ var HistoryRow = styled24.tr`
8975
8988
  background-color: rgba(255, 255, 255, 0.08);
8976
8989
  }
8977
8990
  `;
8978
- var TypeBadge = styled24.span`
8991
+ var TypeBadge = styled25.span`
8979
8992
  display: inline-block;
8980
8993
  padding: 0.25rem 0.5rem;
8981
8994
  border-radius: 4px;
@@ -9025,13 +9038,13 @@ var TypeBadge = styled24.span`
9025
9038
  font-size: 0.65rem;
9026
9039
  }
9027
9040
  `;
9028
- var PastSalesSection = styled24.div`
9041
+ var PastSalesSection = styled25.div`
9029
9042
  background-color: rgba(30, 32, 38, 0.95);
9030
9043
  border-radius: 8px;
9031
9044
  padding: 1.25rem;
9032
9045
  margin-bottom: 1.5rem;
9033
9046
  `;
9034
- var SalesTable = styled24.table`
9047
+ var SalesTable = styled25.table`
9035
9048
  width: 100%;
9036
9049
  border-collapse: collapse;
9037
9050
  table-layout: fixed;
@@ -9109,13 +9122,13 @@ function PropertyDocuments({ documentsData }) {
9109
9122
  }) })
9110
9123
  ] });
9111
9124
  }
9112
- var Section = styled24.section`
9125
+ var Section = styled25.section`
9113
9126
  background: var(--color-card, rgba(30, 35, 41, 0.8));
9114
9127
  border-radius: 12px;
9115
9128
  padding: 1.5rem;
9116
9129
  margin-bottom: 1.5rem;
9117
9130
  `;
9118
- var SectionHeading = styled24.h2`
9131
+ var SectionHeading = styled25.h2`
9119
9132
  font-size: 0.9rem;
9120
9133
  font-weight: 600;
9121
9134
  padding-bottom: 0.75rem;
@@ -9126,12 +9139,12 @@ var SectionHeading = styled24.h2`
9126
9139
  align-items: center;
9127
9140
  gap: 0.5rem;
9128
9141
  `;
9129
- var DocList = styled24.ul`
9142
+ var DocList = styled25.ul`
9130
9143
  list-style: none;
9131
9144
  padding: 0;
9132
9145
  margin: 0;
9133
9146
  `;
9134
- var DocItem = styled24.li`
9147
+ var DocItem = styled25.li`
9135
9148
  padding: 0.75rem 0;
9136
9149
  border-bottom: 1px solid var(--color-border, rgba(255, 255, 255, 0.1));
9137
9150
 
@@ -9139,7 +9152,7 @@ var DocItem = styled24.li`
9139
9152
  border-bottom: none;
9140
9153
  }
9141
9154
  `;
9142
- var DocLink = styled24.a`
9155
+ var DocLink = styled25.a`
9143
9156
  display: flex;
9144
9157
  align-items: center;
9145
9158
  color: var(--color-text);
@@ -9150,19 +9163,19 @@ var DocLink = styled24.a`
9150
9163
  color: var(--color-accent);
9151
9164
  }
9152
9165
  `;
9153
- var DocItemDisabled = styled24.div`
9166
+ var DocItemDisabled = styled25.div`
9154
9167
  display: flex;
9155
9168
  align-items: center;
9156
9169
  color: var(--color-text-secondary);
9157
9170
  cursor: not-allowed;
9158
9171
  opacity: 0.6;
9159
9172
  `;
9160
- var DocIconWrapper = styled24.span`
9173
+ var DocIconWrapper = styled25.span`
9161
9174
  margin-right: 0.75rem;
9162
9175
  flex-shrink: 0;
9163
9176
  color: var(--color-text-secondary);
9164
9177
  `;
9165
- var ComingSoonBadge = styled24.span`
9178
+ var ComingSoonBadge = styled25.span`
9166
9179
  margin-left: auto;
9167
9180
  padding: 0.25rem 0.5rem;
9168
9181
  background: rgba(212, 175, 55, 0.1);
@@ -9244,13 +9257,13 @@ function PropertyInspectionTimes({
9244
9257
  ] })
9245
9258
  ] });
9246
9259
  }
9247
- var Section2 = styled24.section`
9260
+ var Section2 = styled25.section`
9248
9261
  background: var(--color-card, rgba(30, 35, 41, 0.8));
9249
9262
  border-radius: 12px;
9250
9263
  padding: 1.5rem;
9251
9264
  margin-bottom: 1.5rem;
9252
9265
  `;
9253
- var SectionHeading2 = styled24.h2`
9266
+ var SectionHeading2 = styled25.h2`
9254
9267
  font-size: 0.9rem;
9255
9268
  font-weight: 600;
9256
9269
  padding-bottom: 0.75rem;
@@ -9261,17 +9274,17 @@ var SectionHeading2 = styled24.h2`
9261
9274
  align-items: center;
9262
9275
  gap: 0.5rem;
9263
9276
  `;
9264
- var Intro = styled24.p`
9277
+ var Intro = styled25.p`
9265
9278
  font-size: 0.9rem;
9266
9279
  color: var(--color-text-secondary);
9267
9280
  margin-bottom: 1.5rem;
9268
9281
  `;
9269
- var SlotList = styled24.div`
9282
+ var SlotList = styled25.div`
9270
9283
  display: flex;
9271
9284
  flex-direction: column;
9272
9285
  gap: 0.75rem;
9273
9286
  `;
9274
- var SlotRow = styled24.div`
9287
+ var SlotRow = styled25.div`
9275
9288
  display: flex;
9276
9289
  justify-content: space-between;
9277
9290
  align-items: center;
@@ -9280,27 +9293,27 @@ var SlotRow = styled24.div`
9280
9293
  border-radius: 8px;
9281
9294
  border: 1px solid rgba(255, 255, 255, 0.06);
9282
9295
  `;
9283
- var SlotInfo = styled24.div``;
9284
- var SlotDate = styled24.div`
9296
+ var SlotInfo = styled25.div``;
9297
+ var SlotDate = styled25.div`
9285
9298
  font-size: 0.9rem;
9286
9299
  font-weight: 600;
9287
9300
  color: var(--color-text);
9288
9301
  margin-bottom: 0.25rem;
9289
9302
  `;
9290
- var SlotTime = styled24.div`
9303
+ var SlotTime = styled25.div`
9291
9304
  font-size: 0.8rem;
9292
9305
  color: var(--color-text-secondary);
9293
9306
  `;
9294
- var SlotActions = styled24.div`
9307
+ var SlotActions = styled25.div`
9295
9308
  display: flex;
9296
9309
  align-items: center;
9297
9310
  gap: 1rem;
9298
9311
  `;
9299
- var SpotsLeft = styled24.span`
9312
+ var SpotsLeft = styled25.span`
9300
9313
  font-size: 0.75rem;
9301
9314
  color: ${({ $low }) => $low ? "#f6465d" : "var(--color-text-secondary)"};
9302
9315
  `;
9303
- var BookButton = styled24.button`
9316
+ var BookButton = styled25.button`
9304
9317
  padding: 0.4rem 1rem;
9305
9318
  background: transparent;
9306
9319
  border: 1px solid var(--color-accent, #f0b90b);
@@ -9320,7 +9333,7 @@ var BookButton = styled24.button`
9320
9333
  cursor: not-allowed;
9321
9334
  }
9322
9335
  `;
9323
- var StatusMessage2 = styled24.div`
9336
+ var StatusMessage2 = styled25.div`
9324
9337
  font-size: 0.85rem;
9325
9338
  padding: 0.75rem 1rem;
9326
9339
  border-radius: 6px;
@@ -9328,7 +9341,7 @@ var StatusMessage2 = styled24.div`
9328
9341
  background: ${({ $error }) => $error ? "rgba(246,70,93,0.08)" : "rgba(255,255,255,0.03)"};
9329
9342
  border: 1px solid ${({ $error }) => $error ? "rgba(246,70,93,0.2)" : "rgba(255,255,255,0.06)"};
9330
9343
  `;
9331
- var RetryButton = styled24.button`
9344
+ var RetryButton = styled25.button`
9332
9345
  margin-left: 0.5rem;
9333
9346
  text-decoration: underline;
9334
9347
  cursor: pointer;
@@ -9336,13 +9349,13 @@ var RetryButton = styled24.button`
9336
9349
  border: none;
9337
9350
  color: inherit;
9338
9351
  `;
9339
- var Disclaimer = styled24.p`
9352
+ var Disclaimer = styled25.p`
9340
9353
  font-size: 0.75rem;
9341
9354
  color: var(--color-text-secondary);
9342
9355
  margin-top: 0.5rem;
9343
9356
  text-align: center;
9344
9357
  `;
9345
- var SignInPrompt = styled24.div`
9358
+ var SignInPrompt = styled25.div`
9346
9359
  display: flex;
9347
9360
  align-items: center;
9348
9361
  justify-content: space-between;
@@ -9351,18 +9364,18 @@ var SignInPrompt = styled24.div`
9351
9364
  border-radius: 8px;
9352
9365
  border: 1px solid rgba(255, 255, 255, 0.06);
9353
9366
  `;
9354
- var SignInText = styled24.div``;
9355
- var SignInTitle = styled24.div`
9367
+ var SignInText = styled25.div``;
9368
+ var SignInTitle = styled25.div`
9356
9369
  font-size: 0.95rem;
9357
9370
  font-weight: 600;
9358
9371
  color: var(--color-text);
9359
9372
  margin-bottom: 0.25rem;
9360
9373
  `;
9361
- var SignInSub = styled24.div`
9374
+ var SignInSub = styled25.div`
9362
9375
  font-size: 0.8rem;
9363
9376
  color: var(--color-text-secondary);
9364
9377
  `;
9365
- var SignInButton = styled24.button`
9378
+ var SignInButton = styled25.button`
9366
9379
  padding: 0.5rem 1.25rem;
9367
9380
  background: transparent;
9368
9381
  border: 1px solid var(--color-accent, #f0b90b);
@@ -9454,10 +9467,10 @@ function AssetSelectorBar({
9454
9467
  }) })
9455
9468
  ] }) });
9456
9469
  }
9457
- var AssetSelectorWrapper = styled24.div`
9470
+ var AssetSelectorWrapper = styled25.div`
9458
9471
  width: 100%;
9459
9472
  `;
9460
- var IPOAssetSelector = styled24.div`
9473
+ var IPOAssetSelector = styled25.div`
9461
9474
  position: relative;
9462
9475
  display: flex;
9463
9476
  justify-content: space-between;
@@ -9482,7 +9495,7 @@ var IPOAssetSelector = styled24.div`
9482
9495
  padding: 0.6rem 0.75rem;
9483
9496
  }
9484
9497
  `;
9485
- var AssetSelectorDropdown = styled24.div`
9498
+ var AssetSelectorDropdown = styled25.div`
9486
9499
  display: flex;
9487
9500
  align-items: center;
9488
9501
  cursor: pointer;
@@ -9491,7 +9504,7 @@ var AssetSelectorDropdown = styled24.div`
9491
9504
  transition: all 0.2s ease;
9492
9505
  &:hover { background-color: rgba(255,255,255,0.05); }
9493
9506
  `;
9494
- var AssetName = styled24.div`
9507
+ var AssetName = styled25.div`
9495
9508
  display: flex;
9496
9509
  align-items: center;
9497
9510
  font-weight: 600;
@@ -9510,7 +9523,7 @@ var AssetName = styled24.div`
9510
9523
  svg { margin-left: 0.4rem; width: 16px; height: 16px; }
9511
9524
  }
9512
9525
  `;
9513
- var SelectorMetrics = styled24.div`
9526
+ var SelectorMetrics = styled25.div`
9514
9527
  display: flex;
9515
9528
  align-items: center;
9516
9529
  gap: 1rem;
@@ -9535,7 +9548,7 @@ var SelectorMetrics = styled24.div`
9535
9548
  gap: 0.5rem;
9536
9549
  }
9537
9550
  `;
9538
- var MetricLabel2 = styled24.span`
9551
+ var MetricLabel2 = styled25.span`
9539
9552
  font-size: 0.75rem;
9540
9553
  color: var(--color-text-secondary);
9541
9554
  text-transform: uppercase;
@@ -9548,7 +9561,7 @@ var MetricLabel2 = styled24.span`
9548
9561
  margin-right: 0.35rem;
9549
9562
  }
9550
9563
  `;
9551
- var MetricValue = styled24.span`
9564
+ var MetricValue = styled25.span`
9552
9565
  font-size: 1.25rem;
9553
9566
  font-weight: 700;
9554
9567
  color: ${(p) => p.$accent ? "#D4AF37" : "#fff"};
@@ -9561,7 +9574,7 @@ var MetricValue = styled24.span`
9561
9574
  font-size: 0.95rem;
9562
9575
  }
9563
9576
  `;
9564
- var MetricChange = styled24.span`
9577
+ var MetricChange = styled25.span`
9565
9578
  font-size: 0.85rem;
9566
9579
  font-weight: 600;
9567
9580
  color: ${(p) => p.$positive ? "var(--color-positive, #0ecb81)" : "var(--color-negative, #f6465d)"};
@@ -9573,12 +9586,12 @@ var MetricChange = styled24.span`
9573
9586
  font-size: 0.75rem;
9574
9587
  }
9575
9588
  `;
9576
- var Separator = styled24.span`
9589
+ var Separator = styled25.span`
9577
9590
  font-size: 1rem;
9578
9591
  color: rgba(255,255,255,0.2);
9579
9592
  font-weight: 300;
9580
9593
  `;
9581
- var IPODropdown = styled24.div`
9594
+ var IPODropdown = styled25.div`
9582
9595
  position: absolute;
9583
9596
  top: calc(100% + 12px);
9584
9597
  left: 0;
@@ -9601,7 +9614,7 @@ var IPODropdown = styled24.div`
9601
9614
  to { opacity: 1; transform: translateY(0); }
9602
9615
  }
9603
9616
  `;
9604
- var IPOOption = styled24.div`
9617
+ var IPOOption = styled25.div`
9605
9618
  padding: 1.25rem 1.5rem;
9606
9619
  transition: all 0.2s ease;
9607
9620
  border-bottom: 1px solid rgba(255,255,255,0.03);
@@ -9620,13 +9633,13 @@ var IPOOption = styled24.div`
9620
9633
  &:hover { background: linear-gradient(90deg, rgba(255,255,255,0.06) 0%, transparent 100%); }
9621
9634
  ${(p) => p.$selected && `background: linear-gradient(90deg, rgba(56,97,251,0.15) 0%, transparent 100%);`}
9622
9635
  `;
9623
- var IPOOptionName = styled24.div`
9636
+ var IPOOptionName = styled25.div`
9624
9637
  font-weight: 600;
9625
9638
  font-size: 1rem;
9626
9639
  color: #ffffff;
9627
9640
  margin-bottom: 0.35rem;
9628
9641
  `;
9629
- var IPOOptionLocation = styled24.div`
9642
+ var IPOOptionLocation = styled25.div`
9630
9643
  font-size: 0.875rem;
9631
9644
  color: rgba(255,255,255,0.5);
9632
9645
  span {
@@ -9785,7 +9798,7 @@ function OfferingProgressCard({
9785
9798
  ] })
9786
9799
  ] });
9787
9800
  }
9788
- var Container = styled24.div`
9801
+ var Container = styled25.div`
9789
9802
  background-color: var(--color-card-darker, #111);
9790
9803
  border-radius: 8px;
9791
9804
  padding: 1.5rem;
@@ -9798,7 +9811,7 @@ var Container = styled24.div`
9798
9811
  padding: 1rem;
9799
9812
  }
9800
9813
  `;
9801
- var Header2 = styled24.div`
9814
+ var Header2 = styled25.div`
9802
9815
  display: flex;
9803
9816
  align-items: center;
9804
9817
  justify-content: space-between;
@@ -9815,7 +9828,7 @@ var Header2 = styled24.div`
9815
9828
  margin: 0;
9816
9829
  }
9817
9830
  `;
9818
- var StatusSpan = styled24.span`
9831
+ var StatusSpan = styled25.span`
9819
9832
  display: flex;
9820
9833
  align-items: center;
9821
9834
  gap: 0.35rem;
@@ -9831,7 +9844,7 @@ var StatusSpan = styled24.span`
9831
9844
  letter-spacing: 0.05em;
9832
9845
  }
9833
9846
  `;
9834
- var StatusDot = styled24.span`
9847
+ var StatusDot = styled25.span`
9835
9848
  width: 6px;
9836
9849
  height: 6px;
9837
9850
  border-radius: 50%;
@@ -9843,10 +9856,10 @@ var StatusDot = styled24.span`
9843
9856
  100% { opacity: 0.4; }
9844
9857
  }
9845
9858
  `;
9846
- var PreLiveBody = styled24.div`
9859
+ var PreLiveBody = styled25.div`
9847
9860
  padding: 1.25rem 0;
9848
9861
  `;
9849
- var PreLiveStatus = styled24.div`
9862
+ var PreLiveStatus = styled25.div`
9850
9863
  font-size: 0.7rem;
9851
9864
  color: ${(p) => p.$statusColor};
9852
9865
  text-transform: uppercase;
@@ -9855,33 +9868,33 @@ var PreLiveStatus = styled24.div`
9855
9868
  text-align: center;
9856
9869
  margin-bottom: 1.25rem;
9857
9870
  `;
9858
- var MetricsRow = styled24.div`
9871
+ var MetricsRow = styled25.div`
9859
9872
  display: flex;
9860
9873
  justify-content: space-between;
9861
9874
  align-items: flex-start;
9862
9875
  border-top: 1px solid rgba(255,255,255,0.06);
9863
9876
  padding-top: 1rem;
9864
9877
  `;
9865
- var MetricLabel3 = styled24.div`
9878
+ var MetricLabel3 = styled25.div`
9866
9879
  font-size: 0.6rem;
9867
9880
  color: var(--color-text-secondary);
9868
9881
  text-transform: uppercase;
9869
9882
  letter-spacing: 0.1em;
9870
9883
  margin-bottom: 0.25rem;
9871
9884
  `;
9872
- var MetricValue2 = styled24.div`
9885
+ var MetricValue2 = styled25.div`
9873
9886
  font-size: 1.5rem;
9874
9887
  font-weight: 700;
9875
9888
  color: ${(p) => p.$accent ? "#D4AF37" : "#fff"};
9876
9889
  `;
9877
- var CountdownCenter = styled24.div`
9890
+ var CountdownCenter = styled25.div`
9878
9891
  text-align: center;
9879
9892
  display: flex;
9880
9893
  flex-direction: column;
9881
9894
  align-items: center;
9882
9895
  margin-bottom: 1.25rem;
9883
9896
  `;
9884
- var CountdownLabel = styled24.div`
9897
+ var CountdownLabel = styled25.div`
9885
9898
  font-size: 0.7rem;
9886
9899
  color: #D4AF37;
9887
9900
  text-transform: uppercase;
@@ -9889,13 +9902,13 @@ var CountdownLabel = styled24.div`
9889
9902
  margin-bottom: 0.5rem;
9890
9903
  font-weight: 600;
9891
9904
  `;
9892
- var CountdownDigits = styled24.div`
9905
+ var CountdownDigits = styled25.div`
9893
9906
  display: flex;
9894
9907
  align-items: baseline;
9895
9908
  justify-content: center;
9896
9909
  gap: 0.35rem;
9897
9910
  `;
9898
- var CountdownNumber = styled24.span`
9911
+ var CountdownNumber = styled25.span`
9899
9912
  font-size: 2.5rem;
9900
9913
  font-weight: 700;
9901
9914
  font-family: monospace;
@@ -9904,26 +9917,26 @@ var CountdownNumber = styled24.span`
9904
9917
  font-size: 1.75rem;
9905
9918
  }
9906
9919
  `;
9907
- var CountdownUnitLabel = styled24.span`
9920
+ var CountdownUnitLabel = styled25.span`
9908
9921
  font-size: 0.85rem;
9909
9922
  color: var(--color-text-secondary);
9910
9923
  `;
9911
- var CountdownSeparator = styled24.span`
9924
+ var CountdownSeparator = styled25.span`
9912
9925
  color: rgba(255,255,255,0.2);
9913
9926
  margin: 0 0.2rem;
9914
9927
  font-size: 1.5rem;
9915
9928
  `;
9916
- var LiveBody = styled24.div`
9929
+ var LiveBody = styled25.div`
9917
9930
  display: flex;
9918
9931
  flex-direction: column;
9919
9932
  gap: 1rem;
9920
9933
  `;
9921
- var LiveTopRow = styled24.div`
9934
+ var LiveTopRow = styled25.div`
9922
9935
  display: flex;
9923
9936
  justify-content: space-between;
9924
9937
  align-items: flex-start;
9925
9938
  `;
9926
- var LiveLabel = styled24.div`
9939
+ var LiveLabel = styled25.div`
9927
9940
  font-size: 0.875rem;
9928
9941
  color: var(--color-text-secondary);
9929
9942
  margin-bottom: 0.25rem;
@@ -9936,7 +9949,7 @@ var LiveLabel = styled24.div`
9936
9949
  opacity: 0.7;
9937
9950
  }
9938
9951
  `;
9939
- var LivePercent = styled24.div`
9952
+ var LivePercent = styled25.div`
9940
9953
  font-size: 2rem;
9941
9954
  font-weight: 600;
9942
9955
  color: #D4AF37;
@@ -9949,14 +9962,14 @@ var LivePercent = styled24.div`
9949
9962
  opacity: 0.8;
9950
9963
  }
9951
9964
  `;
9952
- var UnitsValue = styled24.div`
9965
+ var UnitsValue = styled25.div`
9953
9966
  font-size: clamp(1.25rem, 4vw, 1.75rem);
9954
9967
  font-weight: 700;
9955
9968
  white-space: nowrap;
9956
9969
  span { color: #D4AF37; }
9957
9970
  small { color: rgba(255,255,255,0.3); font-weight: 700; margin-left: 0.35rem; font-size: inherit; }
9958
9971
  `;
9959
- var ProgressBarOuter = styled24.div`
9972
+ var ProgressBarOuter = styled25.div`
9960
9973
  width: 100%;
9961
9974
  height: 12px;
9962
9975
  background: rgba(255,255,255,0.1);
@@ -9964,23 +9977,23 @@ var ProgressBarOuter = styled24.div`
9964
9977
  overflow: hidden;
9965
9978
  position: relative;
9966
9979
  `;
9967
- var ProgressBarInner = styled24.div`
9980
+ var ProgressBarInner = styled25.div`
9968
9981
  height: 100%;
9969
9982
  background: linear-gradient(90deg, #D4AF37, #f0b90b);
9970
9983
  border-radius: 6px;
9971
9984
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
9972
9985
  will-change: width;
9973
9986
  `;
9974
- var ProgressInfo = styled24.div`
9987
+ var ProgressInfo = styled25.div`
9975
9988
  display: flex;
9976
9989
  justify-content: space-between;
9977
9990
  font-size: 0.875rem;
9978
9991
  `;
9979
- var ProgressSubscribers = styled24.div`
9992
+ var ProgressSubscribers = styled25.div`
9980
9993
  color: var(--color-text-secondary);
9981
9994
  font-weight: 500;
9982
9995
  `;
9983
- var ProgressAmounts = styled24.div`
9996
+ var ProgressAmounts = styled25.div`
9984
9997
  font-weight: 600;
9985
9998
  .raised { color: #D4AF37; }
9986
9999
  .target { color: rgba(255,255,255,0.3); }
@@ -10065,7 +10078,7 @@ function VideoActivitySection({
10065
10078
  ] })
10066
10079
  ] });
10067
10080
  }
10068
- var Section3 = styled24.div`
10081
+ var Section3 = styled25.div`
10069
10082
  display: flex;
10070
10083
  gap: 1.5rem;
10071
10084
  align-items: stretch;
@@ -10074,7 +10087,7 @@ var Section3 = styled24.div`
10074
10087
  gap: 1rem;
10075
10088
  }
10076
10089
  `;
10077
- var VideoPanel = styled24.div`
10090
+ var VideoPanel = styled25.div`
10078
10091
  flex: 1;
10079
10092
  background-color: var(--color-card-darker, #111);
10080
10093
  border-radius: 8px;
@@ -10118,7 +10131,7 @@ var VideoPanel = styled24.div`
10118
10131
  }
10119
10132
  }
10120
10133
  `;
10121
- var ActivityPanel = styled24.div`
10134
+ var ActivityPanel = styled25.div`
10122
10135
  flex: 0 0 auto;
10123
10136
  min-width: 450px;
10124
10137
  max-width: 520px;
@@ -10199,7 +10212,7 @@ var ActivityPanel = styled24.div`
10199
10212
  to { transform: rotate(360deg); }
10200
10213
  }
10201
10214
  `;
10202
- var SkeletonFeedRow = styled24.div`
10215
+ var SkeletonFeedRow = styled25.div`
10203
10216
  padding: 0.625rem 0.75rem;
10204
10217
  border-bottom: 1px solid rgba(255,255,255,0.04);
10205
10218
  display: flex;
@@ -10223,7 +10236,7 @@ var SkeletonFeedRow = styled24.div`
10223
10236
  padding: 0.4rem 0.6rem;
10224
10237
  }
10225
10238
  `;
10226
- var EndedBanner = styled24.div`
10239
+ var EndedBanner = styled25.div`
10227
10240
  font-size: 0.7rem;
10228
10241
  font-weight: 600;
10229
10242
  letter-spacing: 0.04em;
@@ -10236,7 +10249,7 @@ var EndedBanner = styled24.div`
10236
10249
  margin-bottom: 0.5rem;
10237
10250
  text-align: center;
10238
10251
  `;
10239
- var FeedList = styled24.div`
10252
+ var FeedList = styled25.div`
10240
10253
  width: 100%;
10241
10254
  overflow-y: auto;
10242
10255
  scrollbar-width: none;
@@ -10245,7 +10258,7 @@ var FeedList = styled24.div`
10245
10258
  display: none;
10246
10259
  }
10247
10260
  `;
10248
- var PurchaseItem = styled24.div`
10261
+ var PurchaseItem = styled25.div`
10249
10262
  padding: 0.625rem 0.75rem;
10250
10263
  border-bottom: 1px solid rgba(255,255,255,0.05);
10251
10264
  display: flex;
@@ -10274,12 +10287,12 @@ var PurchaseItem = styled24.div`
10274
10287
  padding: 0.4rem 0.6rem;
10275
10288
  }
10276
10289
  `;
10277
- var PurchaseInfo = styled24.div`
10290
+ var PurchaseInfo = styled25.div`
10278
10291
  display: flex;
10279
10292
  flex-direction: column;
10280
10293
  min-width: 0;
10281
10294
  `;
10282
- var PurchaseName = styled24.div`
10295
+ var PurchaseName = styled25.div`
10283
10296
  font-weight: 500;
10284
10297
  font-size: 0.875rem;
10285
10298
  color: #fff;
@@ -10287,19 +10300,19 @@ var PurchaseName = styled24.div`
10287
10300
  overflow: hidden;
10288
10301
  text-overflow: ellipsis;
10289
10302
  `;
10290
- var PurchaseTime = styled24.div`
10303
+ var PurchaseTime = styled25.div`
10291
10304
  font-size: 0.7rem;
10292
10305
  color: var(--color-text-secondary);
10293
10306
  margin-top: 0.125rem;
10294
10307
  `;
10295
- var PurchaseAmount = styled24.div`
10308
+ var PurchaseAmount = styled25.div`
10296
10309
  font-weight: 600;
10297
10310
  font-size: 0.875rem;
10298
10311
  color: #fff;
10299
10312
  white-space: nowrap;
10300
10313
  margin-left: 1rem;
10301
10314
  `;
10302
- var LiveIndicatorDot = styled24.span`
10315
+ var LiveIndicatorDot = styled25.span`
10303
10316
  display: inline-block;
10304
10317
  width: 8px;
10305
10318
  height: 8px;
@@ -10321,6 +10334,191 @@ var LiveIndicatorDot = styled24.span`
10321
10334
  100% { box-shadow: 0 0 0 0 rgba(14,203,129,0); }
10322
10335
  }
10323
10336
  `;
10337
+ var slideIn = keyframes`
10338
+ from { transform: translateX(110%); opacity: 0; }
10339
+ to { transform: translateX(0); opacity: 1; }
10340
+ `;
10341
+ var slideOut = keyframes`
10342
+ from { transform: translateX(0); opacity: 1; }
10343
+ to { transform: translateX(110%); opacity: 0; }
10344
+ `;
10345
+ var progressShrink = keyframes`
10346
+ from { width: 100%; }
10347
+ to { width: 0%; }
10348
+ `;
10349
+ var VARIANT_COLORS = {
10350
+ success: { accent: "#0ecb81", icon: "\u2713" },
10351
+ error: { accent: "#f6465d", icon: "\u2715" },
10352
+ info: { accent: "#E6C656", icon: "\u2139" },
10353
+ pending: { accent: "#7EB3E6", icon: "\u25CC" }
10354
+ };
10355
+ var Wrapper = styled25.div`
10356
+ position: relative;
10357
+ display: flex;
10358
+ flex-direction: column;
10359
+ gap: 0;
10360
+ width: 340px;
10361
+ background: #0d0f1a;
10362
+ border: 1px solid rgba(255, 255, 255, 0.08);
10363
+ border-radius: 10px;
10364
+ overflow: hidden;
10365
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255,255,255,0.04);
10366
+ animation: ${({ $exiting }) => $exiting ? css`${slideOut} 0.28s cubic-bezier(0.4,0,1,1) forwards` : css`${slideIn} 0.32s cubic-bezier(0,0,0.2,1) forwards`};
10367
+ pointer-events: all;
10368
+ `;
10369
+ var Body = styled25.div`
10370
+ display: flex;
10371
+ align-items: flex-start;
10372
+ gap: 12px;
10373
+ padding: 14px 16px 12px;
10374
+ `;
10375
+ var IconDot = styled25.div`
10376
+ flex-shrink: 0;
10377
+ width: 28px;
10378
+ height: 28px;
10379
+ border-radius: 50%;
10380
+ background: ${({ $color }) => $color}1a;
10381
+ border: 1px solid ${({ $color }) => $color}55;
10382
+ display: flex;
10383
+ align-items: center;
10384
+ justify-content: center;
10385
+ font-size: 0.75rem;
10386
+ font-weight: 700;
10387
+ color: ${({ $color }) => $color};
10388
+ margin-top: 1px;
10389
+ `;
10390
+ var Content = styled25.div`
10391
+ flex: 1;
10392
+ min-width: 0;
10393
+ `;
10394
+ var Title2 = styled25.p`
10395
+ margin: 0 0 2px;
10396
+ font-size: 0.8rem;
10397
+ font-weight: 600;
10398
+ color: #fff;
10399
+ letter-spacing: 0.01em;
10400
+ `;
10401
+ var Amount = styled25.p`
10402
+ margin: 0 0 6px;
10403
+ font-size: 1.05rem;
10404
+ font-weight: 700;
10405
+ color: #E6C656;
10406
+ letter-spacing: -0.01em;
10407
+ `;
10408
+ var TxRow = styled25.a`
10409
+ display: inline-flex;
10410
+ align-items: center;
10411
+ gap: 5px;
10412
+ font-family: 'IBM Plex Mono', 'Space Mono', monospace;
10413
+ font-size: 0.68rem;
10414
+ color: rgba(255, 255, 255, 0.4);
10415
+ text-decoration: none;
10416
+ transition: color 0.15s;
10417
+ &:hover {
10418
+ color: #7EB3E6;
10419
+ }
10420
+ `;
10421
+ var TxArrow = styled25.span`
10422
+ font-size: 0.6rem;
10423
+ opacity: 0.6;
10424
+ `;
10425
+ var CloseBtn = styled25.button`
10426
+ flex-shrink: 0;
10427
+ background: none;
10428
+ border: none;
10429
+ padding: 2px 4px;
10430
+ cursor: pointer;
10431
+ color: rgba(255, 255, 255, 0.25);
10432
+ font-size: 0.9rem;
10433
+ line-height: 1;
10434
+ transition: color 0.15s;
10435
+ &:hover { color: rgba(255, 255, 255, 0.7); }
10436
+ `;
10437
+ var ProgressBar = styled25.div`
10438
+ height: 2px;
10439
+ background: rgba(255, 255, 255, 0.06);
10440
+ position: relative;
10441
+ &::after {
10442
+ content: '';
10443
+ position: absolute;
10444
+ left: 0;
10445
+ top: 0;
10446
+ height: 100%;
10447
+ background: ${({ $color }) => $color};
10448
+ animation: ${css`${progressShrink} ${({ $duration }) => $duration}ms linear forwards`};
10449
+ }
10450
+ `;
10451
+ var Container2 = styled25.div`
10452
+ position: fixed;
10453
+ bottom: 24px;
10454
+ right: 24px;
10455
+ z-index: 9999;
10456
+ display: flex;
10457
+ flex-direction: column-reverse;
10458
+ gap: 10px;
10459
+ pointer-events: none;
10460
+ `;
10461
+ var DEFAULT_EXPLORER = "https://sepolia.basescan.org/tx/";
10462
+ function truncateHash(hash) {
10463
+ return `${hash.slice(0, 6)}\u2026${hash.slice(-4)}`;
10464
+ }
10465
+ function ToastItem({ toast, onDismiss }) {
10466
+ const [exiting, setExiting] = useState(false);
10467
+ const timerRef = useRef(null);
10468
+ const dismiss = useCallback(() => {
10469
+ setExiting(true);
10470
+ setTimeout(() => onDismiss(toast.id), 280);
10471
+ }, [onDismiss, toast.id]);
10472
+ useEffect(() => {
10473
+ const duration2 = toast.duration ?? 6e3;
10474
+ if (duration2 > 0) {
10475
+ timerRef.current = setTimeout(dismiss, duration2);
10476
+ }
10477
+ return () => {
10478
+ if (timerRef.current) clearTimeout(timerRef.current);
10479
+ };
10480
+ }, [dismiss, toast.duration]);
10481
+ const { accent, icon } = VARIANT_COLORS[toast.variant];
10482
+ const duration = toast.duration ?? 6e3;
10483
+ const explorerBase = toast.explorerUrl ?? DEFAULT_EXPLORER;
10484
+ const txUrl = toast.txHash ? `${explorerBase}${toast.txHash}` : void 0;
10485
+ return /* @__PURE__ */ jsxs(Wrapper, { $exiting: exiting, children: [
10486
+ /* @__PURE__ */ jsxs(Body, { children: [
10487
+ /* @__PURE__ */ jsx(IconDot, { $color: accent, children: icon }),
10488
+ /* @__PURE__ */ jsxs(Content, { children: [
10489
+ /* @__PURE__ */ jsx(Title2, { children: toast.title }),
10490
+ toast.amount && /* @__PURE__ */ jsx(Amount, { children: toast.amount }),
10491
+ toast.txHash && txUrl && /* @__PURE__ */ jsxs(TxRow, { href: txUrl, target: "_blank", rel: "noopener noreferrer", children: [
10492
+ truncateHash(toast.txHash),
10493
+ /* @__PURE__ */ jsx(TxArrow, { children: "\u2197" })
10494
+ ] })
10495
+ ] }),
10496
+ /* @__PURE__ */ jsx(CloseBtn, { type: "button", onClick: dismiss, "aria-label": "Dismiss", children: "\u2715" })
10497
+ ] }),
10498
+ duration > 0 && /* @__PURE__ */ jsx(ProgressBar, { $color: accent, $duration: duration })
10499
+ ] });
10500
+ }
10501
+ var ToastContext = createContext(null);
10502
+ function ToastProvider({ children }) {
10503
+ const [toasts, setToasts] = useState([]);
10504
+ const addToast = useCallback((data) => {
10505
+ const id = `toast-${Date.now()}-${Math.random().toString(36).slice(2, 7)}`;
10506
+ setToasts((prev) => [...prev, { ...data, id }]);
10507
+ return id;
10508
+ }, []);
10509
+ const dismiss = useCallback((id) => {
10510
+ setToasts((prev) => prev.filter((t) => t.id !== id));
10511
+ }, []);
10512
+ return /* @__PURE__ */ jsxs(ToastContext.Provider, { value: { toast: addToast, dismiss }, children: [
10513
+ children,
10514
+ /* @__PURE__ */ jsx(Container2, { children: toasts.map((t) => /* @__PURE__ */ jsx(ToastItem, { toast: t, onDismiss: dismiss }, t.id)) })
10515
+ ] });
10516
+ }
10517
+ function useToast() {
10518
+ const ctx = useContext(ToastContext);
10519
+ if (!ctx) throw new Error("useToast must be used within a ToastProvider");
10520
+ return ctx;
10521
+ }
10324
10522
  function OrderPanel({
10325
10523
  statusLabel,
10326
10524
  statusColor,
@@ -10353,6 +10551,7 @@ function OrderPanel({
10353
10551
  tokenDisplayName,
10354
10552
  tokenSymbol
10355
10553
  }) {
10554
+ const { toast } = useToast();
10356
10555
  const [payInputValue, setPayInputValue] = useState("");
10357
10556
  const [receiveInputValue, setReceiveInputValue] = useState("");
10358
10557
  const [isPayInputFocused, setIsPayInputFocused] = useState(false);
@@ -10363,6 +10562,14 @@ function OrderPanel({
10363
10562
  if (parsed <= 0) {
10364
10563
  setManualOrderAmount(null);
10365
10564
  setSliderValue(0);
10565
+ } else if (parsed < tokenPrice) {
10566
+ toast({
10567
+ variant: "error",
10568
+ title: "Amount too low",
10569
+ amount: `Minimum purchase is 1 token ($${tokenPrice.toLocaleString(void 0, { minimumFractionDigits: 2, maximumFractionDigits: 2 })})`
10570
+ });
10571
+ setManualOrderAmount(null);
10572
+ setSliderValue(0);
10366
10573
  } else if (parsed >= availableBalance) {
10367
10574
  setManualOrderAmount(null);
10368
10575
  setSliderValue(100);
@@ -10668,7 +10875,7 @@ function OrderPanel({
10668
10875
  ] })
10669
10876
  ] });
10670
10877
  }
10671
- var Panel2 = styled24.div`
10878
+ var Panel2 = styled25.div`
10672
10879
  background-color: var(--color-card-darker, #111);
10673
10880
  border-radius: 8px;
10674
10881
  padding: 1.5rem;
@@ -10695,7 +10902,7 @@ var Panel2 = styled24.div`
10695
10902
  border-radius: 6px;
10696
10903
  }
10697
10904
  `;
10698
- var PanelHeader2 = styled24.div`
10905
+ var PanelHeader2 = styled25.div`
10699
10906
  display: flex;
10700
10907
  justify-content: space-between;
10701
10908
  align-items: center;
@@ -10708,7 +10915,7 @@ var PanelHeader2 = styled24.div`
10708
10915
  color: var(--color-text);
10709
10916
  }
10710
10917
  `;
10711
- var StatusBadge2 = styled24.span`
10918
+ var StatusBadge2 = styled25.span`
10712
10919
  font-size: 0.7rem;
10713
10920
  font-weight: 600;
10714
10921
  display: inline-flex;
@@ -10721,7 +10928,7 @@ var StatusBadge2 = styled24.span`
10721
10928
  display: inline-block;
10722
10929
  }
10723
10930
  `;
10724
- var Card2 = styled24.div`
10931
+ var Card2 = styled25.div`
10725
10932
  background: rgba(0,0,0,0.4);
10726
10933
  border: 1px solid rgba(255,255,255,0.15);
10727
10934
  border-radius: 12px;
@@ -10732,12 +10939,12 @@ var Card2 = styled24.div`
10732
10939
  border-radius: 10px;
10733
10940
  }
10734
10941
  `;
10735
- var CardLabel = styled24.div`
10942
+ var CardLabel = styled25.div`
10736
10943
  font-size: 0.75rem;
10737
10944
  color: var(--color-text-secondary);
10738
10945
  margin-bottom: 0.5rem;
10739
10946
  `;
10740
- var CardInputRow = styled24.div`
10947
+ var CardInputRow = styled25.div`
10741
10948
  display: flex;
10742
10949
  align-items: center;
10743
10950
  justify-content: space-between;
@@ -10762,7 +10969,7 @@ var CardInputRow = styled24.div`
10762
10969
  white-space: nowrap;
10763
10970
  }
10764
10971
  `;
10765
- var QuickSelectRow = styled24.div`
10972
+ var QuickSelectRow = styled25.div`
10766
10973
  display: flex;
10767
10974
  gap: 0.5rem;
10768
10975
  margin-top: 0.75rem;
@@ -10791,7 +10998,7 @@ var QuickSelectRow = styled24.div`
10791
10998
  button { font-size: 0.7rem; padding: 0.35rem 0; }
10792
10999
  }
10793
11000
  `;
10794
- var FundsRow = styled24.div`
11001
+ var FundsRow = styled25.div`
10795
11002
  display: flex;
10796
11003
  align-items: center;
10797
11004
  gap: 0.5rem;
@@ -10802,7 +11009,7 @@ var FundsRow = styled24.div`
10802
11009
  color: #fff;
10803
11010
  }
10804
11011
  `;
10805
- var DepositButton = styled24.button`
11012
+ var DepositButton = styled25.button`
10806
11013
  background: transparent;
10807
11014
  border: 1px solid rgba(212,175,55,0.4);
10808
11015
  border-radius: 4px;
@@ -10812,23 +11019,23 @@ var DepositButton = styled24.button`
10812
11019
  cursor: pointer;
10813
11020
  font-weight: 500;
10814
11021
  `;
10815
- var Divider2 = styled24.div`
11022
+ var Divider2 = styled25.div`
10816
11023
  text-align: center;
10817
11024
  margin: 0.5rem 0;
10818
11025
  color: var(--color-text-secondary);
10819
11026
  `;
10820
- var CardTopRow = styled24.div`
11027
+ var CardTopRow = styled25.div`
10821
11028
  display: flex;
10822
11029
  justify-content: space-between;
10823
11030
  align-items: center;
10824
11031
  margin-bottom: 0.5rem;
10825
11032
  `;
10826
- var CardHint = styled24.span`
11033
+ var CardHint = styled25.span`
10827
11034
  font-size: 0.7rem;
10828
11035
  color: var(--color-text-secondary);
10829
11036
  opacity: 0.7;
10830
11037
  `;
10831
- var OrderSummary = styled24.div`
11038
+ var OrderSummary = styled25.div`
10832
11039
  border-top: 1px solid rgba(255,255,255,0.08);
10833
11040
  padding-top: 1rem;
10834
11041
  margin-top: 0.5rem;
@@ -10837,13 +11044,13 @@ var OrderSummary = styled24.div`
10837
11044
  flex-direction: column;
10838
11045
  gap: 0.5rem;
10839
11046
  `;
10840
- var SummaryRow = styled24.div`
11047
+ var SummaryRow = styled25.div`
10841
11048
  display: flex;
10842
11049
  justify-content: space-between;
10843
11050
  color: var(--color-text-secondary);
10844
11051
  strong { color: #fff; }
10845
11052
  `;
10846
- var SummaryTotal = styled24(SummaryRow)`
11053
+ var SummaryTotal = styled25(SummaryRow)`
10847
11054
  padding-top: 0.5rem;
10848
11055
  border-top: 1px solid rgba(255,255,255,0.08);
10849
11056
  color: #fff;
@@ -10851,12 +11058,12 @@ var SummaryTotal = styled24(SummaryRow)`
10851
11058
  font-weight: 600;
10852
11059
  }
10853
11060
  `;
10854
- var FormBody = styled24.div`
11061
+ var FormBody = styled25.div`
10855
11062
  display: flex;
10856
11063
  flex-direction: column;
10857
11064
  gap: 0.75rem;
10858
11065
  `;
10859
- var SubscribeButton = styled24.button`
11066
+ var SubscribeButton = styled25.button`
10860
11067
  width: 100%;
10861
11068
  margin-top: 1rem;
10862
11069
  padding: 0.875rem;
@@ -10881,13 +11088,13 @@ var SubscribeButton = styled24.button`
10881
11088
  color: #0a0a0a;
10882
11089
  }
10883
11090
  `;
10884
- var BalanceCards = styled24.div`
11091
+ var BalanceCards = styled25.div`
10885
11092
  display: flex;
10886
11093
  gap: 1rem;
10887
11094
  margin-top: 1rem;
10888
11095
  flex-wrap: wrap;
10889
11096
  `;
10890
- var BalanceCard = styled24.div`
11097
+ var BalanceCard = styled25.div`
10891
11098
  flex: 1;
10892
11099
  background: rgba(255,255,255,0.03);
10893
11100
  border-radius: 12px;
@@ -10895,14 +11102,14 @@ var BalanceCard = styled24.div`
10895
11102
  text-align: center;
10896
11103
  position: relative;
10897
11104
  `;
10898
- var BalanceLabel = styled24.div`
11105
+ var BalanceLabel = styled25.div`
10899
11106
  font-size: 0.75rem;
10900
11107
  color: var(--color-text-secondary);
10901
11108
  text-transform: uppercase;
10902
11109
  letter-spacing: 0.5px;
10903
11110
  margin-bottom: 0.5rem;
10904
11111
  `;
10905
- var BalanceValue = styled24.div`
11112
+ var BalanceValue = styled25.div`
10906
11113
  font-size: 1.5rem;
10907
11114
  font-weight: 700;
10908
11115
  color: #fff;
@@ -10918,20 +11125,20 @@ var BalanceValue = styled24.div`
10918
11125
  font-size: 1.2rem;
10919
11126
  }
10920
11127
  `;
10921
- var BalanceAction = styled24.div`
11128
+ var BalanceAction = styled25.div`
10922
11129
  font-size: 0.75rem;
10923
11130
  color: #D4AF37;
10924
11131
  cursor: pointer;
10925
11132
  font-weight: 500;
10926
11133
  margin-top: 0.5rem;
10927
11134
  `;
10928
- var BalanceSub = styled24.div`
11135
+ var BalanceSub = styled25.div`
10929
11136
  font-size: 0.85rem;
10930
11137
  font-weight: 500;
10931
11138
  color: var(--color-text-secondary);
10932
11139
  margin-top: 0.25rem;
10933
11140
  `;
10934
- var OrderPendingCard = styled24.div`
11141
+ var OrderPendingCard = styled25.div`
10935
11142
  margin-bottom: 1.5rem;
10936
11143
  background: linear-gradient(180deg, rgba(25,27,31,0.95) 0%, rgba(18,20,24,0.98) 100%);
10937
11144
  border: 1px solid rgba(212,175,55,0.08);
@@ -11035,7 +11242,7 @@ var OrderPendingCard = styled24.div`
11035
11242
  animation: pulse 2s ease-in-out infinite;
11036
11243
  }
11037
11244
  `;
11038
- var OrderSuccessCard = styled24.div`
11245
+ var OrderSuccessCard = styled25.div`
11039
11246
  margin-bottom: 1.5rem;
11040
11247
  background: linear-gradient(180deg, rgba(25,27,31,0.95) 0%, rgba(18,20,24,0.98) 100%);
11041
11248
  border: 1px solid rgba(212,175,55,0.12);
@@ -11139,7 +11346,7 @@ var OrderSuccessCard = styled24.div`
11139
11346
  transition: all 0.2s ease;
11140
11347
  }
11141
11348
  `;
11142
- var InsufficientFunds = styled24.div`
11349
+ var InsufficientFunds = styled25.div`
11143
11350
  margin-top: 1rem;
11144
11351
  padding: 0.75rem 1rem;
11145
11352
  border-radius: 8px;
@@ -11204,6 +11411,7 @@ function PortfolioActivityPanel({
11204
11411
  const resolvedDefaultTab = defaultTab ?? (showPositionsTab ? "positions" : "subscriptions");
11205
11412
  const [activeTab, setActiveTab] = useState(resolvedDefaultTab);
11206
11413
  const [activityPage, setActivityPage] = useState(0);
11414
+ const [pendingCancelOrderId, setPendingCancelOrderId] = useState(null);
11207
11415
  const activeTabTotal = useMemo(() => {
11208
11416
  switch (activeTab) {
11209
11417
  case "positions":
@@ -11244,7 +11452,7 @@ function PortfolioActivityPanel({
11244
11452
  setActiveTab(tab);
11245
11453
  setActivityPage(0);
11246
11454
  };
11247
- return /* @__PURE__ */ jsxs(Container2, { className, style, children: [
11455
+ return /* @__PURE__ */ jsxs(Container3, { className, style, children: [
11248
11456
  /* @__PURE__ */ jsx(PanelTitle, { children: "Activity" }),
11249
11457
  /* @__PURE__ */ jsxs(TabContainer, { children: [
11250
11458
  showPositionsTab && /* @__PURE__ */ jsxs(Tab, { $active: activeTab === "positions", onClick: () => handleTabChange("positions"), children: [
@@ -11391,7 +11599,7 @@ function PortfolioActivityPanel({
11391
11599
  disabled: isCancelling || cancellingOrderId != null,
11392
11600
  onClick: (e) => {
11393
11601
  e.stopPropagation();
11394
- onCancelOrder(order.id);
11602
+ setPendingCancelOrderId(order.id);
11395
11603
  },
11396
11604
  children: isCancelling ? "Cancelling\u2026" : "Cancel"
11397
11605
  }
@@ -11514,17 +11722,38 @@ function PortfolioActivityPanel({
11514
11722
  children: "Next \u2192"
11515
11723
  }
11516
11724
  )
11517
- ] })
11725
+ ] }),
11726
+ pendingCancelOrderId !== null && /* @__PURE__ */ jsx(CancelConfirmOverlay, { onClick: () => setPendingCancelOrderId(null), children: /* @__PURE__ */ jsxs(CancelConfirmModal, { onClick: (e) => e.stopPropagation(), children: [
11727
+ /* @__PURE__ */ jsx(CancelConfirmTitle, { children: "Cancel Order" }),
11728
+ /* @__PURE__ */ jsx(CancelConfirmBody, { children: "Are you sure you want to cancel this order? This action cannot be undone." }),
11729
+ /* @__PURE__ */ jsxs(CancelConfirmActions, { children: [
11730
+ /* @__PURE__ */ jsx(CancelConfirmDismiss, { type: "button", onClick: () => setPendingCancelOrderId(null), children: "Keep Order" }),
11731
+ /* @__PURE__ */ jsx(
11732
+ CancelConfirmProceed,
11733
+ {
11734
+ type: "button",
11735
+ disabled: cancellingOrderId != null,
11736
+ onClick: async () => {
11737
+ if (onCancelOrder && pendingCancelOrderId !== null) {
11738
+ await onCancelOrder(pendingCancelOrderId);
11739
+ }
11740
+ setPendingCancelOrderId(null);
11741
+ },
11742
+ children: cancellingOrderId === pendingCancelOrderId ? "Cancelling\u2026" : "Yes, Cancel"
11743
+ }
11744
+ )
11745
+ ] })
11746
+ ] }) })
11518
11747
  ] });
11519
11748
  }
11520
- var Container2 = styled24.div``;
11521
- var PanelTitle = styled24.h3`
11749
+ var Container3 = styled25.div``;
11750
+ var PanelTitle = styled25.h3`
11522
11751
  font-size: 1rem;
11523
11752
  font-weight: 600;
11524
11753
  color: var(--color-text, #fff);
11525
11754
  margin: 0 0 0.75rem;
11526
11755
  `;
11527
- var TabContainer = styled24.div`
11756
+ var TabContainer = styled25.div`
11528
11757
  display: flex;
11529
11758
  gap: 0;
11530
11759
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
@@ -11535,7 +11764,7 @@ var TabContainer = styled24.div`
11535
11764
  scrollbar-width: none;
11536
11765
  &::-webkit-scrollbar { display: none; }
11537
11766
  `;
11538
- var Tab = styled24.button`
11767
+ var Tab = styled25.button`
11539
11768
  background: transparent;
11540
11769
  border: none;
11541
11770
  padding: 0.6rem 1rem;
@@ -11564,12 +11793,12 @@ var Tab = styled24.button`
11564
11793
  color: ${({ $active }) => $active ? "#fff" : "rgba(255, 255, 255, 0.65)"};
11565
11794
  }
11566
11795
  `;
11567
- var TabCount = styled24.span`
11796
+ var TabCount = styled25.span`
11568
11797
  color: #E6C656;
11569
11798
  font-weight: 600;
11570
11799
  margin-left: 2px;
11571
11800
  `;
11572
- var ActivityRow = styled24.div`
11801
+ var ActivityRow = styled25.div`
11573
11802
  display: grid;
11574
11803
  grid-template-columns: auto 1fr auto auto;
11575
11804
  align-items: center;
@@ -11585,7 +11814,7 @@ var ActivityRow = styled24.div`
11585
11814
  background: rgba(255, 255, 255, 0.015);
11586
11815
  }
11587
11816
  `;
11588
- var ActivitySideBadge = styled24.span`
11817
+ var ActivitySideBadge = styled25.span`
11589
11818
  font-size: 0.6rem;
11590
11819
  font-weight: 700;
11591
11820
  text-transform: uppercase;
@@ -11597,21 +11826,21 @@ var ActivitySideBadge = styled24.span`
11597
11826
  color: ${({ $side }) => $side === "Buy" ? "#0ecb81" : "#f6465d"};
11598
11827
  background: ${({ $side }) => $side === "Buy" ? "rgba(14, 203, 129, 0.1)" : "rgba(246, 70, 93, 0.1)"};
11599
11828
  `;
11600
- var ActivityInfo = styled24.div`
11829
+ var ActivityInfo = styled25.div`
11601
11830
  display: flex;
11602
11831
  flex-direction: column;
11603
11832
  gap: 0.1rem;
11604
11833
  `;
11605
- var ActivityPrimary = styled24.span`
11834
+ var ActivityPrimary = styled25.span`
11606
11835
  font-size: 0.8rem;
11607
11836
  color: #fff;
11608
11837
  font-weight: 500;
11609
11838
  `;
11610
- var ActivitySecondary = styled24.span`
11839
+ var ActivitySecondary = styled25.span`
11611
11840
  font-size: 0.6rem;
11612
11841
  color: rgba(255, 255, 255, 0.35);
11613
11842
  `;
11614
- var ActivityTag = styled24.span`
11843
+ var ActivityTag = styled25.span`
11615
11844
  font-size: 0.58rem;
11616
11845
  font-weight: 600;
11617
11846
  padding: 0.15rem 0.45rem;
@@ -11620,20 +11849,20 @@ var ActivityTag = styled24.span`
11620
11849
  background: ${({ $bg }) => $bg || "rgba(255, 255, 255, 0.06)"};
11621
11850
  white-space: nowrap;
11622
11851
  `;
11623
- var ActivityAmount = styled24.span`
11852
+ var ActivityAmount = styled25.span`
11624
11853
  font-size: 0.8rem;
11625
11854
  font-weight: 600;
11626
11855
  color: #fff;
11627
11856
  text-align: right;
11628
11857
  white-space: nowrap;
11629
11858
  `;
11630
- var ActivityActions = styled24.div`
11859
+ var ActivityActions = styled25.div`
11631
11860
  display: flex;
11632
11861
  align-items: center;
11633
11862
  justify-content: flex-end;
11634
11863
  gap: 0.35rem;
11635
11864
  `;
11636
- var ActivityRedirectButton = styled24.a`
11865
+ var ActivityRedirectButton = styled25.a`
11637
11866
  display: inline-flex;
11638
11867
  align-items: center;
11639
11868
  justify-content: center;
@@ -11655,13 +11884,13 @@ var ActivityRedirectButton = styled24.a`
11655
11884
  outline-offset: 2px;
11656
11885
  }
11657
11886
  `;
11658
- var EmptyState = styled24.div`
11887
+ var EmptyState = styled25.div`
11659
11888
  padding: 1.5rem 0.75rem;
11660
11889
  text-align: center;
11661
11890
  font-size: 0.8rem;
11662
11891
  color: rgba(255, 255, 255, 0.45);
11663
11892
  `;
11664
- var PaginationRow = styled24.div`
11893
+ var PaginationRow = styled25.div`
11665
11894
  display: flex;
11666
11895
  align-items: center;
11667
11896
  justify-content: center;
@@ -11670,7 +11899,7 @@ var PaginationRow = styled24.div`
11670
11899
  padding-top: 1rem;
11671
11900
  border-top: 1px solid rgba(255, 255, 255, 0.06);
11672
11901
  `;
11673
- var PaginationButton = styled24.button`
11902
+ var PaginationButton = styled25.button`
11674
11903
  background: transparent;
11675
11904
  border: 1px solid rgba(255, 255, 255, 0.12);
11676
11905
  border-radius: 8px;
@@ -11684,11 +11913,11 @@ var PaginationButton = styled24.button`
11684
11913
  cursor: default;
11685
11914
  }
11686
11915
  `;
11687
- var PaginationLabel = styled24.span`
11916
+ var PaginationLabel = styled25.span`
11688
11917
  font-size: 0.8rem;
11689
11918
  color: rgba(255, 255, 255, 0.4);
11690
11919
  `;
11691
- var HoldingsItem = styled24.div`
11920
+ var HoldingsItem = styled25.div`
11692
11921
  display: grid;
11693
11922
  grid-template-columns: 1fr 1fr 1fr;
11694
11923
  align-items: center;
@@ -11697,17 +11926,17 @@ var HoldingsItem = styled24.div`
11697
11926
  cursor: pointer;
11698
11927
  &:hover { background: rgba(255, 255, 255, 0.015); }
11699
11928
  `;
11700
- var HoldingsLeft = styled24.div`
11929
+ var HoldingsLeft = styled25.div`
11701
11930
  display: flex;
11702
11931
  flex-direction: column;
11703
11932
  gap: 0.15rem;
11704
11933
  `;
11705
- var HoldingsProperty = styled24.div`
11934
+ var HoldingsProperty = styled25.div`
11706
11935
  font-size: 0.85rem;
11707
11936
  font-weight: 600;
11708
11937
  color: #fff;
11709
11938
  `;
11710
- var HoldingsPortfolio = styled24.div`
11939
+ var HoldingsPortfolio = styled25.div`
11711
11940
  font-size: 0.7rem;
11712
11941
  color: rgba(255, 255, 255, 0.5);
11713
11942
  span {
@@ -11715,7 +11944,7 @@ var HoldingsPortfolio = styled24.div`
11715
11944
  font-weight: 500;
11716
11945
  }
11717
11946
  `;
11718
- var HoldingsQuantity = styled24.div`
11947
+ var HoldingsQuantity = styled25.div`
11719
11948
  display: flex;
11720
11949
  flex-direction: column;
11721
11950
  align-items: center;
@@ -11724,27 +11953,27 @@ var HoldingsQuantity = styled24.div`
11724
11953
  font-weight: 500;
11725
11954
  color: #fff;
11726
11955
  `;
11727
- var HoldingsAvgEntry = styled24.div`
11956
+ var HoldingsAvgEntry = styled25.div`
11728
11957
  font-size: 0.7rem;
11729
11958
  color: var(--color-accent, #E6C87E);
11730
11959
  font-weight: 500;
11731
11960
  `;
11732
- var HoldingsPnL = styled24.div`
11961
+ var HoldingsPnL = styled25.div`
11733
11962
  display: flex;
11734
11963
  flex-direction: column;
11735
11964
  align-items: flex-end;
11736
11965
  gap: 0.15rem;
11737
11966
  `;
11738
- var PnLAmount = styled24.div`
11967
+ var PnLAmount = styled25.div`
11739
11968
  font-size: 0.85rem;
11740
11969
  font-weight: 600;
11741
11970
  color: ${(p) => p.$positive ? "#0ecb81" : "#f6465d"};
11742
11971
  `;
11743
- var PnLPercentage = styled24.div`
11972
+ var PnLPercentage = styled25.div`
11744
11973
  font-size: 0.7rem;
11745
11974
  color: ${(p) => p.$positive ? "#0ecb81" : "#f6465d"};
11746
11975
  `;
11747
- var CancelButton = styled24.button`
11976
+ var CancelButton = styled25.button`
11748
11977
  background: transparent;
11749
11978
  border: 1px solid rgba(246, 70, 93, 0.3);
11750
11979
  border-radius: 4px;
@@ -11766,6 +11995,78 @@ var CancelButton = styled24.button`
11766
11995
  cursor: not-allowed;
11767
11996
  }
11768
11997
  `;
11998
+ var CancelConfirmOverlay = styled25.div`
11999
+ position: fixed;
12000
+ inset: 0;
12001
+ background: rgba(0, 0, 0, 0.6);
12002
+ display: flex;
12003
+ align-items: center;
12004
+ justify-content: center;
12005
+ z-index: 1000;
12006
+ `;
12007
+ var CancelConfirmModal = styled25.div`
12008
+ background: #1a1a1a;
12009
+ border: 1px solid rgba(255, 255, 255, 0.12);
12010
+ border-radius: 12px;
12011
+ padding: 1.5rem;
12012
+ max-width: 360px;
12013
+ width: 90%;
12014
+ display: flex;
12015
+ flex-direction: column;
12016
+ gap: 0.75rem;
12017
+ `;
12018
+ var CancelConfirmTitle = styled25.div`
12019
+ font-size: 1rem;
12020
+ font-weight: 600;
12021
+ color: #fff;
12022
+ `;
12023
+ var CancelConfirmBody = styled25.div`
12024
+ font-size: 0.85rem;
12025
+ color: rgba(255, 255, 255, 0.6);
12026
+ line-height: 1.5;
12027
+ `;
12028
+ var CancelConfirmActions = styled25.div`
12029
+ display: flex;
12030
+ gap: 0.5rem;
12031
+ margin-top: 0.25rem;
12032
+ `;
12033
+ var CancelConfirmDismiss = styled25.button`
12034
+ flex: 1;
12035
+ background: rgba(255, 255, 255, 0.06);
12036
+ border: 1px solid rgba(255, 255, 255, 0.12);
12037
+ border-radius: 8px;
12038
+ padding: 0.6rem 1rem;
12039
+ font-size: 0.8rem;
12040
+ font-weight: 500;
12041
+ color: rgba(255, 255, 255, 0.7);
12042
+ cursor: pointer;
12043
+ transition: all 0.15s ease;
12044
+
12045
+ &:hover {
12046
+ background: rgba(255, 255, 255, 0.1);
12047
+ }
12048
+ `;
12049
+ var CancelConfirmProceed = styled25.button`
12050
+ flex: 1;
12051
+ background: rgba(246, 70, 93, 0.15);
12052
+ border: 1px solid rgba(246, 70, 93, 0.4);
12053
+ border-radius: 8px;
12054
+ padding: 0.6rem 1rem;
12055
+ font-size: 0.8rem;
12056
+ font-weight: 600;
12057
+ color: #f6465d;
12058
+ cursor: pointer;
12059
+ transition: all 0.15s ease;
12060
+
12061
+ &:hover {
12062
+ background: rgba(246, 70, 93, 0.25);
12063
+ }
12064
+
12065
+ &:disabled {
12066
+ opacity: 0.5;
12067
+ cursor: not-allowed;
12068
+ }
12069
+ `;
11769
12070
  function NewsOrdersSection({ newsItems, activityData }) {
11770
12071
  return /* @__PURE__ */ jsxs(Row2, { children: [
11771
12072
  /* @__PURE__ */ jsxs(TradeNewsPanel, { children: [
@@ -11810,7 +12111,7 @@ function NewsOrdersSection({ newsItems, activityData }) {
11810
12111
  ) })
11811
12112
  ] });
11812
12113
  }
11813
- var Row2 = styled24.div`
12114
+ var Row2 = styled25.div`
11814
12115
  display: grid;
11815
12116
  grid-template-columns: 1fr 2fr;
11816
12117
  gap: 1.5rem;
@@ -11828,7 +12129,7 @@ var Row2 = styled24.div`
11828
12129
  overflow: hidden;
11829
12130
  }
11830
12131
  `;
11831
- var TradeNewsPanel = styled24.div`
12132
+ var TradeNewsPanel = styled25.div`
11832
12133
  background-color: var(--color-card-darker, #111);
11833
12134
  border-radius: 8px;
11834
12135
  padding: 1.5rem;
@@ -11847,8 +12148,8 @@ var TradeNewsPanel = styled24.div`
11847
12148
  min-height: auto;
11848
12149
  }
11849
12150
  `;
11850
- var ActivityWrapper = styled24(TradeNewsPanel)``;
11851
- var TradeNewsHeader = styled24.div`
12151
+ var ActivityWrapper = styled25(TradeNewsPanel)``;
12152
+ var TradeNewsHeader = styled25.div`
11852
12153
  display: flex;
11853
12154
  justify-content: space-between;
11854
12155
  align-items: center;
@@ -11882,7 +12183,7 @@ var TradeNewsHeader = styled24.div`
11882
12183
  100% { opacity: 0.4; }
11883
12184
  }
11884
12185
  `;
11885
- var TradeNewsList = styled24.div`
12186
+ var TradeNewsList = styled25.div`
11886
12187
  display: flex;
11887
12188
  flex-direction: column;
11888
12189
  gap: 0.75rem;
@@ -11890,7 +12191,7 @@ var TradeNewsList = styled24.div`
11890
12191
  overflow: visible;
11891
12192
  max-width: 100%;
11892
12193
  `;
11893
- var TradeNewsItem = styled24.div`
12194
+ var TradeNewsItem = styled25.div`
11894
12195
  display: flex;
11895
12196
  flex-direction: column;
11896
12197
  padding: 0.75rem;
@@ -11906,25 +12207,25 @@ var TradeNewsItem = styled24.div`
11906
12207
  transform: translateY(-2px);
11907
12208
  }
11908
12209
  `;
11909
- var TradeNewsTitle = styled24.h4`
12210
+ var TradeNewsTitle = styled25.h4`
11910
12211
  font-size: 0.9375rem;
11911
12212
  font-weight: 500;
11912
12213
  margin: 0 0 0.5rem 0;
11913
12214
  color: var(--color-text);
11914
12215
  `;
11915
- var TradeNewsInfo = styled24.div`
12216
+ var TradeNewsInfo = styled25.div`
11916
12217
  display: flex;
11917
12218
  justify-content: space-between;
11918
12219
  align-items: center;
11919
12220
  font-size: 0.75rem;
11920
12221
  color: var(--color-text-secondary);
11921
12222
  `;
11922
- var TradeNewsDate = styled24.span`
12223
+ var TradeNewsDate = styled25.span`
11923
12224
  &[data-new='true'] {
11924
12225
  color: #0ecb81;
11925
12226
  }
11926
12227
  `;
11927
- var TradeNewsCategory = styled24.span`
12228
+ var TradeNewsCategory = styled25.span`
11928
12229
  padding: 0.25rem 0.5rem;
11929
12230
  border-radius: 4px;
11930
12231
  background-color: rgba(240,185,11,0.1);
@@ -12040,7 +12341,7 @@ function OrderConfirmationModal({
12040
12341
  ] })
12041
12342
  ] }) });
12042
12343
  }
12043
- var Overlay3 = styled24.div`
12344
+ var Overlay3 = styled25.div`
12044
12345
  position: fixed;
12045
12346
  top: 0;
12046
12347
  left: 0;
@@ -12053,7 +12354,7 @@ var Overlay3 = styled24.div`
12053
12354
  z-index: 10000;
12054
12355
  backdrop-filter: blur(4px);
12055
12356
  `;
12056
- var Modal = styled24.div`
12357
+ var Modal = styled25.div`
12057
12358
  background: linear-gradient(135deg, rgba(26,29,35,0.95) 0%, rgba(26,29,35,0.98) 100%);
12058
12359
  border: 1px solid rgba(255,255,255,0.1);
12059
12360
  border-radius: 16px;
@@ -12062,7 +12363,7 @@ var Modal = styled24.div`
12062
12363
  width: 90%;
12063
12364
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
12064
12365
  `;
12065
- var ModalHeader = styled24.div`
12366
+ var ModalHeader = styled25.div`
12066
12367
  display: flex;
12067
12368
  align-items: center;
12068
12369
  margin-bottom: 1.5rem;
@@ -12078,7 +12379,7 @@ var ModalHeader = styled24.div`
12078
12379
  gap: 0.5rem;
12079
12380
  }
12080
12381
  `;
12081
- var Badge2 = styled24.span`
12382
+ var Badge2 = styled25.span`
12082
12383
  padding: 0.25rem 0.75rem;
12083
12384
  border-radius: 6px;
12084
12385
  font-size: 0.75rem;
@@ -12089,12 +12390,12 @@ var Badge2 = styled24.span`
12089
12390
  color: #D4AF37;
12090
12391
  border: 1px solid rgba(212,175,55,0.3);
12091
12392
  `;
12092
- var ModalBody = styled24.div`
12393
+ var ModalBody = styled25.div`
12093
12394
  margin-bottom: 1.5rem;
12094
12395
  display: flex;
12095
12396
  flex-direction: column;
12096
12397
  `;
12097
- var ModalRow = styled24.div`
12398
+ var ModalRow = styled25.div`
12098
12399
  display: flex;
12099
12400
  justify-content: space-between;
12100
12401
  align-items: center;
@@ -12117,7 +12418,7 @@ var ModalRow = styled24.div`
12117
12418
  font-weight: 600;
12118
12419
  }
12119
12420
  `;
12120
- var Warning = styled24.div`
12421
+ var Warning = styled25.div`
12121
12422
  background: rgba(246,70,93,0.1);
12122
12423
  border: 1px solid rgba(246,70,93,0.3);
12123
12424
  border-radius: 8px;
@@ -12137,7 +12438,7 @@ var Warning = styled24.div`
12137
12438
  line-height: 1.5;
12138
12439
  }
12139
12440
  `;
12140
- var Summary = styled24.div`
12441
+ var Summary = styled25.div`
12141
12442
  background: rgba(255,255,255,0.03);
12142
12443
  border: 1px solid rgba(255,255,255,0.08);
12143
12444
  border-radius: 8px;
@@ -12150,7 +12451,7 @@ var Summary = styled24.div`
12150
12451
  var spin = keyframes`
12151
12452
  to { transform: rotate(360deg); }
12152
12453
  `;
12153
- var Spinner = styled24.span`
12454
+ var Spinner = styled25.span`
12154
12455
  display: inline-block;
12155
12456
  width: 14px;
12156
12457
  height: 14px;
@@ -12161,7 +12462,7 @@ var Spinner = styled24.span`
12161
12462
  margin-right: 0.5rem;
12162
12463
  vertical-align: -2px;
12163
12464
  `;
12164
- var ButtonRow2 = styled24.div`
12465
+ var ButtonRow2 = styled25.div`
12165
12466
  display: flex;
12166
12467
  gap: 1rem;
12167
12468
  justify-content: flex-end;
@@ -12528,7 +12829,7 @@ function PropertyBuy({
12528
12829
  )
12529
12830
  ] });
12530
12831
  }
12531
- var HeroGrid = styled24.div`
12832
+ var HeroGrid = styled25.div`
12532
12833
  display: grid;
12533
12834
  grid-template-columns: 1fr auto;
12534
12835
  grid-template-rows: auto auto minmax(450px, 520px);
@@ -12597,7 +12898,7 @@ var HeroGrid = styled24.div`
12597
12898
  gap: 0.5rem;
12598
12899
  }
12599
12900
  `;
12600
- var PaymentOption = styled24.div`
12901
+ var PaymentOption = styled25.div`
12601
12902
  display: flex;
12602
12903
  align-items: center;
12603
12904
  padding: 1rem;
@@ -12614,7 +12915,7 @@ var PaymentOption = styled24.div`
12614
12915
  border-color: rgba(0, 123, 255, 0.5);
12615
12916
  }
12616
12917
  `;
12617
- var RadioIndicator = styled24.div`
12918
+ var RadioIndicator = styled25.div`
12618
12919
  width: 20px;
12619
12920
  height: 20px;
12620
12921
  border-radius: 50%;
@@ -12634,7 +12935,7 @@ var RadioIndicator = styled24.div`
12634
12935
  transition: opacity 0.2s;
12635
12936
  }
12636
12937
  `;
12637
- var PaymentMethodDetails = styled24.div`
12938
+ var PaymentMethodDetails = styled25.div`
12638
12939
  background: rgba(0, 0, 0, 0.2);
12639
12940
  border-radius: 8px;
12640
12941
  padding: 1rem;
@@ -12653,7 +12954,7 @@ var PaymentMethodDetails = styled24.div`
12653
12954
  }
12654
12955
  }
12655
12956
  `;
12656
- var ConfirmButton = styled24.button`
12957
+ var ConfirmButton = styled25.button`
12657
12958
  background: ${(props) => props.disabled ? "rgba(255, 255, 255, 0.1)" : "linear-gradient(to right, #d4af37, #f2d35b)"};
12658
12959
  border: none;
12659
12960
  border-radius: 8px;
@@ -13371,7 +13672,7 @@ var OwnerBooking = ({ propertyName, token }) => {
13371
13672
  ] });
13372
13673
  };
13373
13674
  var owner_booking_default = OwnerBooking;
13374
- var DateSelectorDropdown = styled24.div`
13675
+ var DateSelectorDropdown = styled25.div`
13375
13676
  position: absolute;
13376
13677
  top: calc(100% + 0.5rem);
13377
13678
  left: 0;
@@ -13385,7 +13686,7 @@ var DateSelectorDropdown = styled24.div`
13385
13686
  display: ${({ $isOpen }) => $isOpen ? "block" : "none"};
13386
13687
  z-index: 10;
13387
13688
  `;
13388
- var MonthButton = styled24.button`
13689
+ var MonthButton = styled25.button`
13389
13690
  background: ${({ $isSelected }) => $isSelected ? "rgba(212, 175, 55, 0.2)" : "transparent"};
13390
13691
  border: 1px solid
13391
13692
  ${({ $isSelected }) => $isSelected ? "#d4af37" : "rgba(255, 255, 255, 0.12)"};
@@ -13401,7 +13702,7 @@ var MonthButton = styled24.button`
13401
13702
  border-color: rgba(212, 175, 55, 0.5);
13402
13703
  }
13403
13704
  `;
13404
- var DayCell = styled24.div`
13705
+ var DayCell = styled25.div`
13405
13706
  aspect-ratio: 1;
13406
13707
  display: flex;
13407
13708
  align-items: center;
@@ -13435,7 +13736,7 @@ var DayCell = styled24.div`
13435
13736
  opacity: ${({ $isCurrentMonth, $savedRangeColor }) => $isCurrentMonth ? $savedRangeColor ? 0.85 : 1 : 0.35};
13436
13737
  }
13437
13738
  `;
13438
- var AddDateRangeButton = styled24.button`
13739
+ var AddDateRangeButton = styled25.button`
13439
13740
  flex: 1;
13440
13741
  min-width: 180px;
13441
13742
  background: rgba(212, 175, 55, 0.18);
@@ -13457,21 +13758,21 @@ var AddDateRangeButton = styled24.button`
13457
13758
  cursor: not-allowed;
13458
13759
  }
13459
13760
  `;
13460
- var ConfirmButton2 = styled24(AddDateRangeButton)`
13761
+ var ConfirmButton2 = styled25(AddDateRangeButton)`
13461
13762
  flex: 0 0 auto;
13462
13763
  min-width: 140px;
13463
13764
  background: rgba(212, 175, 55, 0.35);
13464
13765
  border-color: rgba(212, 175, 55, 0.6);
13465
13766
  font-weight: 600;
13466
13767
  `;
13467
- var ReservationCard = styled24.div`
13768
+ var ReservationCard = styled25.div`
13468
13769
  background: rgba(0, 0, 0, 0.4);
13469
13770
  border-radius: 12px;
13470
13771
  padding: 1rem;
13471
13772
  margin-top: 1rem;
13472
13773
  border-left: 4px solid ${({ $accent }) => $accent};
13473
13774
  `;
13474
- var ActionButton = styled24.button`
13775
+ var ActionButton = styled25.button`
13475
13776
  background: none;
13476
13777
  border: none;
13477
13778
  color: ${({ $variant }) => $variant === "danger" ? "#ff7676" : "#d4af37"};
@@ -13921,7 +14222,7 @@ function calculatePositionFromPrice(price, undervaluedPrice, fairValue, overvalu
13921
14222
  }
13922
14223
  return 50 + 50 * (price - fairValue) / (overvaluedPrice - fairValue);
13923
14224
  }
13924
- var ValuationIndicator = styled24.div`
14225
+ var ValuationIndicator = styled25.div`
13925
14226
  background-color: rgba(50, 52, 58, 0.95);
13926
14227
  border-radius: 6px;
13927
14228
  padding: 1rem;
@@ -13943,7 +14244,7 @@ var ValuationIndicator = styled24.div`
13943
14244
  }
13944
14245
  }
13945
14246
  `;
13946
- var GaugeIndicator = styled24.div`
14247
+ var GaugeIndicator = styled25.div`
13947
14248
  position: absolute;
13948
14249
  left: ${(props) => props.position}%;
13949
14250
  top: 0.35rem;
@@ -13954,7 +14255,7 @@ var GaugeIndicator = styled24.div`
13954
14255
  background: ${(props) => props.type === "fairValue" ? "#f0b90b" : "rgba(10, 12, 18, 0.95)"};
13955
14256
  box-shadow: ${(props) => props.type === "lastPrice" ? "0 6px 18px rgba(0, 0, 0, 0.65)" : "0 6px 16px rgba(0, 0, 0, 0.45)"};
13956
14257
  `;
13957
- var GaugePriceTag = styled24.div`
14258
+ var GaugePriceTag = styled25.div`
13958
14259
  position: absolute;
13959
14260
  left: ${(props) => props.position}%;
13960
14261
  top: -46px;
@@ -13979,18 +14280,18 @@ var GaugePriceTag = styled24.div`
13979
14280
  color: var(--color-accent);
13980
14281
  }
13981
14282
  `;
13982
- var HiddenMobileChart = styled24.div`
14283
+ var HiddenMobileChart = styled25.div`
13983
14284
  display: none;
13984
14285
  @media (max-width: 480px) {
13985
14286
  display: block;
13986
14287
  }
13987
14288
  `;
13988
- var ValuationWrapper = styled24.div`
14289
+ var ValuationWrapper = styled25.div`
13989
14290
  display: flex;
13990
14291
  flex-direction: column;
13991
14292
  gap: 2rem;
13992
14293
  `;
13993
- var LoadingOverlay = styled24.div`
14294
+ var LoadingOverlay = styled25.div`
13994
14295
  margin-top: 1rem;
13995
14296
  padding: 0.75rem 1rem;
13996
14297
  border-radius: 8px;
@@ -13998,7 +14299,7 @@ var LoadingOverlay = styled24.div`
13998
14299
  color: rgba(255, 255, 255, 0.8);
13999
14300
  font-size: 0.9rem;
14000
14301
  `;
14001
- var ErrorMessage = styled24.div`
14302
+ var ErrorMessage = styled25.div`
14002
14303
  margin-top: 1rem;
14003
14304
  padding: 0.75rem 1rem;
14004
14305
  border-radius: 8px;
@@ -14007,33 +14308,33 @@ var ErrorMessage = styled24.div`
14007
14308
  font-size: 0.9rem;
14008
14309
  border: 1px solid rgba(244, 67, 54, 0.4);
14009
14310
  `;
14010
- var SectionTitle = styled24.h2`
14311
+ var SectionTitle = styled25.h2`
14011
14312
  margin: 0;
14012
14313
  font-size: clamp(1.75rem, 2.5vw, 2.25rem);
14013
14314
  font-weight: 600;
14014
14315
  color: #fff;
14015
14316
  letter-spacing: 0.01em;
14016
14317
  `;
14017
- var LoafPricingSection = styled24.div`
14318
+ var LoafPricingSection = styled25.div`
14018
14319
  background-color: rgba(30, 32, 38, 0.95);
14019
14320
  border-radius: 8px;
14020
14321
  padding: 1.25rem;
14021
14322
  margin-bottom: 1.5rem;
14022
14323
  `;
14023
- var SectionSubheading = styled24.h2`
14324
+ var SectionSubheading = styled25.h2`
14024
14325
  margin: 0;
14025
14326
  font-size: 1.1rem;
14026
14327
  font-weight: 600;
14027
14328
  color: #fff;
14028
14329
  letter-spacing: 0.02em;
14029
14330
  `;
14030
- var PricingModelCard = styled24.div`
14331
+ var PricingModelCard = styled25.div`
14031
14332
  background-color: rgba(40, 42, 48, 0.95);
14032
14333
  border-radius: 8px;
14033
14334
  padding: 1.5rem;
14034
14335
  margin-top: 1rem;
14035
14336
  `;
14036
- var PricingModelHeader = styled24.div`
14337
+ var PricingModelHeader = styled25.div`
14037
14338
  display: flex;
14038
14339
  justify-content: space-between;
14039
14340
  align-items: center;
@@ -14048,13 +14349,13 @@ var PricingModelHeader = styled24.div`
14048
14349
  color: rgba(255, 255, 255, 0.75);
14049
14350
  }
14050
14351
  `;
14051
- var PricingModelTitle = styled24.h3`
14352
+ var PricingModelTitle = styled25.h3`
14052
14353
  margin: 0;
14053
14354
  font-size: 1.2rem;
14054
14355
  font-weight: 600;
14055
14356
  color: #fff;
14056
14357
  `;
14057
- var PricingModelValue = styled24.div`
14358
+ var PricingModelValue = styled25.div`
14058
14359
  font-size: 1.4rem;
14059
14360
  font-weight: 700;
14060
14361
  color: var(--color-primary);
@@ -14063,43 +14364,43 @@ var PricingModelValue = styled24.div`
14063
14364
  font-size: 1.2rem;
14064
14365
  }
14065
14366
  `;
14066
- var PricingModelDetails = styled24.div`
14367
+ var PricingModelDetails = styled25.div`
14067
14368
  display: grid;
14068
14369
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
14069
14370
  gap: 1.5rem;
14070
14371
  margin-bottom: 1.5rem;
14071
14372
  `;
14072
- var PricingModelDetail = styled24.div`
14373
+ var PricingModelDetail = styled25.div`
14073
14374
  background-color: rgba(50, 52, 58, 0.95);
14074
14375
  border-radius: 6px;
14075
14376
  padding: 1rem;
14076
14377
  `;
14077
- var PropertyDetailLabel = styled24.div`
14378
+ var PropertyDetailLabel = styled25.div`
14078
14379
  font-size: 0.85rem;
14079
14380
  color: rgba(255, 255, 255, 0.7);
14080
14381
  margin-bottom: 0.5rem;
14081
14382
  `;
14082
- var PricingDetailValue = styled24.div`
14383
+ var PricingDetailValue = styled25.div`
14083
14384
  font-size: 1rem;
14084
14385
  color: #fff;
14085
14386
  font-weight: 500;
14086
14387
  `;
14087
- var ValuationHeader = styled24.div`
14388
+ var ValuationHeader = styled25.div`
14088
14389
  display: flex;
14089
14390
  justify-content: space-between;
14090
14391
  margin-bottom: 0.75rem;
14091
14392
  `;
14092
- var ValuationTitle = styled24.div`
14393
+ var ValuationTitle = styled25.div`
14093
14394
  font-size: 0.9rem;
14094
14395
  color: rgba(255, 255, 255, 0.7);
14095
14396
  `;
14096
- var ValuationGauge = styled24.div`
14397
+ var ValuationGauge = styled25.div`
14097
14398
  position: relative;
14098
14399
  width: 100%;
14099
14400
  padding: 1.1rem 0 2rem;
14100
14401
  margin: 0.75rem 0 1rem;
14101
14402
  `;
14102
- var GaugeBackground = styled24.div`
14403
+ var GaugeBackground = styled25.div`
14103
14404
  width: 100%;
14104
14405
  height: 18px;
14105
14406
  border-radius: 999px;
@@ -14108,21 +14409,21 @@ var GaugeBackground = styled24.div`
14108
14409
  overflow: hidden;
14109
14410
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.35), 0 8px 18px rgba(0, 0, 0, 0.25);
14110
14411
  `;
14111
- var ValuationDetails = styled24.div`
14412
+ var ValuationDetails = styled25.div`
14112
14413
  display: flex;
14113
14414
  justify-content: space-between;
14114
14415
  margin-top: 1rem;
14115
14416
  `;
14116
- var ValuationItem = styled24.div`
14417
+ var ValuationItem = styled25.div`
14117
14418
  display: flex;
14118
14419
  flex-direction: column;
14119
14420
  `;
14120
- var ValuationValue = styled24.div`
14421
+ var ValuationValue = styled25.div`
14121
14422
  font-size: 1rem;
14122
14423
  font-weight: 600;
14123
14424
  color: #fff;
14124
14425
  `;
14125
- var ChartContainer = styled24.div`
14426
+ var ChartContainer = styled25.div`
14126
14427
  width: 100%;
14127
14428
  height: 301.52px;
14128
14429
  margin-top: 1.5rem;
@@ -14131,14 +14432,14 @@ var ChartContainer = styled24.div`
14131
14432
  padding: 1rem;
14132
14433
  position: relative;
14133
14434
  `;
14134
- var ChartBackground = styled24.div`
14435
+ var ChartBackground = styled25.div`
14135
14436
  position: relative;
14136
14437
  height: 100%;
14137
14438
  width: 100%;
14138
14439
  background: rgba(255, 255, 255, 0.03);
14139
14440
  border-radius: 8px;
14140
14441
  `;
14141
- var ValuationSvg = styled24.svg`
14442
+ var ValuationSvg = styled25.svg`
14142
14443
  position: absolute;
14143
14444
  top: 10px;
14144
14445
  right: 0;
@@ -14148,7 +14449,7 @@ var ValuationSvg = styled24.svg`
14148
14449
  width: 100%;
14149
14450
  height: calc(100% - 35px);
14150
14451
  `;
14151
- var YAxisLabel = styled24.div`
14452
+ var YAxisLabel = styled25.div`
14152
14453
  position: absolute;
14153
14454
  left: -40px;
14154
14455
  font-size: 10px;
@@ -14156,7 +14457,7 @@ var YAxisLabel = styled24.div`
14156
14457
  text-align: right;
14157
14458
  padding-right: 5px;
14158
14459
  `;
14159
- var ValuationCallout = styled24.div`
14460
+ var ValuationCallout = styled25.div`
14160
14461
  display: flex;
14161
14462
  align-items: center;
14162
14463
  justify-content: space-between;
@@ -14166,7 +14467,7 @@ var ValuationCallout = styled24.div`
14166
14467
  border: 1px solid rgba(76, 175, 80, 0.2);
14167
14468
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
14168
14469
  `;
14169
- var ValuationBadge = styled24.div`
14470
+ var ValuationBadge = styled25.div`
14170
14471
  background: linear-gradient(135deg, #4CAF50 0%, #45a049 100%);
14171
14472
  color: white;
14172
14473
  padding: 5px 12px;
@@ -14175,17 +14476,17 @@ var ValuationBadge = styled24.div`
14175
14476
  font-weight: 600;
14176
14477
  box-shadow: 0 2px 4px rgba(76, 175, 80, 0.25);
14177
14478
  `;
14178
- var AreaDemandChart = styled24.div`
14479
+ var AreaDemandChart = styled25.div`
14179
14480
  height: 60px;
14180
14481
  width: 100%;
14181
14482
  position: relative;
14182
14483
  `;
14183
- var ChartLabel = styled24.div`
14484
+ var ChartLabel = styled25.div`
14184
14485
  position: absolute;
14185
14486
  font-size: 9px;
14186
14487
  color: rgba(255, 255, 255, 0.7);
14187
14488
  `;
14188
- var RecentSalesSection = styled24.div`
14489
+ var RecentSalesSection = styled25.div`
14189
14490
  background-color: rgba(30, 32, 38, 0.95);
14190
14491
  border-radius: 8px;
14191
14492
  padding: 1.25rem;
@@ -14195,7 +14496,7 @@ var RecentSalesSection = styled24.div`
14195
14496
  position: relative;
14196
14497
  }
14197
14498
  `;
14198
- var SalesGrid = styled24.div`
14499
+ var SalesGrid = styled25.div`
14199
14500
  display: grid;
14200
14501
  grid-template-columns: repeat(3, 1fr);
14201
14502
  gap: 1.5rem;
@@ -14216,7 +14517,7 @@ var SalesGrid = styled24.div`
14216
14517
  scrollbar-width: none;
14217
14518
  }
14218
14519
  `;
14219
- var SaleCard = styled24.div`
14520
+ var SaleCard = styled25.div`
14220
14521
  background-color: var(--color-card, #1e2329);
14221
14522
  border-radius: var(--border-radius, 8px);
14222
14523
  overflow: hidden;
@@ -14240,13 +14541,13 @@ var SaleCard = styled24.div`
14240
14541
  }
14241
14542
  }
14242
14543
  `;
14243
- var SaleImageContainer = styled24.div`
14544
+ var SaleImageContainer = styled25.div`
14244
14545
  position: relative;
14245
14546
  width: 100%;
14246
14547
  height: 200px;
14247
14548
  overflow: hidden;
14248
14549
  `;
14249
- var SaleImage = styled24.img`
14550
+ var SaleImage = styled25.img`
14250
14551
  width: 100%;
14251
14552
  height: 100%;
14252
14553
  object-fit: cover;
@@ -14257,7 +14558,7 @@ var SaleImage = styled24.img`
14257
14558
  transform: scale(1.05);
14258
14559
  }
14259
14560
  `;
14260
- var SoldTag = styled24.div`
14561
+ var SoldTag = styled25.div`
14261
14562
  position: absolute;
14262
14563
  top: 1rem;
14263
14564
  right: 1rem;
@@ -14271,10 +14572,10 @@ var SoldTag = styled24.div`
14271
14572
  align-items: center;
14272
14573
  gap: 4px;
14273
14574
  `;
14274
- var SoldIcon = styled24.div`
14575
+ var SoldIcon = styled25.div`
14275
14576
  display: none;
14276
14577
  `;
14277
- var SalePriceBar = styled24.div`
14578
+ var SalePriceBar = styled25.div`
14278
14579
  display: flex;
14279
14580
  justify-content: space-between;
14280
14581
  align-items: center;
@@ -14282,37 +14583,37 @@ var SalePriceBar = styled24.div`
14282
14583
  background: linear-gradient(90deg, rgba(240, 185, 11, 0.1) 0%, rgba(240, 185, 11, 0.05) 100%);
14283
14584
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
14284
14585
  `;
14285
- var SalePriceLeft = styled24.div`
14586
+ var SalePriceLeft = styled25.div`
14286
14587
  display: flex;
14287
14588
  flex-direction: column;
14288
14589
  `;
14289
- var SalePriceLabel = styled24.span`
14590
+ var SalePriceLabel = styled25.span`
14290
14591
  font-size: 0.7rem;
14291
14592
  color: rgba(255, 255, 255, 0.5);
14292
14593
  text-transform: uppercase;
14293
14594
  letter-spacing: 0.5px;
14294
14595
  `;
14295
- var SalePriceAmount = styled24.span`
14596
+ var SalePriceAmount = styled25.span`
14296
14597
  font-size: 1.1rem;
14297
14598
  font-weight: 700;
14298
14599
  color: var(--color-accent, #f0b90b);
14299
14600
  `;
14300
- var SaleContent = styled24.div`
14601
+ var SaleContent = styled25.div`
14301
14602
  padding: 1rem;
14302
14603
  `;
14303
- var SaleAddress = styled24.h3`
14604
+ var SaleAddress = styled25.h3`
14304
14605
  margin: 0;
14305
14606
  margin-bottom: 0.25rem;
14306
14607
  font-size: 1rem;
14307
14608
  font-weight: 600;
14308
14609
  color: var(--color-text, #eaecef);
14309
14610
  `;
14310
- var SaleSuburb = styled24.div`
14611
+ var SaleSuburb = styled25.div`
14311
14612
  font-size: 0.8rem;
14312
14613
  color: var(--color-text-secondary, #848e9c);
14313
14614
  margin-bottom: 0.5rem;
14314
14615
  `;
14315
- var SaleStatsBar = styled24.div`
14616
+ var SaleStatsBar = styled25.div`
14316
14617
  display: flex;
14317
14618
  justify-content: space-between;
14318
14619
  align-items: center;
@@ -14320,7 +14621,7 @@ var SaleStatsBar = styled24.div`
14320
14621
  background-color: rgba(0, 0, 0, 0.3);
14321
14622
  border-top: 1px solid rgba(255, 255, 255, 0.05);
14322
14623
  `;
14323
- var SaleStatItem = styled24.div`
14624
+ var SaleStatItem = styled25.div`
14324
14625
  display: flex;
14325
14626
  align-items: center;
14326
14627
  gap: 0.25rem;
@@ -14333,11 +14634,11 @@ var SaleStatItem = styled24.div`
14333
14634
  opacity: 0.7;
14334
14635
  }
14335
14636
  `;
14336
- var SaleDate = styled24.div`
14637
+ var SaleDate = styled25.div`
14337
14638
  font-size: 0.75rem;
14338
14639
  color: var(--color-text-secondary, #848e9c);
14339
14640
  `;
14340
- var SwipeIndicator = styled24.div`
14641
+ var SwipeIndicator = styled25.div`
14341
14642
  display: none;
14342
14643
 
14343
14644
  @media (max-width: 768px) {
@@ -14370,7 +14671,7 @@ var pulse3 = keyframes`
14370
14671
  0%, 100% { transform: scale(1); opacity: 0.8; }
14371
14672
  50% { transform: scale(1.2); opacity: 1; }
14372
14673
  `;
14373
- var FeatureTooltip = styled24.div`
14674
+ var FeatureTooltip = styled25.div`
14374
14675
  position: absolute;
14375
14676
  transform: translate(-50%, calc(-100% - 24px));
14376
14677
  min-width: 180px;
@@ -14412,7 +14713,7 @@ var FeatureTooltip = styled24.div`
14412
14713
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.35));
14413
14714
  }
14414
14715
  `;
14415
- var GalleryOverlay = styled24.div`
14716
+ var GalleryOverlay = styled25.div`
14416
14717
  position: fixed;
14417
14718
  inset: 0;
14418
14719
  z-index: 1000;
@@ -14421,7 +14722,7 @@ var GalleryOverlay = styled24.div`
14421
14722
  flex-direction: column;
14422
14723
  animation: ${fadeIn} 0.3s ease;
14423
14724
  `;
14424
- var GalleryHeader = styled24.div`
14725
+ var GalleryHeader = styled25.div`
14425
14726
  position: relative;
14426
14727
  padding: 1.5rem 2rem;
14427
14728
  display: flex;
@@ -14437,7 +14738,7 @@ var GalleryHeader = styled24.div`
14437
14738
  padding: 1rem;
14438
14739
  }
14439
14740
  `;
14440
- var PropertyInfo = styled24.div`
14741
+ var PropertyInfo = styled25.div`
14441
14742
  color: white;
14442
14743
 
14443
14744
  h2 {
@@ -14452,7 +14753,7 @@ var PropertyInfo = styled24.div`
14452
14753
  font-size: 0.95rem;
14453
14754
  }
14454
14755
  `;
14455
- var CloseButton2 = styled24.button`
14756
+ var CloseButton2 = styled25.button`
14456
14757
  width: 48px;
14457
14758
  height: 48px;
14458
14759
  border-radius: 50%;
@@ -14470,7 +14771,7 @@ var CloseButton2 = styled24.button`
14470
14771
  transform: rotate(90deg);
14471
14772
  }
14472
14773
  `;
14473
- var MainImageContainer = styled24.div`
14774
+ var MainImageContainer = styled25.div`
14474
14775
  position: relative;
14475
14776
  flex: 1;
14476
14777
  display: flex;
@@ -14482,7 +14783,7 @@ var MainImageContainer = styled24.div`
14482
14783
  padding: 60px 0 110px;
14483
14784
  }
14484
14785
  `;
14485
- var MainImage = styled24.img`
14786
+ var MainImage = styled25.img`
14486
14787
  max-width: 90%;
14487
14788
  max-height: 100%;
14488
14789
  object-fit: contain;
@@ -14499,7 +14800,7 @@ var MainImage = styled24.img`
14499
14800
  max-width: 100%;
14500
14801
  }
14501
14802
  `;
14502
- var Hotspot = styled24.button`
14803
+ var Hotspot = styled25.button`
14503
14804
  position: absolute;
14504
14805
  width: 32px;
14505
14806
  height: 32px;
@@ -14518,7 +14819,7 @@ var Hotspot = styled24.button`
14518
14819
  transform: translate(-50%, -50%) scale(1.2);
14519
14820
  }
14520
14821
  `;
14521
- var ThumbnailStrip = styled24.div`
14822
+ var ThumbnailStrip = styled25.div`
14522
14823
  position: absolute;
14523
14824
  bottom: 0;
14524
14825
  left: 0;
@@ -14533,7 +14834,7 @@ var ThumbnailStrip = styled24.div`
14533
14834
  display: none;
14534
14835
  }
14535
14836
  `;
14536
- var Thumbnail2 = styled24.button`
14837
+ var Thumbnail2 = styled25.button`
14537
14838
  width: 86px;
14538
14839
  height: 64px;
14539
14840
  border-radius: 6px;
@@ -14554,7 +14855,7 @@ var Thumbnail2 = styled24.button`
14554
14855
  object-fit: cover;
14555
14856
  }
14556
14857
  `;
14557
- var NavigationButton = styled24.button`
14858
+ var NavigationButton = styled25.button`
14558
14859
  position: absolute;
14559
14860
  top: 50%;
14560
14861
  ${(p) => p.$dir === "prev" ? "left: 2rem;" : "right: 2rem;"}
@@ -14574,7 +14875,7 @@ var NavigationButton = styled24.button`
14574
14875
  display: none;
14575
14876
  }
14576
14877
  `;
14577
- var SliderContainer = styled24.div`
14878
+ var SliderContainer = styled25.div`
14578
14879
  position: absolute;
14579
14880
  bottom: 110px;
14580
14881
  left: 50%;
@@ -14591,21 +14892,21 @@ var SliderContainer = styled24.div`
14591
14892
  width: 85%;
14592
14893
  }
14593
14894
  `;
14594
- var SliderTrack = styled24.div`
14895
+ var SliderTrack = styled25.div`
14595
14896
  position: relative;
14596
14897
  height: 4px;
14597
14898
  background: rgba(255, 255, 255, 0.2);
14598
14899
  border-radius: 999px;
14599
14900
  cursor: pointer;
14600
14901
  `;
14601
- var SliderProgress = styled24.div`
14902
+ var SliderProgress = styled25.div`
14602
14903
  position: absolute;
14603
14904
  inset: 0;
14604
14905
  width: ${(p) => p.$progress}%;
14605
14906
  background: linear-gradient(90deg, var(--color-accent, #f0b90b), rgba(240, 185, 11, 0.5));
14606
14907
  border-radius: inherit;
14607
14908
  `;
14608
- var SliderThumb = styled24.div`
14909
+ var SliderThumb = styled25.div`
14609
14910
  position: absolute;
14610
14911
  top: 50%;
14611
14912
  left: ${(p) => p.$position}%;
@@ -14617,7 +14918,7 @@ var SliderThumb = styled24.div`
14617
14918
  border: 3px solid white;
14618
14919
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
14619
14920
  `;
14620
- var SliderLabels = styled24.div`
14921
+ var SliderLabels = styled25.div`
14621
14922
  display: flex;
14622
14923
  justify-content: space-between;
14623
14924
  margin-top: 0.75rem;
@@ -14632,7 +14933,7 @@ var SliderLabels = styled24.div`
14632
14933
  display: none;
14633
14934
  }
14634
14935
  `;
14635
- var MobileDots = styled24.div`
14936
+ var MobileDots = styled25.div`
14636
14937
  position: absolute;
14637
14938
  bottom: 1.5rem;
14638
14939
  left: 50%;
@@ -14644,7 +14945,7 @@ var MobileDots = styled24.div`
14644
14945
  display: none;
14645
14946
  }
14646
14947
  `;
14647
- var MobileDot = styled24.button`
14948
+ var MobileDot = styled25.button`
14648
14949
  width: 8px;
14649
14950
  height: 8px;
14650
14951
  border-radius: 50%;
@@ -14874,191 +15175,6 @@ function GalleryContent({ galleryImages, startIndex, title, subtitle, onClose })
14874
15175
  }
14875
15176
  );
14876
15177
  }
14877
- var slideIn = keyframes`
14878
- from { transform: translateX(110%); opacity: 0; }
14879
- to { transform: translateX(0); opacity: 1; }
14880
- `;
14881
- var slideOut = keyframes`
14882
- from { transform: translateX(0); opacity: 1; }
14883
- to { transform: translateX(110%); opacity: 0; }
14884
- `;
14885
- var progressShrink = keyframes`
14886
- from { width: 100%; }
14887
- to { width: 0%; }
14888
- `;
14889
- var VARIANT_COLORS = {
14890
- success: { accent: "#0ecb81", icon: "\u2713" },
14891
- error: { accent: "#f6465d", icon: "\u2715" },
14892
- info: { accent: "#E6C656", icon: "\u2139" },
14893
- pending: { accent: "#7EB3E6", icon: "\u25CC" }
14894
- };
14895
- var Wrapper = styled24.div`
14896
- position: relative;
14897
- display: flex;
14898
- flex-direction: column;
14899
- gap: 0;
14900
- width: 340px;
14901
- background: #0d0f1a;
14902
- border: 1px solid rgba(255, 255, 255, 0.08);
14903
- border-radius: 10px;
14904
- overflow: hidden;
14905
- box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255,255,255,0.04);
14906
- animation: ${({ $exiting }) => $exiting ? css`${slideOut} 0.28s cubic-bezier(0.4,0,1,1) forwards` : css`${slideIn} 0.32s cubic-bezier(0,0,0.2,1) forwards`};
14907
- pointer-events: all;
14908
- `;
14909
- var Body = styled24.div`
14910
- display: flex;
14911
- align-items: flex-start;
14912
- gap: 12px;
14913
- padding: 14px 16px 12px;
14914
- `;
14915
- var IconDot = styled24.div`
14916
- flex-shrink: 0;
14917
- width: 28px;
14918
- height: 28px;
14919
- border-radius: 50%;
14920
- background: ${({ $color }) => $color}1a;
14921
- border: 1px solid ${({ $color }) => $color}55;
14922
- display: flex;
14923
- align-items: center;
14924
- justify-content: center;
14925
- font-size: 0.75rem;
14926
- font-weight: 700;
14927
- color: ${({ $color }) => $color};
14928
- margin-top: 1px;
14929
- `;
14930
- var Content = styled24.div`
14931
- flex: 1;
14932
- min-width: 0;
14933
- `;
14934
- var Title2 = styled24.p`
14935
- margin: 0 0 2px;
14936
- font-size: 0.8rem;
14937
- font-weight: 600;
14938
- color: #fff;
14939
- letter-spacing: 0.01em;
14940
- `;
14941
- var Amount = styled24.p`
14942
- margin: 0 0 6px;
14943
- font-size: 1.05rem;
14944
- font-weight: 700;
14945
- color: #E6C656;
14946
- letter-spacing: -0.01em;
14947
- `;
14948
- var TxRow = styled24.a`
14949
- display: inline-flex;
14950
- align-items: center;
14951
- gap: 5px;
14952
- font-family: 'IBM Plex Mono', 'Space Mono', monospace;
14953
- font-size: 0.68rem;
14954
- color: rgba(255, 255, 255, 0.4);
14955
- text-decoration: none;
14956
- transition: color 0.15s;
14957
- &:hover {
14958
- color: #7EB3E6;
14959
- }
14960
- `;
14961
- var TxArrow = styled24.span`
14962
- font-size: 0.6rem;
14963
- opacity: 0.6;
14964
- `;
14965
- var CloseBtn = styled24.button`
14966
- flex-shrink: 0;
14967
- background: none;
14968
- border: none;
14969
- padding: 2px 4px;
14970
- cursor: pointer;
14971
- color: rgba(255, 255, 255, 0.25);
14972
- font-size: 0.9rem;
14973
- line-height: 1;
14974
- transition: color 0.15s;
14975
- &:hover { color: rgba(255, 255, 255, 0.7); }
14976
- `;
14977
- var ProgressBar = styled24.div`
14978
- height: 2px;
14979
- background: rgba(255, 255, 255, 0.06);
14980
- position: relative;
14981
- &::after {
14982
- content: '';
14983
- position: absolute;
14984
- left: 0;
14985
- top: 0;
14986
- height: 100%;
14987
- background: ${({ $color }) => $color};
14988
- animation: ${css`${progressShrink} ${({ $duration }) => $duration}ms linear forwards`};
14989
- }
14990
- `;
14991
- var Container3 = styled24.div`
14992
- position: fixed;
14993
- bottom: 24px;
14994
- right: 24px;
14995
- z-index: 9999;
14996
- display: flex;
14997
- flex-direction: column-reverse;
14998
- gap: 10px;
14999
- pointer-events: none;
15000
- `;
15001
- var DEFAULT_EXPLORER = "https://sepolia.basescan.org/tx/";
15002
- function truncateHash(hash) {
15003
- return `${hash.slice(0, 6)}\u2026${hash.slice(-4)}`;
15004
- }
15005
- function ToastItem({ toast, onDismiss }) {
15006
- const [exiting, setExiting] = useState(false);
15007
- const timerRef = useRef(null);
15008
- const dismiss = useCallback(() => {
15009
- setExiting(true);
15010
- setTimeout(() => onDismiss(toast.id), 280);
15011
- }, [onDismiss, toast.id]);
15012
- useEffect(() => {
15013
- const duration2 = toast.duration ?? 6e3;
15014
- if (duration2 > 0) {
15015
- timerRef.current = setTimeout(dismiss, duration2);
15016
- }
15017
- return () => {
15018
- if (timerRef.current) clearTimeout(timerRef.current);
15019
- };
15020
- }, [dismiss, toast.duration]);
15021
- const { accent, icon } = VARIANT_COLORS[toast.variant];
15022
- const duration = toast.duration ?? 6e3;
15023
- const explorerBase = toast.explorerUrl ?? DEFAULT_EXPLORER;
15024
- const txUrl = toast.txHash ? `${explorerBase}${toast.txHash}` : void 0;
15025
- return /* @__PURE__ */ jsxs(Wrapper, { $exiting: exiting, children: [
15026
- /* @__PURE__ */ jsxs(Body, { children: [
15027
- /* @__PURE__ */ jsx(IconDot, { $color: accent, children: icon }),
15028
- /* @__PURE__ */ jsxs(Content, { children: [
15029
- /* @__PURE__ */ jsx(Title2, { children: toast.title }),
15030
- toast.amount && /* @__PURE__ */ jsx(Amount, { children: toast.amount }),
15031
- toast.txHash && txUrl && /* @__PURE__ */ jsxs(TxRow, { href: txUrl, target: "_blank", rel: "noopener noreferrer", children: [
15032
- truncateHash(toast.txHash),
15033
- /* @__PURE__ */ jsx(TxArrow, { children: "\u2197" })
15034
- ] })
15035
- ] }),
15036
- /* @__PURE__ */ jsx(CloseBtn, { type: "button", onClick: dismiss, "aria-label": "Dismiss", children: "\u2715" })
15037
- ] }),
15038
- duration > 0 && /* @__PURE__ */ jsx(ProgressBar, { $color: accent, $duration: duration })
15039
- ] });
15040
- }
15041
- var ToastContext = createContext(null);
15042
- function ToastProvider({ children }) {
15043
- const [toasts, setToasts] = useState([]);
15044
- const addToast = useCallback((data) => {
15045
- const id = `toast-${Date.now()}-${Math.random().toString(36).slice(2, 7)}`;
15046
- setToasts((prev) => [...prev, { ...data, id }]);
15047
- return id;
15048
- }, []);
15049
- const dismiss = useCallback((id) => {
15050
- setToasts((prev) => prev.filter((t) => t.id !== id));
15051
- }, []);
15052
- return /* @__PURE__ */ jsxs(ToastContext.Provider, { value: { toast: addToast, dismiss }, children: [
15053
- children,
15054
- /* @__PURE__ */ jsx(Container3, { children: toasts.map((t) => /* @__PURE__ */ jsx(ToastItem, { toast: t, onDismiss: dismiss }, t.id)) })
15055
- ] });
15056
- }
15057
- function useToast() {
15058
- const ctx = useContext(ToastContext);
15059
- if (!ctx) throw new Error("useToast must be used within a ToastProvider");
15060
- return ctx;
15061
- }
15062
15178
  var INTERVALS = [1e3, 2e3, 4e3, 5e3, 7e3, 1e4, 12e3];
15063
15179
  function useAdaptivePolling({ enabled, onPoll }) {
15064
15180
  const onPollRef = useRef(onPoll);