@embarkai/ui-kit 0.4.74 → 0.4.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -5274,24 +5274,9 @@ var init_Expandable2 = __esm({
5274
5274
  });
5275
5275
 
5276
5276
  // src/internal/components/ui/highlight.tsx
5277
+ import { forwardRef as forwardRef2 } from "react";
5277
5278
  import { jsx as jsx3 } from "react/jsx-runtime";
5278
- function Highlight(props) {
5279
- const { type = "info", children, className } = props;
5280
- return /* @__PURE__ */ jsx3(
5281
- "div",
5282
- {
5283
- className: cn(
5284
- "w-full text-xs rounded-[var(--ui-kit-el-bdrs)] p-[var(--ui-kit-pd)]",
5285
- "whitespace-pre-line",
5286
- type === "error" ? "break-all" : "break-normal",
5287
- CARD_STYLES[type],
5288
- className
5289
- ),
5290
- children
5291
- }
5292
- );
5293
- }
5294
- var CARD_STYLES;
5279
+ var CARD_STYLES, Highlight;
5295
5280
  var init_highlight = __esm({
5296
5281
  "src/internal/components/ui/highlight.tsx"() {
5297
5282
  init_utils2();
@@ -5301,13 +5286,30 @@ var init_highlight = __esm({
5301
5286
  warning: "text-[var(--ui-kit-warning)] bg-[var(--ui-kit-bg-warning)]",
5302
5287
  error: "text-[var(--ui-kit-error)] bg-[var(--ui-kit-bg-error)]"
5303
5288
  };
5289
+ Highlight = forwardRef2((props, ref) => {
5290
+ const { type = "info", children, className } = props;
5291
+ return /* @__PURE__ */ jsx3(
5292
+ "div",
5293
+ {
5294
+ ref,
5295
+ className: cn(
5296
+ "w-full text-xs rounded-[var(--ui-kit-el-bdrs)] p-[var(--ui-kit-pd)]",
5297
+ "whitespace-pre-line",
5298
+ type === "error" ? "break-all" : "break-normal",
5299
+ CARD_STYLES[type],
5300
+ className
5301
+ ),
5302
+ children
5303
+ }
5304
+ );
5305
+ });
5304
5306
  }
5305
5307
  });
5306
5308
 
5307
5309
  // src/internal/components/ui/button.tsx
5308
5310
  import { Slot } from "@radix-ui/react-slot";
5309
5311
  import { cva } from "class-variance-authority";
5310
- import { forwardRef as forwardRef2 } from "react";
5312
+ import { forwardRef as forwardRef3 } from "react";
5311
5313
  import { jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
5312
5314
  var buttonVariants, BORDER_RADIUSES, Button;
5313
5315
  var init_button = __esm({
@@ -5381,7 +5383,7 @@ var init_button = __esm({
5381
5383
  large: "var(--ui-kit-el-bdrs)",
5382
5384
  icon: ""
5383
5385
  };
5384
- Button = forwardRef2((props, ref) => {
5386
+ Button = forwardRef3((props, ref) => {
5385
5387
  const { className, variant = "default", size = "large", asChild = false, children, ...buttonProps } = props;
5386
5388
  const Comp = asChild ? Slot : "button";
5387
5389
  const isBorderGlow = variant === "secondary-glow" || variant === "default-glow";
@@ -5546,9 +5548,29 @@ var init_en = __esm({
5546
5548
  oops: "Oops, something went wrong. Please try again."
5547
5549
  },
5548
5550
  onboarding: {
5551
+ embarkAI: {
5552
+ title: "embarkAI",
5553
+ description: "embarkAI is a crypto wallet and web3 platform that allows you to manage your digital assets, interact with decentralized applications."
5554
+ },
5555
+ userSection: {
5556
+ title: "User Section",
5557
+ description: "Your profile meta, your wallet address, and settings toolbar."
5558
+ },
5549
5559
  tourButton: {
5550
5560
  title: "Tour Button",
5551
- description: 'Tours are available under the "?" buttons of embarkAI menus. Click to have menu tour'
5561
+ description: '"?" button initiates a brief tour that explains the current embarkAI active menu features.'
5562
+ },
5563
+ chainButton: {
5564
+ title: "Chain Button",
5565
+ description: "Change the connected chain in embarkAI (if allowed by application)"
5566
+ },
5567
+ logoutButton: {
5568
+ title: "Logout Button",
5569
+ description: "Logout embarkAI and profile wallet (if connected)"
5570
+ },
5571
+ settingsMenu: {
5572
+ title: "Settings Menu",
5573
+ description: "Manage embarkAI settings and preferences."
5552
5574
  }
5553
5575
  }
5554
5576
  },
@@ -5589,7 +5611,25 @@ var init_en = __esm({
5589
5611
  send: "Send",
5590
5612
  receive: "Receive",
5591
5613
  buy: "Buy",
5592
- assets: "Portfolio"
5614
+ assets: "Portfolio",
5615
+ onboarding: {
5616
+ sendButton: {
5617
+ title: "Send Menu",
5618
+ description: "Send directly to a wallet address on same chain via Send Menu, or Bridge between chains & wallets via Bridge Menu."
5619
+ },
5620
+ receiveButton: {
5621
+ title: "Receive Menu",
5622
+ description: "Receive directly to embarkAI wallet from another user on same chain via Receive Menu"
5623
+ },
5624
+ buyButton: {
5625
+ title: "Buy Menu",
5626
+ description: "Purchase crypto for fiat into embarkAI wallet via Buy Menu."
5627
+ },
5628
+ portfolioButton: {
5629
+ title: "Portfolio Menu",
5630
+ description: "Explore your crypto assets of embarkAI wallet via Portfolio Menu."
5631
+ }
5632
+ }
5593
5633
  },
5594
5634
  sendMenu: {
5595
5635
  title: "Send",
@@ -5677,7 +5717,7 @@ var init_en = __esm({
5677
5717
  },
5678
5718
  bridgeSenderWalletSelector: {
5679
5719
  title: "Select sender wallet",
5680
- description: "EmbarkAI can be authenticated by external wallet as auth-profile provider (Settings -> Profiles).\n External wallet profile can be used as sender (tx signer) for bridging crypto into embarkAI.\n Add external wallet profile if not done yet (Settings -> Profiles) and proceed with provided instructions"
5720
+ description: "External wallet profile can be used as sender (tx signer) for bridging crypto into embarkAI.\n Add external wallet profile if not done yet (Settings -> Profiles)"
5681
5721
  },
5682
5722
  bridgeCryptoAssetSelector: {
5683
5723
  title: "Select asset to bridge",
@@ -5705,7 +5745,13 @@ var init_en = __esm({
5705
5745
  title: "Receive Asset",
5706
5746
  copyAddress: "Copy Address",
5707
5747
  warning: "Ensure sender is on the same network",
5708
- share: "Share this address to receive tokens"
5748
+ share: "Share this address to receive tokens",
5749
+ onboarding: {
5750
+ receiveMenu: {
5751
+ title: "Receive Menu",
5752
+ description: "Share your address on selected chain to receive crypto assets from another user on the same chain."
5753
+ }
5754
+ }
5709
5755
  },
5710
5756
  buyMenu: {
5711
5757
  title: "Buy Crypto",
@@ -5768,7 +5814,7 @@ var init_en = __esm({
5768
5814
  }
5769
5815
  },
5770
5816
  portfolioMenu: {
5771
- title: "Your Assets",
5817
+ title: "Assets Portfolio",
5772
5818
  noAssets: "No assets found",
5773
5819
  noBlockscout: "No Blockscout API found for chain: {{chain}}"
5774
5820
  },
@@ -5776,7 +5822,13 @@ var init_en = __esm({
5776
5822
  title: "Transactions History",
5777
5823
  noTransactions: "No transactions found",
5778
5824
  internalTransactions: "Internal Transactions",
5779
- comingSoon: "Transaction history for this network is coming soon"
5825
+ comingSoon: "Transaction history for this network is coming soon",
5826
+ onboarding: {
5827
+ transactionsMenu: {
5828
+ title: "Transactions History",
5829
+ description: "On-chain transaction history for the currently selected chain."
5830
+ }
5831
+ }
5780
5832
  },
5781
5833
  kycMenu: {
5782
5834
  title: "KYC"
@@ -5810,6 +5862,12 @@ var init_en = __esm({
5810
5862
  initialUser: {
5811
5863
  welcome: "Your nickname is set as {{nickname}}",
5812
5864
  message: 'Change & Save on your demand, and "Continue":'
5865
+ },
5866
+ onboarding: {
5867
+ nicknameMenu: {
5868
+ title: "Nickname Menu",
5869
+ description: "Set your nickname for your embarkAI profile. You can change it later, but there is a cooldown period between changes."
5870
+ }
5813
5871
  }
5814
5872
  },
5815
5873
  profilesMenu: {
@@ -5829,7 +5887,13 @@ var init_en = __esm({
5829
5887
  },
5830
5888
  unlinkTitle: "This action cannot be undone",
5831
5889
  unlinkConfirm: "Type the provider ID to confirm removal",
5832
- unlinkPlaceholder: "Type provider ID"
5890
+ unlinkPlaceholder: "Type provider ID",
5891
+ onboarding: {
5892
+ profilesMenu: {
5893
+ title: "Profiles Menu",
5894
+ description: "Authentication into embarkAI can be handled multiple ways via connected profiles. Manage your connected profiles."
5895
+ }
5896
+ }
5833
5897
  },
5834
5898
  securityMenu: {
5835
5899
  title: "Security",
@@ -5855,7 +5919,44 @@ var init_en = __esm({
5855
5919
  valutBackupMissing: "Security Key Share Vault Backup Missing. Create one to ensure your data is safe."
5856
5920
  },
5857
5921
  lastBackup: "Existing Vault Keyshare backup",
5858
- lastBackupMeta: "Created via {{browser}} browser under {{os}}. {{deviceName}}"
5922
+ lastBackupMeta: "Created via {{browser}} browser under {{os}}. {{deviceName}}",
5923
+ onboarding: {
5924
+ securityMenu: {
5925
+ title: "Security Menu",
5926
+ description: "Account security, including connected applications and keyshare status."
5927
+ },
5928
+ keyshare: {
5929
+ title: "Keyshare Status",
5930
+ description: "embarkAI protection consists of two keyshare parts: one on safe server & one on your device.",
5931
+ detailsButton: "Watch Details",
5932
+ details: {
5933
+ concept: {
5934
+ title: "Core Concepts",
5935
+ description: "- Keyshares recombination gives the access key to your account.\n\n - Losing your part will result in losing access to your account\n\n - Your keyshare part exists on your device (Local Share), but also should be backed up at Keyshare Vault so you have embarkAI access on any device."
5936
+ },
5937
+ server: {
5938
+ title: "Server Keyshare",
5939
+ description: "An embarkAI safety server keyshare part."
5940
+ },
5941
+ local: {
5942
+ title: "Local Keyshare",
5943
+ description: "Your device keyshare part. If lost, you may lose access to your account."
5944
+ },
5945
+ vault: {
5946
+ title: "Vault Keyshare",
5947
+ description: "Your device keyshare part should be backed up in Vault to ensure your embarkAI wallet is accessible. Backup can be created via Settings Account Backup menu"
5948
+ }
5949
+ }
5950
+ },
5951
+ keyshareExistingVaultBkp: {
5952
+ title: "Existing Keyshare Vault backup",
5953
+ description: "Your Security Key Share Vault Backup should exist and be ready. You may lose access to your account if it is missing. Create one if not done yet to ensure your data is safe."
5954
+ },
5955
+ connectedApps: {
5956
+ title: "Connected Applications",
5957
+ description: "Connected applications are apps that you have accessed by embarkAI.\n - Connected apps can be trusted to skip transactions consent.\n - You can revoke trust approval anytime, then app will require your confirmation for every transaction again."
5958
+ }
5959
+ }
5859
5960
  },
5860
5961
  backupMenu: {
5861
5962
  title: "Account Backup",
@@ -5873,7 +5974,33 @@ var init_en = __esm({
5873
5974
  file: "Backup File",
5874
5975
  fileCreate: "Download Backup File encoded by",
5875
5976
  fileRestore: "Restore with File",
5876
- cloud: "Cloud"
5977
+ cloud: "Cloud",
5978
+ onboarding: {
5979
+ backupMenu: {
5980
+ title: "Account Backup Menu",
5981
+ description: "Your device local keyshare backup is essential for account recovery."
5982
+ },
5983
+ backupEncryptionMethod: {
5984
+ title: "Encryption Method",
5985
+ description: "Your device local keyshare backup must be encrypted with a password or a passkey, so only you can decrypt it no matter where backup is stored."
5986
+ },
5987
+ backupEncryptionPassword: {
5988
+ title: "Password",
5989
+ description: "Password is a common method to encrypt your keyshare backup. Make sure to use a strong password and remember it, as losing it may result in losing access to your account."
5990
+ },
5991
+ backupEncryptionPasskey: {
5992
+ title: "Passkey",
5993
+ description: "Passkeys are a password-free, device-locked alternative to encrypt your keyshare backup."
5994
+ },
5995
+ backupStatus: {
5996
+ title: "Backup Status",
5997
+ description: "Status indicates whether your keyshare backup is properly encrypted and stored."
5998
+ },
5999
+ backupAdvanced: {
6000
+ title: "Advanced Backup Options",
6001
+ description: "Explore advanced options to backup your device local keyshare."
6002
+ }
6003
+ }
5877
6004
  },
5878
6005
  restoreMenu: {
5879
6006
  title: "Account Recovery",
@@ -5892,7 +6019,16 @@ var init_en = __esm({
5892
6019
  description: "Current application is configured to use chain <b>{{preferredChain}}</b> instead of your current chain <b>{{currentChain}}</b>. <br /> Do you want to switch to the preferred chain?",
5893
6020
  confirmButton: "Switch to {{chain}}",
5894
6021
  cancelButton: "Keep Current Chain"
6022
+ },
6023
+ onboarding: {
6024
+ chainMenu: {
6025
+ title: "Chain Menu",
6026
+ description: "Switch between different blockchain networks supported by the embarkAI."
6027
+ }
5895
6028
  }
6029
+ },
6030
+ guardiansMenu: {
6031
+ title: "Guardians"
5896
6032
  }
5897
6033
  };
5898
6034
  }
@@ -5955,9 +6091,29 @@ var init_ru = __esm({
5955
6091
  oops: "\u0423\u043F\u0441, \u0447\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0441\u043D\u043E\u0432\u0430."
5956
6092
  },
5957
6093
  onboarding: {
6094
+ embarkAI: {
6095
+ title: "embarkAI",
6096
+ description: "embarkAI \u2014 \u044D\u0442\u043E \u043A\u0440\u0438\u043F\u0442\u043E\u043A\u043E\u0448\u0435\u043B\u0451\u043A \u0438 web3-\u043F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0430, \u043F\u043E\u0437\u0432\u043E\u043B\u044F\u044E\u0449\u0430\u044F \u0443\u043F\u0440\u0430\u0432\u043B\u044F\u0442\u044C \u0446\u0438\u0444\u0440\u043E\u0432\u044B\u043C\u0438 \u0430\u043A\u0442\u0438\u0432\u0430\u043C\u0438 \u0438 \u0432\u0437\u0430\u0438\u043C\u043E\u0434\u0435\u0439\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0441 \u0434\u0435\u0446\u0435\u043D\u0442\u0440\u0430\u043B\u0438\u0437\u043E\u0432\u0430\u043D\u043D\u044B\u043C\u0438 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F\u043C\u0438."
6097
+ },
6098
+ userSection: {
6099
+ title: "\u0420\u0430\u0437\u0434\u0435\u043B \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F",
6100
+ description: "\u041C\u0435\u0442\u0430\u0434\u0430\u043D\u043D\u044B\u0435 \u043F\u0440\u043E\u0444\u0438\u043B\u044F, \u0430\u0434\u0440\u0435\u0441 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 \u0438 \u043F\u0430\u043D\u0435\u043B\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043A."
6101
+ },
5958
6102
  tourButton: {
5959
6103
  title: "\u041A\u043D\u043E\u043F\u043A\u0430 \u0442\u0443\u0440\u0430",
5960
6104
  description: "\u0422\u0443\u0440\u044B \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B \u043F\u043E\u0434 \u043A\u043D\u043E\u043F\u043A\u0430\u043C\u0438 \xAB?\xBB \u043C\u0435\u043D\u044E embarkAI. \u041D\u0430\u0436\u043C\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0439\u0442\u0438 \u0442\u0443\u0440 \u043F\u043E \u043C\u0435\u043D\u044E"
6105
+ },
6106
+ chainButton: {
6107
+ title: "\u041A\u043D\u043E\u043F\u043A\u0430 \u0441\u0435\u0442\u0438",
6108
+ description: "\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u0443\u044E \u0441\u0435\u0442\u044C \u0432 embarkAI (\u0435\u0441\u043B\u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u043E \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435\u043C)"
6109
+ },
6110
+ logoutButton: {
6111
+ title: "\u041A\u043D\u043E\u043F\u043A\u0430 \u0432\u044B\u0445\u043E\u0434\u0430",
6112
+ description: "\u0412\u044B\u0439\u0442\u0438 \u0438\u0437 embarkAI \u0438 \u043F\u0440\u043E\u0444\u0438\u043B\u044F \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 (\u0435\u0441\u043B\u0438 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D)"
6113
+ },
6114
+ settingsMenu: {
6115
+ title: "\u041C\u0435\u043D\u044E \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043A",
6116
+ description: "\u0423\u043F\u0440\u0430\u0432\u043B\u044F\u0439\u0442\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430\u043C\u0438 \u0438 \u043F\u0440\u0435\u0434\u043F\u043E\u0447\u0442\u0435\u043D\u0438\u044F\u043C\u0438 embarkAI."
5961
6117
  }
5962
6118
  }
5963
6119
  },
@@ -5998,7 +6154,25 @@ var init_ru = __esm({
5998
6154
  send: "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C",
5999
6155
  receive: "\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C",
6000
6156
  buy: "\u041A\u0443\u043F\u0438\u0442\u044C",
6001
- assets: "\u041F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E"
6157
+ assets: "\u041F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E",
6158
+ onboarding: {
6159
+ sendButton: {
6160
+ title: "\u041C\u0435\u043D\u044E \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0438",
6161
+ description: "\u041E\u0442\u043F\u0440\u0430\u0432\u044C\u0442\u0435 \u043D\u0430\u043F\u0440\u044F\u043C\u0443\u044E \u043D\u0430 \u0430\u0434\u0440\u0435\u0441 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 \u0432 \u0442\u043E\u0439 \u0436\u0435 \u0441\u0435\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 \u043C\u0435\u043D\u044E \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0438 \u0438\u043B\u0438 \u0432\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u0435 \u043C\u043E\u0441\u0442 \u043C\u0435\u0436\u0434\u0443 \u0441\u0435\u0442\u044F\u043C\u0438 \u0438 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430\u043C\u0438 \u0447\u0435\u0440\u0435\u0437 \u043C\u0435\u043D\u044E \u043C\u043E\u0441\u0442\u0430."
6162
+ },
6163
+ receiveButton: {
6164
+ title: "\u041C\u0435\u043D\u044E \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F",
6165
+ description: "\u041F\u043E\u043B\u0443\u0447\u0430\u0439\u0442\u0435 \u043D\u0430\u043F\u0440\u044F\u043C\u0443\u044E \u043D\u0430 \u043A\u043E\u0448\u0435\u043B\u0451\u043A embarkAI \u043E\u0442 \u0434\u0440\u0443\u0433\u043E\u0433\u043E \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F \u0432 \u0442\u043E\u0439 \u0436\u0435 \u0441\u0435\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 \u043C\u0435\u043D\u044E \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F"
6166
+ },
6167
+ buyButton: {
6168
+ title: "\u041C\u0435\u043D\u044E \u043F\u043E\u043A\u0443\u043F\u043A\u0438",
6169
+ description: "\u041F\u043E\u043A\u0443\u043F\u0430\u0439\u0442\u0435 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 \u0437\u0430 \u0444\u0438\u0430\u0442 \u0432 \u043A\u043E\u0448\u0435\u043B\u0451\u043A embarkAI \u0447\u0435\u0440\u0435\u0437 \u043C\u0435\u043D\u044E \u043F\u043E\u043A\u0443\u043F\u043A\u0438."
6170
+ },
6171
+ portfolioButton: {
6172
+ title: "\u041C\u0435\u043D\u044E \u043F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E",
6173
+ description: "\u0418\u0437\u0443\u0447\u0438\u0442\u0435 \u043A\u0440\u0438\u043F\u0442\u043E\u0430\u043A\u0442\u0438\u0432\u044B \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 embarkAI \u0447\u0435\u0440\u0435\u0437 \u043C\u0435\u043D\u044E \u043F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E."
6174
+ }
6175
+ }
6002
6176
  },
6003
6177
  sendMenu: {
6004
6178
  title: "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C",
@@ -6086,7 +6260,7 @@ var init_ru = __esm({
6086
6260
  },
6087
6261
  bridgeSenderWalletSelector: {
6088
6262
  title: "\u0412\u044B\u0431\u043E\u0440 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430-\u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044F",
6089
- description: "EmbarkAI \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043E\u0432\u0430\u043D \u0432\u043D\u0435\u0448\u043D\u0438\u043C \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u043E\u043C \u043A\u0430\u043A \u043F\u043E\u0441\u0442\u0430\u0432\u0449\u0438\u043A \u043F\u0440\u043E\u0444\u0438\u043B\u044F \u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u0438 (\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 -> \u041F\u0440\u043E\u0444\u0438\u043B\u0438).\n \u041F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043A\u0430\u043A \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C (\u043F\u043E\u0434\u043F\u0438\u0441\u0430\u043D\u0442 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439) \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u044B \u0432 embarkAI.\n \u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430, \u0435\u0441\u043B\u0438 \u044D\u0442\u043E \u0435\u0449\u0451 \u043D\u0435 \u0441\u0434\u0435\u043B\u0430\u043D\u043E (\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 -> \u041F\u0440\u043E\u0444\u0438\u043B\u0438), \u0438 \u0441\u043B\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043A\u0446\u0438\u044F\u043C."
6263
+ description: "\u041F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043A\u0430\u043A \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C (\u043F\u043E\u0434\u043F\u0438\u0441\u0430\u043D\u0442 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439) \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u044B \u0432 embarkAI.\n \u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430, \u0435\u0441\u043B\u0438 \u044D\u0442\u043E \u0435\u0449\u0451 \u043D\u0435 \u0441\u0434\u0435\u043B\u0430\u043D\u043E (\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 -> \u041F\u0440\u043E\u0444\u0438\u043B\u0438)."
6090
6264
  },
6091
6265
  bridgeCryptoAssetSelector: {
6092
6266
  title: "\u0412\u044B\u0431\u043E\u0440 \u0430\u043A\u0442\u0438\u0432\u0430 \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F",
@@ -6114,7 +6288,13 @@ var init_ru = __esm({
6114
6288
  title: "\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0430\u043A\u0442\u0438\u0432",
6115
6289
  copyAddress: "\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0430\u0434\u0440\u0435\u0441",
6116
6290
  warning: "\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u0441\u044F \u0432 \u0442\u043E\u0439 \u0436\u0435 \u0441\u0435\u0442\u0438",
6117
- share: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u044D\u0442\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0442\u043E\u043A\u0435\u043D\u044B"
6291
+ share: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u044D\u0442\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0442\u043E\u043A\u0435\u043D\u044B",
6292
+ onboarding: {
6293
+ receiveMenu: {
6294
+ title: "\u041C\u0435\u043D\u044E \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F",
6295
+ description: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u0441\u0432\u043E\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C \u0432 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u043E\u0439 \u0441\u0435\u0442\u0438, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E\u0430\u043A\u0442\u0438\u0432\u044B \u043E\u0442 \u0434\u0440\u0443\u0433\u043E\u0433\u043E \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F \u0432 \u0442\u043E\u0439 \u0436\u0435 \u0441\u0435\u0442\u0438."
6296
+ }
6297
+ }
6118
6298
  },
6119
6299
  buyMenu: {
6120
6300
  title: "\u041A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E",
@@ -6177,7 +6357,7 @@ var init_ru = __esm({
6177
6357
  }
6178
6358
  },
6179
6359
  portfolioMenu: {
6180
- title: "\u0412\u0430\u0448\u0438 \u0430\u043A\u0442\u0438\u0432\u044B",
6360
+ title: "\u041F\u043E\u0440\u0442\u0444\u043E\u043B\u0438\u043E \u0430\u043A\u0442\u0438\u0432\u043E\u0432",
6181
6361
  noAssets: "\u0410\u043A\u0442\u0438\u0432\u044B \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",
6182
6362
  noBlockscout: "Blockscout API \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u0434\u043B\u044F \u0441\u0435\u0442\u0438: {{chain}}"
6183
6363
  },
@@ -6185,7 +6365,13 @@ var init_ru = __esm({
6185
6365
  title: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439",
6186
6366
  noTransactions: "\u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0438 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",
6187
6367
  internalTransactions: "\u0412\u043D\u0443\u0442\u0440\u0435\u043D\u043D\u0438\u0435 \u0422\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0438",
6188
- comingSoon: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439 \u0434\u043B\u044F \u044D\u0442\u043E\u0439 \u0441\u0435\u0442\u0438 \u0441\u043A\u043E\u0440\u043E \u0431\u0443\u0434\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430"
6368
+ comingSoon: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439 \u0434\u043B\u044F \u044D\u0442\u043E\u0439 \u0441\u0435\u0442\u0438 \u0441\u043A\u043E\u0440\u043E \u0431\u0443\u0434\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430",
6369
+ onboarding: {
6370
+ transactionsMenu: {
6371
+ title: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439",
6372
+ description: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439 \u0432 \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D\u0435 \u0434\u043B\u044F \u0442\u0435\u043A\u0443\u0449\u0435\u0439 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u043E\u0439 \u0441\u0435\u0442\u0438."
6373
+ }
6374
+ }
6189
6375
  },
6190
6376
  kycMenu: {
6191
6377
  title: "KYC"
@@ -6219,6 +6405,12 @@ var init_ru = __esm({
6219
6405
  initialUser: {
6220
6406
  welcome: "\u0412\u0430\u0448 \u043D\u0438\u043A\u043D\u0435\u0439\u043C \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D \u043A\u0430\u043A {{nickname}}",
6221
6407
  message: '\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u0435 \u043F\u043E \u0432\u0430\u0448\u0435\u043C\u0443 \u0436\u0435\u043B\u0430\u043D\u0438\u044E, \u0438 \u0437\u0430\u0442\u0435\u043C "\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C":'
6408
+ },
6409
+ onboarding: {
6410
+ nicknameMenu: {
6411
+ title: "\u041C\u0435\u043D\u044E \u043D\u0438\u043A\u043D\u0435\u0439\u043C\u0430",
6412
+ description: "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0435 \u043D\u0438\u043A\u043D\u0435\u0439\u043C \u0434\u043B\u044F \u0432\u0430\u0448\u0435\u0433\u043E \u043F\u0440\u043E\u0444\u0438\u043B\u044F embarkAI. \u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0435\u0433\u043E \u043F\u043E\u0437\u0436\u0435, \u043D\u043E \u043C\u0435\u0436\u0434\u0443 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F\u043C\u0438 \u0435\u0441\u0442\u044C \u043F\u0435\u0440\u0438\u043E\u0434 \u043E\u0436\u0438\u0434\u0430\u043D\u0438\u044F."
6413
+ }
6222
6414
  }
6223
6415
  },
6224
6416
  profilesMenu: {
@@ -6238,7 +6430,13 @@ var init_ru = __esm({
6238
6430
  },
6239
6431
  unlinkTitle: "\u042D\u0442\u043E \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043D\u0435\u043B\u044C\u0437\u044F \u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C",
6240
6432
  unlinkConfirm: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 ID \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u0434\u043B\u044F \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u044F",
6241
- unlinkPlaceholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 ID \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430"
6433
+ unlinkPlaceholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 ID \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430",
6434
+ onboarding: {
6435
+ profilesMenu: {
6436
+ title: "\u041C\u0435\u043D\u044E \u043F\u0440\u043E\u0444\u0438\u043B\u0435\u0439",
6437
+ description: "\u0410\u0432\u0442\u043E\u0440\u0438\u0437\u0430\u0446\u0438\u044F \u0432 embarkAI \u043C\u043E\u0436\u0435\u0442 \u043E\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043B\u044F\u0442\u044C\u0441\u044F \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u0438\u043C\u0438 \u0441\u043F\u043E\u0441\u043E\u0431\u0430\u043C\u0438 \u0447\u0435\u0440\u0435\u0437 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u044B\u0435 \u043F\u0440\u043E\u0444\u0438\u043B\u0438. \u0423\u043F\u0440\u0430\u0432\u043B\u044F\u0439\u0442\u0435 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u044B\u043C\u0438 \u043F\u0440\u043E\u0444\u0438\u043B\u044F\u043C\u0438."
6438
+ }
6439
+ }
6242
6440
  },
6243
6441
  securityMenu: {
6244
6442
  title: "\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u044C",
@@ -6264,7 +6462,44 @@ var init_ru = __esm({
6264
6462
  valutBackupMissing: "\u0420\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F \u0432\u0430\u0448\u0435\u0439 \u043F\u0440\u0438\u0432\u0430\u0442\u043D\u043E\u0439 \u0447\u0430\u0441\u0442\u0438 \u043A\u043B\u044E\u0447\u0430 \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442. \u0421\u043E\u0437\u0434\u0430\u0439\u0442\u0435 \u0435\u0451 \u0434\u043B\u044F \u043E\u0431\u0435\u0441\u043F\u0435\u0447\u0435\u043D\u0438\u044F \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438 \u0432\u0430\u0448\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445."
6265
6463
  },
6266
6464
  lastBackup: "\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u044F\u044F \u0440\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F Keyshare Vault",
6267
- lastBackupMeta: "\u0421\u043E\u0437\u0434\u0430\u043D\u043E \u0447\u0435\u0440\u0435\u0437 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 {{browser}} \u043F\u043E\u0434 \u0443\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u043C {{os}}. {{deviceName}}"
6465
+ lastBackupMeta: "\u0421\u043E\u0437\u0434\u0430\u043D\u043E \u0447\u0435\u0440\u0435\u0437 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 {{browser}} \u043F\u043E\u0434 \u0443\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435\u043C {{os}}. {{deviceName}}",
6466
+ onboarding: {
6467
+ securityMenu: {
6468
+ title: "\u041C\u0435\u043D\u044E \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438",
6469
+ description: "\u0411\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u044C \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0430, \u0432\u043A\u043B\u044E\u0447\u0430\u044F \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u044B\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \u0438 \u0441\u0442\u0430\u0442\u0443\u0441 \u043A\u043B\u044E\u0447\u0435\u0439."
6470
+ },
6471
+ keyshare: {
6472
+ title: "\u0421\u0442\u0430\u0442\u0443\u0441 Keyshare",
6473
+ description: "\u0417\u0430\u0449\u0438\u0442\u0430 embarkAi \u043E\u0441\u043D\u043E\u0432\u0430\u043D\u0430 \u043D\u0430 \u0434\u0432\u0443\u0445 \u0447\u0430\u0441\u0442\u044F\u0445 \u043A\u043B\u044E\u0447\u0430: \u043E\u0434\u043D\u0430 \u043D\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0438 \u043E\u0434\u043D\u0430 \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435. \u041E\u0431\u0435 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u044B \u0434\u043B\u044F \u0434\u043E\u0441\u0442\u0443\u043F\u0430 \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443. \n\u0412\u0430\u0448\u0430 \u0447\u0430\u0441\u0442\u044C \u043A\u043B\u044E\u0447\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435 (\u043B\u043E\u043A\u0430\u043B\u044C\u043D\u043E) \u0438 \u0442\u0430\u043A\u0436\u0435 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0430 \u0432 Vault \u0434\u043B\u044F \u0431\u043E\u043B\u044C\u0448\u0435\u0439 \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438",
6474
+ detailsButton: "\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u0435\u0435",
6475
+ details: {
6476
+ concept: {
6477
+ title: "\u041E\u0441\u043D\u043E\u0432\u043D\u044B\u0435 \u043F\u043E\u043D\u044F\u0442\u0438\u044F",
6478
+ description: "- \u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0435 \u043A\u043B\u044E\u0447\u0435\u0439 \u043E\u0442\u043A\u0440\u044B\u0432\u0430\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F \u043A \u0432\u0430\u0448\u0435\u043C\u0443 \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443.\n\n - \u041F\u043E\u0442\u0435\u0440\u044F \u0432\u0430\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u043F\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043A \u043F\u043E\u0442\u0435\u0440\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0430 \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443\n\n - \u0412\u0430\u0448\u0430 \u0447\u0430\u0441\u0442\u044C \u043A\u043B\u044E\u0447\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435 (\u041B\u043E\u043A\u0430\u043B\u044C\u043D\u044B\u0439 Share), \u043D\u043E \u0442\u0430\u043A\u0436\u0435 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0430 \u0432 Keyshare Vault \u0434\u043B\u044F \u0434\u043E\u0441\u0442\u0443\u043F\u0430 \u043A embarkAI \u0441 \u043B\u044E\u0431\u043E\u0433\u043E \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430."
6479
+ },
6480
+ server: {
6481
+ title: "\u0421\u0435\u0440\u0432\u0435\u0440\u043D\u044B\u0439 Keyshare",
6482
+ description: "\u0427\u0430\u0441\u0442\u044C \u043A\u043B\u044E\u0447\u0430 \u0445\u0440\u0430\u043D\u0438\u0442\u0441\u044F \u043D\u0430 \u0437\u0430\u0449\u0438\u0449\u0451\u043D\u043D\u043E\u043C \u0441\u0435\u0440\u0432\u0435\u0440\u0435. "
6483
+ },
6484
+ local: {
6485
+ title: "\u041B\u043E\u043A\u0430\u043B\u044C\u043D\u044B\u0439 Keyshare",
6486
+ description: "\u0427\u0430\u0441\u0442\u044C \u043A\u043B\u044E\u0447\u0430 \u0445\u0440\u0430\u043D\u0438\u0442\u0441\u044F \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435 (\u043B\u043E\u043A\u0430\u043B\u044C\u043D\u043E) \u0434\u043B\u044F \u0434\u043E\u0441\u0442\u0443\u043F\u0430 \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443 \u0441\u043E\u0432\u043C\u0435\u0441\u0442\u043D\u043E \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043D\u044B\u043C \u043A\u043B\u044E\u0447\u043E\u043C. \u041F\u0440\u0438 \u0443\u0442\u0435\u0440\u0435 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u043E\u0442\u0435\u0440\u044F\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443."
6487
+ },
6488
+ vault: {
6489
+ title: "Vault Keyshare",
6490
+ description: "\u0412\u0430\u0448\u0430 \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u0430\u044F \u0447\u0430\u0441\u0442\u044C \u043A\u043B\u044E\u0447\u0430 \u0434\u043E\u043B\u0436\u043D\u0430 \u0445\u0440\u0430\u043D\u0438\u0442\u044C\u0441\u044F \u0432 Vault \u0434\u043B\u044F \u043E\u0431\u0435\u0441\u043F\u0435\u0447\u0435\u043D\u0438\u044F \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438 \u0438 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u043E\u0441\u0442\u0438 \u0434\u0430\u043D\u043D\u044B\u0445. \u0420\u0435\u0437\u0435\u0440\u0432\u043D\u0443\u044E \u043A\u043E\u043F\u0438\u044E \u043C\u043E\u0436\u043D\u043E \u0441\u043E\u0437\u0434\u0430\u0442\u044C \u0447\u0435\u0440\u0435\u0437 \u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 -> \u0411\u0435\u043A\u0430\u043F \u0410\u043A\u043A\u0430\u0443\u043D\u0442\u0430"
6491
+ }
6492
+ }
6493
+ },
6494
+ keyshareExistingVaultBkp: {
6495
+ title: "\u0420\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F Keyshare Vault",
6496
+ description: "\u0412\u0430\u0448\u0430 \u0440\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F \u043A\u043B\u044E\u0447\u0430 \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438 \u0432 Vault \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0438 \u0431\u044B\u0442\u044C \u0433\u043E\u0442\u043E\u0432\u0430. \u041F\u0440\u0438 \u0435\u0451 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u043E\u0442\u0435\u0440\u044F\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443. \u0421\u043E\u0437\u0434\u0430\u0439\u0442\u0435 \u0435\u0451, \u0435\u0441\u043B\u0438 \u044D\u0442\u043E \u0435\u0449\u0451 \u043D\u0435 \u0441\u0434\u0435\u043B\u0430\u043D\u043E, \u0434\u043B\u044F \u043E\u0431\u0435\u0441\u043F\u0435\u0447\u0435\u043D\u0438\u044F \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438 \u0432\u0430\u0448\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445."
6497
+ },
6498
+ connectedApps: {
6499
+ title: "\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u044B\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F",
6500
+ description: "\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u044B\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \u2014 \u044D\u0442\u043E \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F, \u043A \u043A\u043E\u0442\u043E\u0440\u044B\u043C \u0432\u044B \u043F\u043E\u043B\u0443\u0447\u0430\u043B\u0438 \u0434\u043E\u0441\u0442\u0443\u043F \u0447\u0435\u0440\u0435\u0437 embarkAI.\n - \u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0451\u043D\u043D\u044B\u043C \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F\u043C \u043C\u043E\u0436\u043D\u043E \u0434\u043E\u0432\u0435\u0440\u044F\u0442\u044C, \u0447\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u043F\u0443\u0441\u043A\u0430\u0442\u044C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439.\n - \u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043E\u0442\u043E\u0437\u0432\u0430\u0442\u044C \u0434\u043E\u0432\u0435\u0440\u0438\u0435 \u0432 \u043B\u044E\u0431\u043E\u0435 \u0432\u0440\u0435\u043C\u044F, \u043F\u043E\u0441\u043B\u0435 \u0447\u0435\u0433\u043E \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043D\u043E\u0432\u0430 \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u0442\u044C \u0432\u0430\u0448\u0435\u0433\u043E \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0434\u043B\u044F \u043A\u0430\u0436\u0434\u043E\u0439 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0438."
6501
+ }
6502
+ }
6268
6503
  },
6269
6504
  backupMenu: {
6270
6505
  title: "\u0411\u0435\u043A\u0430\u043F \u0410\u043A\u043A\u0430\u0443\u043D\u0442\u0430",
@@ -6282,7 +6517,33 @@ var init_ru = __esm({
6282
6517
  file: "\u0411\u0435\u043A\u0430\u043F-\u0444\u0430\u0439\u043B",
6283
6518
  fileCreate: "\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u0411\u0435\u043A\u0430\u043F-\u0444\u0430\u0439\u043B, \u0437\u0430\u0448\u0438\u0444\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0439 \u0447\u0435\u0440\u0435\u0437",
6284
6519
  fileRestore: "\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u0411\u0435\u043A\u0430\u043F-\u0444\u0430\u0439\u043B\u0430",
6285
- cloud: "\u041E\u0431\u043B\u0430\u043A\u043E"
6520
+ cloud: "\u041E\u0431\u043B\u0430\u043A\u043E",
6521
+ onboarding: {
6522
+ backupMenu: {
6523
+ title: "\u041C\u0435\u043D\u044E \u0431\u0435\u043A\u0430\u043F\u0430 \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0430",
6524
+ description: "\u0420\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u043A\u043B\u044E\u0447\u0430 \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u0430 \u0434\u043B\u044F \u0432\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u044F \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0430."
6525
+ },
6526
+ backupEncryptionMethod: {
6527
+ title: "\u041C\u0435\u0442\u043E\u0434 \u0448\u0438\u0444\u0440\u043E\u0432\u0430\u043D\u0438\u044F",
6528
+ description: "\u0420\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u043A\u043B\u044E\u0447\u0430 \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0437\u0430\u0448\u0438\u0444\u0440\u043E\u0432\u0430\u043D\u0430 \u043F\u0430\u0440\u043E\u043B\u0435\u043C \u0438\u043B\u0438 passkey, \u0447\u0442\u043E\u0431\u044B \u0442\u043E\u043B\u044C\u043A\u043E \u0432\u044B \u043C\u043E\u0433\u043B\u0438 \u0435\u0451 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043E\u0432\u0430\u0442\u044C, \u043D\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043C\u043E \u043E\u0442 \u043C\u0435\u0441\u0442\u0430 \u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F."
6529
+ },
6530
+ backupEncryptionPassword: {
6531
+ title: "\u041F\u0430\u0440\u043E\u043B\u044C",
6532
+ description: "\u041F\u0430\u0440\u043E\u043B\u044C \u2014 \u0440\u0430\u0441\u043F\u0440\u043E\u0441\u0442\u0440\u0430\u043D\u0451\u043D\u043D\u044B\u0439 \u0441\u043F\u043E\u0441\u043E\u0431 \u0448\u0438\u0444\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0440\u0435\u0437\u0435\u0440\u0432\u043D\u043E\u0439 \u043A\u043E\u043F\u0438\u0438 \u043A\u043B\u044E\u0447\u0430. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u043D\u0430\u0434\u0451\u0436\u043D\u044B\u0439 \u043F\u0430\u0440\u043E\u043B\u044C \u0438 \u0437\u0430\u043F\u043E\u043C\u043D\u0438\u0442\u0435 \u0435\u0433\u043E, \u0442\u0430\u043A \u043A\u0430\u043A \u0435\u0433\u043E \u043F\u043E\u0442\u0435\u0440\u044F \u043C\u043E\u0436\u0435\u0442 \u043F\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043A \u043F\u043E\u0442\u0435\u0440\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0430 \u043A \u0430\u043A\u043A\u0430\u0443\u043D\u0442\u0443."
6533
+ },
6534
+ backupEncryptionPasskey: {
6535
+ title: "Passkey",
6536
+ description: "Passkey \u2014 \u044D\u0442\u043E \u0430\u043B\u044C\u0442\u0435\u0440\u043D\u0430\u0442\u0438\u0432\u0430 \u0431\u0435\u0437 \u043F\u0430\u0440\u043E\u043B\u044F, \u043F\u0440\u0438\u0432\u044F\u0437\u0430\u043D\u043D\u0430\u044F \u043A \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0443, \u0434\u043B\u044F \u0448\u0438\u0444\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0440\u0435\u0437\u0435\u0440\u0432\u043D\u043E\u0439 \u043A\u043E\u043F\u0438\u0438 \u043A\u043B\u044E\u0447\u0430."
6537
+ },
6538
+ backupStatus: {
6539
+ title: "\u0421\u0442\u0430\u0442\u0443\u0441 \u0431\u0435\u043A\u0430\u043F\u0430",
6540
+ description: "\u0421\u0442\u0430\u0442\u0443\u0441 \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0435\u0442, \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u043E \u043B\u0438 \u0437\u0430\u0448\u0438\u0444\u0440\u043E\u0432\u0430\u043D\u0430 \u0438 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0430 \u0432\u0430\u0448\u0430 \u0440\u0435\u0437\u0435\u0440\u0432\u043D\u0430\u044F \u043A\u043E\u043F\u0438\u044F \u043A\u043B\u044E\u0447\u0430."
6541
+ },
6542
+ backupAdvanced: {
6543
+ title: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0431\u0435\u043A\u0430\u043F\u0430",
6544
+ description: "\u0418\u0437\u0443\u0447\u0438\u0442\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u0434\u043B\u044F \u0440\u0435\u0437\u0435\u0440\u0432\u043D\u043E\u0433\u043E \u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u043B\u043E\u043A\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u043A\u043B\u044E\u0447\u0430 \u043D\u0430 \u0432\u0430\u0448\u0435\u043C \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435."
6545
+ }
6546
+ }
6286
6547
  },
6287
6548
  restoreMenu: {
6288
6549
  title: "\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435 \u0410\u043A\u043A\u0430\u0443\u043D\u0442\u0430",
@@ -6301,7 +6562,16 @@ var init_ru = __esm({
6301
6562
  description: "\u0422\u0435\u043A\u0443\u0449\u0435\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043D\u043E \u043D\u0430 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435 \u0441\u0435\u0442\u0438 <b>{{preferredChain}}</b> \u0432\u043C\u0435\u0441\u0442\u043E \u0432\u0430\u0448\u0435\u0439 \u0442\u0435\u043A\u0443\u0449\u0435\u0439 \u0441\u0435\u0442\u0438 <b>{{currentChain}}</b>. <br /> \u0425\u043E\u0442\u0438\u0442\u0435 \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0441\u044F \u043D\u0430 \u043F\u0440\u0435\u0434\u043F\u043E\u0447\u0438\u0442\u0430\u0435\u043C\u0443\u044E \u0441\u0435\u0442\u044C?",
6302
6563
  confirmButton: "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0441\u044F \u043D\u0430 {{chain}}",
6303
6564
  cancelButton: "\u041E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0443\u044E \u0441\u0435\u0442\u044C"
6565
+ },
6566
+ onboarding: {
6567
+ chainMenu: {
6568
+ title: "\u041C\u0435\u043D\u044E \u0441\u0435\u0442\u0438",
6569
+ description: "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0439\u0442\u0435\u0441\u044C \u043C\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u043C\u0438 \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D-\u0441\u0435\u0442\u044F\u043C\u0438, \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043C\u044B\u043C\u0438 embarkAI."
6570
+ }
6304
6571
  }
6572
+ },
6573
+ guardiansMenu: {
6574
+ title: "\u0423\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430-\u0441\u0442\u0440\u0430\u0436\u0438"
6305
6575
  }
6306
6576
  };
6307
6577
  }
@@ -6364,9 +6634,29 @@ var init_zh = __esm({
6364
6634
  oops: "\u54CE\u5440\uFF0C\u51FA\u4E86\u70B9\u95EE\u9898\u3002\u8BF7\u518D\u8BD5\u4E00\u6B21\u3002"
6365
6635
  },
6366
6636
  onboarding: {
6637
+ embarkAI: {
6638
+ title: "embarkAI",
6639
+ description: "embarkAI \u662F\u4E00\u4E2A\u52A0\u5BC6\u94B1\u5305\u548C web3 \u5E73\u53F0\uFF0C\u5141\u8BB8\u60A8\u7BA1\u7406\u6570\u5B57\u8D44\u4EA7\u5E76\u4E0E\u53BB\u4E2D\u5FC3\u5316\u5E94\u7528\u7A0B\u5E8F\u4EA4\u4E92\u3002"
6640
+ },
6641
+ userSection: {
6642
+ title: "\u7528\u6237\u533A\u57DF",
6643
+ description: "\u60A8\u7684\u4E2A\u4EBA\u8D44\u6599\u5143\u6570\u636E\u3001\u94B1\u5305\u5730\u5740\u548C\u8BBE\u7F6E\u5DE5\u5177\u680F\u3002"
6644
+ },
6367
6645
  tourButton: {
6368
6646
  title: "\u5BFC\u89C8\u6309\u9215",
6369
6647
  description: "\u5BFC\u89C8\u529F\u80FD\u53EF\u5728 embarkAI \u83DC\u5355\u7684\u201C\uFF1F\u201D\u6309\u9215\u4E0B\u627E\u5230\u3002\u70B9\u51FB\u5373\u53EF\u5F00\u59CB\u83DC\u5355\u5BFC\u89C8"
6648
+ },
6649
+ chainButton: {
6650
+ title: "\u94FE\u6309\u94AE",
6651
+ description: "\u66F4\u6539 embarkAI \u4E2D\u8FDE\u63A5\u7684\u94FE\uFF08\u5982\u679C\u5E94\u7528\u7A0B\u5E8F\u5141\u8BB8\uFF09"
6652
+ },
6653
+ logoutButton: {
6654
+ title: "\u9000\u51FA\u6309\u94AE",
6655
+ description: "\u9000\u51FA embarkAI \u548C\u4E2A\u4EBA\u8D44\u6599\u94B1\u5305\uFF08\u5982\u679C\u5DF2\u8FDE\u63A5\uFF09"
6656
+ },
6657
+ settingsMenu: {
6658
+ title: "\u8BBE\u7F6E\u83DC\u5355",
6659
+ description: "\u7BA1\u7406 embarkAI \u7684\u8BBE\u7F6E\u548C\u504F\u597D\u3002"
6370
6660
  }
6371
6661
  }
6372
6662
  },
@@ -6407,7 +6697,25 @@ var init_zh = __esm({
6407
6697
  send: "\u53D1\u9001",
6408
6698
  receive: "\u63A5\u6536",
6409
6699
  buy: "\u8D2D\u4E70",
6410
- assets: "\u6295\u8D44\u7EC4\u5408"
6700
+ assets: "\u6295\u8D44\u7EC4\u5408",
6701
+ onboarding: {
6702
+ sendButton: {
6703
+ title: "\u53D1\u9001\u83DC\u5355",
6704
+ description: "\u901A\u8FC7\u53D1\u9001\u83DC\u5355\u76F4\u63A5\u53D1\u9001\u5230\u540C\u4E00\u94FE\u4E0A\u7684\u94B1\u5305\u5730\u5740\uFF0C\u6216\u901A\u8FC7\u8DE8\u94FE\u83DC\u5355\u5728\u94FE\u548C\u94B1\u5305\u4E4B\u95F4\u8FDB\u884C\u6865\u63A5\u3002"
6705
+ },
6706
+ receiveButton: {
6707
+ title: "\u63A5\u6536\u83DC\u5355",
6708
+ description: "\u901A\u8FC7\u63A5\u6536\u83DC\u5355\u76F4\u63A5\u4ECE\u540C\u4E00\u94FE\u4E0A\u7684\u5176\u4ED6\u7528\u6237\u63A5\u6536\u5230 embarkAI \u94B1\u5305"
6709
+ },
6710
+ buyButton: {
6711
+ title: "\u8D2D\u4E70\u83DC\u5355",
6712
+ description: "\u901A\u8FC7\u8D2D\u4E70\u83DC\u5355\u5C06\u6CD5\u5E01\u8D2D\u4E70\u7684\u52A0\u5BC6\u8D27\u5E01\u5B58\u5165 embarkAI \u94B1\u5305\u3002"
6713
+ },
6714
+ portfolioButton: {
6715
+ title: "\u6295\u8D44\u7EC4\u5408\u83DC\u5355",
6716
+ description: "\u901A\u8FC7\u6295\u8D44\u7EC4\u5408\u83DC\u5355\u63A2\u7D22 embarkAI \u94B1\u5305\u7684\u52A0\u5BC6\u8D44\u4EA7\u3002"
6717
+ }
6718
+ }
6411
6719
  },
6412
6720
  sendMenu: {
6413
6721
  title: "\u53D1\u9001",
@@ -6523,7 +6831,13 @@ var init_zh = __esm({
6523
6831
  title: "\u63A5\u6536\u8D44\u4EA7",
6524
6832
  copyAddress: "\u590D\u5236\u5730\u5740",
6525
6833
  warning: "\u786E\u4FDD\u53D1\u9001\u65B9\u4E0E\u60A8\u5728\u540C\u4E00\u7F51\u7EDC\u4E0A",
6526
- share: "\u5206\u4EAB\u6B64\u5730\u5740\u4EE5\u63A5\u6536\u4EE3\u5E01"
6834
+ share: "\u5206\u4EAB\u6B64\u5730\u5740\u4EE5\u63A5\u6536\u4EE3\u5E01",
6835
+ onboarding: {
6836
+ receiveMenu: {
6837
+ title: "\u63A5\u6536\u83DC\u5355",
6838
+ description: "\u5728\u6240\u9009\u94FE\u4E0A\u5206\u4EAB\u60A8\u7684\u5730\u5740\uFF0C\u4EE5\u4FBF\u4ECE\u540C\u4E00\u94FE\u4E0A\u7684\u5176\u4ED6\u7528\u6237\u63A5\u6536\u52A0\u5BC6\u8D44\u4EA7\u3002"
6839
+ }
6840
+ }
6527
6841
  },
6528
6842
  buyMenu: {
6529
6843
  title: "\u8D2D\u4E70\u52A0\u5BC6\u8D27\u5E01",
@@ -6586,7 +6900,7 @@ var init_zh = __esm({
6586
6900
  }
6587
6901
  },
6588
6902
  portfolioMenu: {
6589
- title: "\u60A8\u7684\u8D44\u4EA7",
6903
+ title: "\u8D44\u4EA7\u7EC4\u5408",
6590
6904
  noAssets: "\u672A\u627E\u5230\u8D44\u4EA7",
6591
6905
  noBlockscout: "\u672A\u627E\u5230\u94FE {{chain}} \u7684 Blockscout API"
6592
6906
  },
@@ -6594,7 +6908,13 @@ var init_zh = __esm({
6594
6908
  title: "\u4EA4\u6613\u8BB0\u5F55",
6595
6909
  noTransactions: "\u672A\u627E\u5230\u4EA4\u6613",
6596
6910
  internalTransactions: "\u5185\u90E8\u4EA4\u6613",
6597
- comingSoon: "\u8BE5\u7F51\u7EDC\u7684\u4EA4\u6613\u8BB0\u5F55\u5373\u5C06\u4E0A\u7EBF"
6911
+ comingSoon: "\u8BE5\u7F51\u7EDC\u7684\u4EA4\u6613\u8BB0\u5F55\u5373\u5C06\u4E0A\u7EBF",
6912
+ onboarding: {
6913
+ transactionsMenu: {
6914
+ title: "\u4EA4\u6613\u8BB0\u5F55",
6915
+ description: "\u5F53\u524D\u6240\u9009\u94FE\u7684\u94FE\u4E0A\u4EA4\u6613\u5386\u53F2\u8BB0\u5F55\u3002"
6916
+ }
6917
+ }
6598
6918
  },
6599
6919
  kycMenu: {
6600
6920
  title: "KYC"
@@ -6628,6 +6948,12 @@ var init_zh = __esm({
6628
6948
  initialUser: {
6629
6949
  welcome: "\u60A8\u7684\u6635\u79F0\u5DF2\u8BBE\u7F6E\u4E3A {{nickname}}",
6630
6950
  message: "\u6839\u636E\u60A8\u7684\u9700\u6C42\u66F4\u6539\u5E76\u4FDD\u5B58\uFF0C\u7136\u540E\u70B9\u51FB\u201C\u7EE7\u7EED\u201D\uFF1A"
6951
+ },
6952
+ onboarding: {
6953
+ nicknameMenu: {
6954
+ title: "\u6635\u79F0\u83DC\u5355",
6955
+ description: "\u4E3A\u60A8\u7684 embarkAI \u4E2A\u4EBA\u8D44\u6599\u8BBE\u7F6E\u6635\u79F0\u3002\u60A8\u53EF\u4EE5\u7A0D\u540E\u66F4\u6539\uFF0C\u4F46\u4E24\u6B21\u66F4\u6539\u4E4B\u95F4\u6709\u51B7\u5374\u671F\u3002"
6956
+ }
6631
6957
  }
6632
6958
  },
6633
6959
  profilesMenu: {
@@ -6647,7 +6973,13 @@ var init_zh = __esm({
6647
6973
  },
6648
6974
  unlinkTitle: "\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500",
6649
6975
  unlinkConfirm: "\u8F93\u5165\u63D0\u4F9B\u5546 ID \u4EE5\u786E\u8BA4\u79FB\u9664",
6650
- unlinkPlaceholder: "\u8F93\u5165\u63D0\u4F9B\u5546 ID"
6976
+ unlinkPlaceholder: "\u8F93\u5165\u63D0\u4F9B\u5546 ID",
6977
+ onboarding: {
6978
+ profilesMenu: {
6979
+ title: "\u4E2A\u4EBA\u8D44\u6599\u83DC\u5355",
6980
+ description: "\u901A\u8FC7\u5DF2\u8FDE\u63A5\u7684\u4E2A\u4EBA\u8D44\u6599\uFF0C\u53EF\u4EE5\u4EE5\u591A\u79CD\u65B9\u5F0F\u8FDB\u884C embarkAI \u8EAB\u4EFD\u9A8C\u8BC1\u3002\u7BA1\u7406\u60A8\u7684\u5DF2\u8FDE\u63A5\u4E2A\u4EBA\u8D44\u6599\u3002"
6981
+ }
6982
+ }
6651
6983
  },
6652
6984
  securityMenu: {
6653
6985
  title: "\u5B89\u5168",
@@ -6673,7 +7005,44 @@ var init_zh = __esm({
6673
7005
  valutBackupMissing: "\u5B89\u5168\u5BC6\u94A5\u5171\u4EAB\u5E93\u5907\u4EFD\u7F3A\u5931\u3002\u8BF7\u521B\u5EFA\u4E00\u4E2A\u5907\u4EFD\u4EE5\u786E\u4FDD\u60A8\u7684\u6570\u636E\u5B89\u5168\u3002"
6674
7006
  },
6675
7007
  lastBackup: "\u6700\u540E\u4E00\u6B21\u5BC6\u94A5\u5171\u4EAB\u5E93\u5907\u4EFD",
6676
- lastBackupMeta: "\u901A\u8FC7 {{browser}} \u6D4F\u89C8\u5668\u5728 {{os}} \u64CD\u4F5C\u7CFB\u7EDF\u4E0A\u521B\u5EFA\u3002\u8BBE\u5907\uFF1A{{deviceName}}"
7008
+ lastBackupMeta: "\u901A\u8FC7 {{browser}} \u6D4F\u89C8\u5668\u5728 {{os}} \u64CD\u4F5C\u7CFB\u7EDF\u4E0A\u521B\u5EFA\u3002\u8BBE\u5907\uFF1A{{deviceName}}",
7009
+ onboarding: {
7010
+ securityMenu: {
7011
+ title: "\u5B89\u5168\u83DC\u5355",
7012
+ description: "\u7BA1\u7406 embarkAI \u7684\u5B89\u5168\u8BBE\u7F6E\uFF0C\u5305\u62EC\u5DF2\u8FDE\u63A5\u7684\u5E94\u7528\u7A0B\u5E8F\u548C\u5BC6\u94A5\u5171\u4EAB\u72B6\u6001\u3002"
7013
+ },
7014
+ keyshare: {
7015
+ title: "\u5BC6\u94A5\u5171\u4EAB\u72B6\u6001",
7016
+ description: "embarkAi \u7684\u4FDD\u62A4\u7531\u4E24\u4E2A\u5BC6\u94A5\u5171\u4EAB\u7EC4\u6210\uFF1A\u4E00\u4E2A\u5728\u670D\u52A1\u5668\u4E0A\uFF0C\u4E00\u4E2A\u5728\u60A8\u7684\u8BBE\u5907\u4E0A\u3002\u4E24\u8005\u90FD\u662F\u8BBF\u95EE\u60A8\u8D26\u6237\u6240\u5FC5\u9700\u7684\u3002 \n\u60A8\u7684\u5BC6\u94A5\u5171\u4EAB\u5B58\u5728\u4E8E\u60A8\u7684\u8BBE\u5907\uFF08\u672C\u5730\uFF09\u4E0A\uFF0C\u540C\u65F6\u4E5F\u5E94\u5907\u4EFD\u5230 Vault \u4EE5\u786E\u4FDD\u66F4\u9AD8\u7684\u5B89\u5168\u6027",
7017
+ detailsButton: "\u67E5\u770B\u8BE6\u60C5",
7018
+ details: {
7019
+ concept: {
7020
+ title: "\u6838\u5FC3\u6982\u5FF5",
7021
+ description: "- \u5BC6\u94A5\u5171\u4EAB\u7684\u91CD\u65B0\u7EC4\u5408\u53EF\u4E3A\u60A8\u7684\u8D26\u6237\u63D0\u4F9B\u8BBF\u95EE\u5BC6\u94A5\u3002\n\n - \u4E22\u5931\u60A8\u7684\u90E8\u5206\u5C06\u5BFC\u81F4\u65E0\u6CD5\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\n\n - \u60A8\u7684\u5BC6\u94A5\u5171\u4EAB\u90E8\u5206\u5B58\u5728\u4E8E\u60A8\u7684\u8BBE\u5907\uFF08\u672C\u5730\u5171\u4EAB\uFF09\u4E0A\uFF0C\u4F46\u4E5F\u5E94\u5728\u5BC6\u94A5\u5171\u4EAB\u5E93\u4E2D\u8FDB\u884C\u5907\u4EFD\uFF0C\u4EE5\u4FBF\u60A8\u53EF\u4EE5\u5728\u4EFB\u4F55\u8BBE\u5907\u4E0A\u8BBF\u95EE embarkAI\u3002"
7022
+ },
7023
+ server: {
7024
+ title: "\u670D\u52A1\u5668\u5BC6\u94A5\u5171\u4EAB",
7025
+ description: "\u5BC6\u94A5\u5171\u4EAB\u7684\u4E00\u90E8\u5206\u5B58\u50A8\u5728\u5B89\u5168\u670D\u52A1\u5668\u4E0A\u3002"
7026
+ },
7027
+ local: {
7028
+ title: "\u672C\u5730\u5BC6\u94A5\u5171\u4EAB",
7029
+ description: "\u5BC6\u94A5\u5171\u4EAB\u7684\u4E00\u90E8\u5206\u5B58\u50A8\u5728\u60A8\u7684\u8BBE\u5907\uFF08\u672C\u5730\uFF09\u4E0A\uFF0C\u4E0E\u670D\u52A1\u5668\u5BC6\u94A5\u5171\u4EAB\u914D\u5408\u4F7F\u7528\u4EE5\u8BBF\u95EE\u8D26\u6237\u3002\u5982\u679C\u4E22\u5931\uFF0C\u60A8\u53EF\u80FD\u4F1A\u5931\u53BB\u5BF9\u8D26\u6237\u7684\u8BBF\u95EE\u6743\u9650\u3002"
7030
+ },
7031
+ vault: {
7032
+ title: "Vault \u5BC6\u94A5\u5171\u4EAB",
7033
+ description: "\u60A8\u7684\u672C\u5730\u5BC6\u94A5\u5171\u4EAB\u90E8\u5206\u5E94\u5B58\u50A8\u5728 Vault \u4E2D\uFF0C\u4EE5\u786E\u4FDD\u6570\u636E\u5B89\u5168\u4E14\u53EF\u8BBF\u95EE\u3002\u53EF\u901A\u8FC7\u8BBE\u7F6E -> \u8D26\u6237\u5907\u4EFD\u521B\u5EFA\u5907\u4EFD"
7034
+ }
7035
+ }
7036
+ },
7037
+ keyshareExistingVaultBkp: {
7038
+ title: "\u73B0\u6709\u5BC6\u94A5\u5171\u4EAB Vault \u5907\u4EFD",
7039
+ description: "\u60A8\u7684\u5B89\u5168\u5BC6\u94A5\u5171\u4EAB Vault \u5907\u4EFD\u5E94\u5B58\u5728\u4E14\u5DF2\u51C6\u5907\u5C31\u7EEA\u3002\u5982\u679C\u7F3A\u5931\uFF0C\u60A8\u53EF\u80FD\u4F1A\u5931\u53BB\u5BF9\u8D26\u6237\u7684\u8BBF\u95EE\u6743\u9650\u3002\u5982\u5C1A\u672A\u521B\u5EFA\uFF0C\u8BF7\u7ACB\u5373\u521B\u5EFA\u4EE5\u786E\u4FDD\u6570\u636E\u5B89\u5168\u3002"
7040
+ },
7041
+ connectedApps: {
7042
+ title: "\u5DF2\u8FDE\u63A5\u7684\u5E94\u7528\u7A0B\u5E8F",
7043
+ description: "\u5DF2\u8FDE\u63A5\u7684\u5E94\u7528\u7A0B\u5E8F\u662F\u60A8\u901A\u8FC7 embarkAI \u8BBF\u95EE\u8FC7\u7684\u5E94\u7528\u3002\n - \u53EF\u4EE5\u4FE1\u4EFB\u5DF2\u8FDE\u63A5\u7684\u5E94\u7528\u7A0B\u5E8F\u4EE5\u8DF3\u8FC7\u4EA4\u6613\u786E\u8BA4\u3002\n - \u60A8\u53EF\u4EE5\u968F\u65F6\u64A4\u9500\u4FE1\u4EFB\uFF0C\u64A4\u9500\u540E\u8BE5\u5E94\u7528\u5C06\u518D\u6B21\u9700\u8981\u60A8\u786E\u8BA4\u6BCF\u7B14\u4EA4\u6613\u3002"
7044
+ }
7045
+ }
6677
7046
  },
6678
7047
  backupMenu: {
6679
7048
  title: "\u8D26\u6237\u5907\u4EFD",
@@ -6691,7 +7060,33 @@ var init_zh = __esm({
6691
7060
  file: "\u5907\u4EFD\u6587\u4EF6",
6692
7061
  fileCreate: "\u4E0B\u8F7D\u5907\u4EFD\u6587\u4EF6\u5DF2\u7F16\u7801",
6693
7062
  fileRestore: "\u4F7F\u7528\u6587\u4EF6\u6062\u590D",
6694
- cloud: "\u4E91\u7AEF"
7063
+ cloud: "\u4E91\u7AEF",
7064
+ onboarding: {
7065
+ backupMenu: {
7066
+ title: "\u8D26\u6237\u5907\u4EFD\u83DC\u5355",
7067
+ description: "\u60A8\u8BBE\u5907\u4E0A\u7684\u672C\u5730\u5BC6\u94A5\u5171\u4EAB\u5907\u4EFD\u5BF9\u4E8E\u8D26\u6237\u6062\u590D\u81F3\u5173\u91CD\u8981\u3002"
7068
+ },
7069
+ backupEncryptionMethod: {
7070
+ title: "\u52A0\u5BC6\u65B9\u5F0F",
7071
+ description: "\u60A8\u8BBE\u5907\u4E0A\u7684\u672C\u5730\u5BC6\u94A5\u5171\u4EAB\u5907\u4EFD\u5FC5\u987B\u4F7F\u7528\u5BC6\u7801\u6216\u5BC6\u7801\u5BC6\u94A5\u52A0\u5BC6\uFF0C\u8FD9\u6837\u65E0\u8BBA\u5907\u4EFD\u5B58\u50A8\u5728\u4F55\u5904\uFF0C\u53EA\u6709\u60A8\u624D\u80FD\u89E3\u5BC6\u3002"
7072
+ },
7073
+ backupEncryptionPassword: {
7074
+ title: "\u5BC6\u7801",
7075
+ description: "\u5BC6\u7801\u662F\u52A0\u5BC6\u5BC6\u94A5\u5171\u4EAB\u5907\u4EFD\u7684\u5E38\u7528\u65B9\u5F0F\u3002\u8BF7\u786E\u4FDD\u4F7F\u7528\u5F3A\u5BC6\u7801\u5E76\u8BB0\u4F4F\u5B83\uFF0C\u56E0\u4E3A\u4E22\u5931\u5BC6\u7801\u53EF\u80FD\u5BFC\u81F4\u65E0\u6CD5\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002"
7076
+ },
7077
+ backupEncryptionPasskey: {
7078
+ title: "\u5BC6\u7801\u5BC6\u94A5",
7079
+ description: "\u5BC6\u7801\u5BC6\u94A5\u662F\u4E00\u79CD\u65E0\u9700\u5BC6\u7801\u3001\u7ED1\u5B9A\u8BBE\u5907\u7684\u66FF\u4EE3\u65B9\u6848\uFF0C\u7528\u4E8E\u52A0\u5BC6\u60A8\u7684\u5BC6\u94A5\u5171\u4EAB\u5907\u4EFD\u3002"
7080
+ },
7081
+ backupStatus: {
7082
+ title: "\u5907\u4EFD\u72B6\u6001",
7083
+ description: "\u72B6\u6001\u6307\u793A\u60A8\u7684\u5BC6\u94A5\u5171\u4EAB\u5907\u4EFD\u662F\u5426\u5DF2\u6B63\u786E\u52A0\u5BC6\u548C\u5B58\u50A8\u3002"
7084
+ },
7085
+ backupAdvanced: {
7086
+ title: "\u9AD8\u7EA7\u5907\u4EFD\u9009\u9879",
7087
+ description: "\u63A2\u7D22\u5907\u4EFD\u8BBE\u5907\u672C\u5730\u5BC6\u94A5\u5171\u4EAB\u7684\u9AD8\u7EA7\u9009\u9879\u3002"
7088
+ }
7089
+ }
6695
7090
  },
6696
7091
  restoreMenu: {
6697
7092
  title: "\u5E10\u6237\u6062\u590D",
@@ -6710,7 +7105,16 @@ var init_zh = __esm({
6710
7105
  description: "\u5F53\u524D\u5E94\u7528\u7A0B\u5E8F\u914D\u7F6E\u4E3A\u4F7F\u7528\u94FE <b>{{preferredChain}}</b>\uFF0C\u800C\u975E\u60A8\u5F53\u524D\u7684\u94FE <b>{{currentChain}}</b>\u3002<br /> \u662F\u5426\u5207\u6362\u5230\u9996\u9009\u94FE\uFF1F",
6711
7106
  confirmButton: "\u5207\u6362\u5230 {{chain}}",
6712
7107
  cancelButton: "\u4FDD\u6301\u5F53\u524D\u94FE"
7108
+ },
7109
+ onboarding: {
7110
+ chainMenu: {
7111
+ title: "\u94FE\u83DC\u5355",
7112
+ description: "\u5728 embarkAI \u652F\u6301\u7684\u4E0D\u540C\u533A\u5757\u94FE\u7F51\u7EDC\u4E4B\u95F4\u5207\u6362\u3002"
7113
+ }
6713
7114
  }
7115
+ },
7116
+ guardiansMenu: {
7117
+ title: "\u5B88\u62A4\u8005"
6714
7118
  }
6715
7119
  };
6716
7120
  }
@@ -8653,22 +9057,29 @@ var init_AuthMenu2 = __esm({
8653
9057
  }
8654
9058
  });
8655
9059
 
8656
- // src/internal/components/Onboarding/onboarder.ts
9060
+ // src/internal/components/Onboarding/useOnboardingStore.ts
8657
9061
  import { create as create4 } from "zustand";
8658
- var useOnboardingStore, Onboarder, onboarder;
8659
- var init_onboarder = __esm({
8660
- "src/internal/components/Onboarding/onboarder.ts"() {
8661
- init_useLayoutDataStore();
8662
- init_useLayoutStore();
9062
+ var useOnboardingStore;
9063
+ var init_useOnboardingStore = __esm({
9064
+ "src/internal/components/Onboarding/useOnboardingStore.ts"() {
8663
9065
  useOnboardingStore = create4((set) => ({
9066
+ isTourAvailable: false,
9067
+ setIsTourAvailable: (isTourAvailable) => set({ isTourAvailable }),
8664
9068
  elRect: { x: window.innerWidth / 2, y: window.innerHeight / 2, width: 0, height: 0 },
8665
- tooltip: { title: "", description: "" },
8666
- setFrame: (tooltipStore) => set(tooltipStore),
9069
+ setElRect: (elRect) => set({ elRect }),
8667
9070
  mountIntoNode: document.body,
8668
- setMountIntoNode: (mountIntoNode) => set({ mountIntoNode }),
8669
- waitSecs: null,
8670
- setWaitSecs: (waitSecs) => set({ waitSecs })
9071
+ setMountIntoNode: (mountIntoNode) => set({ mountIntoNode })
8671
9072
  }));
9073
+ }
9074
+ });
9075
+
9076
+ // src/internal/components/Onboarding/onboarder.ts
9077
+ var Onboarder, onboarder;
9078
+ var init_onboarder = __esm({
9079
+ "src/internal/components/Onboarding/onboarder.ts"() {
9080
+ init_useLayoutDataStore();
9081
+ init_useLayoutStore();
9082
+ init_useOnboardingStore();
8672
9083
  Onboarder = class {
8673
9084
  tour = null;
8674
9085
  tourPointer = 0;
@@ -8679,11 +9090,12 @@ var init_onboarder = __esm({
8679
9090
  domObserver = new MutationObserver(([domMutation]) => {
8680
9091
  if (this.domObserverTimer) clearTimeout(this.domObserverTimer);
8681
9092
  this.domObserverTimer = setTimeout(() => {
8682
- const { elId, title, description } = this.tour[this.tourPointer];
9093
+ const elId = this.tour[this.tourPointer]?.elId;
8683
9094
  const elementRef = this.elements.get(elId)?.deref();
8684
9095
  if (!elementRef) return;
8685
9096
  const { x, y, width, height } = elementRef.getBoundingClientRect();
8686
- useOnboardingStore.getState().setFrame({ elRect: { x, y, width, height }, tooltip: { title, description } });
9097
+ elementRef.scrollIntoView({ behavior: "smooth", block: "center", inline: "center" });
9098
+ useOnboardingStore.getState().setElRect({ x, y, width, height });
8687
9099
  }, 200);
8688
9100
  });
8689
9101
  /** deferred resize observer */
@@ -8693,17 +9105,16 @@ var init_onboarder = __esm({
8693
9105
  this.resizeObserverTimer = setTimeout(() => {
8694
9106
  for (const entry of entries) {
8695
9107
  const element = entry.target;
8696
- let frameData;
8697
- const { elId, title, description } = this.tour[this.tourPointer];
9108
+ let elRectData;
9109
+ const elId = this.tour[this.tourPointer]?.elId;
8698
9110
  if (!element || element.nodeName === "BODY") {
8699
9111
  const elementRef = this.elements.get(elId)?.deref();
8700
- const { x, y, width, height } = elementRef.getBoundingClientRect();
8701
- frameData = { elRect: { x, y, width, height }, tooltip: { title, description } };
9112
+ elRectData = elementRef.getBoundingClientRect();
8702
9113
  } else {
8703
- const { x, y, width, height } = element.getBoundingClientRect();
8704
- frameData = { elRect: { x, y, width, height }, tooltip: { title, description } };
9114
+ elRectData = element.getBoundingClientRect();
9115
+ element.scrollIntoView({ behavior: "smooth", block: "center", inline: "center" });
8705
9116
  }
8706
- useOnboardingStore.getState().setFrame(frameData);
9117
+ useOnboardingStore.getState().setElRect(elRectData);
8707
9118
  }
8708
9119
  }, 200);
8709
9120
  });
@@ -8720,17 +9131,13 @@ var init_onboarder = __esm({
8720
9131
  this.resizeObserver.observe(startElRef);
8721
9132
  this.resizeObserver.observe(document.body);
8722
9133
  }
8723
- useOnboardingStore.getState().setWaitSecs(tour[0].waitSecs || null);
8724
9134
  }
8725
9135
  endTour() {
8726
9136
  this.tour = null;
8727
9137
  this.tourPointer = 0;
8728
9138
  this.domObserver.disconnect();
8729
9139
  this.resizeObserver.disconnect();
8730
- useOnboardingStore.getState().setFrame({
8731
- elRect: { x: window.innerWidth / 2, y: window.innerHeight / 2, width: 0, height: 0 },
8732
- tooltip: { title: "", description: "" }
8733
- });
9140
+ useOnboardingStore.getState().setElRect({ x: window.innerWidth / 2, y: window.innerHeight / 2, width: 0, height: 0 });
8734
9141
  setTimeout(() => {
8735
9142
  useLayoutDataStore.getInitialState().setIsOnboarding(false);
8736
9143
  useLayoutStore.getInitialState().setIsDialogForced(false);
@@ -8753,7 +9160,6 @@ var init_onboarder = __esm({
8753
9160
  this.resizeObserver.observe(nextElRef);
8754
9161
  this.resizeObserver.observe(document.body);
8755
9162
  }
8756
- useOnboardingStore.getState().setWaitSecs(nextStep.waitSecs || null);
8757
9163
  }, 200);
8758
9164
  }
8759
9165
  /**
@@ -8769,6 +9175,9 @@ var init_onboarder = __esm({
8769
9175
  if (!this.tour) return null;
8770
9176
  return this.tour[this.tourPointer];
8771
9177
  }
9178
+ getCurrentPointer() {
9179
+ return this.tourPointer;
9180
+ }
8772
9181
  };
8773
9182
  onboarder = new Onboarder();
8774
9183
  }
@@ -8776,14 +9185,14 @@ var init_onboarder = __esm({
8776
9185
 
8777
9186
  // src/internal/components/Onboarding/OnboardingOverlay.tsx
8778
9187
  import { ChevronRightIcon, LoaderIcon } from "lucide-react";
8779
- import { useEffect as useEffect12, useRef as useRef9, useState as useState5 } from "react";
9188
+ import { useEffect as useEffect12, useState as useState5 } from "react";
8780
9189
  import { createPortal } from "react-dom";
8781
9190
  import { jsx as jsx21, jsxs as jsxs17 } from "react/jsx-runtime";
8782
9191
  function getTooltipXPos(params) {
8783
9192
  const { x, width, isMobileView, expandValue } = params;
8784
9193
  const frameEndX = x + width + expandValue;
8785
9194
  const frameWidth = isMobileView ? width : width + 2 * expandValue;
8786
- const ttWidth = Math.max(frameWidth, TOOLTIP_MIN_WIDTH);
9195
+ const ttWidth = isMobileView ? Math.max(frameWidth, window.innerWidth - 4 * expandValue) : Math.max(frameWidth, TOOLTIP_MIN_WIDTH);
8787
9196
  const ttShiftX = isMobileView ? 0 : expandValue;
8788
9197
  const ttEndX = x - ttShiftX + ttWidth;
8789
9198
  const isTTOverflowsFrame = ttEndX > frameEndX;
@@ -8792,16 +9201,16 @@ function getTooltipXPos(params) {
8792
9201
  return {
8793
9202
  isOverflowX: true,
8794
9203
  width: ttWidth,
8795
- x: x - (ttEndX - window.innerWidth) - EXPAND
9204
+ x: x - (ttEndX - window.innerWidth) - 2 * expandValue
8796
9205
  // unstick tooltip from window right edge
8797
9206
  };
8798
9207
  }
8799
9208
  if (isTTOverflowsFrame) {
9209
+ const calcedX = x - ttShiftX - ttWidth / 2 + frameWidth / 2;
8800
9210
  return {
8801
9211
  isOverflowX: true,
8802
9212
  width: ttWidth,
8803
- x: x - ttShiftX - ttWidth / 2 + frameWidth / 2
8804
- // center tooltip over target element
9213
+ x: calcedX < expandValue ? expandValue : calcedX
8805
9214
  };
8806
9215
  }
8807
9216
  return {
@@ -8811,12 +9220,14 @@ function getTooltipXPos(params) {
8811
9220
  };
8812
9221
  }
8813
9222
  function getTooltipYPos(params) {
8814
- const { y, height, isMobileView, expandValue, ttCurrentHeight = 0 } = params;
8815
- let topPosY = y - expandValue * 2 - ttCurrentHeight;
8816
- const bottomPosY = y + height + expandValue;
9223
+ const { y, height, isMobileView, expandValue } = params;
9224
+ let topPosY = y - expandValue * 2 - TOP_POS_OFFSET;
9225
+ const bottomPosY = y + height + expandValue + (isMobileView ? expandValue : 0);
9226
+ const isTopPos = isMobileView && topPosY >= EXPAND;
8817
9227
  return {
9228
+ isTopPos,
8818
9229
  isOverflowY: topPosY < EXPAND,
8819
- y: isMobileView && topPosY >= EXPAND ? topPosY : bottomPosY
9230
+ y: isTopPos ? topPosY : bottomPosY
8820
9231
  // topPosY >= EXPAND - unstick tooltip from window top edge
8821
9232
  };
8822
9233
  }
@@ -8826,14 +9237,14 @@ function OnboardingOverlay() {
8826
9237
  const isOnboarding = useLayoutDataStore((st) => st.isOnboarding);
8827
9238
  const isMobileView = useLayoutStore((st) => st.isMobileView);
8828
9239
  const colorMode = useLayoutStore((st) => st.colorMode);
8829
- const toolipElementRef = useRef9(null);
9240
+ const { elRect, mountIntoNode } = useOnboardingStore();
8830
9241
  const {
8831
- waitSecs,
8832
- elRect,
8833
- tooltip,
8834
- /** if embark is opened, onboard overlay has to be portaled into embark's dialog node to keep layers & pointer-events normal structure */
8835
- mountIntoNode
8836
- } = useOnboardingStore();
9242
+ actions: tourStepActions = [],
9243
+ waitSecs = null,
9244
+ title,
9245
+ description,
9246
+ forced = false
9247
+ } = onboarder.getCurrentStep() || {};
8837
9248
  useEffect12(() => {
8838
9249
  setTimeout(() => {
8839
9250
  if (!page) {
@@ -8850,16 +9261,15 @@ function OnboardingOverlay() {
8850
9261
  }, [page]);
8851
9262
  const [continueCountdown, setContinueCountdown] = useState5(null);
8852
9263
  const expandValue = EXPAND * (isMobileView ? 0.5 : 1);
8853
- const frame = {
8854
- x: elRect.x - expandValue,
8855
- y: elRect.y - expandValue,
8856
- width: elRect.width + expandValue * 2,
8857
- height: elRect.height + expandValue * (isMobileView ? 2 : 3)
8858
- };
8859
- const tt = {
8860
- ...getTooltipXPos({ ...elRect, isMobileView, expandValue }),
8861
- ...getTooltipYPos({ ...elRect, isMobileView, expandValue, ttCurrentHeight: toolipElementRef.current?.clientHeight })
9264
+ const posParams = {
9265
+ x: elRect.x,
9266
+ y: elRect.y,
9267
+ width: elRect.width,
9268
+ height: elRect.height,
9269
+ isMobileView,
9270
+ expandValue
8862
9271
  };
9272
+ const position = { ...getTooltipXPos(posParams), ...getTooltipYPos(posParams) };
8863
9273
  useEffect12(() => {
8864
9274
  if (!waitSecs) return;
8865
9275
  setContinueCountdown(waitSecs);
@@ -8875,7 +9285,6 @@ function OnboardingOverlay() {
8875
9285
  return () => clearInterval(countdownInterval);
8876
9286
  }, [waitSecs]);
8877
9287
  if (!mountIntoNode) return null;
8878
- const tourStepActions = onboarder.getCurrentStep()?.actions;
8879
9288
  return createPortal(
8880
9289
  /* @__PURE__ */ jsxs17(
8881
9290
  "div",
@@ -8912,10 +9321,10 @@ function OnboardingOverlay() {
8912
9321
  fill: "black",
8913
9322
  style: {
8914
9323
  transition: "x 0.3s ease, y 0.3s ease, width 0.3s ease, height 0.3s ease",
8915
- x: frame.x,
8916
- y: frame.y,
8917
- width: frame.width,
8918
- height: frame.height
9324
+ x: elRect.x - expandValue,
9325
+ y: elRect.y - expandValue,
9326
+ width: elRect.width + expandValue * 2,
9327
+ height: elRect.height + expandValue * (isMobileView ? 2 : 3)
8919
9328
  }
8920
9329
  }
8921
9330
  )
@@ -8924,47 +9333,58 @@ function OnboardingOverlay() {
8924
9333
  ]
8925
9334
  }
8926
9335
  ),
8927
- isOnboarding && /* @__PURE__ */ jsxs17(
9336
+ /* @__PURE__ */ jsxs17(
8928
9337
  "div",
8929
9338
  {
8930
- ref: toolipElementRef,
8931
9339
  className: cn(
8932
- "absolute flex flex-col gap-1 p-[var(--ui-kit-pd)]",
9340
+ "absolute flex flex-col gap-1 p-[12px]",
8933
9341
  "text-center text-sm",
8934
9342
  "text-[var(--ui-kit-success)] bg-[var(--ui-kit-bg-success)]",
8935
- ""
9343
+ "overflow-hidden"
8936
9344
  ),
8937
9345
  style: {
8938
- width: tt.width,
8939
- top: 0,
8940
- left: 0,
8941
- transition: "transform 0.3s ease, width 0.3s ease",
8942
- transform: `translate(${tt.x}px, ${tt.y}px)`,
8943
- borderRadius: isMobileView || tt.isOverflowX ? "var(--ui-kit-bdrs)" : "0 0 var(--ui-kit-bdrs) var(--ui-kit-bdrs)"
9346
+ willChange: "top, left, width, height, transform",
9347
+ width: isOnboarding ? position.width : 0,
9348
+ height: isOnboarding ? "auto" : 0,
9349
+ top: isOnboarding ? position.y : window.innerHeight / 2,
9350
+ left: isOnboarding ? position.x : window.innerWidth / 2,
9351
+ transition: "top 0.3s ease, left 0.3s ease, width 0.3s ease",
9352
+ transform: position.isTopPos ? `translateY(calc(-100% + ${TOP_POS_OFFSET}px))` : "translateY(0)",
9353
+ borderRadius: isMobileView || position.isOverflowX ? "var(--ui-kit-bdrs)" : "0 0 var(--ui-kit-bdrs) var(--ui-kit-bdrs)"
8944
9354
  },
8945
9355
  children: [
8946
- /* @__PURE__ */ jsx21("p", {
8947
- className: "font-bold",
8948
- //@ts-expect-error i18n dynamic key typing
8949
- children: t(tooltip.title)
8950
- }),
8951
- /* @__PURE__ */ jsx21("p", {
8952
- className: "whitespace-pre-line",
8953
- //@ts-expect-error i18n dynamic key typing
8954
- children: t(tooltip.description)
8955
- }),
9356
+ /* @__PURE__ */ jsx21("p", { className: "font-bold", children: t(title) }),
9357
+ /* @__PURE__ */ jsx21("p", { className: "whitespace-pre-line", children: t(description) }),
9358
+ !forced && /* @__PURE__ */ jsx21(
9359
+ Button,
9360
+ {
9361
+ size: "small",
9362
+ variant: "ghost",
9363
+ onClick: () => {
9364
+ setContinueCountdown(null);
9365
+ onboarder.endTour();
9366
+ },
9367
+ className: cn(
9368
+ "text-[var(--ui-kit-success)]",
9369
+ "absolute top-2 right-2 text-[10px]"
9370
+ // colorMode === 'dark' ? 'text-[var(--ui-kit-fg-inverted)]' : 'text-[var(--ui-kit-fg)]'
9371
+ ),
9372
+ children: t("passport:common.hide")
9373
+ }
9374
+ ),
8956
9375
  !!tourStepActions?.length ? /* @__PURE__ */ jsx21("div", { className: "flex grid grid-cols-2 gap-[var(--ui-kit-gap)]", children: tourStepActions.map(({ caption, onClick }, index) => /* @__PURE__ */ jsxs17(
8957
9376
  Button,
8958
9377
  {
8959
9378
  variant: "default",
8960
9379
  size: "medium",
8961
- className: "w-full",
9380
+ className: cn("w-full", isMobileView && "text-[10px]"),
8962
9381
  onClick,
8963
9382
  disabled: continueCountdown !== null,
8964
9383
  children: [
8965
- continueCountdown !== null ? /* @__PURE__ */ jsx21(LoaderIcon, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx21(ChevronRightIcon, { className: "h-4 w-4" }),
9384
+ continueCountdown !== null && /* @__PURE__ */ jsx21(LoaderIcon, { className: "h-4 w-4 animate-spin" }),
8966
9385
  // @ts-expect-error i18n dynamic key typing
8967
- t(caption)
9386
+ t(caption),
9387
+ continueCountdown === null && /* @__PURE__ */ jsx21(ChevronRightIcon, { className: "h-4 w-4" })
8968
9388
  ]
8969
9389
  },
8970
9390
  index
@@ -8973,14 +9393,15 @@ function OnboardingOverlay() {
8973
9393
  {
8974
9394
  variant: "default-glow",
8975
9395
  size: "medium",
8976
- className: "w-full",
9396
+ className: cn("w-full", isMobileView && "text-[10px]"),
8977
9397
  onClick: () => onboarder.next(),
8978
9398
  disabled: continueCountdown !== null,
8979
9399
  children: [
8980
- continueCountdown !== null ? /* @__PURE__ */ jsx21(LoaderIcon, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsx21(ChevronRightIcon, { className: "h-4 w-4" }),
9400
+ continueCountdown !== null && /* @__PURE__ */ jsx21(LoaderIcon, { className: "h-4 w-4 animate-spin" }),
8981
9401
  String(t("passport:common.continue")).toUpperCase(),
8982
9402
  " ",
8983
- continueCountdown !== null && continueCountdown
9403
+ continueCountdown !== null && continueCountdown,
9404
+ continueCountdown === null && /* @__PURE__ */ jsx21(ChevronRightIcon, { className: "h-4 w-4" })
8984
9405
  ]
8985
9406
  }
8986
9407
  )
@@ -8994,7 +9415,7 @@ function OnboardingOverlay() {
8994
9415
  mountIntoNode
8995
9416
  );
8996
9417
  }
8997
- var EXPAND, TOOLTIP_MIN_WIDTH;
9418
+ var EXPAND, TOOLTIP_MIN_WIDTH, TOP_POS_OFFSET;
8998
9419
  var init_OnboardingOverlay = __esm({
8999
9420
  "src/internal/components/Onboarding/OnboardingOverlay.tsx"() {
9000
9421
  init_i18n();
@@ -9003,8 +9424,24 @@ var init_OnboardingOverlay = __esm({
9003
9424
  init_utils2();
9004
9425
  init_button();
9005
9426
  init_onboarder();
9427
+ init_useOnboardingStore();
9006
9428
  EXPAND = 16;
9007
- TOOLTIP_MIN_WIDTH = 256;
9429
+ TOOLTIP_MIN_WIDTH = 320;
9430
+ TOP_POS_OFFSET = 112;
9431
+ }
9432
+ });
9433
+
9434
+ // src/internal/components/Onboarding/useOnboardingTouirAvailable.ts
9435
+ import { useEffect as useEffect13 } from "react";
9436
+ function useOnboardingTourAvailable(isAvailable) {
9437
+ useEffect13(() => {
9438
+ useOnboardingStore.getState().setIsTourAvailable(isAvailable);
9439
+ return () => useOnboardingStore.getState().setIsTourAvailable(false);
9440
+ }, [isAvailable]);
9441
+ }
9442
+ var init_useOnboardingTouirAvailable = __esm({
9443
+ "src/internal/components/Onboarding/useOnboardingTouirAvailable.ts"() {
9444
+ init_useOnboardingStore();
9008
9445
  }
9009
9446
  });
9010
9447
 
@@ -9013,18 +9450,20 @@ var init_Onboarding = __esm({
9013
9450
  "src/internal/components/Onboarding/index.ts"() {
9014
9451
  init_OnboardingOverlay();
9015
9452
  init_onboarder();
9453
+ init_useOnboardingStore();
9454
+ init_useOnboardingTouirAvailable();
9016
9455
  }
9017
9456
  });
9018
9457
 
9019
9458
  // src/internal/components/ui/switch.tsx
9020
- import { forwardRef as forwardRef3, useState as useState6 } from "react";
9459
+ import { forwardRef as forwardRef4, useState as useState6 } from "react";
9021
9460
  import { jsx as jsx22, jsxs as jsxs18 } from "react/jsx-runtime";
9022
9461
  var Switch;
9023
9462
  var init_switch = __esm({
9024
9463
  "src/internal/components/ui/switch.tsx"() {
9025
9464
  init_useLayoutStore();
9026
9465
  init_utils2();
9027
- Switch = forwardRef3((props, ref) => {
9466
+ Switch = forwardRef4((props, ref) => {
9028
9467
  const { className, labels, ...inputProps } = props;
9029
9468
  const colorMode = useLayoutStore((st) => st.colorMode);
9030
9469
  const [labelW, setLabelW] = useState6(0);
@@ -9496,11 +9935,11 @@ var init_priceFormatter = __esm({
9496
9935
 
9497
9936
  // src/internal/components/BuyMenu/useBuyMenuStore.ts
9498
9937
  import { keys, noop } from "lodash-es";
9499
- import { useEffect as useEffect13 } from "react";
9938
+ import { useEffect as useEffect14 } from "react";
9500
9939
  import { create as create5 } from "zustand";
9501
9940
  import { persist } from "zustand/middleware";
9502
9941
  function useBuyMenuParams() {
9503
- useEffect13(() => {
9942
+ useEffect14(() => {
9504
9943
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
9505
9944
  if (!pageParams || !keys(pageParams).length) return;
9506
9945
  const { amount, crypto: crypto2, onRampWidgetRedirected } = pageParams || {};
@@ -10097,15 +10536,12 @@ var init_onboarding_setup = __esm({
10097
10536
  elId: "buymenu-binance-estimate" /* binanceEstimate */,
10098
10537
  title: "passport:buyMenu.onboarding.binanceEstimate.title",
10099
10538
  description: "passport:buyMenu.onboarding.binanceEstimate.description",
10539
+ forced: true,
10540
+ // no hide button for this step, user must click "Next" to proceed
10100
10541
  onNext: () => {
10101
10542
  useBuyMenuStore.getState().setIsProviderSummary(false);
10102
10543
  useBinanceStore.getState().setQuoteData(null);
10103
10544
  }
10104
- },
10105
- {
10106
- elId: "buymenu-tour-button" /* tourButton */,
10107
- title: "passport:common.onboarding.tourButton.title",
10108
- description: "passport:common.onboarding.tourButton.description"
10109
10545
  }
10110
10546
  ];
10111
10547
  }
@@ -10317,7 +10753,7 @@ function BinanceSummary(props) {
10317
10753
  /* @__PURE__ */ jsxs33("span", { className: "font-bold", children: [
10318
10754
  formatPrice(srcQueryAmount),
10319
10755
  " ",
10320
- selectedFiat.toUpperCase()
10756
+ selectedFiat?.toUpperCase()
10321
10757
  ] })
10322
10758
  ] }),
10323
10759
  /* @__PURE__ */ jsxs33("div", { className: "flex justify-between text-xs leading-5", children: [
@@ -10325,7 +10761,7 @@ function BinanceSummary(props) {
10325
10761
  /* @__PURE__ */ jsxs33("span", { className: "font-bold", children: [
10326
10762
  formatPrice(cryptoToRecieve),
10327
10763
  " ",
10328
- selectedCrypto.toUpperCase()
10764
+ selectedCrypto?.toUpperCase()
10329
10765
  ] })
10330
10766
  ] }),
10331
10767
  /* @__PURE__ */ jsxs33(Highlight, { type: "info", className: "", children: [
@@ -10364,7 +10800,7 @@ function BinanceSummary(props) {
10364
10800
  !!quoteData?.totalAmount && /* @__PURE__ */ jsxs33("strong", { children: [
10365
10801
  formatPrice(Number(quoteData.totalAmount)),
10366
10802
  " ",
10367
- selectedCrypto.toUpperCase()
10803
+ selectedCrypto?.toUpperCase()
10368
10804
  ] })
10369
10805
  ]
10370
10806
  }
@@ -10566,7 +11002,7 @@ import { useInfiniteQuery } from "@tanstack/react-query";
10566
11002
  import dayjs from "dayjs";
10567
11003
  import { debounce as debounce4 } from "lodash-es";
10568
11004
  import { DownloadIcon, ExternalLinkIcon, LoaderIcon as LoaderIcon3 } from "lucide-react";
10569
- import { useCallback as useCallback12, useEffect as useEffect14, useMemo as useMemo4 } from "react";
11005
+ import { useCallback as useCallback12, useEffect as useEffect15, useMemo as useMemo4 } from "react";
10570
11006
  import { jsx as jsx40, jsxs as jsxs34 } from "react/jsx-runtime";
10571
11007
  function getStatusVariant(status) {
10572
11008
  switch (status) {
@@ -10608,7 +11044,7 @@ function BinanceTxHistoryItem(props) {
10608
11044
  } = txPayload || {};
10609
11045
  const statusInfo = STATUS_CODE_TO_MESSAGE[txStatus];
10610
11046
  const badgeVariant = getStatusVariant(txStatus);
10611
- const TokenIcon = TOKENS_ICONS[cryptoCurrency.toUpperCase()] || TOKENS_ICONS["EMBARKAI"];
11047
+ const TokenIcon = TOKENS_ICONS[cryptoCurrency?.toUpperCase()] || TOKENS_ICONS["EMBARKAI"];
10612
11048
  return /* @__PURE__ */ jsxs34(
10613
11049
  "div",
10614
11050
  {
@@ -10707,7 +11143,7 @@ function BinanceTxHistory() {
10707
11143
  }, 200),
10708
11144
  []
10709
11145
  );
10710
- useEffect14(() => {
11146
+ useEffect15(() => {
10711
11147
  if (isTxDataLoading || !txList?.length || txList.length > 10) return;
10712
11148
  updateExpandable();
10713
11149
  }, [isTxDataLoading, txList]);
@@ -10754,11 +11190,11 @@ var init_BinanceTxHistory = __esm({
10754
11190
 
10755
11191
  // src/internal/components/BuyMenu/binance/useBinanceSseTracing.ts
10756
11192
  import { useQueryClient as useQueryClient4 } from "@tanstack/react-query";
10757
- import { useEffect as useEffect15, useRef as useRef10 } from "react";
11193
+ import { useEffect as useEffect16, useRef as useRef9 } from "react";
10758
11194
  function useBinanceSseTxTracing(walletAddress) {
10759
11195
  const qc = useQueryClient4();
10760
- const debounceRef = useRef10(null);
10761
- useEffect15(() => {
11196
+ const debounceRef = useRef9(null);
11197
+ useEffect16(() => {
10762
11198
  if (!walletAddress) return;
10763
11199
  const iframeManager = getIframeManager();
10764
11200
  if (!iframeManager) return;
@@ -10800,7 +11236,7 @@ var init_utils6 = __esm({
10800
11236
  // src/internal/components/BuyMenu/binance/Binance.tsx
10801
11237
  import { useMutation as useMutation6, useQuery as useQuery3, useQueryClient as useQueryClient5 } from "@tanstack/react-query";
10802
11238
  import { LoaderIcon as LoaderIcon4 } from "lucide-react";
10803
- import { useEffect as useEffect16 } from "react";
11239
+ import { useEffect as useEffect17 } from "react";
10804
11240
  import { Fragment as Fragment11, jsx as jsx41, jsxs as jsxs35 } from "react/jsx-runtime";
10805
11241
  function Binance() {
10806
11242
  const qc = useQueryClient5();
@@ -10822,7 +11258,7 @@ function Binance() {
10822
11258
  } = useBuyMenuStore();
10823
11259
  const paymentMode = useBinanceStore((st) => st.paymentMode);
10824
11260
  const isCurrurenciesSelected = !!selectedCrypto && !!selectedFiat;
10825
- useEffect16(() => {
11261
+ useEffect17(() => {
10826
11262
  if (!isCurrurenciesSelected) return;
10827
11263
  useBuyMenuStore.getState().setRenderKey(`${selectedCrypto}-${selectedFiat}-${Date.now()}`);
10828
11264
  }, [isCurrurenciesSelected]);
@@ -10857,7 +11293,7 @@ function Binance() {
10857
11293
  });
10858
11294
  const paymentModes = paymentModesData?.data?.paymentMethods || [];
10859
11295
  const selectedPaymentMode = paymentModes?.find((el) => getPayMethodID(el) === paymentMode) || null;
10860
- useEffect16(() => {
11296
+ useEffect17(() => {
10861
11297
  useBuyMenuStore.getState().setMinAmount(Number(selectedPaymentMode?.fiatMinLimit || "0"));
10862
11298
  }, [selectedPaymentMode]);
10863
11299
  const { mutate: estimateQuote, isPending: isQuoteEstimating } = useMutation6({
@@ -10885,22 +11321,22 @@ function Binance() {
10885
11321
  }
10886
11322
  });
10887
11323
  const availableFiats = (tradingPairsData?.data?.fiatCurrencies || []).map((ticker) => ({ ticker }));
10888
- useEffect16(() => {
11324
+ useEffect17(() => {
10889
11325
  if (!!selectedFiat || !availableFiats?.length) return;
10890
11326
  const targetFiat = availableFiats.find((item) => PREFERRED_FIATS.includes(item.ticker)) || availableFiats[0];
10891
11327
  useBuyMenuStore.getState().setSelectedFiat(targetFiat.ticker);
10892
11328
  }, [availableFiats, selectedFiat]);
10893
- useEffect16(() => {
11329
+ useEffect17(() => {
10894
11330
  if (!!selectedCrypto || !networkAvailableCryptoList?.length) return;
10895
11331
  const targetCrypto = networkAvailableCryptoList.find((item) => PREFERRED_CRYPTOS.includes(item.cryptoCurrency)) || networkAvailableCryptoList[0];
10896
11332
  useBuyMenuStore.getState().setSelectedCrypto(targetCrypto.cryptoCurrency);
10897
11333
  }, [networkAvailableCryptoList, selectedCrypto]);
10898
- useEffect16(() => {
11334
+ useEffect17(() => {
10899
11335
  if (!!paymentMode || !paymentModes.length) return;
10900
11336
  const targetPaymentMode = paymentModes.find((item) => item.payMethodCode === PREFERRED_PAYMENT_METHOD) || paymentModes[0];
10901
11337
  useBinanceStore.getState().setPaymentMode(getPayMethodID(targetPaymentMode));
10902
11338
  }, [paymentModes]);
10903
- useEffect16(() => {
11339
+ useEffect17(() => {
10904
11340
  return () => {
10905
11341
  useBinanceStore.getState().setPaymentMode(null);
10906
11342
  qc.resetQueries({ queryKey: [QUERY_KEYS2.binanceTradingPairs] });
@@ -10948,8 +11384,8 @@ function Binance() {
10948
11384
  const minimumAmountWarningMsg = srcInputAmount < fiatMinimum ? (
10949
11385
  // @ts-expect-error i18n typings
10950
11386
  t("passport:buyMenu.inputPlaceholder.providerMin", {
10951
- minimum: fiatMinimum.toFixed(2),
10952
- currency: selectedFiat.toUpperCase(),
11387
+ minimum: fiatMinimum?.toFixed(2),
11388
+ currency: selectedFiat?.toUpperCase(),
10953
11389
  provider: "BINANCE CONNECT"
10954
11390
  })
10955
11391
  ) : void 0;
@@ -11419,11 +11855,11 @@ var init_networks = __esm({
11419
11855
 
11420
11856
  // src/internal/components/BuyMenu/finchpay/useFinchpaySseTxTracing.ts
11421
11857
  import { useQueryClient as useQueryClient6 } from "@tanstack/react-query";
11422
- import { useEffect as useEffect17, useRef as useRef11 } from "react";
11858
+ import { useEffect as useEffect18, useRef as useRef10 } from "react";
11423
11859
  function useFinchpaySseTxTracing(walletAddress) {
11424
11860
  const qc = useQueryClient6();
11425
- const debounceRef = useRef11(null);
11426
- useEffect17(() => {
11861
+ const debounceRef = useRef10(null);
11862
+ useEffect18(() => {
11427
11863
  if (!walletAddress) return;
11428
11864
  const iframeManager = getIframeManager();
11429
11865
  if (!iframeManager) return;
@@ -11472,7 +11908,7 @@ var init_utils7 = __esm({
11472
11908
  // src/internal/components/BuyMenu/finchpay/FinchPay.tsx
11473
11909
  import { useQuery as useQuery4, useQueryClient as useQueryClient7 } from "@tanstack/react-query";
11474
11910
  import { DollarSign, LoaderIcon as LoaderIcon6 } from "lucide-react";
11475
- import { useEffect as useEffect18 } from "react";
11911
+ import { useEffect as useEffect19 } from "react";
11476
11912
  import { Fragment as Fragment12, jsx as jsx44, jsxs as jsxs38 } from "react/jsx-runtime";
11477
11913
  function FinchPay() {
11478
11914
  const qc = useQueryClient7();
@@ -11548,11 +11984,11 @@ function FinchPay() {
11548
11984
  })
11549
11985
  });
11550
11986
  const minimum = Number(limitsData?.min_amount || "0");
11551
- useEffect18(() => {
11987
+ useEffect19(() => {
11552
11988
  if (minimum <= 0) return;
11553
11989
  useBuyMenuStore.getState().setMinAmount(minimum);
11554
11990
  }, [minimum]);
11555
- useEffect18(() => {
11991
+ useEffect19(() => {
11556
11992
  if (srcInputAmount >= minimum) return;
11557
11993
  useBuyMenuStore.getState().setRenderKey(`finchpay-input-minimum-warning-${Date.now()}`);
11558
11994
  }, [minimum, srcInputAmount]);
@@ -11580,23 +12016,23 @@ function FinchPay() {
11580
12016
  // defaults to CARD estimation, widgetUrl
11581
12017
  })
11582
12018
  });
11583
- useEffect18(() => {
12019
+ useEffect19(() => {
11584
12020
  const { error: errorTitle, message: errorMessage } = handleErrors([currenciesError, limitsError, estimateError]);
11585
12021
  if (!errorTitle && !errorMessage) return;
11586
12022
  console.error(`[BuyModal][Binance] ${errorTitle}: ${errorMessage}`);
11587
12023
  useBuyMenuStore.getState().setError(errorMessage);
11588
12024
  }, [currenciesError, limitsError, estimateError]);
11589
- useEffect18(() => {
12025
+ useEffect19(() => {
11590
12026
  if (!!selectedFiat || currenciesData.fiats.length === 0) return;
11591
12027
  const fallbackFiat = currenciesData.fiats[0];
11592
12028
  const targetFiat = currenciesData.fiats.find((f) => f.ticker.toUpperCase() === "USD") || fallbackFiat;
11593
12029
  useBuyMenuStore.getState().setSelectedFiat(targetFiat.ticker);
11594
12030
  }, [currenciesData, selectedFiat]);
11595
- useEffect18(() => {
12031
+ useEffect19(() => {
11596
12032
  if (!!selectedCrypto || currenciesData.currentNetworkCoins.length === 0) return;
11597
12033
  useBuyMenuStore.getState().setSelectedCrypto(currenciesData.currentNetworkCoins[0].ticker);
11598
12034
  }, [currenciesData, selectedCrypto]);
11599
- useEffect18(() => {
12035
+ useEffect19(() => {
11600
12036
  return () => {
11601
12037
  qc.resetQueries({ queryKey: [QUERY_KEYS2.finchPayCurrencies] });
11602
12038
  qc.resetQueries({ queryKey: [QUERY_KEYS2.finchPayLimits] });
@@ -11850,7 +12286,7 @@ var init_ProviderSelector = __esm({
11850
12286
  });
11851
12287
 
11852
12288
  // src/internal/components/BuyMenu/useHandleInputAmount.ts
11853
- import { useEffect as useEffect19, useRef as useRef12 } from "react";
12289
+ import { useEffect as useEffect20, useRef as useRef11 } from "react";
11854
12290
  var ON_INPUT_QUERY_DELAY, useHandleInputAmount;
11855
12291
  var init_useHandleInputAmount = __esm({
11856
12292
  "src/internal/components/BuyMenu/useHandleInputAmount.ts"() {
@@ -11858,12 +12294,12 @@ var init_useHandleInputAmount = __esm({
11858
12294
  init_useBuyMenuStore();
11859
12295
  ON_INPUT_QUERY_DELAY = 1500;
11860
12296
  useHandleInputAmount = () => {
11861
- const lastRampProviderRef = useRef12(DEFAULT_PROVIDER2);
12297
+ const lastRampProviderRef = useRef11(DEFAULT_PROVIDER2);
11862
12298
  const rampProvider = useBuyMenuStore((st) => st.rampProvider);
11863
12299
  const srcInputAmount = useBuyMenuStore((st) => st.srcInputAmount);
11864
12300
  const minAmount = useBuyMenuStore((st) => st.minAmount);
11865
- const queryAmountTimer = useRef12(null);
11866
- useEffect19(() => {
12301
+ const queryAmountTimer = useRef11(null);
12302
+ useEffect20(() => {
11867
12303
  if (queryAmountTimer.current) clearTimeout(queryAmountTimer.current);
11868
12304
  queryAmountTimer.current = setTimeout(() => {
11869
12305
  const checkedValue = Math.ceil(Math.max(Number(srcInputAmount), Number(minAmount)));
@@ -11871,7 +12307,7 @@ var init_useHandleInputAmount = __esm({
11871
12307
  useBuyMenuStore.getState().setSrcQueryAmount(checkedValue);
11872
12308
  }, ON_INPUT_QUERY_DELAY);
11873
12309
  }, [minAmount, srcInputAmount]);
11874
- useEffect19(() => {
12310
+ useEffect20(() => {
11875
12311
  if (lastRampProviderRef.current === rampProvider) return;
11876
12312
  const {
11877
12313
  setIsProviderSummary,
@@ -11894,7 +12330,7 @@ var init_useHandleInputAmount = __esm({
11894
12330
  });
11895
12331
 
11896
12332
  // src/internal/components/BuyMenu/BuyMenu.tsx
11897
- import { ArrowLeft as ArrowLeft3, CircleQuestionMarkIcon } from "lucide-react";
12333
+ import { ArrowLeft as ArrowLeft3 } from "lucide-react";
11898
12334
  import { Fragment as Fragment14, jsx as jsx46, jsxs as jsxs40 } from "react/jsx-runtime";
11899
12335
  function BuyMenu() {
11900
12336
  const { t } = useT();
@@ -11915,6 +12351,7 @@ function BuyMenu() {
11915
12351
  const ProviderComponent = RAMP_PROVIDERS[rampProvider];
11916
12352
  const showExtras = !isCryptoSelector && !isFiatSelector && !isProviderSummary && !isProviderSelector && !isPaymentModeSelector;
11917
12353
  const showProviderTrigger = showExtras && !isTransactionHistory;
12354
+ useOnboardingTourAvailable(showProviderTrigger);
11918
12355
  return /* @__PURE__ */ jsx46(
11919
12356
  "div",
11920
12357
  {
@@ -11973,30 +12410,17 @@ function BuyMenu() {
11973
12410
  }
11974
12411
  ),
11975
12412
  /* @__PURE__ */ jsx46("span", { className: "block flex-none text-xl font-semibold", children: t("passport:buyMenu.title") }),
11976
- showExtras && /* @__PURE__ */ jsxs40("div", { className: "flex-1 h-8 flex items-center justify-end gap-[var(--ui-kit-gap)]", children: [
11977
- showProviderTrigger && /* @__PURE__ */ jsx46(
11978
- Button,
11979
- {
11980
- ref: (inst) => onboarder.registerElement("buymenu-tour-button" /* tourButton */, inst),
11981
- variant: "ghost",
11982
- size: "icon",
11983
- className: "flex-none",
11984
- onClick: () => onboarder.startTour(BUY_MENU_BINANCE_TOUR),
11985
- children: /* @__PURE__ */ jsx46(CircleQuestionMarkIcon, { className: "h-4 w-4" })
11986
- }
11987
- ),
11988
- /* @__PURE__ */ jsx46(
11989
- Switch,
11990
- {
11991
- labels: { checked: "PURCHASE", unchecked: "HISTORY" },
11992
- checked: isTransactionHistory,
11993
- onChange: () => {
11994
- useBuyMenuStore.getState().setError(null);
11995
- useBuyMenuStore.getState().setIsTransactionHistory();
11996
- }
12413
+ showExtras && /* @__PURE__ */ jsx46("div", { className: "flex-1 h-8 flex items-center justify-end gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx46(
12414
+ Switch,
12415
+ {
12416
+ labels: { checked: "PURCHASE", unchecked: "HISTORY" },
12417
+ checked: isTransactionHistory,
12418
+ onChange: () => {
12419
+ useBuyMenuStore.getState().setError(null);
12420
+ useBuyMenuStore.getState().setIsTransactionHistory();
11997
12421
  }
11998
- )
11999
- ] })
12422
+ }
12423
+ ) })
12000
12424
  ] }),
12001
12425
  showProviderTrigger && /* @__PURE__ */ jsxs40(Fragment14, { children: [
12002
12426
  /* @__PURE__ */ jsx46("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:buyMenu.selectProvider") }),
@@ -12041,7 +12465,6 @@ var init_BuyMenu = __esm({
12041
12465
  init_switch();
12042
12466
  init_ProviderSelector();
12043
12467
  init_contants();
12044
- init_onboarding_setup();
12045
12468
  init_useBuyMenuStore();
12046
12469
  init_useHandleInputAmount();
12047
12470
  }
@@ -12395,6 +12818,20 @@ var init_ChainItem = __esm({
12395
12818
  }
12396
12819
  });
12397
12820
 
12821
+ // src/internal/components/ChainsMenu/onboarding.setup.ts
12822
+ var CHAIN_MENU_TOUR;
12823
+ var init_onboarding_setup2 = __esm({
12824
+ "src/internal/components/ChainsMenu/onboarding.setup.ts"() {
12825
+ CHAIN_MENU_TOUR = [
12826
+ {
12827
+ elId: "embarkai-chain-menu-onboarding" /* chainMenu */,
12828
+ title: "passport:chainMenu.onboarding.chainMenu.title",
12829
+ description: "passport:chainMenu.onboarding.chainMenu.description"
12830
+ }
12831
+ ];
12832
+ }
12833
+ });
12834
+
12398
12835
  // src/internal/components/ChainsMenu/ChainsMenu.tsx
12399
12836
  import { PAYMASTER_CACHE_TTL_MS } from "@embarkai/core";
12400
12837
  import { getChainConfig as getChainConfig8, SUPPORTED_MAINNETS as SUPPORTED_MAINNETS2 } from "@embarkai/core/read";
@@ -12403,12 +12840,13 @@ import { ArrowLeft as ArrowLeft4 } from "lucide-react";
12403
12840
  import { useMemo as useMemo5, useState as useState10 } from "react";
12404
12841
  import { jsx as jsx54, jsxs as jsxs48 } from "react/jsx-runtime";
12405
12842
  function ChainsMenu() {
12843
+ const { t } = useT();
12406
12844
  const config = useProviderConfig().config;
12407
12845
  const activeChainId = useSession((st) => st.activeChainId);
12846
+ const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
12408
12847
  const [isTestnets, setIsTestnets] = useState10(false);
12409
12848
  const [nextChainId, setNextChainId] = useState10(null);
12410
- const { t } = useT();
12411
- const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
12849
+ useOnboardingTourAvailable(true);
12412
12850
  const visibleNetworks = useMemo5(() => {
12413
12851
  return NETWORK_OPTIONS.filter(
12414
12852
  (option) => option.isActive && (isTestnets ? true : SUPPORTED_MAINNETS2.includes(option.chainId))
@@ -12439,6 +12877,7 @@ function ChainsMenu() {
12439
12877
  return /* @__PURE__ */ jsx54(
12440
12878
  "div",
12441
12879
  {
12880
+ ref: (inst) => onboarder.registerElement("embarkai-chain-menu-onboarding" /* chainMenu */, inst),
12442
12881
  style: {
12443
12882
  "--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
12444
12883
  "--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
@@ -12493,6 +12932,7 @@ var init_ChainsMenu = __esm({
12493
12932
  init_useLayoutDataStore();
12494
12933
  init_useLayoutStore();
12495
12934
  init_Expandable2();
12935
+ init_Onboarding();
12496
12936
  init_button();
12497
12937
  init_switch();
12498
12938
  init_ChainItem();
@@ -12593,6 +13033,7 @@ var init_ChainsMenu2 = __esm({
12593
13033
  "src/internal/components/ChainsMenu/index.ts"() {
12594
13034
  init_ChainsMenu();
12595
13035
  init_ChainSwitchRequest();
13036
+ init_onboarding_setup2();
12596
13037
  }
12597
13038
  });
12598
13039
 
@@ -13267,7 +13708,7 @@ var init_guardian_backup = __esm({
13267
13708
  });
13268
13709
 
13269
13710
  // src/internal/components/DevicesMenu/DeviceManageScreen.tsx
13270
- import { useCallback as useCallback14, useEffect as useEffect20, useRef as useRef13, useState as useState12 } from "react";
13711
+ import { useCallback as useCallback14, useEffect as useEffect21, useRef as useRef12, useState as useState12 } from "react";
13271
13712
  import { ArrowLeft as ArrowLeft7, Cpu, Download, HardDrive, Loader2 as Loader23, Trash2, Upload } from "lucide-react";
13272
13713
  import { Fragment as Fragment15, jsx as jsx57, jsxs as jsxs51 } from "react/jsx-runtime";
13273
13714
  function formatSize(bytes) {
@@ -13282,19 +13723,19 @@ function DeviceManageScreen() {
13282
13723
  const userId = session?.mpcUserId || "";
13283
13724
  const deviceId = pageParams?.deviceId;
13284
13725
  const deviceName = pageParams?.deviceName;
13285
- const guardianRef = useRef13(null);
13726
+ const guardianRef = useRef12(null);
13286
13727
  const [screen, setScreen] = useState12({ step: "connecting" });
13287
13728
  const [actionState, setActionState] = useState12(null);
13288
13729
  const [password, setPassword] = useState12("");
13289
13730
  const [statusMessage, setStatusMessage] = useState12(null);
13290
13731
  const [errorMessage, setErrorMessage] = useState12(null);
13291
13732
  const [waitingConfirm, setWaitingConfirm] = useState12(false);
13292
- useEffect20(() => {
13733
+ useEffect21(() => {
13293
13734
  if (!statusMessage) return;
13294
13735
  const t = setTimeout(() => setStatusMessage(null), 3e3);
13295
13736
  return () => clearTimeout(t);
13296
13737
  }, [statusMessage]);
13297
- useEffect20(() => {
13738
+ useEffect21(() => {
13298
13739
  if (!deviceId || !isWebSerialAvailable()) {
13299
13740
  setScreen({ step: "error", message: "WebSerial not available" });
13300
13741
  return;
@@ -14422,7 +14863,7 @@ var init_cloudStorage = __esm({
14422
14863
 
14423
14864
  // src/internal/components/KeyshareRestoreMenu/hooks/useCreateBackup.ts
14424
14865
  import { useMutation as useMutation9, useQueryClient as useQueryClient9 } from "@tanstack/react-query";
14425
- import { useCallback as useCallback17, useEffect as useEffect21 } from "react";
14866
+ import { useCallback as useCallback17, useEffect as useEffect22 } from "react";
14426
14867
  function useCreateBackup() {
14427
14868
  const qc = useQueryClient9();
14428
14869
  const session = useSession((st) => st.session);
@@ -14431,7 +14872,7 @@ function useCreateBackup() {
14431
14872
  const usePasskey = useRestoreStore((st) => st.usePasskey);
14432
14873
  const restorePassword = useRestoreStore((st) => st.restorePassword);
14433
14874
  const selectedCloudProvider = useRestoreStore((st) => st.selectedCloudProvider);
14434
- useEffect21(() => {
14875
+ useEffect22(() => {
14435
14876
  if (!hasServerVault) {
14436
14877
  useRestoreStore.getState().setMethod("server");
14437
14878
  useLayoutStore.getState().setIsDialogForced(true);
@@ -14726,7 +15167,7 @@ var init_useRestoreAccount = __esm({
14726
15167
  });
14727
15168
 
14728
15169
  // src/internal/components/KeyshareRestoreMenu/hooks/useValidateFileBackup.ts
14729
- import { useEffect as useEffect22 } from "react";
15170
+ import { useEffect as useEffect23 } from "react";
14730
15171
  function validateRestoreFileFormat(parsedData) {
14731
15172
  if (typeof parsedData !== "object" || parsedData === null) return false;
14732
15173
  const data = parsedData;
@@ -14736,7 +15177,7 @@ function useValidateFileBackup() {
14736
15177
  const restoreFile = useRestoreStore((st) => st.restoreFile);
14737
15178
  const setError = useRestoreStore((st) => st.setError);
14738
15179
  const setUsePasskey = useRestoreStore((st) => st.setUsePasskey);
14739
- useEffect22(() => {
15180
+ useEffect23(() => {
14740
15181
  if (!restoreFile) {
14741
15182
  return;
14742
15183
  }
@@ -14853,16 +15294,80 @@ var init_MethodSelector = __esm({
14853
15294
  { method: "cloud", label: "passport:backupMenu.cloud", Icon: Cloud, disabled: true }
14854
15295
  ];
14855
15296
  if (isWebSerialAvailable()) {
14856
- methods.push({ method: "guardian", label: "Guardian", Icon: Cpu3 });
15297
+ methods.push({ method: "guardian", label: "passport:guardiansMenu.title", Icon: Cpu3 });
14857
15298
  }
14858
15299
  return methods;
14859
15300
  };
14860
15301
  }
14861
15302
  });
14862
15303
 
15304
+ // src/internal/components/KeyshareRestoreMenu/onboarding.setup.ts
15305
+ var KEYSHARE_BACKUP_MENU_TOUR;
15306
+ var init_onboarding_setup3 = __esm({
15307
+ "src/internal/components/KeyshareRestoreMenu/onboarding.setup.ts"() {
15308
+ init_hooks();
15309
+ KEYSHARE_BACKUP_MENU_TOUR = [
15310
+ {
15311
+ elId: "embarkai-keyshare-backup-menu-onboarding" /* backupMenu */,
15312
+ title: "passport:backupMenu.onboarding.backupMenu.title",
15313
+ description: "passport:backupMenu.onboarding.backupMenu.description",
15314
+ onNext: () => {
15315
+ const { setSuccess, setError, setRestorePassword, setRestoreFile, setShowPassword, setUsePasskey, setMethod } = useRestoreStore.getState();
15316
+ setSuccess(null);
15317
+ setError(null);
15318
+ setRestoreFile(null);
15319
+ setRestorePassword("");
15320
+ setShowPassword(false);
15321
+ setUsePasskey(false);
15322
+ setMethod("server");
15323
+ }
15324
+ },
15325
+ {
15326
+ elId: "embarkai-keyshare-backup-method-onboarding" /* backupEncryptionMethodSelector */,
15327
+ title: "passport:backupMenu.onboarding.backupEncryptionMethod.title",
15328
+ description: "passport:backupMenu.onboarding.backupEncryptionMethod.description",
15329
+ onNext: () => {
15330
+ const { setRestorePassword, setShowPassword } = useRestoreStore.getState();
15331
+ setRestorePassword("<your-strong-password>");
15332
+ setShowPassword(true);
15333
+ }
15334
+ },
15335
+ {
15336
+ elId: "embarkai-keyshare-backup-menu-onboarding" /* backupMenu */,
15337
+ title: "passport:backupMenu.onboarding.backupEncryptionPassword.title",
15338
+ description: "passport:backupMenu.onboarding.backupEncryptionPassword.description",
15339
+ onNext: () => {
15340
+ const { setRestorePassword, setShowPassword } = useRestoreStore.getState();
15341
+ setRestorePassword("");
15342
+ setShowPassword(false);
15343
+ useRestoreStore.getState().setUsePasskey(true);
15344
+ }
15345
+ },
15346
+ {
15347
+ elId: "embarkai-keyshare-backup-menu-onboarding" /* backupMenu */,
15348
+ title: "passport:backupMenu.onboarding.backupEncryptionPasskey.title",
15349
+ description: "passport:backupMenu.onboarding.backupEncryptionPasskey.description",
15350
+ onNext: () => {
15351
+ useRestoreStore.getState().setUsePasskey(false);
15352
+ }
15353
+ },
15354
+ {
15355
+ elId: "embarkai-keyshare-backup-status-onboarding" /* backupStatus */,
15356
+ title: "passport:backupMenu.onboarding.backupStatus.title",
15357
+ description: "passport:backupMenu.onboarding.backupStatus.description"
15358
+ },
15359
+ {
15360
+ elId: "embarkai-keyshare-backup-advanced-onboarding" /* backupAdvanced */,
15361
+ title: "passport:backupMenu.onboarding.backupAdvanced.title",
15362
+ description: "passport:backupMenu.onboarding.backupAdvanced.description"
15363
+ }
15364
+ ];
15365
+ }
15366
+ });
15367
+
14863
15368
  // src/internal/components/KeyshareRestoreMenu/components/PasswordPasskey.tsx
14864
15369
  import { ChevronRight as ChevronRight2, Eye, EyeOff, Info as Info3, Key as Key4, Loader as Loader8, Plus } from "lucide-react";
14865
- import { useEffect as useEffect23, useRef as useRef14 } from "react";
15370
+ import { useEffect as useEffect24, useRef as useRef13 } from "react";
14866
15371
  import { Fragment as Fragment18, jsx as jsx61, jsxs as jsxs55 } from "react/jsx-runtime";
14867
15372
  function PasswordPasskey(props) {
14868
15373
  const { t } = useT();
@@ -14877,7 +15382,7 @@ function PasswordPasskey(props) {
14877
15382
  onCreatePasskey
14878
15383
  } = props;
14879
15384
  const hasServerVault = useSession((st) => st.hasServerVault);
14880
- const actionRef = useRef14(null);
15385
+ const actionRef = useRef13(null);
14881
15386
  const {
14882
15387
  showPassword,
14883
15388
  restorePassword,
@@ -14891,46 +15396,55 @@ function PasswordPasskey(props) {
14891
15396
  } = useRestoreStore();
14892
15397
  const { config } = useProviderConfig();
14893
15398
  const isPasskeyEnabled = config.current.passkey.enabled;
14894
- useEffect23(() => {
15399
+ useEffect24(() => {
14895
15400
  if (!isPasskeyEnabled && usePasskey) setUsePasskey(false);
14896
15401
  }, [isPasskeyEnabled, usePasskey]);
14897
15402
  return /* @__PURE__ */ jsxs55(Fragment18, { children: [
14898
- mode === "backup" && isPasskeyEnabled && /* @__PURE__ */ jsxs55("div", { className: "flex items-center justify-center px-[var(--ui-kit-pd)]", children: [
14899
- /* @__PURE__ */ jsxs55(
14900
- Button,
14901
- {
14902
- size: "medium",
14903
- variant: "ghost",
14904
- onClick: () => {
14905
- setUsePasskey(false);
14906
- setRestoreFile(null);
14907
- setRestorePassword("");
14908
- },
14909
- className: cn(usePasskey ? "opacity-50" : "opacity-100"),
14910
- children: [
14911
- /* @__PURE__ */ jsx61(opt_default, { className: "w-4 h-4 inline-block mr-1" }),
14912
- t("passport:common.password")
14913
- ]
14914
- }
14915
- ),
14916
- /* @__PURE__ */ jsxs55(
14917
- Button,
14918
- {
14919
- size: "medium",
14920
- variant: "ghost",
14921
- onClick: () => {
14922
- setUsePasskey(true);
14923
- setRestoreFile(null);
14924
- setRestorePassword("");
14925
- },
14926
- className: cn(usePasskey ? "opacity-100" : "opacity-50"),
14927
- children: [
14928
- /* @__PURE__ */ jsx61(Key4, { className: "w-4 h-4 inline-block mr-1" }),
14929
- t("passport:common.passkey")
14930
- ]
14931
- }
14932
- )
14933
- ] }),
15403
+ mode === "backup" && isPasskeyEnabled && /* @__PURE__ */ jsxs55(
15404
+ "div",
15405
+ {
15406
+ ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-method-onboarding" /* backupEncryptionMethodSelector */, inst),
15407
+ className: "flex items-center justify-center px-[var(--ui-kit-pd)]",
15408
+ children: [
15409
+ /* @__PURE__ */ jsxs55(
15410
+ Button,
15411
+ {
15412
+ ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-method-password-onboarding" /* backupEncryptionMethodPassword */, inst),
15413
+ size: "medium",
15414
+ variant: "ghost",
15415
+ onClick: () => {
15416
+ setUsePasskey(false);
15417
+ setRestoreFile(null);
15418
+ setRestorePassword("");
15419
+ },
15420
+ className: cn(usePasskey ? "opacity-50" : "opacity-100"),
15421
+ children: [
15422
+ /* @__PURE__ */ jsx61(opt_default, { className: "w-4 h-4 inline-block mr-1" }),
15423
+ t("passport:common.password")
15424
+ ]
15425
+ }
15426
+ ),
15427
+ /* @__PURE__ */ jsxs55(
15428
+ Button,
15429
+ {
15430
+ ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-method-passkey-onboarding" /* backupEncryptionMethodPasskey */, inst),
15431
+ size: "medium",
15432
+ variant: "ghost",
15433
+ onClick: () => {
15434
+ setUsePasskey(true);
15435
+ setRestoreFile(null);
15436
+ setRestorePassword("");
15437
+ },
15438
+ className: cn(usePasskey ? "opacity-100" : "opacity-50"),
15439
+ children: [
15440
+ /* @__PURE__ */ jsx61(Key4, { className: "w-4 h-4 inline-block mr-1" }),
15441
+ t("passport:common.passkey")
15442
+ ]
15443
+ }
15444
+ )
15445
+ ]
15446
+ }
15447
+ ),
14934
15448
  !hasServerVault && /* @__PURE__ */ jsx61("span", { className: "block w-full text-[10px] py-1 text-center text-[var(--ui-kit-fg-muted)]", children: usePasskey ? /* @__PURE__ */ jsxs55(Fragment18, { children: [
14935
15449
  t("passport:backupMenu.passkeyMsg"),
14936
15450
  " ",
@@ -15053,6 +15567,7 @@ var init_PasswordPasskey = __esm({
15053
15567
  init_i18n();
15054
15568
  init_utils2();
15055
15569
  init_icons();
15570
+ init_Onboarding();
15056
15571
  init_button();
15057
15572
  init_highlight();
15058
15573
  init_input();
@@ -15219,7 +15734,7 @@ var init_File = __esm({
15219
15734
  import { useQueryClient as useQueryClient10 } from "@tanstack/react-query";
15220
15735
  import dayjs3 from "dayjs";
15221
15736
  import { Download as Download3, Key as Key5, Upload as Upload3 } from "lucide-react";
15222
- import { useEffect as useEffect24 } from "react";
15737
+ import { useEffect as useEffect25 } from "react";
15223
15738
  import { Fragment as Fragment21, jsx as jsx64, jsxs as jsxs58 } from "react/jsx-runtime";
15224
15739
  function Server(props) {
15225
15740
  const { isLoading, mode = "restore", serverHandler, createPasskeyHandler } = props;
@@ -15229,7 +15744,7 @@ function Server(props) {
15229
15744
  const usePasskey = useRestoreStore((st) => st.usePasskey);
15230
15745
  const setUsePasskey = useRestoreStore((st) => st.setUsePasskey);
15231
15746
  const serverRecoveryStatus = qc.getQueryData([CHECK_BACKUP_QUERY_KEY, address]);
15232
- useEffect24(() => {
15747
+ useEffect25(() => {
15233
15748
  if (mode === "backup" || !serverRecoveryStatus?.created?.encryptionMethod) return;
15234
15749
  setUsePasskey(serverRecoveryStatus.created.encryptionMethod === "passkey");
15235
15750
  }, [mode, serverRecoveryStatus, setUsePasskey]);
@@ -15252,16 +15767,24 @@ function Server(props) {
15252
15767
  ) : t("passport:backupMenu.vaultRestore")
15253
15768
  }
15254
15769
  ),
15255
- !!serverRecoveryStatus?.created?.at && /* @__PURE__ */ jsxs58(Highlight, { type: "info", className: "flex gap-[var(--ui-kit-gap)]", children: [
15256
- serverRecoveryStatus.created.encryptionMethod === "password" ? /* @__PURE__ */ jsx64(opt_default, { className: "w-4 h-4" }) : /* @__PURE__ */ jsx64(Key5, { className: "w-4 h-4" }),
15257
- /* @__PURE__ */ jsxs58("span", { className: "flex-1 block", children: [
15258
- t("passport:backupMenu.vaultRecoveryStatus"),
15259
- " ",
15260
- /* @__PURE__ */ jsx64("strong", { children: serverRecoveryStatus.created.encryptionMethod?.toUpperCase() }),
15261
- /* @__PURE__ */ jsx64("br", {}),
15262
- /* @__PURE__ */ jsx64("strong", { children: dayjs3(serverRecoveryStatus.created.at).format("MMMM DD, YYYY HH:mm") })
15263
- ] })
15264
- ] })
15770
+ !!serverRecoveryStatus?.created?.at && /* @__PURE__ */ jsxs58(
15771
+ Highlight,
15772
+ {
15773
+ ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-status-onboarding" /* backupStatus */, inst),
15774
+ type: "info",
15775
+ className: "flex gap-[var(--ui-kit-gap)]",
15776
+ children: [
15777
+ serverRecoveryStatus.created.encryptionMethod === "password" ? /* @__PURE__ */ jsx64(opt_default, { className: "w-4 h-4" }) : /* @__PURE__ */ jsx64(Key5, { className: "w-4 h-4" }),
15778
+ /* @__PURE__ */ jsxs58("span", { className: "flex-1 block", children: [
15779
+ t("passport:backupMenu.vaultRecoveryStatus"),
15780
+ " ",
15781
+ /* @__PURE__ */ jsx64("strong", { children: serverRecoveryStatus.created.encryptionMethod?.toUpperCase() }),
15782
+ /* @__PURE__ */ jsx64("br", {}),
15783
+ /* @__PURE__ */ jsx64("strong", { children: dayjs3(serverRecoveryStatus.created.at).format("MMMM DD, YYYY HH:mm") })
15784
+ ] })
15785
+ ]
15786
+ }
15787
+ )
15265
15788
  ] });
15266
15789
  }
15267
15790
  var init_Server = __esm({
@@ -15269,6 +15792,7 @@ var init_Server = __esm({
15269
15792
  init_SessionContext();
15270
15793
  init_useT();
15271
15794
  init_icons();
15795
+ init_Onboarding();
15272
15796
  init_highlight();
15273
15797
  init_PasswordPasskey();
15274
15798
  init_constants5();
@@ -15412,7 +15936,7 @@ var init_select = __esm({
15412
15936
  // src/internal/components/KeyshareRestoreMenu/methods/Cloud.tsx
15413
15937
  import { useQuery as useQuery7 } from "@tanstack/react-query";
15414
15938
  import { ArrowLeft as ArrowLeft10, CloudDownload, CloudUpload, Loader as Loader9 } from "lucide-react";
15415
- import { useEffect as useEffect25 } from "react";
15939
+ import { useEffect as useEffect26 } from "react";
15416
15940
  import { Fragment as Fragment22, jsx as jsx66, jsxs as jsxs60 } from "react/jsx-runtime";
15417
15941
  function Cloud2(props) {
15418
15942
  const { isLoading, mode = "restore", cloudHandler } = props;
@@ -15433,7 +15957,7 @@ function Cloud2(props) {
15433
15957
  return availableProviders.map((p) => ({ id: p.id, name: p.name, available: p.isAvailable() }));
15434
15958
  }
15435
15959
  });
15436
- useEffect25(() => {
15960
+ useEffect26(() => {
15437
15961
  if (isCloudProvidersLoading) return;
15438
15962
  if (!!cloudProvidersError) {
15439
15963
  console.error("[KeyshareBackup] Failed to load cloud providers:", cloudProvidersError);
@@ -15673,7 +16197,7 @@ var init_methods = __esm({
15673
16197
  // src/internal/components/KeyshareRestoreMenu/KeyshareRestoreMenu.tsx
15674
16198
  import { useMutation as useMutation11, useQuery as useQuery8, useQueryClient as useQueryClient11 } from "@tanstack/react-query";
15675
16199
  import { AlertCircle as AlertCircle2, CheckCircle2, CloudDownload as CloudDownload2, Loader as Loader10, UserCircle as UserCircle2 } from "lucide-react";
15676
- import { useEffect as useEffect26 } from "react";
16200
+ import { useEffect as useEffect27 } from "react";
15677
16201
  import { useDisconnect } from "wagmi";
15678
16202
  import { Fragment as Fragment24, jsx as jsx68, jsxs as jsxs62 } from "react/jsx-runtime";
15679
16203
  var RESTORE_COMPONENTS, KeyshareRestoreMenu;
@@ -15710,7 +16234,7 @@ var init_KeyshareRestoreMenu = __esm({
15710
16234
  const error = useRestoreStore((st) => st.error);
15711
16235
  const success = useRestoreStore((st) => st.success);
15712
16236
  const currentRestoreMethod = useRestoreStore((st) => st.method);
15713
- useEffect26(() => {
16237
+ useEffect27(() => {
15714
16238
  const { setIsDialogForced } = useLayoutStore.getState();
15715
16239
  const { setRestorePassword, setRestoreFile, setShowPassword, setUsePasskey, setMethod } = useRestoreStore.getState();
15716
16240
  setIsDialogForced(true);
@@ -15750,7 +16274,7 @@ var init_KeyshareRestoreMenu = __esm({
15750
16274
  queryFn: async () => await getShareRecoveryStats()
15751
16275
  });
15752
16276
  const hasServerBackup = serverRecoveryStatus?.created || serverRecoveryStatus?.devices?.length > 0;
15753
- useEffect26(() => {
16277
+ useEffect27(() => {
15754
16278
  if (!!hasServerBackup) useRestoreStore.getState().setMethod("server");
15755
16279
  }, [hasServerBackup]);
15756
16280
  const { mutate: disconnect, isPending: isDisconnecting } = useMutation11({
@@ -15897,7 +16421,7 @@ var init_KeyshareRestoreMenu = __esm({
15897
16421
  // src/internal/components/KeyshareRestoreMenu/KeyshareBackupMenu.tsx
15898
16422
  import { useQuery as useQuery9 } from "@tanstack/react-query";
15899
16423
  import { AlertCircle as AlertCircle3, ArrowLeft as ArrowLeft11, CheckCircle2 as CheckCircle22, Loader as Loader11, LockIcon } from "lucide-react";
15900
- import { useEffect as useEffect27 } from "react";
16424
+ import { useEffect as useEffect28 } from "react";
15901
16425
  import { Fragment as Fragment25, jsx as jsx69, jsxs as jsxs63 } from "react/jsx-runtime";
15902
16426
  function KeyshareBackupMenu() {
15903
16427
  const address = useSession((st) => st.address);
@@ -15906,9 +16430,10 @@ function KeyshareBackupMenu() {
15906
16430
  const setPage = useLayoutDataStore((st) => st.setPage);
15907
16431
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
15908
16432
  const currentBackupMethod = useRestoreStore((st) => st.method);
16433
+ const usePasskey = useRestoreStore((st) => st.usePasskey);
15909
16434
  const error = useRestoreStore((st) => st.error);
15910
16435
  const success = useRestoreStore((st) => st.success);
15911
- useEffect27(() => {
16436
+ useEffect28(() => {
15912
16437
  const { setSuccess, setError, setRestorePassword, setRestoreFile, setShowPassword, setUsePasskey, setMethod } = useRestoreStore.getState();
15913
16438
  return () => {
15914
16439
  setSuccess(null);
@@ -15926,8 +16451,9 @@ function KeyshareBackupMenu() {
15926
16451
  queryKey: [CHECK_BACKUP_QUERY_KEY, address],
15927
16452
  queryFn: async () => await getShareRecoveryStats()
15928
16453
  });
16454
+ useOnboardingTourAvailable(!isRecoveryLoading && currentBackupMethod === "server" && !usePasskey);
15929
16455
  const hasRecoveryData = serverRecoveryStatus?.created || serverRecoveryStatus?.devices?.length > 0;
15930
- useEffect27(() => {
16456
+ useEffect28(() => {
15931
16457
  if (!!hasRecoveryData) useRestoreStore.getState().setMethod("server");
15932
16458
  }, [hasRecoveryData]);
15933
16459
  const {
@@ -15944,6 +16470,7 @@ function KeyshareBackupMenu() {
15944
16470
  return /* @__PURE__ */ jsx69(
15945
16471
  "div",
15946
16472
  {
16473
+ ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-menu-onboarding" /* backupMenu */, inst),
15947
16474
  style: { "--ui-kit-scrollbar-mah": `${maxScrollHeight}px` },
15948
16475
  className: "list-scrollbar-y w-full",
15949
16476
  children: /* @__PURE__ */ jsxs63(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: [
@@ -15952,60 +16479,67 @@ function KeyshareBackupMenu() {
15952
16479
  /* @__PURE__ */ jsx69(LockIcon, { className: "w-6 h-6" }),
15953
16480
  /* @__PURE__ */ jsx69("span", { className: "font-bold text-xl leading-6", children: t("passport:backupMenu.title") })
15954
16481
  ] }),
15955
- !isRecoveryLoading && !!hasRecoveryData && /* @__PURE__ */ jsxs63("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
15956
- /* @__PURE__ */ jsxs63("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
15957
- /* @__PURE__ */ jsx69(
15958
- Button,
15959
- {
15960
- variant: "ghost",
15961
- size: "icon",
15962
- title: "Back",
15963
- onClick: () => {
15964
- const {
15965
- setSuccess,
15966
- setError,
15967
- setRestorePassword,
15968
- setRestoreFile,
15969
- setShowPassword,
15970
- setUsePasskey,
15971
- setMethod,
15972
- setSelectedCloudProvider
15973
- } = useRestoreStore.getState();
15974
- setRestorePassword("");
15975
- setRestoreFile(null);
15976
- setShowPassword(false);
15977
- setSelectedCloudProvider(null);
15978
- setUsePasskey(false);
15979
- setError(null);
15980
- setSuccess(null);
15981
- setMethod(null);
15982
- setPage("settings" /* SETTINGS */);
15983
- },
15984
- children: /* @__PURE__ */ jsx69(ArrowLeft11, { className: "h-4 w-4" })
15985
- }
15986
- ),
15987
- /* @__PURE__ */ jsx69("span", { className: "text-xl font-semibold leading-8", children: t("passport:backupMenu.title") })
15988
- ] }),
15989
- /* @__PURE__ */ jsx69(
15990
- Switch,
15991
- {
15992
- name: "advanced-restore-flow-toggle",
15993
- labels: { checked: t("passport:common.standard"), unchecked: t("passport:common.advanced") },
15994
- checked: currentBackupMethod !== "server",
15995
- onChange: () => {
15996
- const { setError, setRestorePassword, setRestoreFile, setMethod } = useRestoreStore.getState();
15997
- if (!!error) setError(null);
15998
- if (currentBackupMethod === "server") {
15999
- setRestorePassword("");
16000
- setMethod(null);
16001
- } else {
16002
- setRestoreFile(null);
16003
- setMethod("server");
16482
+ !isRecoveryLoading && !!hasRecoveryData && /* @__PURE__ */ jsxs63(
16483
+ "div",
16484
+ {
16485
+ ref: (inst) => onboarder.registerElement("embarkai-keyshare-backup-advanced-onboarding" /* backupAdvanced */, inst),
16486
+ className: "flex items-center justify-between gap-[var(--ui-kit-gap)]",
16487
+ children: [
16488
+ /* @__PURE__ */ jsxs63("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
16489
+ /* @__PURE__ */ jsx69(
16490
+ Button,
16491
+ {
16492
+ variant: "ghost",
16493
+ size: "icon",
16494
+ title: "Back",
16495
+ onClick: () => {
16496
+ const {
16497
+ setSuccess,
16498
+ setError,
16499
+ setRestorePassword,
16500
+ setRestoreFile,
16501
+ setShowPassword,
16502
+ setUsePasskey,
16503
+ setMethod,
16504
+ setSelectedCloudProvider
16505
+ } = useRestoreStore.getState();
16506
+ setRestorePassword("");
16507
+ setRestoreFile(null);
16508
+ setShowPassword(false);
16509
+ setSelectedCloudProvider(null);
16510
+ setUsePasskey(false);
16511
+ setError(null);
16512
+ setSuccess(null);
16513
+ setMethod(null);
16514
+ setPage("settings" /* SETTINGS */);
16515
+ },
16516
+ children: /* @__PURE__ */ jsx69(ArrowLeft11, { className: "h-4 w-4" })
16517
+ }
16518
+ ),
16519
+ /* @__PURE__ */ jsx69("span", { className: "text-xl font-semibold leading-8", children: t("passport:backupMenu.title") })
16520
+ ] }),
16521
+ /* @__PURE__ */ jsx69(
16522
+ Switch,
16523
+ {
16524
+ name: "advanced-restore-flow-toggle",
16525
+ labels: { checked: t("passport:common.standard"), unchecked: t("passport:common.advanced") },
16526
+ checked: currentBackupMethod !== "server",
16527
+ onChange: () => {
16528
+ const { setError, setRestorePassword, setRestoreFile, setMethod } = useRestoreStore.getState();
16529
+ if (!!error) setError(null);
16530
+ if (currentBackupMethod === "server") {
16531
+ setRestorePassword("");
16532
+ setMethod(null);
16533
+ } else {
16534
+ setRestoreFile(null);
16535
+ setMethod("server");
16536
+ }
16537
+ }
16004
16538
  }
16005
- }
16006
- }
16007
- )
16008
- ] }),
16539
+ )
16540
+ ]
16541
+ }
16542
+ ),
16009
16543
  !isRecoveryLoading && !!hasRecoveryData && !currentBackupMethod && /* @__PURE__ */ jsx69(MethodSelector, { mode: "backup", serverRecoveryStatus }),
16010
16544
  (!isRecoveryLoading || !hasServerVault) && !!currentBackupMethod && /* @__PURE__ */ jsx69(Fragment25, { children: /* @__PURE__ */ jsx69(
16011
16545
  BackupComponent,
@@ -16055,6 +16589,7 @@ var init_KeyshareBackupMenu = __esm({
16055
16589
  init_useLayoutStore();
16056
16590
  init_vaultClient();
16057
16591
  init_Expandable2();
16592
+ init_Onboarding();
16058
16593
  init_button();
16059
16594
  init_highlight();
16060
16595
  init_switch();
@@ -16076,11 +16611,12 @@ var init_KeyshareRestoreMenu2 = __esm({
16076
16611
  "src/internal/components/KeyshareRestoreMenu/index.ts"() {
16077
16612
  init_KeyshareRestoreMenu();
16078
16613
  init_KeyshareBackupMenu();
16614
+ init_onboarding_setup3();
16079
16615
  }
16080
16616
  });
16081
16617
 
16082
16618
  // src/hooks/useColorMode.ts
16083
- import { useCallback as useCallback18, useEffect as useEffect28 } from "react";
16619
+ import { useCallback as useCallback18, useEffect as useEffect29 } from "react";
16084
16620
  function useColorMode() {
16085
16621
  const {
16086
16622
  config: { current: config }
@@ -16095,7 +16631,7 @@ function useColorMode() {
16095
16631
  },
16096
16632
  [handleStoreColorMode]
16097
16633
  );
16098
- useEffect28(() => {
16634
+ useEffect29(() => {
16099
16635
  let targetColorMode = localStorage.getItem(LOCAL_COLOR_MODE_KEY);
16100
16636
  if (!targetColorMode && !preferedColorMode) {
16101
16637
  const systemMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
@@ -16212,17 +16748,17 @@ var init_SumsubIframeManager = __esm({
16212
16748
  });
16213
16749
 
16214
16750
  // src/internal/components/KYC/useSumsubIframe.ts
16215
- import { useEffect as useEffect29, useRef as useRef15, useState as useState17 } from "react";
16751
+ import { useEffect as useEffect30, useRef as useRef14, useState as useState17 } from "react";
16216
16752
  function useSumsubIframe({ iframeUrl }) {
16217
16753
  const config = useProviderConfig().config;
16218
16754
  const { colorMode } = useColorMode();
16219
- const iframeRef = useRef15(null);
16755
+ const iframeRef = useRef14(null);
16220
16756
  const [isLoading, setIsLoading] = useState17(true);
16221
16757
  const [error, setError] = useState17(null);
16222
16758
  const [height, setHeight] = useState17(0);
16223
16759
  const [status, setStatus] = useState17("");
16224
16760
  const levelName = config.current?.kyc?.options?.levelName;
16225
- useEffect29(() => {
16761
+ useEffect30(() => {
16226
16762
  setError(null);
16227
16763
  setIsLoading(true);
16228
16764
  setStatus("Preparing verification...");
@@ -16540,20 +17076,51 @@ var init_useProvidersList = __esm({
16540
17076
  }
16541
17077
  });
16542
17078
 
17079
+ // src/internal/components/MainMenu/onboarding.setup.ts
17080
+ var MAIN_MENU_TOUR;
17081
+ var init_onboarding_setup4 = __esm({
17082
+ "src/internal/components/MainMenu/onboarding.setup.ts"() {
17083
+ MAIN_MENU_TOUR = [
17084
+ {
17085
+ elId: "mainmenu-send-button" /* sendButton */,
17086
+ title: "passport:main.onboarding.sendButton.title",
17087
+ description: "passport:main.onboarding.sendButton.description"
17088
+ },
17089
+ {
17090
+ elId: "mainmenu-receive-button" /* receiveButton */,
17091
+ title: "passport:main.onboarding.receiveButton.title",
17092
+ description: "passport:main.onboarding.receiveButton.description"
17093
+ },
17094
+ {
17095
+ elId: "mainmenu-buy-button" /* buyButton */,
17096
+ title: "passport:main.onboarding.buyButton.title",
17097
+ description: "passport:main.onboarding.buyButton.description"
17098
+ },
17099
+ {
17100
+ elId: "mainmenu-portfolio-button" /* portfolioButton */,
17101
+ title: "passport:main.onboarding.portfolioButton.title",
17102
+ description: "passport:main.onboarding.portfolioButton.description"
17103
+ }
17104
+ ];
17105
+ }
17106
+ });
17107
+
16543
17108
  // src/internal/components/MainMenu/MainMenu.tsx
16544
17109
  import { ChevronLeft, ChevronRight as ChevronRight3, DollarSign as DollarSign2, Wallet2 as Wallet23 } from "lucide-react";
16545
- import { useEffect as useEffect30 } from "react";
17110
+ import { useEffect as useEffect31 } from "react";
16546
17111
  import { jsx as jsx74, jsxs as jsxs68 } from "react/jsx-runtime";
16547
17112
  function MainMenu() {
16548
17113
  const address = useSession((st) => st.address);
16549
17114
  const { t } = useT();
16550
17115
  const setPage = useLayoutDataStore((st) => st.setPage);
16551
17116
  const setTransitionPageHeight = useLayoutDataStore((st) => st.setTransitionPageHeight);
16552
- useEffect30(() => setTransitionPageHeight(DEFAULT_MAIN_MENU_HEIGHT), []);
17117
+ useEffect31(() => setTransitionPageHeight(DEFAULT_MAIN_MENU_HEIGHT), []);
17118
+ useOnboardingTourAvailable(true);
16553
17119
  useProvidersList();
16554
- return /* @__PURE__ */ jsx74("div", { className: "w-full p-[var(--ui-kit-pd)] flex flex-col gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx74("div", { className: "w-full grid grid-cols-4 gap-0 md:gap-[var(--ui-kit-gap)] py-[10px] md:py-1", children: MAIN_MENU_BUTTONS.map(({ id, label, icon: Icon2 }) => /* @__PURE__ */ jsxs68(
17120
+ return /* @__PURE__ */ jsx74("div", { className: "w-full p-[var(--ui-kit-pd)] flex flex-col gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx74("div", { className: "w-full grid grid-cols-4 gap-0 md:gap-[var(--ui-kit-gap)] py-[10px] md:py-1", children: MAIN_MENU_BUTTONS.map(({ id, onboardingId, label, icon: Icon2 }) => /* @__PURE__ */ jsxs68(
16555
17121
  Button,
16556
17122
  {
17123
+ ref: (inst) => onboarder.registerElement(onboardingId, inst),
16557
17124
  size: "large",
16558
17125
  variant: "ghost",
16559
17126
  disabled: !address,
@@ -16575,12 +17142,33 @@ var init_MainMenu = __esm({
16575
17142
  init_constants();
16576
17143
  init_useLayoutDataStore();
16577
17144
  init_useProvidersList();
17145
+ init_Onboarding();
16578
17146
  init_button();
16579
17147
  MAIN_MENU_BUTTONS = [
16580
- { id: "send" /* SEND */, label: "passport:main.send", icon: ChevronRight3 },
16581
- { id: "receive" /* RECEIVE */, label: "passport:main.receive", icon: ChevronLeft },
16582
- { id: "buy" /* BUY */, label: "passport:main.buy", icon: DollarSign2 },
16583
- { id: "assets" /* ASSETS */, label: "passport:main.assets", icon: Wallet23 }
17148
+ {
17149
+ id: "send" /* SEND */,
17150
+ onboardingId: "mainmenu-send-button" /* sendButton */,
17151
+ label: "passport:main.send",
17152
+ icon: ChevronRight3
17153
+ },
17154
+ {
17155
+ id: "receive" /* RECEIVE */,
17156
+ onboardingId: "mainmenu-receive-button" /* receiveButton */,
17157
+ label: "passport:main.receive",
17158
+ icon: ChevronLeft
17159
+ },
17160
+ {
17161
+ id: "buy" /* BUY */,
17162
+ onboardingId: "mainmenu-buy-button" /* buyButton */,
17163
+ label: "passport:main.buy",
17164
+ icon: DollarSign2
17165
+ },
17166
+ {
17167
+ id: "assets" /* ASSETS */,
17168
+ onboardingId: "mainmenu-portfolio-button" /* portfolioButton */,
17169
+ label: "passport:main.assets",
17170
+ icon: Wallet23
17171
+ }
16584
17172
  ];
16585
17173
  }
16586
17174
  });
@@ -16589,6 +17177,7 @@ var init_MainMenu = __esm({
16589
17177
  var init_MainMenu2 = __esm({
16590
17178
  "src/internal/components/MainMenu/index.ts"() {
16591
17179
  init_MainMenu();
17180
+ init_onboarding_setup4();
16592
17181
  }
16593
17182
  });
16594
17183
 
@@ -17096,7 +17685,7 @@ var init_EmailNotConnectedWarning = __esm({
17096
17685
 
17097
17686
  // src/internal/components/ManageWalletMenu/hooks/useLinkSocial.ts
17098
17687
  import { useQueryClient as useQueryClient15 } from "@tanstack/react-query";
17099
- import React22, { useEffect as useEffect31 } from "react";
17688
+ import React22, { useEffect as useEffect32 } from "react";
17100
17689
  function normalizeSocialLinkError(message) {
17101
17690
  if (message === "X_ALREADY_LINKED") {
17102
17691
  return "This X account is already linked to another account";
@@ -17172,7 +17761,7 @@ function useLinkSocial() {
17172
17761
  [config.social?.providers]
17173
17762
  );
17174
17763
  const [socialLinkStarted, setSocialLinkStarted] = React22.useState(false);
17175
- useEffect31(() => {
17764
+ useEffect32(() => {
17176
17765
  const key = providerType?.toLowerCase();
17177
17766
  console.log("[useLinkSocial] Effect triggered:", { key, linkIsLoading, socialLinkStarted, isWalletLinking });
17178
17767
  if (isWalletLinking) {
@@ -17255,7 +17844,7 @@ var init_telegram2 = __esm({
17255
17844
 
17256
17845
  // src/internal/components/ManageWalletMenu/hooks/useLinkTelegram.ts
17257
17846
  import { useQueryClient as useQueryClient16 } from "@tanstack/react-query";
17258
- import { useCallback as useCallback20, useEffect as useEffect32, useState as useState18 } from "react";
17847
+ import { useCallback as useCallback20, useEffect as useEffect33, useState as useState18 } from "react";
17259
17848
  function useLinkTelegram() {
17260
17849
  const {
17261
17850
  config: { current: config },
@@ -17314,7 +17903,7 @@ function useLinkTelegram() {
17314
17903
  }
17315
17904
  }, [config.social?.providers]);
17316
17905
  const [telegramLinkStarted, setTelegramLinkStarted] = useState18(false);
17317
- useEffect32(() => {
17906
+ useEffect33(() => {
17318
17907
  console.log("[useLinkTelegram] Effect triggered:", {
17319
17908
  providerType,
17320
17909
  linkIsLoading,
@@ -17331,7 +17920,7 @@ function useLinkTelegram() {
17331
17920
  handleLinkTelegram();
17332
17921
  }
17333
17922
  }, [providerType, handleLinkTelegram, linkIsLoading, telegramLinkStarted, isWalletLinking]);
17334
- useEffect32(() => {
17923
+ useEffect33(() => {
17335
17924
  if (providerType !== "telegram") {
17336
17925
  setTelegramLinkStarted(false);
17337
17926
  }
@@ -17350,6 +17939,20 @@ var init_useLinkTelegram = __esm({
17350
17939
  }
17351
17940
  });
17352
17941
 
17942
+ // src/internal/components/ManageWalletMenu/onboarding.setup.ts
17943
+ var MANAGE_WALLET_MENU_TOUR;
17944
+ var init_onboarding_setup5 = __esm({
17945
+ "src/internal/components/ManageWalletMenu/onboarding.setup.ts"() {
17946
+ MANAGE_WALLET_MENU_TOUR = [
17947
+ {
17948
+ elId: "embarkai-profiles-menu-onboarding" /* profilesMenu */,
17949
+ title: "passport:profilesMenu.onboarding.profilesMenu.title",
17950
+ description: "passport:profilesMenu.onboarding.profilesMenu.description"
17951
+ }
17952
+ ];
17953
+ }
17954
+ });
17955
+
17353
17956
  // src/internal/components/ManageWalletMenu/ProviderCard.tsx
17354
17957
  import { CheckCircle as CheckCircle3, Clock, Trash2 as Trash23 } from "lucide-react";
17355
17958
  import { jsx as jsx78, jsxs as jsxs72 } from "react/jsx-runtime";
@@ -17548,10 +18151,12 @@ function ManageWalletMenu() {
17548
18151
  useLinkSocial();
17549
18152
  const showCurrentProviders = !isProvidersLoading && !providersError && (providerType !== "email" && providerType !== "passkey" || providerType === null);
17550
18153
  const showExtraProvidersUi = !isProvidersLoading && !providersError && (providerType === "email" || providerType === "passkey");
18154
+ useOnboardingTourAvailable(!showExtraProvidersUi && providerType === null);
17551
18155
  const combinedAlertMessage = alert2?.message || providersError?.message || null;
17552
18156
  return /* @__PURE__ */ jsx79(
17553
18157
  "div",
17554
18158
  {
18159
+ ref: (inst) => onboarder.registerElement("embarkai-profiles-menu-onboarding" /* profilesMenu */, inst),
17555
18160
  style: {
17556
18161
  "--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
17557
18162
  "--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
@@ -17609,6 +18214,7 @@ var init_ManageWallet = __esm({
17609
18214
  init_constants();
17610
18215
  init_telegramBrowser();
17611
18216
  init_Expandable2();
18217
+ init_Onboarding();
17612
18218
  init_button();
17613
18219
  init_highlight();
17614
18220
  init_AddProvider();
@@ -17751,6 +18357,7 @@ var init_ManageWalletMenu = __esm({
17751
18357
  init_UnlinkProviderMenu();
17752
18358
  init_useStore();
17753
18359
  init_useProvidersList();
18360
+ init_onboarding_setup5();
17754
18361
  }
17755
18362
  });
17756
18363
 
@@ -17852,11 +18459,11 @@ var init_useNicknameStore = __esm({
17852
18459
  // src/internal/components/NicknameMenu/useNicknameAvailability.ts
17853
18460
  import { useMutation as useMutation16 } from "@tanstack/react-query";
17854
18461
  import { debounce as debounce5 } from "lodash-es";
17855
- import { useCallback as useCallback21, useEffect as useEffect33 } from "react";
18462
+ import { useCallback as useCallback21, useEffect as useEffect34 } from "react";
17856
18463
  function useNicknameAvailability(currentNickname) {
17857
18464
  const { t } = useT();
17858
18465
  const nicknameValue = useNicknameStore((st) => st.nicknameValue);
17859
- useEffect33(() => {
18466
+ useEffect34(() => {
17860
18467
  if (!currentNickname) return;
17861
18468
  useNicknameStore.getState().setNicknameValue(currentNickname);
17862
18469
  }, [currentNickname]);
@@ -17878,7 +18485,7 @@ function useNicknameAvailability(currentNickname) {
17878
18485
  }
17879
18486
  });
17880
18487
  const debouncedCheckAvailability = useCallback21(debounce5(checkAvailability, DEBOUNCE_MS), [checkAvailability]);
17881
- useEffect33(() => {
18488
+ useEffect34(() => {
17882
18489
  if (!currentNickname) return;
17883
18490
  const normalizedInputValue = normalizeNickname(nicknameValue);
17884
18491
  const { valid: isNicknameValid } = validateNickname(nicknameValue);
@@ -18067,6 +18674,20 @@ var init_NicknameEditForm = __esm({
18067
18674
  }
18068
18675
  });
18069
18676
 
18677
+ // src/internal/components/NicknameMenu/onboarding.setup.ts
18678
+ var NICKNAME_MENU_TOUR;
18679
+ var init_onboarding_setup6 = __esm({
18680
+ "src/internal/components/NicknameMenu/onboarding.setup.ts"() {
18681
+ NICKNAME_MENU_TOUR = [
18682
+ {
18683
+ elId: "embarkai-nickname-menu-onboarding" /* nicknameMenu */,
18684
+ title: "passport:nicknameMenu.onboarding.nicknameMenu.title",
18685
+ description: "passport:nicknameMenu.onboarding.nicknameMenu.description"
18686
+ }
18687
+ ];
18688
+ }
18689
+ });
18690
+
18070
18691
  // src/internal/components/NicknameMenu/NicknameMenu.tsx
18071
18692
  import { useQuery as useQuery13 } from "@tanstack/react-query";
18072
18693
  import dayjs4 from "dayjs";
@@ -18075,6 +18696,7 @@ import { jsx as jsx82, jsxs as jsxs76 } from "react/jsx-runtime";
18075
18696
  function NicknameMenu() {
18076
18697
  const { isInitialUser } = usePageParams().current;
18077
18698
  const { t } = useT();
18699
+ useOnboardingTourAvailable(true);
18078
18700
  const address = useSession((st) => st.address);
18079
18701
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
18080
18702
  const nicknameRenderKey = useNicknameStore((st) => st.renderKey);
@@ -18093,6 +18715,7 @@ function NicknameMenu() {
18093
18715
  return /* @__PURE__ */ jsx82(
18094
18716
  "div",
18095
18717
  {
18718
+ ref: (inst) => onboarder.registerElement("embarkai-nickname-menu-onboarding" /* nicknameMenu */, inst),
18096
18719
  style: { "--ui-kit-scrollbar-mah": `${maxScrollHeight}px` },
18097
18720
  className: "list-scrollbar-y w-full",
18098
18721
  children: /* @__PURE__ */ jsxs76(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)]", children: [
@@ -18175,6 +18798,7 @@ var init_NicknameMenu = __esm({
18175
18798
  init_useLayoutStore();
18176
18799
  init_nickname_cooldown();
18177
18800
  init_Expandable2();
18801
+ init_Onboarding();
18178
18802
  init_button();
18179
18803
  init_highlight();
18180
18804
  init_NicknameEditForm();
@@ -18186,6 +18810,7 @@ var init_NicknameMenu = __esm({
18186
18810
  var init_NicknameMenu2 = __esm({
18187
18811
  "src/internal/components/NicknameMenu/index.ts"() {
18188
18812
  init_NicknameMenu();
18813
+ init_onboarding_setup6();
18189
18814
  }
18190
18815
  });
18191
18816
 
@@ -18504,7 +19129,7 @@ var init_utils8 = __esm({
18504
19129
  // src/internal/hooks/useBlockscoutAssets/useBlockscoutAssets.ts
18505
19130
  import { createBlockscoutClient as createBlockscoutClient2, nonBlockscoutClient } from "@embarkai/core";
18506
19131
  import { useQuery as useQuery16, useQueryClient as useQueryClient19 } from "@tanstack/react-query";
18507
- import { useCallback as useCallback23, useMemo as useMemo10, useRef as useRef16 } from "react";
19132
+ import { useCallback as useCallback23, useMemo as useMemo10, useRef as useRef15 } from "react";
18508
19133
  function useBlockscoutAssets(options) {
18509
19134
  const { address, chainId, enabled = true, detectSecurityTokens = true } = options;
18510
19135
  const qc = useQueryClient19();
@@ -18519,7 +19144,7 @@ function useBlockscoutAssets(options) {
18519
19144
  () => blockscoutApiUrl ? createBlockscoutClient2({ baseUrl: blockscoutApiUrl }) : null,
18520
19145
  [blockscoutApiUrl]
18521
19146
  );
18522
- const lastRefreshRef = useRef16(0);
19147
+ const lastRefreshRef = useRef15(0);
18523
19148
  const {
18524
19149
  data: watchTokenAssets = [],
18525
19150
  isLoading: watchTokensLoading,
@@ -19232,10 +19857,25 @@ var init_nickname_fingerprint = __esm({
19232
19857
  }
19233
19858
  });
19234
19859
 
19860
+ // src/internal/components/ReceiveMenu/onboarding.setup.ts
19861
+ var RECEIVE_MENU_ONBOARDING_ID, RECEIVE_MENU_TOUR;
19862
+ var init_onboarding_setup7 = __esm({
19863
+ "src/internal/components/ReceiveMenu/onboarding.setup.ts"() {
19864
+ RECEIVE_MENU_ONBOARDING_ID = "embarkai-receive-menu-onboarding";
19865
+ RECEIVE_MENU_TOUR = [
19866
+ {
19867
+ elId: RECEIVE_MENU_ONBOARDING_ID,
19868
+ title: "passport:receiveMenu.onboarding.receiveMenu.title",
19869
+ description: "passport:receiveMenu.onboarding.receiveMenu.description"
19870
+ }
19871
+ ];
19872
+ }
19873
+ });
19874
+
19235
19875
  // src/internal/components/ReceiveMenu/ReceiveMenu.tsx
19236
19876
  import { ArrowLeft as ArrowLeft17, CheckCircle2 as CheckCircle23, Copy as Copy2, Info as Info5, Loader as Loader17, Shield } from "lucide-react";
19237
19877
  import QRCode from "qrcode";
19238
- import { useCallback as useCallback25, useEffect as useEffect34, useMemo as useMemo11, useState as useState21 } from "react";
19878
+ import { useCallback as useCallback25, useEffect as useEffect35, useMemo as useMemo11, useState as useState21 } from "react";
19239
19879
  import { Fragment as Fragment31, jsx as jsx86, jsxs as jsxs80 } from "react/jsx-runtime";
19240
19880
  function ReceiveMenu() {
19241
19881
  const session = useSession((st) => st.session);
@@ -19249,6 +19889,7 @@ function ReceiveMenu() {
19249
19889
  const [qrCodeUrl, setQrCodeUrl] = useState21("");
19250
19890
  const [copied, setCopied] = useState21(false);
19251
19891
  const [fingerprintCopied, setFingerprintCopied] = useState21(false);
19892
+ useOnboardingTourAvailable(true);
19252
19893
  const fingerprint = useMemo11(() => {
19253
19894
  if (!session?.ownerAddress) return null;
19254
19895
  try {
@@ -19257,7 +19898,7 @@ function ReceiveMenu() {
19257
19898
  return null;
19258
19899
  }
19259
19900
  }, [session?.ownerAddress]);
19260
- useEffect34(() => {
19901
+ useEffect35(() => {
19261
19902
  if (open && address) {
19262
19903
  QRCode.toDataURL(address, {
19263
19904
  width: 200,
@@ -19293,6 +19934,7 @@ function ReceiveMenu() {
19293
19934
  return /* @__PURE__ */ jsxs80(
19294
19935
  "div",
19295
19936
  {
19937
+ ref: (inst) => onboarder.registerElement(RECEIVE_MENU_ONBOARDING_ID, inst),
19296
19938
  style: {
19297
19939
  "--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
19298
19940
  "--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
@@ -19348,8 +19990,10 @@ var init_ReceiveMenu = __esm({
19348
19990
  init_useLayoutDataStore();
19349
19991
  init_useLayoutStore();
19350
19992
  init_nickname_fingerprint();
19993
+ init_Onboarding();
19351
19994
  init_button();
19352
19995
  init_highlight();
19996
+ init_onboarding_setup7();
19353
19997
  }
19354
19998
  });
19355
19999
 
@@ -19357,6 +20001,82 @@ var init_ReceiveMenu = __esm({
19357
20001
  var init_ReceiveMenu2 = __esm({
19358
20002
  "src/internal/components/ReceiveMenu/index.ts"() {
19359
20003
  init_ReceiveMenu();
20004
+ init_onboarding_setup7();
20005
+ }
20006
+ });
20007
+
20008
+ // src/internal/components/SecurityMenu/onboarding.setup.ts
20009
+ var CONNECTED_APPS_TOUR, KEYSHARE_TOUR, SECURITY_MENU_TOUR;
20010
+ var init_onboarding_setup8 = __esm({
20011
+ "src/internal/components/SecurityMenu/onboarding.setup.ts"() {
20012
+ init_Onboarding();
20013
+ CONNECTED_APPS_TOUR = [
20014
+ {
20015
+ elId: "embarkai-security-menu-connected-apps-onboarding" /* connectedApps */,
20016
+ title: "passport:securityMenu.onboarding.connectedApps.title",
20017
+ description: "passport:securityMenu.onboarding.connectedApps.description"
20018
+ }
20019
+ ];
20020
+ KEYSHARE_TOUR = [
20021
+ {
20022
+ elId: "embarkai-security-menu-keyshare-onboarding" /* keyshare */,
20023
+ title: "passport:securityMenu.onboarding.keyshare.details.concept.title",
20024
+ description: "passport:securityMenu.onboarding.keyshare.details.concept.description"
20025
+ },
20026
+ {
20027
+ elId: "embarkai-security-menu-keyshare-details-server-onboarding" /* keyshareDetailsServer */,
20028
+ title: "passport:securityMenu.onboarding.keyshare.details.server.title",
20029
+ description: "passport:securityMenu.onboarding.keyshare.details.server.description"
20030
+ },
20031
+ {
20032
+ elId: "embarkai-security-menu-keyshare-details-local-onboarding" /* keyshareDetailsLocal */,
20033
+ title: "passport:securityMenu.onboarding.keyshare.details.local.title",
20034
+ description: "passport:securityMenu.onboarding.keyshare.details.local.description"
20035
+ },
20036
+ {
20037
+ elId: "embarkai-security-menu-keyshare-details-vault-onboarding" /* keyshareDetailsVault */,
20038
+ title: "passport:securityMenu.onboarding.keyshare.details.vault.title",
20039
+ description: "passport:securityMenu.onboarding.keyshare.details.vault.description"
20040
+ },
20041
+ {
20042
+ elId: "embarkai-security-menu-keyshare-existing-backup-onboarding" /* keyshareExistingVaultBkp */,
20043
+ title: "passport:securityMenu.onboarding.keyshareExistingVaultBkp.title",
20044
+ description: "passport:securityMenu.onboarding.keyshareExistingVaultBkp.description"
20045
+ },
20046
+ ...CONNECTED_APPS_TOUR
20047
+ ];
20048
+ SECURITY_MENU_TOUR = [
20049
+ {
20050
+ elId: "embarkai-security-menu-onboarding" /* securityMenu */,
20051
+ title: "passport:securityMenu.onboarding.securityMenu.title",
20052
+ description: "passport:securityMenu.onboarding.securityMenu.description"
20053
+ },
20054
+ /** KEYSHARE */
20055
+ {
20056
+ elId: "embarkai-security-menu-keyshare-onboarding" /* keyshare */,
20057
+ title: "passport:securityMenu.onboarding.keyshare.title",
20058
+ description: "passport:securityMenu.onboarding.keyshare.description",
20059
+ actions: [
20060
+ {
20061
+ caption: "passport:securityMenu.onboarding.keyshare.detailsButton",
20062
+ onClick: () => {
20063
+ onboarder.endTour();
20064
+ setTimeout(() => onboarder.startTour(KEYSHARE_TOUR), 220);
20065
+ }
20066
+ },
20067
+ {
20068
+ caption: "passport:common.continue",
20069
+ onClick: () => onboarder.next()
20070
+ }
20071
+ ]
20072
+ },
20073
+ {
20074
+ elId: "embarkai-security-menu-keyshare-existing-backup-onboarding" /* keyshareExistingVaultBkp */,
20075
+ title: "passport:securityMenu.onboarding.keyshareExistingVaultBkp.title",
20076
+ description: "passport:securityMenu.onboarding.keyshareExistingVaultBkp.description"
20077
+ },
20078
+ ...CONNECTED_APPS_TOUR
20079
+ ];
19360
20080
  }
19361
20081
  });
19362
20082
 
@@ -19416,7 +20136,7 @@ var init_useConnectedApps = __esm({
19416
20136
  // src/internal/components/SecurityMenu/ConnectedApps/ConnectedApps.tsx
19417
20137
  import dayjs5 from "dayjs";
19418
20138
  import { AppWindowMac, ExternalLinkIcon as ExternalLinkIcon2, InfoIcon as InfoIcon4, LoaderIcon as LoaderIcon10, ShieldBanIcon, ShieldCheckIcon } from "lucide-react";
19419
- import { useEffect as useEffect35 } from "react";
20139
+ import { useEffect as useEffect36 } from "react";
19420
20140
  import { Fragment as Fragment32, jsx as jsx87, jsxs as jsxs81 } from "react/jsx-runtime";
19421
20141
  function Application(props) {
19422
20142
  const {
@@ -19516,27 +20236,43 @@ function Application(props) {
19516
20236
  function ConnectedApps() {
19517
20237
  const { t } = useT();
19518
20238
  const { data: connectedApps = [], isLoading: isConnectedAppsLoading } = useConnectedApps();
19519
- useEffect35(() => {
20239
+ useEffect36(() => {
19520
20240
  if (!connectedApps.length || isConnectedAppsLoading) return;
19521
20241
  useSecurityStore.getState().setRenderKey(`connected-apps-loaded-${Date.now()}`);
19522
20242
  }, [connectedApps, isConnectedAppsLoading]);
19523
20243
  if (!isConnectedAppsLoading && connectedApps.length === 0)
19524
- return /* @__PURE__ */ jsxs81(Highlight, { type: "info", className: "flex gap-[var(--ui-kit-gap)] ", children: [
19525
- /* @__PURE__ */ jsx87(InfoIcon4, { className: "w-4 h-4" }),
19526
- /* @__PURE__ */ jsx87("span", { children: t("passport:securityMenu.connectedApps.noConnectedApps") })
19527
- ] });
20244
+ return /* @__PURE__ */ jsxs81(
20245
+ Highlight,
20246
+ {
20247
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-connected-apps-onboarding" /* connectedApps */, inst),
20248
+ type: "info",
20249
+ className: "flex gap-[var(--ui-kit-gap)] ",
20250
+ children: [
20251
+ /* @__PURE__ */ jsx87(InfoIcon4, { className: "w-4 h-4" }),
20252
+ /* @__PURE__ */ jsx87("span", { children: t("passport:securityMenu.connectedApps.noConnectedApps") })
20253
+ ]
20254
+ }
20255
+ );
19528
20256
  return /* @__PURE__ */ jsxs81(Fragment32, { children: [
19529
20257
  /* @__PURE__ */ jsxs81("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
19530
20258
  /* @__PURE__ */ jsx87("span", { className: "leading-4 text-xs", children: t("passport:securityMenu.connectedApps.connectedApps") }),
19531
20259
  isConnectedAppsLoading && /* @__PURE__ */ jsx87(LoaderIcon10, { className: "h-4 w-4 animate-spin" })
19532
20260
  ] }),
19533
- /* @__PURE__ */ jsx87("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: connectedApps.map((app, index) => /* @__PURE__ */ jsx87(Application, { ...app }, index)) })
20261
+ /* @__PURE__ */ jsx87(
20262
+ "div",
20263
+ {
20264
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-connected-apps-onboarding" /* connectedApps */, inst),
20265
+ className: "w-full flex flex-col gap-[var(--ui-kit-gap)]",
20266
+ children: connectedApps.map((app, index) => /* @__PURE__ */ jsx87(Application, { ...app }, index))
20267
+ }
20268
+ )
19534
20269
  ] });
19535
20270
  }
19536
20271
  var init_ConnectedApps = __esm({
19537
20272
  "src/internal/components/SecurityMenu/ConnectedApps/ConnectedApps.tsx"() {
19538
20273
  init_utils2();
19539
20274
  init_i18n();
20275
+ init_Onboarding();
19540
20276
  init_button();
19541
20277
  init_highlight();
19542
20278
  init_useSecurityStore();
@@ -19652,42 +20388,44 @@ var init_ConnectedApps2 = __esm({
19652
20388
 
19653
20389
  // src/internal/components/SecurityMenu/Keyshare/KeyshareStatus.tsx
19654
20390
  import { Loader as Loader19 } from "lucide-react";
20391
+ import { forwardRef as forwardRef5 } from "react";
19655
20392
  import { jsx as jsx89, jsxs as jsxs83 } from "react/jsx-runtime";
19656
- function KeyshareStatus(props) {
19657
- const { isLoading, content, icon: Icon2, children } = props;
19658
- if (isLoading) return /* @__PURE__ */ jsx89(Loader19, { className: "w-4 h-4 animate-spin" });
19659
- return /* @__PURE__ */ jsxs83("div", { className: "group relative w-full h-full", children: [
19660
- children,
19661
- /* @__PURE__ */ jsx89(
19662
- "div",
19663
- {
19664
- className: cn(
19665
- "absolute -top-2 -right-2 w-6 h-6 flex items-center justify-center",
19666
- "rounded-full bg-[var(--ui-kit-bg)]"
19667
- // 'border border-[var(--ui-kit-bd)]'
19668
- ),
19669
- children: /* @__PURE__ */ jsx89(Icon2, { className: "w-4 h-4" })
19670
- }
19671
- ),
19672
- /* @__PURE__ */ jsx89(
19673
- "div",
19674
- {
19675
- style: { transform: "translateY(calc(var(--ui-kit-gap) * -4))" },
19676
- className: cn(
19677
- "transition-opacity pointer-events-none z-50",
19678
- "absolute top-0 right-0 max-w-full",
19679
- "px-2 py-1 bg-[var(--ui-kit-bg)] text-[var(--ui-kit-fg)] text-[10px] rounded-[var(--ui-kit-el-bdrs)]",
19680
- "border border-[var(--ui-kit-bd)]",
19681
- "opacity-0 group-hover:opacity-100"
19682
- ),
19683
- children: content
19684
- }
19685
- )
19686
- ] });
19687
- }
20393
+ var KeyshareStatus;
19688
20394
  var init_KeyshareStatus = __esm({
19689
20395
  "src/internal/components/SecurityMenu/Keyshare/KeyshareStatus.tsx"() {
19690
20396
  init_utils2();
20397
+ KeyshareStatus = forwardRef5((props, ref) => {
20398
+ const { isLoading, content, icon: Icon2, children } = props;
20399
+ if (isLoading) return /* @__PURE__ */ jsx89(Loader19, { className: "w-4 h-4 animate-spin" });
20400
+ return /* @__PURE__ */ jsxs83("div", { ref, className: "group relative w-full h-full", children: [
20401
+ children,
20402
+ /* @__PURE__ */ jsx89(
20403
+ "div",
20404
+ {
20405
+ className: cn(
20406
+ "absolute -top-2 -right-2 w-6 h-6 flex items-center justify-center",
20407
+ "rounded-full bg-[var(--ui-kit-bg)]"
20408
+ // 'border border-[var(--ui-kit-bd)]'
20409
+ ),
20410
+ children: /* @__PURE__ */ jsx89(Icon2, { className: "w-4 h-4" })
20411
+ }
20412
+ ),
20413
+ /* @__PURE__ */ jsx89(
20414
+ "div",
20415
+ {
20416
+ style: { transform: "translateY(calc(var(--ui-kit-gap) * -4))" },
20417
+ className: cn(
20418
+ "transition-opacity pointer-events-none z-50",
20419
+ "absolute top-0 right-0 max-w-full",
20420
+ "px-2 py-1 bg-[var(--ui-kit-bg)] text-[var(--ui-kit-fg)] text-[10px] rounded-[var(--ui-kit-el-bdrs)]",
20421
+ "border border-[var(--ui-kit-bd)]",
20422
+ "opacity-0 group-hover:opacity-100"
20423
+ ),
20424
+ children: content
20425
+ }
20426
+ )
20427
+ ] });
20428
+ });
19691
20429
  }
19692
20430
  });
19693
20431
 
@@ -19720,24 +20458,33 @@ function LastBackup(props) {
19720
20458
  } = createdRecoveryStats || {};
19721
20459
  const hasBackupData = backup?.server?.enabled && backup.server.lastBackup || !backup.server.lastBackup && recoveryCreatedAt || backup.cloud.enabled && backup.cloud?.lastBackup || backup.local.enabled && backup.local.lastBackup;
19722
20460
  if (!hasBackupData || !createdRecoveryStats) return null;
19723
- return /* @__PURE__ */ jsxs84(Highlight, { type: "info", className: "text-[10px] leading-4", children: [
19724
- /* @__PURE__ */ jsxs84("span", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
19725
- /* @__PURE__ */ jsx90(DatabaseBackup, { className: "w-4 h-4 flex-none" }),
19726
- /* @__PURE__ */ jsx90("span", { className: "font-medium text-xs", children: t("passport:securityMenu.lastBackup") })
19727
- ] }),
19728
- recoveryCreatedAt && /* @__PURE__ */ jsxs84(Fragment33, { children: [
19729
- /* @__PURE__ */ jsx90("span", { className: "block font-mono! ", children: t("passport:securityMenu.lastBackupMeta", {
19730
- browser: cleanStringArtifacts(recoveryBrowser || "unknown"),
19731
- os: parseOS(recoveryUa) || "unknown os",
19732
- deviceName: cleanStringArtifacts(recoveryDeviceName || recoveryDeviceId || "")
19733
- }) }),
19734
- /* @__PURE__ */ jsx90("span", { className: "block font-mono! text-[var(--ui-kit-fg-muted)]", children: dayjs6(recoveryCreatedAt).format("MMMM DD, YYYY HH:mm") })
19735
- ] })
19736
- ] });
20461
+ return /* @__PURE__ */ jsxs84(
20462
+ Highlight,
20463
+ {
20464
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-keyshare-existing-backup-onboarding" /* keyshareExistingVaultBkp */, inst),
20465
+ type: "info",
20466
+ className: "text-[10px] leading-4",
20467
+ children: [
20468
+ /* @__PURE__ */ jsxs84("span", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
20469
+ /* @__PURE__ */ jsx90(DatabaseBackup, { className: "w-4 h-4 flex-none" }),
20470
+ /* @__PURE__ */ jsx90("span", { className: "font-medium text-xs", children: t("passport:securityMenu.lastBackup") })
20471
+ ] }),
20472
+ recoveryCreatedAt && /* @__PURE__ */ jsxs84(Fragment33, { children: [
20473
+ /* @__PURE__ */ jsx90("span", { className: "block font-mono! ", children: t("passport:securityMenu.lastBackupMeta", {
20474
+ browser: cleanStringArtifacts(recoveryBrowser || "unknown"),
20475
+ os: parseOS(recoveryUa) || "unknown os",
20476
+ deviceName: cleanStringArtifacts(recoveryDeviceName || recoveryDeviceId || "")
20477
+ }) }),
20478
+ /* @__PURE__ */ jsx90("span", { className: "block font-mono! text-[var(--ui-kit-fg-muted)]", children: dayjs6(recoveryCreatedAt).format("MMMM DD, YYYY HH:mm") })
20479
+ ] })
20480
+ ]
20481
+ }
20482
+ );
19737
20483
  }
19738
20484
  var init_LastBackup = __esm({
19739
20485
  "src/internal/components/SecurityMenu/Keyshare/LastBackup.tsx"() {
19740
20486
  init_useT();
20487
+ init_Onboarding();
19741
20488
  init_highlight();
19742
20489
  {
19743
20490
  }
@@ -19779,15 +20526,15 @@ var init_useKeyshareRecoveryStats = __esm({
19779
20526
  });
19780
20527
 
19781
20528
  // src/internal/components/SecurityMenu/Keyshare/Keyshare.tsx
19782
- import { Cloud as Cloud3, Laptop, LoaderIcon as LoaderIcon11, Server as Server2 } from "lucide-react";
19783
- import { useEffect as useEffect36 } from "react";
20529
+ import { Cloud as Cloud3, DatabaseBackupIcon, Laptop, LoaderIcon as LoaderIcon11, Server as Server2 } from "lucide-react";
20530
+ import { useEffect as useEffect37 } from "react";
19784
20531
  import { Fragment as Fragment34, jsx as jsx91, jsxs as jsxs85 } from "react/jsx-runtime";
19785
20532
  function Keyshare() {
19786
20533
  const userId = useSession((st) => st?.session?.mpcUserId);
19787
20534
  const { t } = useT();
19788
20535
  const serverHasKeyshare = jwtTokenManager2.getHasKeyshare() ?? false;
19789
20536
  const { data: recoveryData, isLoading: isRecoveryLoading } = useKeyshareRecoveryStats();
19790
- useEffect36(() => {
20537
+ useEffect37(() => {
19791
20538
  if (!recoveryData?.keyshareInfo || isRecoveryLoading) return;
19792
20539
  useSecurityStore.getState().setRenderKey(`keyshare-loaded-${Date.now()}`);
19793
20540
  }, [recoveryData, isRecoveryLoading]);
@@ -19801,63 +20548,86 @@ function Keyshare() {
19801
20548
  isRecoveryLoading && /* @__PURE__ */ jsx91(LoaderIcon11, { className: "h-4 w-4 animate-spin" })
19802
20549
  ] }),
19803
20550
  !isRecoveryLoading && /* @__PURE__ */ jsxs85(Fragment34, { children: [
19804
- /* @__PURE__ */ jsxs85("div", { className: "grid grid-cols-3 gap-[var(--ui-kit-gap)] px-[var(--ui-kit-gap)]", children: [
19805
- /* @__PURE__ */ jsx91(
19806
- KeyshareStatus,
19807
- {
19808
- content: serverHasKeyshare ? t("passport:securityMenu.keyshareStatus.serverReady") : t("passport:securityMenu.keyshareStatus.serverMissing"),
19809
- icon: serverHasKeyshare ? PositiveIcon : NegativeIcon,
19810
- children: /* @__PURE__ */ jsxs85(
19811
- Highlight,
20551
+ /* @__PURE__ */ jsxs85(
20552
+ "div",
20553
+ {
20554
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-keyshare-onboarding" /* keyshare */, inst),
20555
+ className: "grid grid-cols-3 gap-[var(--ui-kit-gap)] px-[var(--ui-kit-gap)]",
20556
+ children: [
20557
+ /* @__PURE__ */ jsx91(
20558
+ KeyshareStatus,
19812
20559
  {
19813
- type: serverHasKeyshare ? "success" : "warning",
19814
- className: "w-full h-full flex flex-col items-center gap-0",
19815
- children: [
19816
- /* @__PURE__ */ jsx91(Cloud3, { className: "h-6 w-6" }),
19817
- /* @__PURE__ */ jsx91("span", { className: "text-[10px] font-medium leading-4", children: "Server Share" })
19818
- ]
20560
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-keyshare-details-server-onboarding" /* keyshareDetailsServer */, inst),
20561
+ icon: serverHasKeyshare ? PositiveIcon : NegativeIcon,
20562
+ content: serverHasKeyshare ? t("passport:securityMenu.keyshareStatus.serverReady") : t("passport:securityMenu.keyshareStatus.serverMissing"),
20563
+ children: /* @__PURE__ */ jsxs85(
20564
+ Highlight,
20565
+ {
20566
+ type: serverHasKeyshare ? "success" : "warning",
20567
+ className: "w-full h-full flex flex-col items-center gap-0",
20568
+ children: [
20569
+ /* @__PURE__ */ jsx91(Cloud3, { className: "h-6 w-6" }),
20570
+ /* @__PURE__ */ jsx91("span", { className: "text-[10px] font-medium leading-4", children: "Server Share" })
20571
+ ]
20572
+ }
20573
+ )
19819
20574
  }
19820
- )
19821
- }
19822
- ),
19823
- /* @__PURE__ */ jsx91(
19824
- KeyshareStatus,
19825
- {
19826
- content: localInfo?.hasKeyshare ? t("passport:securityMenu.keyshareStatus.localReady") : t("passport:securityMenu.keyshareStatus.localMissing"),
19827
- icon: localInfo?.hasKeyshare ? PositiveIcon : NegativeIcon,
19828
- children: /* @__PURE__ */ jsxs85(
19829
- Highlight,
20575
+ ),
20576
+ /* @__PURE__ */ jsx91(
20577
+ KeyshareStatus,
19830
20578
  {
19831
- type: localInfo?.hasKeyshare ? "success" : "warning",
19832
- className: "w-full h-full flex flex-col items-center gap-0",
19833
- children: [
19834
- /* @__PURE__ */ jsx91(Laptop, { className: "h-6 w-6" }),
19835
- /* @__PURE__ */ jsx91("span", { className: "text-[10px] font-medium leading-4", children: "Local Share" })
19836
- ]
20579
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-keyshare-details-local-onboarding" /* keyshareDetailsLocal */, inst),
20580
+ icon: localInfo?.hasKeyshare ? PositiveIcon : NegativeIcon,
20581
+ content: localInfo?.hasKeyshare ? t("passport:securityMenu.keyshareStatus.localReady") : t("passport:securityMenu.keyshareStatus.localMissing"),
20582
+ children: /* @__PURE__ */ jsxs85(
20583
+ Highlight,
20584
+ {
20585
+ type: localInfo?.hasKeyshare ? "success" : "warning",
20586
+ className: "w-full h-full flex flex-col items-center gap-0",
20587
+ children: [
20588
+ /* @__PURE__ */ jsx91(Laptop, { className: "h-6 w-6" }),
20589
+ /* @__PURE__ */ jsx91("span", { className: "text-[10px] font-medium leading-4", children: "Local Share" })
20590
+ ]
20591
+ }
20592
+ )
19837
20593
  }
19838
- )
19839
- }
19840
- ),
19841
- /* @__PURE__ */ jsx91(
19842
- KeyshareStatus,
19843
- {
19844
- content: hasServerBackup ? t("passport:securityMenu.keyshareStatus.valutBackupCreated") : t("passport:securityMenu.keyshareStatus.valutBackupMissing"),
19845
- icon: hasServerBackup ? PositiveIcon : NegativeIcon,
19846
- children: /* @__PURE__ */ jsxs85(
19847
- Highlight,
20594
+ ),
20595
+ /* @__PURE__ */ jsx91(
20596
+ KeyshareStatus,
19848
20597
  {
19849
- type: hasServerBackup ? "success" : "warning",
19850
- className: "w-full h-full flex flex-col items-center gap-0",
19851
- children: [
19852
- /* @__PURE__ */ jsx91(Server2, { className: "h-6 w-6" }),
19853
- /* @__PURE__ */ jsx91("span", { className: "text-[10px] font-medium leading-4", children: "Vault Backup" })
19854
- ]
20598
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-keyshare-details-vault-onboarding" /* keyshareDetailsVault */, inst),
20599
+ icon: hasServerBackup ? PositiveIcon : NegativeIcon,
20600
+ content: hasServerBackup ? t("passport:securityMenu.keyshareStatus.valutBackupCreated") : t("passport:securityMenu.keyshareStatus.valutBackupMissing"),
20601
+ children: /* @__PURE__ */ jsxs85(
20602
+ Highlight,
20603
+ {
20604
+ type: hasServerBackup ? "success" : "warning",
20605
+ className: "w-full h-full flex flex-col items-center gap-0",
20606
+ children: [
20607
+ /* @__PURE__ */ jsx91(Server2, { className: "h-6 w-6" }),
20608
+ /* @__PURE__ */ jsx91("span", { className: "text-[10px] font-medium leading-4", children: "Vault Backup" })
20609
+ ]
20610
+ }
20611
+ )
19855
20612
  }
19856
20613
  )
19857
- }
19858
- )
19859
- ] }),
19860
- /* @__PURE__ */ jsx91(LastBackup, { backup, createdRecoveryStats })
20614
+ ]
20615
+ }
20616
+ ),
20617
+ /* @__PURE__ */ jsx91(LastBackup, { backup, createdRecoveryStats }),
20618
+ /* @__PURE__ */ jsxs85(
20619
+ Button,
20620
+ {
20621
+ variant: "secondary",
20622
+ size: "medium",
20623
+ className: "w-full",
20624
+ onClick: () => useLayoutDataStore.getState().setPage("keysare-backup" /* KEYSARE_BACKUP */),
20625
+ children: [
20626
+ /* @__PURE__ */ jsx91(DatabaseBackupIcon, { className: "h-4 w-4" }),
20627
+ t("passport:backupMenu.title")
20628
+ ]
20629
+ }
20630
+ )
19861
20631
  ] })
19862
20632
  ] });
19863
20633
  }
@@ -19867,7 +20637,10 @@ var init_Keyshare = __esm({
19867
20637
  init_useT();
19868
20638
  init_icons();
19869
20639
  init_auth();
20640
+ init_useLayoutDataStore();
19870
20641
  init_vaultClient();
20642
+ init_Onboarding();
20643
+ init_button();
19871
20644
  init_highlight();
19872
20645
  init_useSecurityStore();
19873
20646
  init_KeyshareStatus();
@@ -19896,9 +20669,11 @@ function SecurityMenu() {
19896
20669
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
19897
20670
  const appToUntrust = useSecurityStore((st) => st.appToUntrust);
19898
20671
  const renderKey = useSecurityStore((st) => st.renderKey);
20672
+ useOnboardingTourAvailable(!appToUntrust);
19899
20673
  return /* @__PURE__ */ jsx92(
19900
20674
  "div",
19901
20675
  {
20676
+ ref: (inst) => onboarder.registerElement("embarkai-security-menu-onboarding" /* securityMenu */, inst),
19902
20677
  style: {
19903
20678
  "--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
19904
20679
  "--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
@@ -19941,6 +20716,7 @@ var init_SecurityMenu = __esm({
19941
20716
  init_useLayoutDataStore();
19942
20717
  init_useLayoutStore();
19943
20718
  init_Expandable2();
20719
+ init_Onboarding();
19944
20720
  init_button();
19945
20721
  init_ConnectedApps2();
19946
20722
  init_Keyshare2();
@@ -19954,6 +20730,7 @@ var init_SecurityMenu2 = __esm({
19954
20730
  init_SecurityMenu();
19955
20731
  init_ConnectedApps2();
19956
20732
  init_Keyshare2();
20733
+ init_onboarding_setup8();
19957
20734
  }
19958
20735
  });
19959
20736
 
@@ -20193,7 +20970,7 @@ var init_useBridgeStore = __esm({
20193
20970
  // src/internal/components/SendMenu/hyperbridge/components/SenderSelector.tsx
20194
20971
  import { useConnectModal } from "@rainbow-me/rainbowkit";
20195
20972
  import { useMutation as useMutation19 } from "@tanstack/react-query";
20196
- import { useEffect as useEffect37, useRef as useRef17, useState as useState22 } from "react";
20973
+ import { useEffect as useEffect38, useRef as useRef16, useState as useState22 } from "react";
20197
20974
  import { useSignMessage } from "wagmi";
20198
20975
  import { jsx as jsx93, jsxs as jsxs87 } from "react/jsx-runtime";
20199
20976
  function SenderSelector(props) {
@@ -20204,12 +20981,12 @@ function SenderSelector(props) {
20204
20981
  const { openConnectModal } = useConnectModal();
20205
20982
  const directWalletAddress = useExternalWalletStore((st) => st.externalAddress);
20206
20983
  const directWalletIsConnected = useExternalWalletStore((st) => st.isExternalConnected);
20207
- const pendingWalletRef = useRef17(null);
20984
+ const pendingWalletRef = useRef16(null);
20208
20985
  const originChain = useBridgeStore((st) => st.originChain);
20209
20986
  const bridgeSender = useBridgeStore((st) => st.bridgeSender);
20210
20987
  const bridgeSenders = useBridgeStore((st) => st.bridgeSenders);
20211
20988
  const [walletMessage, setWalletMessage] = useState22(null);
20212
- useEffect37(() => {
20989
+ useEffect38(() => {
20213
20990
  useFlowSelectorStore.getState().setRenderKey(`sender-selected-${Date.now()}`);
20214
20991
  }, [walletMessage]);
20215
20992
  const { mutate: loginDirectWallet, isPending: isDirectWalletLoggingIn } = useMutation19({
@@ -20265,7 +21042,7 @@ function SenderSelector(props) {
20265
21042
  setWalletMessage(error instanceof Error ? error.message : "Wallet login failed. Please try again.");
20266
21043
  }
20267
21044
  });
20268
- useEffect37(() => {
21045
+ useEffect38(() => {
20269
21046
  const pendingProfile = pendingWalletRef.current;
20270
21047
  if (!pendingProfile || !directWalletIsConnected || !directWalletAddress) return;
20271
21048
  if (directWalletAddress.toLowerCase() !== pendingProfile.externalId?.toLowerCase()) return;
@@ -20454,12 +21231,12 @@ var init_wallets = __esm({
20454
21231
  });
20455
21232
 
20456
21233
  // src/internal/components/SendMenu/hyperbridge/hooks/useAvailableSenders.ts
20457
- import { useEffect as useEffect38, useRef as useRef18 } from "react";
21234
+ import { useEffect as useEffect39, useRef as useRef17 } from "react";
20458
21235
  function useAvailableSenders() {
20459
21236
  const address = useSession((st) => st.address);
20460
21237
  const { profiles } = useLinkedProfiles();
20461
- const lastCalcedSenders = useRef18([]);
20462
- useEffect38(() => {
21238
+ const lastCalcedSenders = useRef17([]);
21239
+ useEffect39(() => {
20463
21240
  const sendersAccumulator = [
20464
21241
  {
20465
21242
  type: "embarkai-wallet",
@@ -20826,7 +21603,7 @@ var init_utils9 = __esm({
20826
21603
  // src/internal/components/SendMenu/hyperbridge/hooks/useHyperlaneHistory.ts
20827
21604
  import { useInfiniteQuery as useInfiniteQuery3 } from "@tanstack/react-query";
20828
21605
  import { debounce as debounce7 } from "lodash-es";
20829
- import { useCallback as useCallback26, useEffect as useEffect39, useMemo as useMemo12 } from "react";
21606
+ import { useCallback as useCallback26, useEffect as useEffect40, useMemo as useMemo12 } from "react";
20830
21607
  function useHyperlaneHistory() {
20831
21608
  const address = useSession((st) => st.address);
20832
21609
  const page = useLayoutDataStore((st) => st.page);
@@ -20852,7 +21629,7 @@ function useHyperlaneHistory() {
20852
21629
  }, 250),
20853
21630
  []
20854
21631
  );
20855
- useEffect39(() => {
21632
+ useEffect40(() => {
20856
21633
  if (isBridgeTxHistoryLoading || txList.length === 0) return;
20857
21634
  updateExpandable();
20858
21635
  }, [isBridgeTxHistoryLoading, txList]);
@@ -21092,7 +21869,7 @@ var init_useBridge = __esm({
21092
21869
 
21093
21870
  // src/internal/components/SendMenu/hyperbridge/hooks/useHyperlaneRoutes.ts
21094
21871
  import { useQuery as useQuery20 } from "@tanstack/react-query";
21095
- import { useEffect as useEffect40 } from "react";
21872
+ import { useEffect as useEffect41 } from "react";
21096
21873
  function useHyperlaneRoutes() {
21097
21874
  const address = useSession((st) => st.address);
21098
21875
  const page = useLayoutDataStore((st) => st.page);
@@ -21112,7 +21889,7 @@ function useHyperlaneRoutes() {
21112
21889
  return warpRoutes;
21113
21890
  }
21114
21891
  });
21115
- useEffect40(() => {
21892
+ useEffect41(() => {
21116
21893
  if (!errorWarpRoutes) return;
21117
21894
  useFlowSelectorStore.getState().setError(errorWarpRoutes.message);
21118
21895
  const { resetSelections, setRecipient, setOriginChain, setDestinationChain } = useBridgeStore.getState();
@@ -21121,7 +21898,7 @@ function useHyperlaneRoutes() {
21121
21898
  setOriginChain(null);
21122
21899
  setDestinationChain(null);
21123
21900
  }, [errorWarpRoutes]);
21124
- useEffect40(() => {
21901
+ useEffect41(() => {
21125
21902
  if (!!hyperRoute || !hyperlaneWarpRoutes.length) return;
21126
21903
  const warpRouteToAutoSelect = hyperlaneWarpRoutes.find((route) => route.routeId === hyperRoute);
21127
21904
  if (!warpRouteToAutoSelect) return;
@@ -21154,13 +21931,13 @@ var init_useHyperlaneRoutes = __esm({
21154
21931
  });
21155
21932
 
21156
21933
  // src/internal/components/SendMenu/hyperbridge/hooks/useMenuTitle.ts
21157
- import { useEffect as useEffect41 } from "react";
21934
+ import { useEffect as useEffect42 } from "react";
21158
21935
  function useMenuTitle(warpRoutes) {
21159
21936
  const { t } = useT();
21160
21937
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
21161
21938
  const hyperRoute = useBridgeStore((st) => st.hyperRoute);
21162
21939
  const hyperRouteMeta = warpRoutes?.length ? warpRoutes.find((route) => route.routeId === hyperRoute) : null;
21163
- useEffect41(() => {
21940
+ useEffect42(() => {
21164
21941
  const updateMenuTitle = useFlowSelectorStore.getState().setMenuTitle;
21165
21942
  switch (true) {
21166
21943
  case bridgeStep === "sender-selector":
@@ -21210,8 +21987,6 @@ var init_useSendStore = __esm({
21210
21987
  //
21211
21988
  txStep: "input",
21212
21989
  //
21213
- // sendError: null,
21214
- //
21215
21990
  setRecipient: (recipient) => {
21216
21991
  useFlowSelectorStore.getState().setError(null);
21217
21992
  set({ recipient });
@@ -21230,14 +22005,16 @@ var init_useSendStore = __esm({
21230
22005
  useFlowSelectorStore.getState().setError(null);
21231
22006
  useFlowSelectorStore.getState().setRenderKey(`send-${txStep}-${Date.now()}`);
21232
22007
  set({ txStep });
21233
- }
22008
+ },
22009
+ /** RESET */
22010
+ reset: () => set({ recipient: "", amount: "", selectedAsset: null, txStep: "input" })
21234
22011
  }));
21235
22012
  }
21236
22013
  });
21237
22014
 
21238
22015
  // src/internal/components/SendMenu/onboarding.setup.ts
21239
22016
  var TOUR_SEND_ASSET, TOUR_BRIDGE_QUOTE, SEND_MENU_TOUR, BRIDGE_MENU_TOUR;
21240
- var init_onboarding_setup2 = __esm({
22017
+ var init_onboarding_setup9 = __esm({
21241
22018
  "src/internal/components/SendMenu/onboarding.setup.ts"() {
21242
22019
  init_useBridgeStore();
21243
22020
  init_useSendStore();
@@ -21274,6 +22051,8 @@ var init_onboarding_setup2 = __esm({
21274
22051
  elId: "sendmenu-crypto-summary" /* sendCryptoSummary */,
21275
22052
  title: "passport:sendMenu.onboarding.sendCryptoSummary.title",
21276
22053
  description: "passport:sendMenu.onboarding.sendCryptoSummary.description",
22054
+ forced: true,
22055
+ // no hide button for this step, user must click "Next" to proceed
21277
22056
  onNext: () => {
21278
22057
  const { setAmount, setRecipient, setSelectedAsset, setTxStep } = useSendStore.getState();
21279
22058
  setTxStep("input");
@@ -21281,11 +22060,6 @@ var init_onboarding_setup2 = __esm({
21281
22060
  setAmount("");
21282
22061
  setSelectedAsset(null);
21283
22062
  }
21284
- },
21285
- {
21286
- elId: "sendmenu-tour-button" /* tourButton */,
21287
- title: "passport:common.onboarding.tourButton.title",
21288
- description: "passport:common.onboarding.tourButton.description"
21289
22063
  }
21290
22064
  ];
21291
22065
  BRIDGE_MENU_TOUR = [
@@ -21336,16 +22110,13 @@ var init_onboarding_setup2 = __esm({
21336
22110
  elId: "bridgemenu-crypto-menu-estimate-details-menu" /* bridgeEstimatedQuoteMenu */,
21337
22111
  title: "passport:bridgeMenu.onboarding.bridgeEstimatedQuoteMenu.title",
21338
22112
  description: "passport:bridgeMenu.onboarding.bridgeEstimatedQuoteMenu.description",
22113
+ forced: true,
22114
+ // no hide button for this step, user must click "Next" to proceed
21339
22115
  onNext: () => {
21340
22116
  const { setQuote, setBridgeStep } = useBridgeStore.getState();
21341
22117
  setQuote(null);
21342
22118
  setBridgeStep("select");
21343
22119
  }
21344
- },
21345
- {
21346
- elId: "sendmenu-tour-button" /* tourButton */,
21347
- title: "passport:common.onboarding.tourButton.title",
21348
- description: "passport:common.onboarding.tourButton.description"
21349
22120
  }
21350
22121
  ];
21351
22122
  }
@@ -21367,7 +22138,7 @@ var init_ResolveChainIcon = __esm({
21367
22138
  // src/internal/components/SendMenu/hyperbridge/hooks/useBridgeBalance.ts
21368
22139
  import { CHAINS_BROWSERS_TRANSPORTS as CHAINS_BROWSERS_TRANSPORTS2 } from "@embarkai/core";
21369
22140
  import { useQuery as useQuery21, useQueryClient as useQueryClient23 } from "@tanstack/react-query";
21370
- import { useCallback as useCallback28, useEffect as useEffect42 } from "react";
22141
+ import { useCallback as useCallback28, useEffect as useEffect43 } from "react";
21371
22142
  import { createPublicClient as createPublicClient2, erc20Abi as erc20Abi3, formatUnits as formatUnits8, http as http3 } from "viem";
21372
22143
  import { useSwitchChain as useSwitchChain2 } from "wagmi";
21373
22144
  function useBridgeBalance(hyperlaneWarpRoutes) {
@@ -21473,7 +22244,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
21473
22244
  },
21474
22245
  [refreshBalances, qc]
21475
22246
  );
21476
- useEffect42(() => {
22247
+ useEffect43(() => {
21477
22248
  if (!bridgeSender || !originChain) return;
21478
22249
  switch (bridgeSender) {
21479
22250
  case "embarkai-wallet":
@@ -22434,7 +23205,7 @@ var init_steps = __esm({
22434
23205
  });
22435
23206
 
22436
23207
  // src/internal/components/SendMenu/hyperbridge/HyperlaneBridge.tsx
22437
- import { useEffect as useEffect43 } from "react";
23208
+ import { useEffect as useEffect44 } from "react";
22438
23209
  import { jsx as jsx103, jsxs as jsxs95 } from "react/jsx-runtime";
22439
23210
  function HyperlaneBridge() {
22440
23211
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
@@ -22442,7 +23213,7 @@ function HyperlaneBridge() {
22442
23213
  const { hyperlaneWarpRoutes, isLoadingWarpRoutes } = useHyperlaneRoutes();
22443
23214
  const { directWalletProfile } = useAvailableSenders();
22444
23215
  useMenuTitle(hyperlaneWarpRoutes);
22445
- useEffect43(() => {
23216
+ useEffect44(() => {
22446
23217
  return () => {
22447
23218
  useBridgeStore.getState().resetSelections();
22448
23219
  };
@@ -22488,14 +23259,14 @@ var init_HyperlaneBridge = __esm({
22488
23259
  });
22489
23260
 
22490
23261
  // src/internal/components/SendMenu/hyperbridge/components/HistorySwitch.tsx
22491
- import { useRef as useRef19 } from "react";
23262
+ import { useRef as useRef18 } from "react";
22492
23263
  import { jsx as jsx104 } from "react/jsx-runtime";
22493
23264
  function BridgeHistorySwitch(props) {
22494
23265
  const { disabled } = props;
22495
23266
  const selectorFlow = useFlowSelectorStore((st) => st.flow);
22496
23267
  const isUiLocked = useFlowSelectorStore((st) => st.isUiLocked);
22497
23268
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
22498
- const lastBridgeStepRef = useRef19(null);
23269
+ const lastBridgeStepRef = useRef18(null);
22499
23270
  if (selectorFlow !== "bridge" || bridgeStep === "confirm" || bridgeStep === "success" || bridgeStep === "sender-selector" || bridgeStep === "select-token" || bridgeStep === "tx-history-details") {
22500
23271
  return null;
22501
23272
  }
@@ -22597,7 +23368,7 @@ var init_useErc3643Compliance = __esm({
22597
23368
 
22598
23369
  // src/hooks/useNicknameResolve.ts
22599
23370
  import { useQuery as useQuery22 } from "@tanstack/react-query";
22600
- import { useEffect as useEffect44, useMemo as useMemo14, useState as useState24 } from "react";
23371
+ import { useEffect as useEffect45, useMemo as useMemo14, useState as useState24 } from "react";
22601
23372
  function looksLikeNickname(input) {
22602
23373
  if (!input) return false;
22603
23374
  if (input.startsWith("0x")) return false;
@@ -22611,7 +23382,7 @@ function useNicknameResolve(input, options) {
22611
23382
  const [isDebouncing, setIsDebouncing] = useState24(false);
22612
23383
  const normalized = normalizeNickname(input);
22613
23384
  const isNicknameInput = looksLikeNickname(input) && normalized.length >= 3;
22614
- useEffect44(() => {
23385
+ useEffect45(() => {
22615
23386
  if (!isNicknameInput || !enabled) {
22616
23387
  setDebouncedInput("");
22617
23388
  setIsDebouncing(false);
@@ -23071,7 +23842,7 @@ var init_AssetList = __esm({
23071
23842
 
23072
23843
  // src/internal/components/SendMenu/send/components/NicknameData.tsx
23073
23844
  import { AtSign, CheckCircle2 as CheckCircle24, ShieldAlert, ShieldCheck as ShieldCheck2 } from "lucide-react";
23074
- import { useEffect as useEffect45 } from "react";
23845
+ import { useEffect as useEffect46 } from "react";
23075
23846
  import { jsx as jsx108, jsxs as jsxs99 } from "react/jsx-runtime";
23076
23847
  function NicknameData(props) {
23077
23848
  const { resolvedNicknameData, isNicknameInput } = props;
@@ -23084,11 +23855,11 @@ function NicknameData(props) {
23084
23855
  isWalletNotSetup,
23085
23856
  isFrozen
23086
23857
  } = resolvedNicknameData;
23087
- useEffect45(() => {
23858
+ useEffect46(() => {
23088
23859
  if (!resolvedNicknameData?.data?.fingerprint || !isNicknameInput) return;
23089
23860
  useFlowSelectorStore.getState().setRenderKey(`nickname-resolved-${Date.now()}`);
23090
23861
  }, [resolvedNicknameData, isNicknameInput]);
23091
- useEffect45(() => {
23862
+ useEffect46(() => {
23092
23863
  if (isResolving) return;
23093
23864
  let errMessage = null;
23094
23865
  switch (true) {
@@ -23658,7 +24429,7 @@ var init_sendSteps = __esm({
23658
24429
 
23659
24430
  // src/internal/components/SendMenu/send/SendMenu.tsx
23660
24431
  import { CheckCircle2 as CheckCircle26, Loader as Loader27 } from "lucide-react";
23661
- import { useEffect as useEffect46, useMemo as useMemo15 } from "react";
24432
+ import { useEffect as useEffect47, useMemo as useMemo15 } from "react";
23662
24433
  import { parseUnits as parseUnits2 } from "viem";
23663
24434
  import { Fragment as Fragment41, jsx as jsx111, jsxs as jsxs102 } from "react/jsx-runtime";
23664
24435
  function SendMenu() {
@@ -23679,25 +24450,16 @@ function SendMenu() {
23679
24450
  userOpHash,
23680
24451
  reset
23681
24452
  } = useSendTransaction();
23682
- useEffect46(() => {
24453
+ useEffect47(() => {
23683
24454
  useFlowSelectorStore.getState().setIsUiLocked(isAssetsLoading || isTransactionPending);
23684
24455
  }, [isAssetsLoading, isTransactionPending]);
23685
- useEffect46(() => {
24456
+ useEffect47(() => {
23686
24457
  useFlowSelectorStore.getState().setError(sendTransactionError || null);
23687
24458
  }, [sendTransactionError]);
23688
- const {
23689
- recipient,
23690
- setRecipient,
23691
- amount,
23692
- setAmount,
23693
- selectedAsset,
23694
- setSelectedAsset,
23695
- txStep,
23696
- setTxStep
23697
- } = useSendStore();
24459
+ const { txStep, recipient, amount, selectedAsset, setSelectedAsset } = useSendStore();
23698
24460
  const isNft = isNftAsset3(selectedAsset);
23699
24461
  const isSecurity = isSecurityToken2(selectedAsset);
23700
- useEffect46(() => {
24462
+ useEffect47(() => {
23701
24463
  const shouldDefaultAsset = assets.length > 0 && !selectedAsset;
23702
24464
  if (!shouldDefaultAsset) return;
23703
24465
  const chainNativeCurrency = useSession.getState().chainConfig?.nativeCurrency;
@@ -23707,13 +24469,10 @@ function SendMenu() {
23707
24469
  if (isBalance(erc20)) return setSelectedAsset(erc20);
23708
24470
  setSelectedAsset(assets[0]);
23709
24471
  }, [assets, selectedAsset]);
23710
- useEffect46(
24472
+ useEffect47(
23711
24473
  () => () => {
23712
- setSelectedAsset(null);
23713
- setRecipient("");
23714
- setAmount("");
24474
+ useSendStore.getState().reset();
23715
24475
  reset();
23716
- setTxStep("input");
23717
24476
  },
23718
24477
  []
23719
24478
  );
@@ -23735,7 +24494,7 @@ function SendMenu() {
23735
24494
  enabled: isSecurity && !!effectiveAddress && !!complianceAmount,
23736
24495
  chainId: activeChainId
23737
24496
  });
23738
- useEffect46(() => {
24497
+ useEffect47(() => {
23739
24498
  const updateMenuTitle = useFlowSelectorStore.getState().setMenuTitle;
23740
24499
  switch (true) {
23741
24500
  case txStep === "select-asset":
@@ -23834,9 +24593,9 @@ var init_send = __esm({
23834
24593
 
23835
24594
  // src/internal/components/SendMenu/useSendMenuParams.ts
23836
24595
  import { keys as keys2 } from "lodash-es";
23837
- import { useEffect as useEffect47 } from "react";
24596
+ import { useEffect as useEffect48 } from "react";
23838
24597
  function useSendMenuParams() {
23839
- useEffect47(() => {
24598
+ useEffect48(() => {
23840
24599
  const { pageParams, setPageParams } = useLayoutDataStore.getState();
23841
24600
  if (!pageParams || !keys2(pageParams).length) return;
23842
24601
  console.log("[SEND PARAMS]", pageParams);
@@ -23883,8 +24642,8 @@ var init_useSendMenuParams = __esm({
23883
24642
  });
23884
24643
 
23885
24644
  // src/internal/components/SendMenu/SendFlowSelector.tsx
23886
- import { ArrowLeft as ArrowLeft19, ArrowRightIcon as ArrowRightIcon2, ArrowRightLeftIcon as ArrowRightLeftIcon2, CircleQuestionMarkIcon as CircleQuestionMarkIcon2, InfoIcon as InfoIcon6 } from "lucide-react";
23887
- import { useEffect as useEffect48 } from "react";
24645
+ import { ArrowLeft as ArrowLeft19, ArrowRightIcon as ArrowRightIcon2, ArrowRightLeftIcon as ArrowRightLeftIcon2, InfoIcon as InfoIcon6 } from "lucide-react";
24646
+ import { useEffect as useEffect49 } from "react";
23888
24647
  import { jsx as jsx112, jsxs as jsxs103 } from "react/jsx-runtime";
23889
24648
  function SelectorFlowButtons() {
23890
24649
  const { t } = useT();
@@ -23946,7 +24705,8 @@ function SendFlowSelector() {
23946
24705
  const selectorFlow = useFlowSelectorStore((st) => st.flow);
23947
24706
  const sendStep = useSendStore((st) => st.txStep);
23948
24707
  const bridgeStep = useBridgeStore((st) => st.bridgeStep);
23949
- useEffect48(
24708
+ useOnboardingTourAvailable(sendStep === "input" && bridgeStep === "select");
24709
+ useEffect49(
23950
24710
  () => () => {
23951
24711
  useFlowSelectorStore.getState().setError(null);
23952
24712
  },
@@ -24000,29 +24760,7 @@ function SendFlowSelector() {
24000
24760
  ),
24001
24761
  /* @__PURE__ */ jsx112("span", { className: "text-xl font-semibold", children: menuTitle })
24002
24762
  ] }),
24003
- /* @__PURE__ */ jsxs103("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
24004
- isSendFlowInitialState && /* @__PURE__ */ jsx112(
24005
- Button,
24006
- {
24007
- ref: (inst) => onboarder.registerElement("sendmenu-tour-button" /* tourButton */, inst),
24008
- variant: "ghost",
24009
- size: "icon",
24010
- className: "flex-none",
24011
- onClick: () => {
24012
- switch (selectorFlow) {
24013
- case "send":
24014
- onboarder.startTour(SEND_MENU_TOUR);
24015
- break;
24016
- case "bridge":
24017
- onboarder.startTour(BRIDGE_MENU_TOUR);
24018
- break;
24019
- }
24020
- },
24021
- children: /* @__PURE__ */ jsx112(CircleQuestionMarkIcon2, { className: "h-4 w-4" })
24022
- }
24023
- ),
24024
- /* @__PURE__ */ jsx112(BridgeHistorySwitch, {})
24025
- ] })
24763
+ /* @__PURE__ */ jsx112("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: /* @__PURE__ */ jsx112(BridgeHistorySwitch, {}) })
24026
24764
  ] }),
24027
24765
  isSendFlowInitialState && /* @__PURE__ */ jsx112(SelectorFlowButtons, {}),
24028
24766
  SELECTOR_FLOW[selectorFlow],
@@ -24059,7 +24797,6 @@ var init_SendFlowSelector = __esm({
24059
24797
  init_button();
24060
24798
  init_highlight();
24061
24799
  init_hyperbridge();
24062
- init_onboarding_setup2();
24063
24800
  init_send();
24064
24801
  init_useFlowSelector();
24065
24802
  init_useSendMenuParams();
@@ -24071,10 +24808,20 @@ var init_SendFlowSelector = __esm({
24071
24808
  });
24072
24809
 
24073
24810
  // src/internal/components/SendMenu/index.ts
24811
+ function getSendMenuFlowState() {
24812
+ return useFlowSelectorStore.getState().flow;
24813
+ }
24814
+ function resetSendMenuState() {
24815
+ useSendStore.getState().reset();
24816
+ useBridgeStore.getState().resetSelections();
24817
+ }
24074
24818
  var init_SendMenu2 = __esm({
24075
24819
  "src/internal/components/SendMenu/index.ts"() {
24820
+ init_hyperbridge();
24821
+ init_send();
24822
+ init_useFlowSelector();
24076
24823
  init_SendFlowSelector();
24077
- init_onboarding_setup2();
24824
+ init_onboarding_setup9();
24078
24825
  }
24079
24826
  });
24080
24827
 
@@ -24137,10 +24884,25 @@ var init_constants8 = __esm({
24137
24884
  }
24138
24885
  });
24139
24886
 
24887
+ // src/internal/components/SettingsMenu/onboarding.setup.ts
24888
+ var SETTINGS_MENU_ONBOARDING_ID, SETTINGS_MENU_TOUR;
24889
+ var init_onboarding_setup10 = __esm({
24890
+ "src/internal/components/SettingsMenu/onboarding.setup.ts"() {
24891
+ SETTINGS_MENU_ONBOARDING_ID = "embarkai-settings-menu-onboarding";
24892
+ SETTINGS_MENU_TOUR = [
24893
+ {
24894
+ elId: SETTINGS_MENU_ONBOARDING_ID,
24895
+ title: "passport:common.onboarding.settingsMenu.title",
24896
+ description: "passport:common.onboarding.settingsMenu.description"
24897
+ }
24898
+ ];
24899
+ }
24900
+ });
24901
+
24140
24902
  // src/internal/components/SettingsMenu/SettingsMenu.tsx
24141
24903
  import { useQuery as useQuery24 } from "@tanstack/react-query";
24142
24904
  import { ArrowLeft as ArrowLeft20, HardDrive as HardDrive3 } from "lucide-react";
24143
- import { useEffect as useEffect49 } from "react";
24905
+ import { useEffect as useEffect50 } from "react";
24144
24906
  import { jsx as jsx113, jsxs as jsxs104 } from "react/jsx-runtime";
24145
24907
  function useSettingsButtons() {
24146
24908
  const config = useProviderConfig().config;
@@ -24157,9 +24919,9 @@ function useSettingsButtons() {
24157
24919
  }
24158
24920
  });
24159
24921
  if (proMode) {
24160
- settingsButtons.push({ id: "devices" /* DEVICES */, name: "Guardians", Icon: HardDrive3 });
24922
+ settingsButtons.push({ id: "devices" /* DEVICES */, name: "passport:guardiansMenu.title", Icon: HardDrive3 });
24161
24923
  }
24162
- useEffect49(() => {
24924
+ useEffect50(() => {
24163
24925
  const cssvEl = document.querySelector(".embarkai-ui-scope");
24164
24926
  if (!cssvEl || !window?.getComputedStyle) {
24165
24927
  return;
@@ -24176,6 +24938,7 @@ function useSettingsButtons() {
24176
24938
  function SettingsMenu() {
24177
24939
  const address = useSession((st) => st.address);
24178
24940
  const { t } = useT();
24941
+ useOnboardingTourAvailable(true);
24179
24942
  const settingsNotifications = useLayoutDataStore((st) => st.settingsNotifications);
24180
24943
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
24181
24944
  const setPage = useLayoutDataStore((st) => st.setPage);
@@ -24191,6 +24954,7 @@ function SettingsMenu() {
24191
24954
  return /* @__PURE__ */ jsxs104(
24192
24955
  "div",
24193
24956
  {
24957
+ ref: (inst) => onboarder.registerElement(SETTINGS_MENU_ONBOARDING_ID, inst),
24194
24958
  style: {
24195
24959
  "--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
24196
24960
  "--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
@@ -24235,8 +24999,10 @@ var init_SettingsMenu = __esm({
24235
24999
  init_pro_mode();
24236
25000
  init_utils2();
24237
25001
  init_useProvidersList();
25002
+ init_Onboarding();
24238
25003
  init_button();
24239
25004
  init_constants8();
25005
+ init_onboarding_setup10();
24240
25006
  }
24241
25007
  });
24242
25008
 
@@ -24244,6 +25010,7 @@ var init_SettingsMenu = __esm({
24244
25010
  var init_SettingsMenu2 = __esm({
24245
25011
  "src/internal/components/SettingsMenu/index.ts"() {
24246
25012
  init_SettingsMenu();
25013
+ init_onboarding_setup10();
24247
25014
  }
24248
25015
  });
24249
25016
 
@@ -24906,6 +25673,20 @@ var init_api4 = __esm({
24906
25673
  }
24907
25674
  });
24908
25675
 
25676
+ // src/internal/components/TransactionsMenu/onboarding.setup.ts
25677
+ var TRANSACTIONS_MENU_TOUR;
25678
+ var init_onboarding_setup11 = __esm({
25679
+ "src/internal/components/TransactionsMenu/onboarding.setup.ts"() {
25680
+ TRANSACTIONS_MENU_TOUR = [
25681
+ {
25682
+ elId: "embarkai-transactions-menu-onboarding" /* transactionsMenu */,
25683
+ title: "passport:transactionsMenu.onboarding.transactionsMenu.title",
25684
+ description: "passport:transactionsMenu.onboarding.transactionsMenu.description"
25685
+ }
25686
+ ];
25687
+ }
25688
+ });
25689
+
24909
25690
  // src/internal/components/TransactionsMenu/utils.ts
24910
25691
  function formatIntl(price, fractionDigits) {
24911
25692
  const formatter = Intl.NumberFormat("en-US", {
@@ -25105,6 +25886,7 @@ function TransactionsMenu() {
25105
25886
  const address = useSession((st) => st.address);
25106
25887
  const chainConfig = useSession((st) => st.chainConfig);
25107
25888
  const { t } = useT();
25889
+ useOnboardingTourAvailable(true);
25108
25890
  const setPage = useLayoutDataStore((st) => st.setPage);
25109
25891
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
25110
25892
  const [expandedGroups, setExpandedGroups] = useState27({});
@@ -25128,6 +25910,7 @@ function TransactionsMenu() {
25128
25910
  return /* @__PURE__ */ jsx116(
25129
25911
  "div",
25130
25912
  {
25913
+ ref: (inst) => onboarder.registerElement("embarkai-transactions-menu-onboarding" /* transactionsMenu */, inst),
25131
25914
  style: {
25132
25915
  "--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
25133
25916
  "--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
@@ -25151,11 +25934,11 @@ function TransactionsMenu() {
25151
25934
  ] }),
25152
25935
  !historySupported && /* @__PURE__ */ jsx116(Highlight, { type: "warning", children: /* @__PURE__ */ jsx116("span", { children: t("passport:transactionsMenu.comingSoon") }) }),
25153
25936
  historySupported && isTxHistoryLoading && /* @__PURE__ */ jsx116("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsx116(Loader28, { className: "w-4 h-4 animate-spin" }) }),
25937
+ historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ jsx116(Highlight, { type: "info", children: /* @__PURE__ */ jsx116("span", { children: t("passport:transactionsMenu.noTransactions") }) }),
25154
25938
  historySupported && !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ jsxs107(Highlight, { type: "error", className: "flex gap-[var(--ui-kit-gap)]", children: [
25155
25939
  /* @__PURE__ */ jsx116(XCircle, { className: "w-4 h-4 flex-none" }),
25156
25940
  /* @__PURE__ */ jsx116("span", { className: "block w-full flex-1 text-center text-xs", children: txHistoryResolvedError })
25157
25941
  ] }),
25158
- historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ jsx116(Highlight, { type: "warning", children: /* @__PURE__ */ jsx116("span", { children: t("passport:transactionsMenu.noTransactions") }) }),
25159
25942
  historySupported && !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length > 0 && /* @__PURE__ */ jsx116("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: txHistoryGroups.map((group) => /* @__PURE__ */ jsx116(
25160
25943
  TransactionsGroup,
25161
25944
  {
@@ -25176,6 +25959,7 @@ var init_TransactionsMenu = __esm({
25176
25959
  init_useLayoutDataStore();
25177
25960
  init_useLayoutStore();
25178
25961
  init_Expandable2();
25962
+ init_Onboarding();
25179
25963
  init_button();
25180
25964
  init_highlight();
25181
25965
  init_api4();
@@ -25188,6 +25972,7 @@ var init_TransactionsMenu = __esm({
25188
25972
  var init_TransactionsMenu2 = __esm({
25189
25973
  "src/internal/components/TransactionsMenu/index.ts"() {
25190
25974
  init_TransactionsMenu();
25975
+ init_onboarding_setup11();
25191
25976
  }
25192
25977
  });
25193
25978
 
@@ -25359,7 +26144,7 @@ var init_PageMap = __esm({
25359
26144
  });
25360
26145
 
25361
26146
  // src/internal/hooks/usePageMapper.tsx
25362
- import { useCallback as useCallback31, useEffect as useEffect50 } from "react";
26147
+ import { useCallback as useCallback31, useEffect as useEffect51 } from "react";
25363
26148
  import { jsx as jsx117 } from "react/jsx-runtime";
25364
26149
  function usePageMapper() {
25365
26150
  const page = useLayoutDataStore((st) => st.page);
@@ -25392,7 +26177,7 @@ function usePageMapper() {
25392
26177
  },
25393
26178
  [setDialogContent, setDialogDescription, setDialogTitle, setIsDialogOpen]
25394
26179
  );
25395
- useEffect50(() => {
26180
+ useEffect51(() => {
25396
26181
  if (page === null) return closeDialog();
25397
26182
  const pageItem = PAGE_MAP[page];
25398
26183
  if (!pageItem) {
@@ -25415,20 +26200,20 @@ var init_usePageMapper = __esm({
25415
26200
  });
25416
26201
 
25417
26202
  // src/internal/hooks/useSettingsNotifications.ts
25418
- import { useEffect as useEffect51 } from "react";
26203
+ import { useEffect as useEffect52 } from "react";
25419
26204
  function useSettingsNotifications() {
25420
26205
  const setSettingsNotifications = useLayoutDataStore((st) => st.setSettingsNotifications);
25421
26206
  const providers = jwtTokenManager2.getProviders();
25422
26207
  const hasEmail = providers.includes("email");
25423
26208
  const { data: userProfile = null } = useUserProfile();
25424
- useEffect51(() => {
26209
+ useEffect52(() => {
25425
26210
  const isKYCVerified = userProfile?.kycDetails?.kycStatus === "verified";
25426
26211
  setSettingsNotifications({
25427
26212
  ...COMPLETE_KYC_PROGRESS,
25428
26213
  status: isKYCVerified ? "resolved" : "active"
25429
26214
  });
25430
26215
  }, [userProfile, setSettingsNotifications]);
25431
- useEffect51(() => {
26216
+ useEffect52(() => {
25432
26217
  setSettingsNotifications({
25433
26218
  ...EMAIL_NOT_CONNECTED_NOTIFICATION,
25434
26219
  status: hasEmail ? "resolved" : "active"
@@ -25460,7 +26245,7 @@ var init_package = __esm({
25460
26245
  "package.json"() {
25461
26246
  package_default = {
25462
26247
  name: "@embarkai/ui-kit",
25463
- version: "0.4.74",
26248
+ version: "0.4.76",
25464
26249
  description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
25465
26250
  type: "module",
25466
26251
  main: "./dist/index.cjs",
@@ -25630,6 +26415,7 @@ function Footer() {
25630
26415
  /* @__PURE__ */ jsxs108(
25631
26416
  Button,
25632
26417
  {
26418
+ ref: (inst) => onboarder.registerElement(FOOTER_ONBOARDING_CHAIN_BUTTON, inst),
25633
26419
  size: "small",
25634
26420
  variant: "ghost",
25635
26421
  disabled: !address || isDisconnecting,
@@ -25650,6 +26436,7 @@ function Footer() {
25650
26436
  !!address ? /* @__PURE__ */ jsxs108(
25651
26437
  Button,
25652
26438
  {
26439
+ ref: (inst) => onboarder.registerElement(FOOTER_ONBOARDING_LOGOUT_BUTTON, inst),
25653
26440
  className: "text-xs",
25654
26441
  size: "small",
25655
26442
  variant: "ghost",
@@ -25676,6 +26463,7 @@ function Footer() {
25676
26463
  }
25677
26464
  );
25678
26465
  }
26466
+ var FOOTER_ONBOARDING_CHAIN_BUTTON, FOOTER_ONBOARDING_LOGOUT_BUTTON, FOOTER_TOUR;
25679
26467
  var init_Footer = __esm({
25680
26468
  "src/internal/components/Footer/Footer.tsx"() {
25681
26469
  init_package();
@@ -25690,7 +26478,22 @@ var init_Footer = __esm({
25690
26478
  init_utils2();
25691
26479
  init_useExternalWalletStore();
25692
26480
  init_constants5();
26481
+ init_Onboarding();
25693
26482
  init_button();
26483
+ FOOTER_ONBOARDING_CHAIN_BUTTON = "embark-footer-chain-button";
26484
+ FOOTER_ONBOARDING_LOGOUT_BUTTON = "embark-footer-logout-button";
26485
+ FOOTER_TOUR = [
26486
+ {
26487
+ elId: FOOTER_ONBOARDING_CHAIN_BUTTON,
26488
+ title: "passport:common.onboarding.chainButton.title",
26489
+ description: "passport:common.onboarding.chainButton.description"
26490
+ },
26491
+ {
26492
+ elId: FOOTER_ONBOARDING_LOGOUT_BUTTON,
26493
+ title: "passport:common.onboarding.logoutButton.title",
26494
+ description: "passport:common.onboarding.logoutButton.description"
26495
+ }
26496
+ ];
25694
26497
  }
25695
26498
  });
25696
26499
 
@@ -25698,12 +26501,73 @@ var init_Footer = __esm({
25698
26501
  var init_Footer2 = __esm({
25699
26502
  "src/internal/components/Footer/index.ts"() {
25700
26503
  init_Footer();
26504
+ init_Footer();
26505
+ }
26506
+ });
26507
+
26508
+ // src/internal/components/Header/onborading.setup.ts
26509
+ var EMBARKAI_HEADER_ONBOARDING_ID, EMBARKAI_HEADER_TOUR_BUTTON_ID, ONBOARDING_TOURS;
26510
+ var init_onborading_setup = __esm({
26511
+ "src/internal/components/Header/onborading.setup.ts"() {
26512
+ init_BuyMenu2();
26513
+ init_ChainsMenu2();
26514
+ init_Dialog2();
26515
+ init_Footer2();
26516
+ init_KeyshareRestoreMenu2();
26517
+ init_MainMenu2();
26518
+ init_ManageWalletMenu();
26519
+ init_NicknameMenu2();
26520
+ init_ReceiveMenu2();
26521
+ init_SecurityMenu2();
26522
+ init_SendMenu2();
26523
+ init_SettingsMenu2();
26524
+ init_TransactionsMenu2();
26525
+ EMBARKAI_HEADER_ONBOARDING_ID = "embark-header-user-section";
26526
+ EMBARKAI_HEADER_TOUR_BUTTON_ID = "embark-header-tour-button-section";
26527
+ ONBOARDING_TOURS = {
26528
+ ["main-menu" /* MAIN_MENU */]: () => [
26529
+ {
26530
+ elId: EMBARKAI_DIALOG_ONBOARDING_ID,
26531
+ title: "passport:common.onboarding.embarkAI.title",
26532
+ description: "passport:common.onboarding.embarkAI.description"
26533
+ },
26534
+ {
26535
+ elId: EMBARKAI_HEADER_ONBOARDING_ID,
26536
+ title: "passport:common.onboarding.userSection.title",
26537
+ description: "passport:common.onboarding.userSection.description"
26538
+ },
26539
+ ...MAIN_MENU_TOUR,
26540
+ ...FOOTER_TOUR
26541
+ ],
26542
+ ["settings" /* SETTINGS */]: () => SETTINGS_MENU_TOUR,
26543
+ ["buy" /* BUY */]: () => BUY_MENU_BINANCE_TOUR,
26544
+ ["send" /* SEND */]: () => {
26545
+ resetSendMenuState();
26546
+ const sendTour = [];
26547
+ switch (getSendMenuFlowState()) {
26548
+ case "send":
26549
+ sendTour.push(...SEND_MENU_TOUR);
26550
+ break;
26551
+ case "bridge":
26552
+ sendTour.push(...BRIDGE_MENU_TOUR);
26553
+ break;
26554
+ }
26555
+ return sendTour;
26556
+ },
26557
+ ["receive" /* RECEIVE */]: () => RECEIVE_MENU_TOUR,
26558
+ ["security" /* SECURITY */]: () => SECURITY_MENU_TOUR,
26559
+ ["keysare-backup" /* KEYSARE_BACKUP */]: () => KEYSHARE_BACKUP_MENU_TOUR,
26560
+ ["transactions" /* TRANSACTIONS */]: () => TRANSACTIONS_MENU_TOUR,
26561
+ ["nickname-settings" /* NICKNAME_SETTINGS */]: () => NICKNAME_MENU_TOUR,
26562
+ ["manage-wallet" /* MANAGE_WALLET */]: () => MANAGE_WALLET_MENU_TOUR,
26563
+ ["chain" /* CHAIN */]: () => CHAIN_MENU_TOUR
26564
+ };
25701
26565
  }
25702
26566
  });
25703
26567
 
25704
26568
  // src/internal/components/Header/Header.tsx
25705
- import { Copy as Copy4, Loader as Loader30 } from "lucide-react";
25706
- import { useCallback as useCallback32, useRef as useRef20, useState as useState28 } from "react";
26569
+ import { CircleQuestionMarkIcon as CircleQuestionMarkIcon2, Copy as Copy4, Loader as Loader30 } from "lucide-react";
26570
+ import { useCallback as useCallback32, useRef as useRef19, useState as useState28 } from "react";
25707
26571
  import { Fragment as Fragment43, jsx as jsx119, jsxs as jsxs109 } from "react/jsx-runtime";
25708
26572
  function formatAddress2(addr) {
25709
26573
  if (!addr) return "";
@@ -25713,12 +26577,13 @@ function Header() {
25713
26577
  const config = useProviderConfig().config;
25714
26578
  const address = useSession((st) => st.address);
25715
26579
  const chainConfig = useSession((st) => st.chainConfig);
25716
- const { t } = useT();
26580
+ const embarkPage = useLayoutDataStore((st) => st.page);
26581
+ const isOnboardingTourAvailable = useOnboardingStore((st) => st.isTourAvailable);
25717
26582
  const proMode = useProMode();
25718
26583
  const [proToast, setProToast] = useState28(false);
25719
26584
  const [copied, setCopied] = useState28(false);
25720
- const clickCountRef = useRef20(0);
25721
- const clickTimerRef = useRef20(null);
26585
+ const clickCountRef = useRef19(0);
26586
+ const clickTimerRef = useRef19(null);
25722
26587
  const handleAvatarClick = useCallback32(() => {
25723
26588
  clickCountRef.current += 1;
25724
26589
  if (clickTimerRef.current) {
@@ -25740,10 +26605,11 @@ function Header() {
25740
26605
  const { data: profile, isLoading: isProfileLoading } = useUserProfile();
25741
26606
  const avatar = profile?.avatar || jwtTokenManager2.getAvatar();
25742
26607
  const displayName = profile?.nicknameDisplay || profile?.displayName || jwtTokenManager2.getDisplayName();
25743
- const ChainIcon = NETWORK_OPTIONS.find((net) => net.chainId === chainConfig.id)?.Icon || (() => /* @__PURE__ */ jsx119("div", { className: "flex-none w-4 h-4 rounded-full flex items-center justify-center bg-[var(--ui-kit-primary)]", children: /* @__PURE__ */ jsx119("span", { className: "text-[var(--ui-kit-fg-inverted)] text-xs font-bold", children: chainConfig.name.charAt(0) }) }));
26608
+ const ChainIcon = NETWORK_OPTIONS.find((net) => net.chainId === chainConfig.id)?.Icon || null;
25744
26609
  return /* @__PURE__ */ jsxs109(
25745
26610
  "div",
25746
26611
  {
26612
+ ref: (inst) => onboarder.registerElement(EMBARKAI_HEADER_ONBOARDING_ID, inst),
25747
26613
  style: { borderBottom: "1px solid var(--ui-kit-bd)" },
25748
26614
  className: "w-full flex flex-col gap-[var(--ui-kit-gap)] p-[var(--ui-kit-pd)] pt-5",
25749
26615
  children: [
@@ -25788,26 +26654,36 @@ function Header() {
25788
26654
  ] }),
25789
26655
  !!address && /* @__PURE__ */ jsxs109("div", { className: "w-full flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
25790
26656
  /* @__PURE__ */ jsxs109("div", { className: "flex items-center w-fit text-[10px] px-2 leading-6 text-[var(--ui-kit-fg)] gap-2", children: [
25791
- /* @__PURE__ */ jsx119("span", { children: formatAddress2(address) }),
25792
- /* @__PURE__ */ jsx119(ChainIcon, { className: "flex-none w-4 h-4" })
26657
+ !!ChainIcon ? /* @__PURE__ */ jsx119(ChainIcon, { className: "flex-none w-6 h-6" }) : /* @__PURE__ */ jsx119("div", { className: "flex-none w-6 h-6 rounded-full flex items-center justify-center bg-[var(--ui-kit-primary)]", children: /* @__PURE__ */ jsx119("span", { className: "text-[var(--ui-kit-fg-inverted)] text-sm font-bold", children: chainConfig.name.charAt(0) }) }),
26658
+ /* @__PURE__ */ jsx119("span", { className: cn("transition-colors", copied && "text-[var(--ui-kit-bg-success)]"), children: formatAddress2(address) })
25793
26659
  ] }),
25794
- /* @__PURE__ */ jsx119("div", { className: "w-fit flex items-center gap-[var(--ui-kit-gap)] justify-between", children: /* @__PURE__ */ jsxs109(
25795
- Button,
25796
- {
25797
- size: "small",
25798
- variant: "ghost",
25799
- className: "text-[10px] px-2 text-[var(--ui-kit-fg)]",
25800
- onClick: async () => {
25801
- await navigator.clipboard.writeText(address);
25802
- setCopied(true);
25803
- setTimeout(() => setCopied(false), 1500);
25804
- },
25805
- children: [
25806
- copied ? /* @__PURE__ */ jsx119(PositiveIcon, {}) : /* @__PURE__ */ jsx119(Copy4, { className: "w-4 h-4" }),
25807
- /* @__PURE__ */ jsx119("span", { className: "uppercase", children: t("passport:common.copy") })
25808
- ]
25809
- }
25810
- ) })
26660
+ /* @__PURE__ */ jsxs109("div", { className: "w-fit flex items-center", children: [
26661
+ /* @__PURE__ */ jsx119(
26662
+ Button,
26663
+ {
26664
+ size: "small",
26665
+ variant: "ghost",
26666
+ className: "text-[10px] px-2",
26667
+ onClick: async () => {
26668
+ await navigator.clipboard.writeText(address);
26669
+ setCopied(true);
26670
+ setTimeout(() => setCopied(false), 1500);
26671
+ },
26672
+ children: copied ? /* @__PURE__ */ jsx119(PositiveIcon, {}) : /* @__PURE__ */ jsx119(Copy4, { className: "w-4 h-4" })
26673
+ }
26674
+ ),
26675
+ !!isOnboardingTourAvailable && ONBOARDING_TOURS[embarkPage] && /* @__PURE__ */ jsx119(
26676
+ Button,
26677
+ {
26678
+ ref: (inst) => onboarder.registerElement(EMBARKAI_HEADER_TOUR_BUTTON_ID, inst),
26679
+ size: "small",
26680
+ variant: "ghost",
26681
+ className: "text-[10px] px-2",
26682
+ onClick: () => onboarder.startTour(ONBOARDING_TOURS[embarkPage]()),
26683
+ children: /* @__PURE__ */ jsx119(CircleQuestionMarkIcon2, { className: "w-4 h-4" })
26684
+ }
26685
+ )
26686
+ ] })
25811
26687
  ] }),
25812
26688
  proToast && /* @__PURE__ */ jsx119("div", { className: "text-xs text-center text-[var(--ui-kit-primary)] font-medium animate-pulse", children: "Pro Mode activated" })
25813
26689
  ]
@@ -25820,15 +26696,17 @@ var init_Header = __esm({
25820
26696
  init_networks3();
25821
26697
  init_ProviderContext();
25822
26698
  init_SessionContext();
25823
- init_useT();
25824
26699
  init_icons();
25825
26700
  init_auth();
26701
+ init_useLayoutDataStore();
25826
26702
  init_useUserProfile();
25827
26703
  init_pro_mode();
25828
26704
  init_utils2();
25829
26705
  init_BalanceView2();
25830
26706
  init_KYC();
26707
+ init_Onboarding();
25831
26708
  init_button();
26709
+ init_onborading_setup();
25832
26710
  }
25833
26711
  });
25834
26712
 
@@ -25836,6 +26714,7 @@ var init_Header = __esm({
25836
26714
  var init_Header2 = __esm({
25837
26715
  "src/internal/components/Header/index.ts"() {
25838
26716
  init_Header();
26717
+ init_onborading_setup();
25839
26718
  }
25840
26719
  });
25841
26720
 
@@ -25843,7 +26722,7 @@ var init_Header2 = __esm({
25843
26722
  import * as DialogPrimitive from "@radix-ui/react-dialog";
25844
26723
  import { merge as merge2 } from "lodash-es";
25845
26724
  import { ArrowLeft as ArrowLeft23, SlidersHorizontal, X } from "lucide-react";
25846
- import { forwardRef as forwardRef4 } from "react";
26725
+ import { forwardRef as forwardRef6 } from "react";
25847
26726
  import { jsx as jsx120, jsxs as jsxs110 } from "react/jsx-runtime";
25848
26727
  function useDecideContentStyles() {
25849
26728
  const isMobileView = useLayoutStore((st) => st.isMobileView);
@@ -25866,7 +26745,7 @@ var init_dialog = __esm({
25866
26745
  init_button();
25867
26746
  Dialog = DialogPrimitive.Root;
25868
26747
  DialogPortal = DialogPrimitive.Portal;
25869
- DialogOverlay = forwardRef4(
26748
+ DialogOverlay = forwardRef6(
25870
26749
  ({ className, closing, ...props }, ref) => /* @__PURE__ */ jsx120(
25871
26750
  DialogPrimitive.Overlay,
25872
26751
  {
@@ -25888,7 +26767,7 @@ var init_dialog = __esm({
25888
26767
  border: "1px solid var(--ui-kit-bd)",
25889
26768
  boxShadow: "var(--ui-kit-shadow, 0px 4px 10px var(--ui-kit-shadow-c, rgba(0, 0, 0, 0.1)))"
25890
26769
  };
25891
- DialogContent = forwardRef4(
26770
+ DialogContent = forwardRef6(
25892
26771
  ({ className, children, colorMode, ...props }, ref) => {
25893
26772
  const { t, i18n } = useT();
25894
26773
  const isSessionLoading = useSession((st) => st.isLoading);
@@ -26000,7 +26879,7 @@ var init_dialog = __esm({
26000
26879
  DialogHeader.displayName = "DialogHeader";
26001
26880
  DialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsx120("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
26002
26881
  DialogFooter.displayName = "DialogFooter";
26003
- DialogTitle = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx120(
26882
+ DialogTitle = forwardRef6(({ className, ...props }, ref) => /* @__PURE__ */ jsx120(
26004
26883
  DialogPrimitive.Title,
26005
26884
  {
26006
26885
  ref,
@@ -26009,7 +26888,7 @@ var init_dialog = __esm({
26009
26888
  }
26010
26889
  ));
26011
26890
  DialogTitle.displayName = DialogPrimitive.Title.displayName;
26012
- DialogDescription = forwardRef4(({ className, ...props }, ref) => /* @__PURE__ */ jsx120(DialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
26891
+ DialogDescription = forwardRef6(({ className, ...props }, ref) => /* @__PURE__ */ jsx120(DialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
26013
26892
  DialogDescription.displayName = DialogPrimitive.Description.displayName;
26014
26893
  }
26015
26894
  });
@@ -26025,7 +26904,7 @@ var init_visually_hidden = __esm({
26025
26904
 
26026
26905
  // src/internal/components/Dialog/Dialog.tsx
26027
26906
  import { AnimatePresence, motion } from "framer-motion";
26028
- import { useEffect as useEffect52 } from "react";
26907
+ import { useEffect as useEffect53 } from "react";
26029
26908
  import { jsx as jsx122, jsxs as jsxs111 } from "react/jsx-runtime";
26030
26909
  function Dialog2() {
26031
26910
  const config = useProviderConfig().config;
@@ -26037,7 +26916,7 @@ function Dialog2() {
26037
26916
  const isWalletLinking = useLayoutDataStore((st) => st.isWalletLinking);
26038
26917
  const setPage = useLayoutDataStore((st) => st.setPage);
26039
26918
  const { colorMode, isDialogOpen, dialogTitle, dialogDescription, dialogContent, isDialogForced, setIsSettings } = useLayoutStore();
26040
- useEffect52(() => setIsSettings(!!session), [session, setIsSettings]);
26919
+ useEffect53(() => setIsSettings(!!session), [session, setIsSettings]);
26041
26920
  usePageMapper();
26042
26921
  useAutoConnect();
26043
26922
  useBackupStatusChanges();
@@ -26054,27 +26933,36 @@ function Dialog2() {
26054
26933
  if (isDialogForced) return;
26055
26934
  if (!open) setPage(null);
26056
26935
  },
26057
- children: /* @__PURE__ */ jsxs111(DialogContent, { colorMode, className, children: [
26058
- /* @__PURE__ */ jsx122(VisuallyHidden, { children: /* @__PURE__ */ jsx122(DialogTitle, { children: dialogTitle }) }),
26059
- /* @__PURE__ */ jsx122(DialogDescription, { className: "sr-only", children: dialogDescription }),
26060
- !isHeaderHidden && /* @__PURE__ */ jsx122(Header, {}),
26061
- /* @__PURE__ */ jsx122(AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ jsx122(
26062
- motion.div,
26063
- {
26064
- initial: { opacity: 0, height: transitionPageHeight },
26065
- animate: { opacity: 1, height: "auto" },
26066
- exit: { opacity: 0, height: transitionPageHeight },
26067
- style: { overflow: "hidden" },
26068
- transition: Y_ANIMATION_SETUP,
26069
- children: dialogContent
26070
- },
26071
- page || "empty"
26072
- ) }),
26073
- /* @__PURE__ */ jsx122(Footer, {})
26074
- ] })
26936
+ children: /* @__PURE__ */ jsxs111(
26937
+ DialogContent,
26938
+ {
26939
+ ref: (inst) => onboarder.registerElement(EMBARKAI_DIALOG_ONBOARDING_ID, inst),
26940
+ colorMode,
26941
+ className,
26942
+ children: [
26943
+ /* @__PURE__ */ jsx122(VisuallyHidden, { children: /* @__PURE__ */ jsx122(DialogTitle, { children: dialogTitle }) }),
26944
+ /* @__PURE__ */ jsx122(DialogDescription, { className: "sr-only", children: dialogDescription }),
26945
+ !isHeaderHidden && /* @__PURE__ */ jsx122(Header, {}),
26946
+ /* @__PURE__ */ jsx122(AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ jsx122(
26947
+ motion.div,
26948
+ {
26949
+ initial: { opacity: 0, height: transitionPageHeight },
26950
+ animate: { opacity: 1, height: "auto" },
26951
+ exit: { opacity: 0, height: transitionPageHeight },
26952
+ style: { overflow: "hidden" },
26953
+ transition: Y_ANIMATION_SETUP,
26954
+ children: dialogContent
26955
+ },
26956
+ page || "empty"
26957
+ ) }),
26958
+ /* @__PURE__ */ jsx122(Footer, {})
26959
+ ]
26960
+ }
26961
+ )
26075
26962
  }
26076
26963
  );
26077
26964
  }
26965
+ var EMBARKAI_DIALOG_ONBOARDING_ID;
26078
26966
  var init_Dialog = __esm({
26079
26967
  "src/internal/components/Dialog/Dialog.tsx"() {
26080
26968
  init_ProviderContext();
@@ -26090,8 +26978,10 @@ var init_Dialog = __esm({
26090
26978
  init_useSettingsNotifications();
26091
26979
  init_Footer2();
26092
26980
  init_Header2();
26981
+ init_Onboarding();
26093
26982
  init_dialog();
26094
26983
  init_visually_hidden();
26984
+ EMBARKAI_DIALOG_ONBOARDING_ID = "embark-main-dialog-content";
26095
26985
  }
26096
26986
  });
26097
26987
 
@@ -26103,7 +26993,7 @@ var init_Dialog2 = __esm({
26103
26993
  });
26104
26994
 
26105
26995
  // src/internal/components/DirectWalletHandler.tsx
26106
- import { useEffect as useEffect53 } from "react";
26996
+ import { useEffect as useEffect54 } from "react";
26107
26997
  import { useAccount } from "wagmi";
26108
26998
  function DirectWalletHandler() {
26109
26999
  const walletMode = useProviderConfig().config.current?.wallet?.mode || "linked";
@@ -26115,13 +27005,13 @@ function DirectWalletHandler() {
26115
27005
  const setExternalChainId = useExternalWalletStore((st) => st.setExternalChainId);
26116
27006
  const setConfigMode = useExternalWalletStore((st) => st.setConfigMode);
26117
27007
  const setActiveMode = useExternalWalletStore((st) => st.setActiveMode);
26118
- useEffect53(() => {
27008
+ useEffect54(() => {
26119
27009
  setConfigMode(walletMode);
26120
27010
  if (walletMode !== "both") {
26121
27011
  setActiveMode(walletMode);
26122
27012
  }
26123
27013
  }, [walletMode, setConfigMode, setActiveMode]);
26124
- useEffect53(() => {
27014
+ useEffect54(() => {
26125
27015
  if (isConnected && address && !isExternalConnected && connector && chain?.id) {
26126
27016
  setExternalWallet({
26127
27017
  address,
@@ -26130,17 +27020,17 @@ function DirectWalletHandler() {
26130
27020
  });
26131
27021
  }
26132
27022
  }, [isConnected, address, isExternalConnected, connector, chain?.id, setExternalWallet]);
26133
- useEffect53(() => {
27023
+ useEffect54(() => {
26134
27024
  if (isExternalConnected && !isConnected) {
26135
27025
  clearExternalWallet();
26136
27026
  }
26137
27027
  }, [isConnected, isExternalConnected, clearExternalWallet]);
26138
- useEffect53(() => {
27028
+ useEffect54(() => {
26139
27029
  if (isExternalConnected && isConnected && chain?.id) {
26140
27030
  setExternalChainId(chain.id);
26141
27031
  }
26142
27032
  }, [chain?.id, isConnected, isExternalConnected, setExternalChainId]);
26143
- useEffect53(() => {
27033
+ useEffect54(() => {
26144
27034
  if (isExternalConnected && isConnected && address && address !== externalAddress && connector && chain?.id) {
26145
27035
  setExternalWallet({
26146
27036
  address,
@@ -26215,7 +27105,7 @@ var init_TssManager = __esm({
26215
27105
  // src/internal/components/WalletConnectHandler.tsx
26216
27106
  import { useConnectModal as useConnectModal2 } from "@rainbow-me/rainbowkit";
26217
27107
  import { useMutation as useMutation23, useQueryClient as useQueryClient27 } from "@tanstack/react-query";
26218
- import React28, { useCallback as useCallback34, useEffect as useEffect54 } from "react";
27108
+ import React28, { useCallback as useCallback34, useEffect as useEffect55 } from "react";
26219
27109
  import { useAccount as useAccount2, useDisconnect as useDisconnect4, useSignMessage as useSignMessage2 } from "wagmi";
26220
27110
  function WalletConnectHandler() {
26221
27111
  const qc = useQueryClient27();
@@ -26270,7 +27160,7 @@ function WalletConnectHandler() {
26270
27160
  const [hasStartedLinking, setHasStartedLinking] = React28.useState(false);
26271
27161
  const [modalWasOpened, setModalWasOpened] = React28.useState(false);
26272
27162
  const [pendingModalOpen, setPendingModalOpen] = React28.useState(false);
26273
- useEffect54(() => {
27163
+ useEffect55(() => {
26274
27164
  if (isWalletLinking && !hasStartedLinking) {
26275
27165
  console.log("[WalletConnectHandler] Starting wallet link flow:", {
26276
27166
  isConnected,
@@ -26308,18 +27198,18 @@ function WalletConnectHandler() {
26308
27198
  setProviderType,
26309
27199
  walletMode
26310
27200
  ]);
26311
- useEffect54(() => {
27201
+ useEffect55(() => {
26312
27202
  if (pendingModalOpen && !isConnected && openConnectModal) {
26313
27203
  setPendingModalOpen(false);
26314
27204
  openConnectModal();
26315
27205
  }
26316
27206
  }, [pendingModalOpen, isConnected, openConnectModal]);
26317
- useEffect54(() => {
27207
+ useEffect55(() => {
26318
27208
  if (connectModalOpen && hasStartedLinking) {
26319
27209
  setModalWasOpened(true);
26320
27210
  }
26321
27211
  }, [connectModalOpen, hasStartedLinking]);
26322
- useEffect54(() => {
27212
+ useEffect55(() => {
26323
27213
  if (modalWasOpened && !connectModalOpen && !isConnected && isWalletLinking) {
26324
27214
  console.log("[WalletConnectHandler] Modal closed without connecting");
26325
27215
  onLinkingComplete(false);
@@ -26327,7 +27217,7 @@ function WalletConnectHandler() {
26327
27217
  setModalWasOpened(false);
26328
27218
  }
26329
27219
  }, [connectModalOpen, modalWasOpened, isConnected, isWalletLinking]);
26330
- useEffect54(() => {
27220
+ useEffect55(() => {
26331
27221
  if (isWalletLinking) {
26332
27222
  const timeout = setTimeout(() => {
26333
27223
  console.warn("[WalletConnectHandler] Wallet linking timed out, resetting state");
@@ -26447,7 +27337,7 @@ function WalletConnectHandler() {
26447
27337
  setPage(passportWalletAddress ? "manage-wallet" /* MANAGE_WALLET */ : "auth" /* AUTH */);
26448
27338
  }
26449
27339
  });
26450
- useEffect54(() => {
27340
+ useEffect55(() => {
26451
27341
  if (!!chain?.id && isConnected && walletAddress && isWalletLinking && hasStartedLinking && modalWasOpened && !pendingModalOpen) {
26452
27342
  console.log("[WalletConnectHandler] handleWalletSign triggered");
26453
27343
  if (!passportWalletAddress) {
@@ -26457,7 +27347,7 @@ function WalletConnectHandler() {
26457
27347
  handleWalletSign({ chainId: chain.id, signingWalletAddress: walletAddress });
26458
27348
  }
26459
27349
  }, [chain, isConnected, walletAddress, isWalletLinking, hasStartedLinking, modalWasOpened, pendingModalOpen]);
26460
- useEffect54(() => {
27350
+ useEffect55(() => {
26461
27351
  if (isConnected && !chain?.id && isWalletLinking && hasStartedLinking && !connectModalOpen && !isWalletSigning) {
26462
27352
  const timeout = setTimeout(() => {
26463
27353
  console.warn("[WalletConnectHandler] Wallet connected but chain info missing, resetting");
@@ -29317,9 +30207,9 @@ import {
29317
30207
  createContext,
29318
30208
  useCallback as useCallback35,
29319
30209
  useContext,
29320
- useEffect as useEffect55,
30210
+ useEffect as useEffect56,
29321
30211
  useMemo as useMemo17,
29322
- useRef as useRef21
30212
+ useRef as useRef20
29323
30213
  } from "react";
29324
30214
  import { jsx as jsx126 } from "react/jsx-runtime";
29325
30215
  function clearLegacyWagmiStorage() {
@@ -29339,9 +30229,9 @@ function clearLegacyWagmiStorage() {
29339
30229
  }
29340
30230
  function Provider(props) {
29341
30231
  const { children, projectId, initialConfig = {}, callbacks } = props;
29342
- const callbacksRef = useRef21(callbacks);
29343
- useEffect55(() => notifyNoProjetctId(projectId), [projectId]);
29344
- const config = useRef21(merge3({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
30232
+ const callbacksRef = useRef20(callbacks);
30233
+ useEffect56(() => notifyNoProjetctId(projectId), [projectId]);
30234
+ const config = useRef20(merge3({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
29345
30235
  const updateConfig = useCallback35((updates) => {
29346
30236
  const prev = config.current;
29347
30237
  const next = { ...prev };
@@ -29381,7 +30271,7 @@ function Provider(props) {
29381
30271
  const next = updates ? { ...prev, ...updates } : void 0;
29382
30272
  callbacksRef.current = next;
29383
30273
  }, []);
29384
- useEffect55(() => {
30274
+ useEffect56(() => {
29385
30275
  if (typeof window === "undefined" || !projectId) return;
29386
30276
  const mergedConfig = merge3(DEFAULT_PROVIDER_CONFIG, initialConfig);
29387
30277
  updateConfig(mergedConfig);
@@ -29401,7 +30291,7 @@ function Provider(props) {
29401
30291
  useSession.getState().setActiveChainId(mergedConfig.network.chainId);
29402
30292
  }
29403
30293
  }, [projectId, initialConfig]);
29404
- useEffect55(() => {
30294
+ useEffect56(() => {
29405
30295
  if (typeof window === "undefined" || !projectId) return;
29406
30296
  try {
29407
30297
  initSdkErrorTracking();
@@ -29470,7 +30360,7 @@ var init_ProviderContext = __esm({
29470
30360
  });
29471
30361
 
29472
30362
  // src/styles/built.css
29473
- var built_default = `.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.embarkai-ui-scope .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.embarkai-ui-scope .pointer-events-none{pointer-events:none}.embarkai-ui-scope .pointer-events-auto{pointer-events:auto}.embarkai-ui-scope .visible{visibility:visible}.embarkai-ui-scope .invisible{visibility:hidden}.embarkai-ui-scope .static{position:static}.embarkai-ui-scope .fixed{position:fixed}.embarkai-ui-scope .absolute{position:absolute}.embarkai-ui-scope .relative{position:relative}.embarkai-ui-scope .inset-0{inset:0}.embarkai-ui-scope .-right-1{right:-.25rem}.embarkai-ui-scope .-right-2{right:-.5rem}.embarkai-ui-scope .-top-1{top:-.25rem}.embarkai-ui-scope .-top-2{top:-.5rem}.embarkai-ui-scope .bottom-0{bottom:0}.embarkai-ui-scope .bottom-full{bottom:100%}.embarkai-ui-scope .left-0{left:0}.embarkai-ui-scope .left-1\\/2{left:50%}.embarkai-ui-scope .left-4{left:1rem}.embarkai-ui-scope .right-0{right:0}.embarkai-ui-scope .right-2{right:.5rem}.embarkai-ui-scope .right-3{right:.75rem}.embarkai-ui-scope .right-4{right:1rem}.embarkai-ui-scope .right-\\[var\\(--ui-kit-pd\\)\\]{right:var(--ui-kit-pd)}.embarkai-ui-scope .right-full{right:100%}.embarkai-ui-scope .top-0{top:0}.embarkai-ui-scope .top-1\\/2{top:50%}.embarkai-ui-scope .top-2{top:.5rem}.embarkai-ui-scope .top-4{top:1rem}.embarkai-ui-scope .top-\\[var\\(--ui-kit-pd\\)\\]{top:var(--ui-kit-pd)}.embarkai-ui-scope .z-10{z-index:10}.embarkai-ui-scope .z-50{z-index:50}.embarkai-ui-scope .z-\\[9998\\]{z-index:9998}.embarkai-ui-scope .z-\\[9999\\]{z-index:9999}.embarkai-ui-scope .-m-px{margin:-1px}.embarkai-ui-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.embarkai-ui-scope .mx-auto{margin-left:auto;margin-right:auto}.embarkai-ui-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.embarkai-ui-scope .mb-1{margin-bottom:.25rem}.embarkai-ui-scope .mb-2{margin-bottom:.5rem}.embarkai-ui-scope .mb-3{margin-bottom:.75rem}.embarkai-ui-scope .mb-4{margin-bottom:1rem}.embarkai-ui-scope .ml-1{margin-left:.25rem}.embarkai-ui-scope .ml-2{margin-left:.5rem}.embarkai-ui-scope .ml-auto{margin-left:auto}.embarkai-ui-scope .mr-1{margin-right:.25rem}.embarkai-ui-scope .mt-0\\.5{margin-top:.125rem}.embarkai-ui-scope .mt-1{margin-top:.25rem}.embarkai-ui-scope .mt-2{margin-top:.5rem}.embarkai-ui-scope .mt-4{margin-top:1rem}.embarkai-ui-scope .block{display:block}.embarkai-ui-scope .inline-block{display:inline-block}.embarkai-ui-scope .inline{display:inline}.embarkai-ui-scope .flex{display:flex}.embarkai-ui-scope .inline-flex{display:inline-flex}.embarkai-ui-scope .table{display:table}.embarkai-ui-scope .grid{display:grid}.embarkai-ui-scope .hidden{display:none}.embarkai-ui-scope .aspect-square{aspect-ratio:1/1}.embarkai-ui-scope .size-4{width:1rem;height:1rem}.embarkai-ui-scope .size-8{width:2rem;height:2rem}.embarkai-ui-scope .size-auto{width:auto;height:auto}.embarkai-ui-scope .h-0{height:0}.embarkai-ui-scope .h-1{height:.25rem}.embarkai-ui-scope .h-10{height:2.5rem}.embarkai-ui-scope .h-12{height:3rem}.embarkai-ui-scope .h-16{height:4rem}.embarkai-ui-scope .h-3{height:.75rem}.embarkai-ui-scope .h-3\\.5{height:.875rem}.embarkai-ui-scope .h-4{height:1rem}.embarkai-ui-scope .h-48{height:12rem}.embarkai-ui-scope .h-5{height:1.25rem}.embarkai-ui-scope .h-6{height:1.5rem}.embarkai-ui-scope .h-7{height:1.75rem}.embarkai-ui-scope .h-8{height:2rem}.embarkai-ui-scope .h-\\[100dvh\\]{height:100dvh}.embarkai-ui-scope .h-\\[48px\\]{height:48px}.embarkai-ui-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.embarkai-ui-scope .h-auto{height:auto}.embarkai-ui-scope .h-fit{height:-moz-fit-content;height:fit-content}.embarkai-ui-scope .h-full{height:100%}.embarkai-ui-scope .h-px{height:1px}.embarkai-ui-scope .max-h-96{max-height:24rem}.embarkai-ui-scope .max-h-\\[95dvh\\]{max-height:95dvh}.embarkai-ui-scope .min-h-10{min-height:2.5rem}.embarkai-ui-scope .min-h-12{min-height:3rem}.embarkai-ui-scope .w-0{width:0}.embarkai-ui-scope .w-1{width:.25rem}.embarkai-ui-scope .w-1\\/2{width:50%}.embarkai-ui-scope .w-10{width:2.5rem}.embarkai-ui-scope .w-12{width:3rem}.embarkai-ui-scope .w-16{width:4rem}.embarkai-ui-scope .w-3{width:.75rem}.embarkai-ui-scope .w-3\\.5{width:.875rem}.embarkai-ui-scope .w-4{width:1rem}.embarkai-ui-scope .w-48{width:12rem}.embarkai-ui-scope .w-5{width:1.25rem}.embarkai-ui-scope .w-6{width:1.5rem}.embarkai-ui-scope .w-7{width:1.75rem}.embarkai-ui-scope .w-8{width:2rem}.embarkai-ui-scope .w-\\[100dvw\\]{width:100dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[var\\(--ui-kit-maw\\)\\]{width:var(--ui-kit-maw)}.embarkai-ui-scope .w-fit{width:-moz-fit-content;width:fit-content}.embarkai-ui-scope .w-full{width:100%}.embarkai-ui-scope .w-px{width:1px}.embarkai-ui-scope .min-w-0{min-width:0}.embarkai-ui-scope .min-w-10{min-width:2.5rem}.embarkai-ui-scope .min-w-16{min-width:4rem}.embarkai-ui-scope .min-w-\\[256px\\]{min-width:256px}.embarkai-ui-scope .min-w-\\[8rem\\]{min-width:8rem}.embarkai-ui-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.embarkai-ui-scope .max-w-\\[100px\\]{max-width:100px}.embarkai-ui-scope .max-w-\\[144px\\]{max-width:144px}.embarkai-ui-scope .max-w-\\[150px\\]{max-width:150px}.embarkai-ui-scope .max-w-\\[160px\\]{max-width:160px}.embarkai-ui-scope .max-w-\\[256px\\]{max-width:256px}.embarkai-ui-scope .max-w-\\[680px\\]{max-width:680px}.embarkai-ui-scope .max-w-\\[calc\\(50\\%-8px\\)\\]{max-width:calc(50% - 8px)}.embarkai-ui-scope .max-w-full{max-width:100%}.embarkai-ui-scope .max-w-sm{max-width:24rem}.embarkai-ui-scope .flex-1{flex:1 1 0%}.embarkai-ui-scope .flex-none{flex:none}.embarkai-ui-scope .flex-shrink-0,.embarkai-ui-scope .shrink-0{flex-shrink:0}.embarkai-ui-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.embarkai-ui-scope .-translate-x-1\\/2,.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{--tw-translate-x:calc(var(--ui-kit-gap)*-1)}.embarkai-ui-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.embarkai-ui-scope .-translate-y-1\\/2,.embarkai-ui-scope .-translate-y-1\\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-y-1\\/3{--tw-translate-y:-33.333333%}.embarkai-ui-scope .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes glow-warning{0%,to{transform:scale(1);box-shadow:0 0 16px var(--ui-kit-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--ui-kit-bg-warning)}}.embarkai-ui-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse{50%{opacity:.5}}.embarkai-ui-scope .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.embarkai-ui-scope .animate-spin{animation:spin 1s linear infinite}.embarkai-ui-scope .cursor-default{cursor:default}.embarkai-ui-scope .cursor-help{cursor:help}.embarkai-ui-scope .cursor-pointer{cursor:pointer}.embarkai-ui-scope .cursor-text{cursor:text}.embarkai-ui-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.embarkai-ui-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.embarkai-ui-scope .resize{resize:both}.embarkai-ui-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.embarkai-ui-scope .list-inside{list-style-position:inside}.embarkai-ui-scope .list-disc{list-style-type:disc}.embarkai-ui-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.embarkai-ui-scope .flex-col{flex-direction:column}.embarkai-ui-scope .flex-col-reverse{flex-direction:column-reverse}.embarkai-ui-scope .flex-wrap{flex-wrap:wrap}.embarkai-ui-scope .place-content-center{place-content:center}.embarkai-ui-scope .items-start{align-items:flex-start}.embarkai-ui-scope .items-end{align-items:flex-end}.embarkai-ui-scope .items-center{align-items:center}.embarkai-ui-scope .justify-start{justify-content:flex-start}.embarkai-ui-scope .justify-end{justify-content:flex-end}.embarkai-ui-scope .justify-center{justify-content:center}.embarkai-ui-scope .justify-between{justify-content:space-between}.embarkai-ui-scope .gap-0{gap:0}.embarkai-ui-scope .gap-1{gap:.25rem}.embarkai-ui-scope .gap-2{gap:.5rem}.embarkai-ui-scope .gap-3{gap:.75rem}.embarkai-ui-scope .gap-4{gap:1rem}.embarkai-ui-scope .gap-\\[10px\\]{gap:10px}.embarkai-ui-scope .gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope :is(.space-x-1>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.embarkai-ui-scope .overflow-hidden{overflow:hidden}.embarkai-ui-scope .overflow-y-auto{overflow-y:auto}.embarkai-ui-scope .overflow-x-hidden{overflow-x:hidden}.embarkai-ui-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embarkai-ui-scope .text-ellipsis{text-overflow:ellipsis}.embarkai-ui-scope .whitespace-nowrap{white-space:nowrap}.embarkai-ui-scope .whitespace-pre-line{white-space:pre-line}.embarkai-ui-scope .whitespace-pre-wrap{white-space:pre-wrap}.embarkai-ui-scope .break-normal{overflow-wrap:normal;word-break:normal}.embarkai-ui-scope .break-words{overflow-wrap:break-word}.embarkai-ui-scope .break-all{word-break:break-all}.embarkai-ui-scope .rounded{border-radius:.25rem}.embarkai-ui-scope .rounded-\\[10px\\]{border-radius:10px}.embarkai-ui-scope .rounded-\\[8px\\]{border-radius:8px}.embarkai-ui-scope .rounded-\\[calc\\(var\\(--ui-kit-el-bdrs\\)_\\/_2\\)\\]{border-radius:calc(var(--ui-kit-el-bdrs)/2)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-bdrs\\)\\]{border-radius:var(--ui-kit-bdrs)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .rounded-full{border-radius:9999px}.embarkai-ui-scope .rounded-lg{border-radius:.5rem}.embarkai-ui-scope .rounded-md{border-radius:.375rem}.embarkai-ui-scope .rounded-xl{border-radius:.75rem}.embarkai-ui-scope .border{border-width:1px}.embarkai-ui-scope .border-0{border-width:0}.embarkai-ui-scope .border-2{border-width:2px}.embarkai-ui-scope .border-b{border-bottom-width:1px}.embarkai-ui-scope .border-t{border-top-width:1px}.embarkai-ui-scope .border-dashed{border-style:dashed}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bd\\)\\]{border-color:var(--ui-kit-bd)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-error\\)\\]{border-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-success\\)\\]{border-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-warning\\)\\]{border-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-error\\)\\]{border-color:var(--ui-kit-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-secondary\\)\\]{border-color:var(--ui-kit-secondary)}.embarkai-ui-scope .border-current{border-color:currentColor}.embarkai-ui-scope .border-transparent{border-color:transparent}.embarkai-ui-scope .border-t-transparent{border-top-color:transparent}.embarkai-ui-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f0f6f8\\]{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg\\)\\]{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-error\\)\\]{background-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-info\\)\\]{background-color:var(--ui-kit-bg-info)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-secondary\\)\\]{background-color:var(--ui-kit-bg-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-success\\)\\]{background-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-warning\\)\\]{background-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-fg\\)\\]{background-color:var(--ui-kit-fg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-overlay\\)\\]{background-color:var(--ui-kit-overlay)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-primary\\)\\]{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary\\)\\]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary-h\\)\\]{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-transparent{background-color:transparent}.embarkai-ui-scope .fill-\\[var\\(--ui-kit-bg-warning\\)\\]{fill:var(--ui-kit-bg-warning)}.embarkai-ui-scope .object-contain{-o-object-fit:contain;object-fit:contain}.embarkai-ui-scope .object-cover{-o-object-fit:cover;object-fit:cover}.embarkai-ui-scope .p-0{padding:0}.embarkai-ui-scope .p-1{padding:.25rem}.embarkai-ui-scope .p-2{padding:.5rem}.embarkai-ui-scope .p-3{padding:.75rem}.embarkai-ui-scope .p-4{padding:1rem}.embarkai-ui-scope .p-5{padding:1.25rem}.embarkai-ui-scope .p-6{padding:1.5rem}.embarkai-ui-scope .p-8{padding:2rem}.embarkai-ui-scope .p-\\[2px\\]{padding:2px}.embarkai-ui-scope .p-\\[var\\(--ui-kit-gap\\)\\]{padding:var(--ui-kit-gap)}.embarkai-ui-scope .p-\\[var\\(--ui-kit-pd\\)\\]{padding:var(--ui-kit-pd)}.embarkai-ui-scope .px-0{padding-left:0;padding-right:0}.embarkai-ui-scope .px-1{padding-left:.25rem;padding-right:.25rem}.embarkai-ui-scope .px-2{padding-left:.5rem;padding-right:.5rem}.embarkai-ui-scope .px-3{padding-left:.75rem;padding-right:.75rem}.embarkai-ui-scope .px-4{padding-left:1rem;padding-right:1rem}.embarkai-ui-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.embarkai-ui-scope .px-8{padding-left:2rem;padding-right:2rem}.embarkai-ui-scope .px-\\[var\\(--ui-kit-gap\\)\\]{padding-left:var(--ui-kit-gap);padding-right:var(--ui-kit-gap)}.embarkai-ui-scope .px-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .py-0{padding-top:0;padding-bottom:0}.embarkai-ui-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.embarkai-ui-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.embarkai-ui-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.embarkai-ui-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.embarkai-ui-scope .py-4{padding-top:1rem;padding-bottom:1rem}.embarkai-ui-scope .py-8{padding-top:2rem;padding-bottom:2rem}.embarkai-ui-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.embarkai-ui-scope .py-\\[var\\(--ui-kit-gap\\)\\]{padding-top:var(--ui-kit-gap);padding-bottom:var(--ui-kit-gap)}.embarkai-ui-scope .py-\\[var\\(--ui-kit-pd\\)\\]{padding-top:var(--ui-kit-pd);padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pb-2{padding-bottom:.5rem}.embarkai-ui-scope .pb-5{padding-bottom:1.25rem}.embarkai-ui-scope .pb-6{padding-bottom:1.5rem}.embarkai-ui-scope .pb-\\[var\\(--ui-kit-pd\\)\\]{padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pl-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd)}.embarkai-ui-scope .pr-8{padding-right:2rem}.embarkai-ui-scope .pt-3{padding-top:.75rem}.embarkai-ui-scope .pt-4{padding-top:1rem}.embarkai-ui-scope .pt-5{padding-top:1.25rem}.embarkai-ui-scope .text-left{text-align:left}.embarkai-ui-scope .text-center{text-align:center}.embarkai-ui-scope .text-right{text-align:right}.embarkai-ui-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.embarkai-ui-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.embarkai-ui-scope .text-2xl{font-size:1.5rem;line-height:2rem}.embarkai-ui-scope .text-\\[10px\\]{font-size:10px}.embarkai-ui-scope .text-\\[14px\\]{font-size:14px}.embarkai-ui-scope .text-\\[16px\\]{font-size:16px}.embarkai-ui-scope .text-\\[8px\\]{font-size:8px}.embarkai-ui-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.embarkai-ui-scope .text-sm{font-size:.875rem;line-height:1.25rem}.embarkai-ui-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.embarkai-ui-scope .text-xs{font-size:.75rem;line-height:1rem}.embarkai-ui-scope .font-bold{font-weight:700}.embarkai-ui-scope .font-medium{font-weight:500}.embarkai-ui-scope .font-normal{font-weight:400}.embarkai-ui-scope .font-semibold{font-weight:600}.embarkai-ui-scope .uppercase{text-transform:uppercase}.embarkai-ui-scope .lowercase{text-transform:lowercase}.embarkai-ui-scope .leading-3{line-height:.75rem}.embarkai-ui-scope .leading-4{line-height:1rem}.embarkai-ui-scope .leading-5{line-height:1.25rem}.embarkai-ui-scope .leading-6{line-height:1.5rem}.embarkai-ui-scope .leading-7{line-height:1.75rem}.embarkai-ui-scope .leading-8{line-height:2rem}.embarkai-ui-scope .leading-\\[8px\\]{line-height:8px}.embarkai-ui-scope .leading-none{line-height:1}.embarkai-ui-scope .leading-tight{line-height:1.25}.embarkai-ui-scope .tracking-\\[0\\.3em\\]{letter-spacing:.3em}.embarkai-ui-scope .tracking-tight{letter-spacing:-.025em}.embarkai-ui-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-error\\)\\]{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-success\\)\\]{color:var(--ui-kit-bg-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-warning\\)\\]{color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-error\\)\\]{color:var(--ui-kit-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg\\)\\]{color:var(--ui-kit-fg)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-inverted\\)\\]{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-muted\\)\\]{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-info\\)\\]{color:var(--ui-kit-info)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-primary\\)\\]{color:var(--ui-kit-primary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-success\\)\\]{color:var(--ui-kit-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-text-secondary\\)\\]{color:var(--ui-kit-text-secondary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-warning\\)\\]{color:var(--ui-kit-warning)}.embarkai-ui-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.embarkai-ui-scope .underline{text-decoration-line:underline}.embarkai-ui-scope .underline-offset-2{text-underline-offset:2px}.embarkai-ui-scope .underline-offset-4{text-underline-offset:4px}.embarkai-ui-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope .opacity-0{opacity:0}.embarkai-ui-scope .opacity-100{opacity:1}.embarkai-ui-scope .opacity-50{opacity:.5}.embarkai-ui-scope .opacity-60{opacity:.6}.embarkai-ui-scope .shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.embarkai-ui-scope .shadow,.embarkai-ui-scope .shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.embarkai-ui-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .outline{outline-style:solid}.embarkai-ui-scope .blur{--tw-blur:blur(8px)}.embarkai-ui-scope .blur,.embarkai-ui-scope .grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .grayscale{--tw-grayscale:grayscale(100%)}.embarkai-ui-scope .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-none{transition-property:none}.embarkai-ui-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .duration-200{transition-duration:.2s}.embarkai-ui-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.embarkai-ui-scope{--ui-kit-ff:var(--embark-ui-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--ui-kit-maw:var(--embark-ui-maw,384px);--ui-kit-pd:var(--embark-ui-pd,12px);--ui-kit-gap:var(--embark-ui-gap,10px);--ui-kit-bdrs:var(--embark-ui-bdrs,20px);--ui-kit-el-bdrs:var(--embark-ui-element-bdrs,10px);--ui-kit-backdrop-blur:var(--embark-ui-backdrop-blur,10px)}.embarkai-ui-scope[data-current-theme-mode=light]{--ui-kit-overlay:var(--embark-ui-overlay,hsla(0,0%,100%,.8));--ui-kit-bg:var(--embark-ui-bg,#fff);--ui-kit-fg:var(--embark-ui-fg,#000);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#fff);--ui-kit-fg-muted:var(--embark-ui-fg-muted,rgba(0,0,0,.6));--ui-kit-primary:var(--embark-ui-primary,#000);--ui-kit-primary-h:var(--embark-ui-primary-h,rgba(0,0,0,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,rgba(0,0,0,.6));--ui-kit-secondary:var(--embark-ui-secondary,#e4e4e4);--ui-kit-secondary-h:var(--embark-ui-secondary-h,hsla(0,0%,89%,.8));--ui-kit-secondary-a:var(--embark-ui-secondary-a,hsla(0,0%,89%,.6));--ui-kit-bd:var(--embark-ui-bd,#ebebeb);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#a9a9a9);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope[data-current-theme-mode=dark]{--ui-kit-overlay:var(--embark-ui-overlay,rgba(0,0,0,.8));--ui-kit-bg:var(--embark-ui-bg,#1a1a1a);--ui-kit-fg:var(--embark-ui-fg,#fff);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#000);--ui-kit-fg-muted:var(--embark-ui-fg-muted,hsla(0,0%,100%,.6));--ui-kit-primary:var(--embark-ui-primary,#fff);--ui-kit-primary-h:var(--embark-ui-primary-h,hsla(0,0%,100%,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,hsla(0,0%,100%,.6));--ui-kit-secondary:var(--embark-ui-secondary,#2a2a2a);--ui-kit-secondary-h:var(--embark-ui-secondary-h,rgba(42,42,42,.6));--ui-kit-secondary-a:var(--embark-ui-secondary-a,rgba(42,42,42,.4));--ui-kit-bd:var(--embark-ui-bd,#3a3a3a);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#4a4a4a);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope,.embarkai-ui-scope *{margin:0;box-sizing:border-box;font-family:var(--ui-kit-ff);font-optical-sizing:auto;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent;-ms-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope button,.embarkai-ui-scope h1,.embarkai-ui-scope h2,.embarkai-ui-scope h3,.embarkai-ui-scope h4,.embarkai-ui-scope h5,.embarkai-ui-scope h6,.embarkai-ui-scope input,.embarkai-ui-scope p,.embarkai-ui-scope select,.embarkai-ui-scope textarea{font-family:var(--ui-kit-ff)!important;margin:0}.embarkai-ui-scope button,.embarkai-ui-scope input,.embarkai-ui-scope select,.embarkai-ui-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.embarkai-ui-scope input,.embarkai-ui-scope textarea{font-size:16px!important}.embarkai-ui-scope .account-connect-button{box-shadow:0 4px 20px var(--ui-kit-shadow-c),inset 0 0 0 1px var(--ui-kit-bd);transition:transform .25s ease}.embarkai-ui-scope .account-connect-button:hover{transform:scale(1.02)}.embarkai-ui-scope .account-connect-button:active{transform:scale(1)}@keyframes lumia-mobile-dialog-fade-in{0%{opacity:0;transform:translateY(64px)}to{opacity:1;transform:translateY(0)}}@keyframes lumia-mobile-dialog-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(64px)}}.embarkai-ui-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-mobile-dialog-out{animation:lumia-mobile-dialog-fade-out 375ms ease}@keyframes lumia-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lumia-dialog-fade-out{0%{opacity:1}to{opacity:0}}.embarkai-ui-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.embarkai-ui-scope .list-scrollbar-y{width:100%;padding-right:var(--ui-kit-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--ui-kit-scrollbar-mah,300px)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--ui-kit-bd)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.embarkai-ui-scope .noScrollbars::-webkit-scrollbar{display:none}.embarkai-ui-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}@keyframes rotateShine{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.embarkai-ui-scope .button-shine-outline{position:absolute;top:0;left:0;width:100%;height:100%;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;-webkit-mask-composite:xor;mask-composite:exclude}.embarkai-ui-scope .button-shine-outline-shiner{pointer-events:none;position:absolute;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0,var(--ui-kit-fg) 8%,transparent 24%);animation:rotateShine 3s linear infinite}.embarkai-ui-scope .file\\:mr-\\[var\\(--ui-kit-gap\\)\\]::file-selector-button{margin-right:var(--ui-kit-gap)}.embarkai-ui-scope .file\\:h-12::file-selector-button{height:3rem}.embarkai-ui-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.embarkai-ui-scope .file\\:rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]::file-selector-button{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .file\\:border-0::file-selector-button{border-width:0}.embarkai-ui-scope .file\\:bg-\\[var\\(--ui-kit-primary\\)\\]::file-selector-button{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.embarkai-ui-scope .file\\:px-\\[var\\(--ui-kit-pd\\)\\]::file-selector-button{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .file\\:text-\\[16px\\]::file-selector-button{font-size:16px}.embarkai-ui-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.embarkai-ui-scope .file\\:font-medium::file-selector-button{font-weight:500}.embarkai-ui-scope .file\\:text-\\[var\\(--ui-kit-fg-inverted\\)\\]::file-selector-button{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::-moz-placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .focus-within\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus-within{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .hover\\:bg-\\[\\#002c15\\]:hover{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#081f2c\\]:hover{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f0f6f8\\]:hover{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f3ba2f\\]:hover{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary-h\\)\\]:hover{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[var\\(--ui-kit-fg\\)\\]:hover{color:var(--ui-kit-fg)}.embarkai-ui-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:underline:hover{text-decoration-line:underline}.embarkai-ui-scope .hover\\:opacity-80:hover{opacity:.8}.embarkai-ui-scope .hover\\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.embarkai-ui-scope .focus\\:border-\\[var\\(--ui-kit-primary\\)\\]:focus{border-color:var(--ui-kit-primary)}.embarkai-ui-scope .focus\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus\\:bg-transparent:focus{background-color:transparent}.embarkai-ui-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:ring-0:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-\\[2px\\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.embarkai-ui-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.embarkai-ui-scope .active\\:bg-\\[\\#f3ba2f\\]:active{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:active{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .active\\:opacity-60:active{opacity:.6}.embarkai-ui-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.embarkai-ui-scope .disabled\\:cursor-default:disabled{cursor:default}.embarkai-ui-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.embarkai-ui-scope .disabled\\:opacity-50:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover:disabled{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .disabled\\:hover\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:hover:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:hover\\:opacity-50:hover:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:active\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:active:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:active\\:opacity-50:active:disabled{opacity:.5}.embarkai-ui-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.embarkai-ui-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.embarkai-ui-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.embarkai-ui-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--ui-kit-bd-intense\\)\\][data-state=checked]{border-color:var(--ui-kit-bd-intense)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--ui-kit-secondary\\)\\][data-state=checked]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--ui-kit-fg\\)\\][data-state=checked]{color:var(--ui-kit-fg)}.embarkai-ui-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*){overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--ui-kit-gap\\)\\][data-slot=select-value]>*){gap:var(--ui-kit-gap)}@media (min-width:640px){.embarkai-ui-scope .sm\\:flex-row{flex-direction:row}.embarkai-ui-scope .sm\\:justify-end{justify-content:flex-end}.embarkai-ui-scope :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.embarkai-ui-scope .md\\:h-8{height:2rem}.embarkai-ui-scope .md\\:w-8{width:2rem}.embarkai-ui-scope .md\\:gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}.embarkai-ui-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}`;
30363
+ var built_default = `.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.embarkai-ui-scope .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.embarkai-ui-scope .pointer-events-none{pointer-events:none}.embarkai-ui-scope .pointer-events-auto{pointer-events:auto}.embarkai-ui-scope .visible{visibility:visible}.embarkai-ui-scope .invisible{visibility:hidden}.embarkai-ui-scope .static{position:static}.embarkai-ui-scope .fixed{position:fixed}.embarkai-ui-scope .absolute{position:absolute}.embarkai-ui-scope .relative{position:relative}.embarkai-ui-scope .inset-0{inset:0}.embarkai-ui-scope .-right-1{right:-.25rem}.embarkai-ui-scope .-right-2{right:-.5rem}.embarkai-ui-scope .-top-1{top:-.25rem}.embarkai-ui-scope .-top-2{top:-.5rem}.embarkai-ui-scope .bottom-0{bottom:0}.embarkai-ui-scope .bottom-full{bottom:100%}.embarkai-ui-scope .left-0{left:0}.embarkai-ui-scope .left-1\\/2{left:50%}.embarkai-ui-scope .left-4{left:1rem}.embarkai-ui-scope .right-0{right:0}.embarkai-ui-scope .right-2{right:.5rem}.embarkai-ui-scope .right-3{right:.75rem}.embarkai-ui-scope .right-4{right:1rem}.embarkai-ui-scope .right-\\[var\\(--ui-kit-pd\\)\\]{right:var(--ui-kit-pd)}.embarkai-ui-scope .right-full{right:100%}.embarkai-ui-scope .top-0{top:0}.embarkai-ui-scope .top-1\\/2{top:50%}.embarkai-ui-scope .top-2{top:.5rem}.embarkai-ui-scope .top-4{top:1rem}.embarkai-ui-scope .top-\\[var\\(--ui-kit-pd\\)\\]{top:var(--ui-kit-pd)}.embarkai-ui-scope .z-10{z-index:10}.embarkai-ui-scope .z-50{z-index:50}.embarkai-ui-scope .z-\\[9998\\]{z-index:9998}.embarkai-ui-scope .z-\\[9999\\]{z-index:9999}.embarkai-ui-scope .-m-px{margin:-1px}.embarkai-ui-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.embarkai-ui-scope .mx-auto{margin-left:auto;margin-right:auto}.embarkai-ui-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.embarkai-ui-scope .mb-1{margin-bottom:.25rem}.embarkai-ui-scope .mb-2{margin-bottom:.5rem}.embarkai-ui-scope .mb-3{margin-bottom:.75rem}.embarkai-ui-scope .mb-4{margin-bottom:1rem}.embarkai-ui-scope .ml-1{margin-left:.25rem}.embarkai-ui-scope .ml-2{margin-left:.5rem}.embarkai-ui-scope .ml-auto{margin-left:auto}.embarkai-ui-scope .mr-1{margin-right:.25rem}.embarkai-ui-scope .mt-0\\.5{margin-top:.125rem}.embarkai-ui-scope .mt-1{margin-top:.25rem}.embarkai-ui-scope .mt-2{margin-top:.5rem}.embarkai-ui-scope .mt-4{margin-top:1rem}.embarkai-ui-scope .block{display:block}.embarkai-ui-scope .inline-block{display:inline-block}.embarkai-ui-scope .inline{display:inline}.embarkai-ui-scope .flex{display:flex}.embarkai-ui-scope .inline-flex{display:inline-flex}.embarkai-ui-scope .table{display:table}.embarkai-ui-scope .grid{display:grid}.embarkai-ui-scope .hidden{display:none}.embarkai-ui-scope .aspect-square{aspect-ratio:1/1}.embarkai-ui-scope .size-4{width:1rem;height:1rem}.embarkai-ui-scope .size-8{width:2rem;height:2rem}.embarkai-ui-scope .size-auto{width:auto;height:auto}.embarkai-ui-scope .h-0{height:0}.embarkai-ui-scope .h-1{height:.25rem}.embarkai-ui-scope .h-10{height:2.5rem}.embarkai-ui-scope .h-12{height:3rem}.embarkai-ui-scope .h-16{height:4rem}.embarkai-ui-scope .h-3{height:.75rem}.embarkai-ui-scope .h-3\\.5{height:.875rem}.embarkai-ui-scope .h-4{height:1rem}.embarkai-ui-scope .h-48{height:12rem}.embarkai-ui-scope .h-5{height:1.25rem}.embarkai-ui-scope .h-6{height:1.5rem}.embarkai-ui-scope .h-7{height:1.75rem}.embarkai-ui-scope .h-8{height:2rem}.embarkai-ui-scope .h-\\[100dvh\\]{height:100dvh}.embarkai-ui-scope .h-\\[48px\\]{height:48px}.embarkai-ui-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.embarkai-ui-scope .h-auto{height:auto}.embarkai-ui-scope .h-fit{height:-moz-fit-content;height:fit-content}.embarkai-ui-scope .h-full{height:100%}.embarkai-ui-scope .h-px{height:1px}.embarkai-ui-scope .max-h-96{max-height:24rem}.embarkai-ui-scope .max-h-\\[95dvh\\]{max-height:95dvh}.embarkai-ui-scope .min-h-10{min-height:2.5rem}.embarkai-ui-scope .min-h-12{min-height:3rem}.embarkai-ui-scope .w-0{width:0}.embarkai-ui-scope .w-1{width:.25rem}.embarkai-ui-scope .w-1\\/2{width:50%}.embarkai-ui-scope .w-10{width:2.5rem}.embarkai-ui-scope .w-12{width:3rem}.embarkai-ui-scope .w-16{width:4rem}.embarkai-ui-scope .w-3{width:.75rem}.embarkai-ui-scope .w-3\\.5{width:.875rem}.embarkai-ui-scope .w-4{width:1rem}.embarkai-ui-scope .w-48{width:12rem}.embarkai-ui-scope .w-5{width:1.25rem}.embarkai-ui-scope .w-6{width:1.5rem}.embarkai-ui-scope .w-7{width:1.75rem}.embarkai-ui-scope .w-8{width:2rem}.embarkai-ui-scope .w-\\[100dvw\\]{width:100dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[var\\(--ui-kit-maw\\)\\]{width:var(--ui-kit-maw)}.embarkai-ui-scope .w-fit{width:-moz-fit-content;width:fit-content}.embarkai-ui-scope .w-full{width:100%}.embarkai-ui-scope .w-px{width:1px}.embarkai-ui-scope .min-w-0{min-width:0}.embarkai-ui-scope .min-w-10{min-width:2.5rem}.embarkai-ui-scope .min-w-16{min-width:4rem}.embarkai-ui-scope .min-w-\\[256px\\]{min-width:256px}.embarkai-ui-scope .min-w-\\[8rem\\]{min-width:8rem}.embarkai-ui-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.embarkai-ui-scope .max-w-\\[100px\\]{max-width:100px}.embarkai-ui-scope .max-w-\\[144px\\]{max-width:144px}.embarkai-ui-scope .max-w-\\[150px\\]{max-width:150px}.embarkai-ui-scope .max-w-\\[160px\\]{max-width:160px}.embarkai-ui-scope .max-w-\\[256px\\]{max-width:256px}.embarkai-ui-scope .max-w-\\[680px\\]{max-width:680px}.embarkai-ui-scope .max-w-\\[calc\\(50\\%-8px\\)\\]{max-width:calc(50% - 8px)}.embarkai-ui-scope .max-w-full{max-width:100%}.embarkai-ui-scope .max-w-sm{max-width:24rem}.embarkai-ui-scope .flex-1{flex:1 1 0%}.embarkai-ui-scope .flex-none{flex:none}.embarkai-ui-scope .flex-shrink-0,.embarkai-ui-scope .shrink-0{flex-shrink:0}.embarkai-ui-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.embarkai-ui-scope .-translate-x-1\\/2,.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{--tw-translate-x:calc(var(--ui-kit-gap)*-1)}.embarkai-ui-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.embarkai-ui-scope .-translate-y-1\\/2,.embarkai-ui-scope .-translate-y-1\\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-y-1\\/3{--tw-translate-y:-33.333333%}.embarkai-ui-scope .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes glow-warning{0%,to{transform:scale(1);box-shadow:0 0 16px var(--ui-kit-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--ui-kit-bg-warning)}}.embarkai-ui-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse{50%{opacity:.5}}.embarkai-ui-scope .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.embarkai-ui-scope .animate-spin{animation:spin 1s linear infinite}.embarkai-ui-scope .cursor-default{cursor:default}.embarkai-ui-scope .cursor-help{cursor:help}.embarkai-ui-scope .cursor-pointer{cursor:pointer}.embarkai-ui-scope .cursor-text{cursor:text}.embarkai-ui-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.embarkai-ui-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.embarkai-ui-scope .resize{resize:both}.embarkai-ui-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.embarkai-ui-scope .list-inside{list-style-position:inside}.embarkai-ui-scope .list-disc{list-style-type:disc}.embarkai-ui-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.embarkai-ui-scope .flex-col{flex-direction:column}.embarkai-ui-scope .flex-col-reverse{flex-direction:column-reverse}.embarkai-ui-scope .flex-wrap{flex-wrap:wrap}.embarkai-ui-scope .place-content-center{place-content:center}.embarkai-ui-scope .items-start{align-items:flex-start}.embarkai-ui-scope .items-end{align-items:flex-end}.embarkai-ui-scope .items-center{align-items:center}.embarkai-ui-scope .justify-start{justify-content:flex-start}.embarkai-ui-scope .justify-end{justify-content:flex-end}.embarkai-ui-scope .justify-center{justify-content:center}.embarkai-ui-scope .justify-between{justify-content:space-between}.embarkai-ui-scope .gap-0{gap:0}.embarkai-ui-scope .gap-1{gap:.25rem}.embarkai-ui-scope .gap-2{gap:.5rem}.embarkai-ui-scope .gap-3{gap:.75rem}.embarkai-ui-scope .gap-4{gap:1rem}.embarkai-ui-scope .gap-\\[10px\\]{gap:10px}.embarkai-ui-scope .gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope :is(.space-x-1>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.embarkai-ui-scope .overflow-hidden{overflow:hidden}.embarkai-ui-scope .overflow-y-auto{overflow-y:auto}.embarkai-ui-scope .overflow-x-hidden{overflow-x:hidden}.embarkai-ui-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embarkai-ui-scope .text-ellipsis{text-overflow:ellipsis}.embarkai-ui-scope .whitespace-nowrap{white-space:nowrap}.embarkai-ui-scope .whitespace-pre-line{white-space:pre-line}.embarkai-ui-scope .whitespace-pre-wrap{white-space:pre-wrap}.embarkai-ui-scope .break-normal{overflow-wrap:normal;word-break:normal}.embarkai-ui-scope .break-words{overflow-wrap:break-word}.embarkai-ui-scope .break-all{word-break:break-all}.embarkai-ui-scope .rounded{border-radius:.25rem}.embarkai-ui-scope .rounded-\\[10px\\]{border-radius:10px}.embarkai-ui-scope .rounded-\\[8px\\]{border-radius:8px}.embarkai-ui-scope .rounded-\\[calc\\(var\\(--ui-kit-el-bdrs\\)_\\/_2\\)\\]{border-radius:calc(var(--ui-kit-el-bdrs)/2)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-bdrs\\)\\]{border-radius:var(--ui-kit-bdrs)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .rounded-full{border-radius:9999px}.embarkai-ui-scope .rounded-lg{border-radius:.5rem}.embarkai-ui-scope .rounded-md{border-radius:.375rem}.embarkai-ui-scope .rounded-xl{border-radius:.75rem}.embarkai-ui-scope .border{border-width:1px}.embarkai-ui-scope .border-0{border-width:0}.embarkai-ui-scope .border-2{border-width:2px}.embarkai-ui-scope .border-b{border-bottom-width:1px}.embarkai-ui-scope .border-t{border-top-width:1px}.embarkai-ui-scope .border-dashed{border-style:dashed}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bd\\)\\]{border-color:var(--ui-kit-bd)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-error\\)\\]{border-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-success\\)\\]{border-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-warning\\)\\]{border-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-error\\)\\]{border-color:var(--ui-kit-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-secondary\\)\\]{border-color:var(--ui-kit-secondary)}.embarkai-ui-scope .border-current{border-color:currentColor}.embarkai-ui-scope .border-transparent{border-color:transparent}.embarkai-ui-scope .border-t-transparent{border-top-color:transparent}.embarkai-ui-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f0f6f8\\]{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg\\)\\]{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-error\\)\\]{background-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-info\\)\\]{background-color:var(--ui-kit-bg-info)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-secondary\\)\\]{background-color:var(--ui-kit-bg-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-success\\)\\]{background-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-warning\\)\\]{background-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-fg\\)\\]{background-color:var(--ui-kit-fg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-overlay\\)\\]{background-color:var(--ui-kit-overlay)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-primary\\)\\]{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary\\)\\]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary-h\\)\\]{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-transparent{background-color:transparent}.embarkai-ui-scope .fill-\\[var\\(--ui-kit-bg-warning\\)\\]{fill:var(--ui-kit-bg-warning)}.embarkai-ui-scope .object-contain{-o-object-fit:contain;object-fit:contain}.embarkai-ui-scope .object-cover{-o-object-fit:cover;object-fit:cover}.embarkai-ui-scope .p-0{padding:0}.embarkai-ui-scope .p-1{padding:.25rem}.embarkai-ui-scope .p-2{padding:.5rem}.embarkai-ui-scope .p-3{padding:.75rem}.embarkai-ui-scope .p-4{padding:1rem}.embarkai-ui-scope .p-5{padding:1.25rem}.embarkai-ui-scope .p-6{padding:1.5rem}.embarkai-ui-scope .p-8{padding:2rem}.embarkai-ui-scope .p-\\[12px\\]{padding:12px}.embarkai-ui-scope .p-\\[2px\\]{padding:2px}.embarkai-ui-scope .p-\\[var\\(--ui-kit-gap\\)\\]{padding:var(--ui-kit-gap)}.embarkai-ui-scope .p-\\[var\\(--ui-kit-pd\\)\\]{padding:var(--ui-kit-pd)}.embarkai-ui-scope .px-0{padding-left:0;padding-right:0}.embarkai-ui-scope .px-1{padding-left:.25rem;padding-right:.25rem}.embarkai-ui-scope .px-2{padding-left:.5rem;padding-right:.5rem}.embarkai-ui-scope .px-3{padding-left:.75rem;padding-right:.75rem}.embarkai-ui-scope .px-4{padding-left:1rem;padding-right:1rem}.embarkai-ui-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.embarkai-ui-scope .px-8{padding-left:2rem;padding-right:2rem}.embarkai-ui-scope .px-\\[var\\(--ui-kit-gap\\)\\]{padding-left:var(--ui-kit-gap);padding-right:var(--ui-kit-gap)}.embarkai-ui-scope .px-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .py-0{padding-top:0;padding-bottom:0}.embarkai-ui-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.embarkai-ui-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.embarkai-ui-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.embarkai-ui-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.embarkai-ui-scope .py-4{padding-top:1rem;padding-bottom:1rem}.embarkai-ui-scope .py-8{padding-top:2rem;padding-bottom:2rem}.embarkai-ui-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.embarkai-ui-scope .py-\\[var\\(--ui-kit-gap\\)\\]{padding-top:var(--ui-kit-gap);padding-bottom:var(--ui-kit-gap)}.embarkai-ui-scope .py-\\[var\\(--ui-kit-pd\\)\\]{padding-top:var(--ui-kit-pd);padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pb-2{padding-bottom:.5rem}.embarkai-ui-scope .pb-5{padding-bottom:1.25rem}.embarkai-ui-scope .pb-6{padding-bottom:1.5rem}.embarkai-ui-scope .pb-\\[var\\(--ui-kit-pd\\)\\]{padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pl-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd)}.embarkai-ui-scope .pr-8{padding-right:2rem}.embarkai-ui-scope .pt-3{padding-top:.75rem}.embarkai-ui-scope .pt-4{padding-top:1rem}.embarkai-ui-scope .pt-5{padding-top:1.25rem}.embarkai-ui-scope .text-left{text-align:left}.embarkai-ui-scope .text-center{text-align:center}.embarkai-ui-scope .text-right{text-align:right}.embarkai-ui-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.embarkai-ui-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.embarkai-ui-scope .text-2xl{font-size:1.5rem;line-height:2rem}.embarkai-ui-scope .text-\\[10px\\]{font-size:10px}.embarkai-ui-scope .text-\\[14px\\]{font-size:14px}.embarkai-ui-scope .text-\\[16px\\]{font-size:16px}.embarkai-ui-scope .text-\\[8px\\]{font-size:8px}.embarkai-ui-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.embarkai-ui-scope .text-sm{font-size:.875rem;line-height:1.25rem}.embarkai-ui-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.embarkai-ui-scope .text-xs{font-size:.75rem;line-height:1rem}.embarkai-ui-scope .font-bold{font-weight:700}.embarkai-ui-scope .font-medium{font-weight:500}.embarkai-ui-scope .font-normal{font-weight:400}.embarkai-ui-scope .font-semibold{font-weight:600}.embarkai-ui-scope .uppercase{text-transform:uppercase}.embarkai-ui-scope .lowercase{text-transform:lowercase}.embarkai-ui-scope .leading-3{line-height:.75rem}.embarkai-ui-scope .leading-4{line-height:1rem}.embarkai-ui-scope .leading-5{line-height:1.25rem}.embarkai-ui-scope .leading-6{line-height:1.5rem}.embarkai-ui-scope .leading-7{line-height:1.75rem}.embarkai-ui-scope .leading-8{line-height:2rem}.embarkai-ui-scope .leading-\\[8px\\]{line-height:8px}.embarkai-ui-scope .leading-none{line-height:1}.embarkai-ui-scope .leading-tight{line-height:1.25}.embarkai-ui-scope .tracking-\\[0\\.3em\\]{letter-spacing:.3em}.embarkai-ui-scope .tracking-tight{letter-spacing:-.025em}.embarkai-ui-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-error\\)\\]{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-success\\)\\]{color:var(--ui-kit-bg-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-warning\\)\\]{color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-error\\)\\]{color:var(--ui-kit-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg\\)\\]{color:var(--ui-kit-fg)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-inverted\\)\\]{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-muted\\)\\]{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-info\\)\\]{color:var(--ui-kit-info)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-primary\\)\\]{color:var(--ui-kit-primary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-success\\)\\]{color:var(--ui-kit-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-text-secondary\\)\\]{color:var(--ui-kit-text-secondary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-warning\\)\\]{color:var(--ui-kit-warning)}.embarkai-ui-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.embarkai-ui-scope .underline{text-decoration-line:underline}.embarkai-ui-scope .underline-offset-2{text-underline-offset:2px}.embarkai-ui-scope .underline-offset-4{text-underline-offset:4px}.embarkai-ui-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope .opacity-0{opacity:0}.embarkai-ui-scope .opacity-100{opacity:1}.embarkai-ui-scope .opacity-50{opacity:.5}.embarkai-ui-scope .opacity-60{opacity:.6}.embarkai-ui-scope .shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.embarkai-ui-scope .shadow,.embarkai-ui-scope .shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.embarkai-ui-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .outline{outline-style:solid}.embarkai-ui-scope .blur{--tw-blur:blur(8px)}.embarkai-ui-scope .blur,.embarkai-ui-scope .grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .grayscale{--tw-grayscale:grayscale(100%)}.embarkai-ui-scope .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-none{transition-property:none}.embarkai-ui-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .duration-200{transition-duration:.2s}.embarkai-ui-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.embarkai-ui-scope{--ui-kit-ff:var(--embark-ui-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--ui-kit-maw:var(--embark-ui-maw,384px);--ui-kit-pd:var(--embark-ui-pd,12px);--ui-kit-gap:var(--embark-ui-gap,10px);--ui-kit-bdrs:var(--embark-ui-bdrs,20px);--ui-kit-el-bdrs:var(--embark-ui-element-bdrs,10px);--ui-kit-backdrop-blur:var(--embark-ui-backdrop-blur,10px)}.embarkai-ui-scope[data-current-theme-mode=light]{--ui-kit-overlay:var(--embark-ui-overlay,hsla(0,0%,100%,.8));--ui-kit-bg:var(--embark-ui-bg,#fff);--ui-kit-fg:var(--embark-ui-fg,#000);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#fff);--ui-kit-fg-muted:var(--embark-ui-fg-muted,rgba(0,0,0,.6));--ui-kit-primary:var(--embark-ui-primary,#000);--ui-kit-primary-h:var(--embark-ui-primary-h,rgba(0,0,0,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,rgba(0,0,0,.6));--ui-kit-secondary:var(--embark-ui-secondary,#e4e4e4);--ui-kit-secondary-h:var(--embark-ui-secondary-h,hsla(0,0%,89%,.8));--ui-kit-secondary-a:var(--embark-ui-secondary-a,hsla(0,0%,89%,.6));--ui-kit-bd:var(--embark-ui-bd,#ebebeb);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#a9a9a9);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope[data-current-theme-mode=dark]{--ui-kit-overlay:var(--embark-ui-overlay,rgba(0,0,0,.8));--ui-kit-bg:var(--embark-ui-bg,#1a1a1a);--ui-kit-fg:var(--embark-ui-fg,#fff);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#000);--ui-kit-fg-muted:var(--embark-ui-fg-muted,hsla(0,0%,100%,.6));--ui-kit-primary:var(--embark-ui-primary,#fff);--ui-kit-primary-h:var(--embark-ui-primary-h,hsla(0,0%,100%,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,hsla(0,0%,100%,.6));--ui-kit-secondary:var(--embark-ui-secondary,#2a2a2a);--ui-kit-secondary-h:var(--embark-ui-secondary-h,rgba(42,42,42,.6));--ui-kit-secondary-a:var(--embark-ui-secondary-a,rgba(42,42,42,.4));--ui-kit-bd:var(--embark-ui-bd,#3a3a3a);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#4a4a4a);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope,.embarkai-ui-scope *{margin:0;box-sizing:border-box;font-family:var(--ui-kit-ff);font-optical-sizing:auto;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent;-ms-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope button,.embarkai-ui-scope h1,.embarkai-ui-scope h2,.embarkai-ui-scope h3,.embarkai-ui-scope h4,.embarkai-ui-scope h5,.embarkai-ui-scope h6,.embarkai-ui-scope input,.embarkai-ui-scope p,.embarkai-ui-scope select,.embarkai-ui-scope textarea{font-family:var(--ui-kit-ff)!important;margin:0}.embarkai-ui-scope button,.embarkai-ui-scope input,.embarkai-ui-scope select,.embarkai-ui-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.embarkai-ui-scope input,.embarkai-ui-scope textarea{font-size:16px!important}.embarkai-ui-scope .account-connect-button{box-shadow:0 4px 20px var(--ui-kit-shadow-c),inset 0 0 0 1px var(--ui-kit-bd);transition:transform .25s ease}.embarkai-ui-scope .account-connect-button:hover{transform:scale(1.02)}.embarkai-ui-scope .account-connect-button:active{transform:scale(1)}@keyframes lumia-mobile-dialog-fade-in{0%{opacity:0;transform:translateY(64px)}to{opacity:1;transform:translateY(0)}}@keyframes lumia-mobile-dialog-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(64px)}}.embarkai-ui-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-mobile-dialog-out{animation:lumia-mobile-dialog-fade-out 375ms ease}@keyframes lumia-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lumia-dialog-fade-out{0%{opacity:1}to{opacity:0}}.embarkai-ui-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.embarkai-ui-scope .list-scrollbar-y{width:100%;padding-right:var(--ui-kit-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--ui-kit-scrollbar-mah,300px)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--ui-kit-bd)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.embarkai-ui-scope .noScrollbars::-webkit-scrollbar{display:none}.embarkai-ui-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}@keyframes rotateShine{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.embarkai-ui-scope .button-shine-outline{position:absolute;top:0;left:0;width:100%;height:100%;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;-webkit-mask-composite:xor;mask-composite:exclude}.embarkai-ui-scope .button-shine-outline-shiner{pointer-events:none;position:absolute;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0,var(--ui-kit-fg) 8%,transparent 24%);animation:rotateShine 3s linear infinite}.embarkai-ui-scope .file\\:mr-\\[var\\(--ui-kit-gap\\)\\]::file-selector-button{margin-right:var(--ui-kit-gap)}.embarkai-ui-scope .file\\:h-12::file-selector-button{height:3rem}.embarkai-ui-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.embarkai-ui-scope .file\\:rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]::file-selector-button{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .file\\:border-0::file-selector-button{border-width:0}.embarkai-ui-scope .file\\:bg-\\[var\\(--ui-kit-primary\\)\\]::file-selector-button{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.embarkai-ui-scope .file\\:px-\\[var\\(--ui-kit-pd\\)\\]::file-selector-button{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .file\\:text-\\[16px\\]::file-selector-button{font-size:16px}.embarkai-ui-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.embarkai-ui-scope .file\\:font-medium::file-selector-button{font-weight:500}.embarkai-ui-scope .file\\:text-\\[var\\(--ui-kit-fg-inverted\\)\\]::file-selector-button{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::-moz-placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .focus-within\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus-within{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .hover\\:bg-\\[\\#002c15\\]:hover{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#081f2c\\]:hover{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f0f6f8\\]:hover{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f3ba2f\\]:hover{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary-h\\)\\]:hover{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[var\\(--ui-kit-fg\\)\\]:hover{color:var(--ui-kit-fg)}.embarkai-ui-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:underline:hover{text-decoration-line:underline}.embarkai-ui-scope .hover\\:opacity-80:hover{opacity:.8}.embarkai-ui-scope .hover\\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.embarkai-ui-scope .focus\\:border-\\[var\\(--ui-kit-primary\\)\\]:focus{border-color:var(--ui-kit-primary)}.embarkai-ui-scope .focus\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus\\:bg-transparent:focus{background-color:transparent}.embarkai-ui-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:ring-0:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-\\[2px\\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.embarkai-ui-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.embarkai-ui-scope .active\\:bg-\\[\\#f3ba2f\\]:active{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:active{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .active\\:opacity-60:active{opacity:.6}.embarkai-ui-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.embarkai-ui-scope .disabled\\:cursor-default:disabled{cursor:default}.embarkai-ui-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.embarkai-ui-scope .disabled\\:opacity-50:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover:disabled{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .disabled\\:hover\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:hover:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:hover\\:opacity-50:hover:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:active\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:active:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:active\\:opacity-50:active:disabled{opacity:.5}.embarkai-ui-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.embarkai-ui-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.embarkai-ui-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.embarkai-ui-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--ui-kit-bd-intense\\)\\][data-state=checked]{border-color:var(--ui-kit-bd-intense)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--ui-kit-secondary\\)\\][data-state=checked]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--ui-kit-fg\\)\\][data-state=checked]{color:var(--ui-kit-fg)}.embarkai-ui-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*){overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--ui-kit-gap\\)\\][data-slot=select-value]>*){gap:var(--ui-kit-gap)}@media (min-width:640px){.embarkai-ui-scope .sm\\:flex-row{flex-direction:row}.embarkai-ui-scope .sm\\:justify-end{justify-content:flex-end}.embarkai-ui-scope :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.embarkai-ui-scope .md\\:h-8{height:2rem}.embarkai-ui-scope .md\\:w-8{width:2rem}.embarkai-ui-scope .md\\:gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}.embarkai-ui-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}`;
29474
30364
 
29475
30365
  // src/index.ts
29476
30366
  init_ProviderContext();
@@ -29490,7 +30380,7 @@ init_useLayoutStore();
29490
30380
  init_pro_mode();
29491
30381
  init_utils2();
29492
30382
  import { Cloud as Cloud4, Laptop as Laptop2, Loader as Loader31, Shield as Shield3 } from "lucide-react";
29493
- import { useEffect as useEffect56, useMemo as useMemo18 } from "react";
30383
+ import { useEffect as useEffect57, useMemo as useMemo18 } from "react";
29494
30384
  import { Fragment as Fragment46, jsx as jsx127, jsxs as jsxs113 } from "react/jsx-runtime";
29495
30385
  function getFormattedStatus(label, status, showStatus) {
29496
30386
  const isStatus = showStatus && status && status !== "idle" && status !== "ready";
@@ -29510,7 +30400,7 @@ function ConnectWalletButton(props) {
29510
30400
  const colorMode = useLayoutStore((st) => st.colorMode);
29511
30401
  const { session, address, hasServerVault, isLoading, isIframeReady, status, setUsePaymaster } = useSession();
29512
30402
  const connectButtonLabel = getFormattedStatus(label || "Connect", status, isIframeReady);
29513
- useEffect56(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
30403
+ useEffect57(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
29514
30404
  const { data: profile, isLoading: isProfileLoading } = useUserProfile();
29515
30405
  const displayName = profile?.nicknameDisplay || profile?.displayName || jwtTokenManager2.getDisplayName();
29516
30406
  const indicators = useMemo18(() => {
@@ -30156,13 +31046,13 @@ var Hash = ({
30156
31046
 
30157
31047
  // src/internal/components/TransactionsMenu/TransactionsList.tsx
30158
31048
  init_base2();
30159
- import { useEffect as useEffect58, useState as useState32 } from "react";
31049
+ import { useEffect as useEffect59, useState as useState32 } from "react";
30160
31050
  import { jsx as jsx133, jsxs as jsxs117 } from "react/jsx-runtime";
30161
31051
  var TransactionsList = ({ address, itemsCount = 10 }) => {
30162
31052
  const [transactions, setTransactions] = useState32([]);
30163
31053
  const [loading, setLoading] = useState32(true);
30164
31054
  const [error, setError] = useState32(null);
30165
- useEffect58(() => {
31055
+ useEffect59(() => {
30166
31056
  const fetchTransactions2 = async () => {
30167
31057
  try {
30168
31058
  setLoading(true);
@@ -31025,8 +31915,8 @@ function useSmartAccountTransactions() {
31025
31915
  // src/index.ts
31026
31916
  init_iframe_manager();
31027
31917
  init_Onboarding();
31918
+ init_Header2();
31028
31919
  init_BuyMenu2();
31029
- init_SendMenu2();
31030
31920
 
31031
31921
  // src/internal/assets/index.ts
31032
31922
  init_networks2();
@@ -31058,8 +31948,6 @@ autorun();
31058
31948
  export {
31059
31949
  AccountAbstractionError,
31060
31950
  Address,
31061
- BRIDGE_MENU_TOUR,
31062
- BUY_MENU_BINANCE_TOUR,
31063
31951
  ConnectWalletButton,
31064
31952
  ErrorCodes,
31065
31953
  Hash,
@@ -31067,10 +31955,10 @@ export {
31067
31955
  LOCAL_STORAGE_I18N_KEY,
31068
31956
  LangToggle,
31069
31957
  NETWORKS_ICONS,
31958
+ ONBOARDING_TOURS,
31070
31959
  PASSPORT_TRANSLATIONS,
31071
31960
  PageKey,
31072
31961
  Provider,
31073
- SEND_MENU_TOUR,
31074
31962
  SessionExpiredError,
31075
31963
  TOKENS_ICONS,
31076
31964
  ThemeToggle,