@lumiapassport/ui-kit 1.14.21 → 1.14.23

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.cjs CHANGED
@@ -3822,28 +3822,32 @@ async function sendUserOperation(session, callTarget, amountWei, innerData = "0x
3822
3822
  try {
3823
3823
  const envCaps = typeof import_meta !== "undefined" && import_meta.env || {};
3824
3824
  const maxBundlerVerifGas = envCaps.VITE_MAX_VERIFICATION_GAS ? BigInt(envCaps.VITE_MAX_VERIFICATION_GAS) : MAX_BUNDLER_VERIFICATION_GAS;
3825
- const maxCallGas = envCaps.VITE_MAX_CALL_GAS_LIMIT ? BigInt(envCaps.VITE_MAX_CALL_GAS_LIMIT) : 0x7a120n;
3825
+ const maxCallGas = envCaps.VITE_MAX_CALL_GAS_LIMIT ? BigInt(envCaps.VITE_MAX_CALL_GAS_LIMIT) : null;
3826
3826
  const toHex2 = (v) => `0x${v.toString(16)}`;
3827
3827
  const maxAccountVerifGas = usePaymaster ? maxBundlerVerifGas - PAYMASTER_VERIFICATION_GAS : maxBundlerVerifGas;
3828
3828
  const verGas = BigInt(userOp.verificationGasLimit || "0x0");
3829
3829
  if (verGas > maxAccountVerifGas) userOp.verificationGasLimit = toHex2(maxAccountVerifGas);
3830
3830
  const callGas = BigInt(userOp.callGasLimit || "0x0");
3831
- if (callGas > maxCallGas) userOp.callGasLimit = toHex2(maxCallGas);
3831
+ if (maxCallGas && callGas > maxCallGas) userOp.callGasLimit = toHex2(maxCallGas);
3832
3832
  } catch {
3833
3833
  }
3834
3834
  };
3835
3835
  let estimated = false;
3836
3836
  try {
3837
3837
  const gasEst = await (0, import_bundler.estimateUserOperationGas)({ ...userOp, signature: `0x${"00".repeat(65)}` });
3838
+ console.log("[Account] Gas estimation from bundler:", { callGasLimit: gasEst.callGasLimit, verificationGasLimit: gasEst.verificationGasLimit, preVerificationGas: gasEst.preVerificationGas });
3838
3839
  userOp.callGasLimit = gasEst.callGasLimit;
3839
3840
  userOp.verificationGasLimit = gasEst.verificationGasLimit;
3840
3841
  userOp.preVerificationGas = gasEst.preVerificationGas;
3841
3842
  ensureGenerousDefaults();
3842
3843
  enforceCaps(session.usePaymaster);
3843
3844
  estimated = true;
3844
- } catch {
3845
+ console.log("[Account] Gas after caps:", { callGasLimit: userOp.callGasLimit, verificationGasLimit: userOp.verificationGasLimit, preVerificationGas: userOp.preVerificationGas });
3846
+ } catch (e) {
3847
+ console.log("[Account] Gas estimation failed, using defaults:", e);
3845
3848
  ensureGenerousDefaults();
3846
3849
  enforceCaps(session.usePaymaster);
3850
+ console.log("[Account] Gas after defaults:", { callGasLimit: userOp.callGasLimit, verificationGasLimit: userOp.verificationGasLimit, preVerificationGas: userOp.preVerificationGas });
3847
3851
  }
3848
3852
  try {
3849
3853
  const toHex2 = (v) => `0x${v.toString(16)}`;
@@ -4007,28 +4011,32 @@ async function prepareUserOperation(session, callTarget, amountWei, innerData =
4007
4011
  try {
4008
4012
  const envCaps = typeof import_meta !== "undefined" && import_meta.env || {};
4009
4013
  const maxBundlerVerifGas = envCaps.VITE_MAX_VERIFICATION_GAS ? BigInt(envCaps.VITE_MAX_VERIFICATION_GAS) : MAX_BUNDLER_VERIFICATION_GAS;
4010
- const maxCallGas = envCaps.VITE_MAX_CALL_GAS_LIMIT ? BigInt(envCaps.VITE_MAX_CALL_GAS_LIMIT) : 0x7a120n;
4014
+ const maxCallGas = envCaps.VITE_MAX_CALL_GAS_LIMIT ? BigInt(envCaps.VITE_MAX_CALL_GAS_LIMIT) : null;
4011
4015
  const toHex2 = (v) => `0x${v.toString(16)}`;
4012
4016
  const maxAccountVerifGas = usePaymaster ? maxBundlerVerifGas - PAYMASTER_VERIFICATION_GAS : maxBundlerVerifGas;
4013
4017
  const verGas = BigInt(userOp.verificationGasLimit || "0x0");
4014
4018
  if (verGas > maxAccountVerifGas) userOp.verificationGasLimit = toHex2(maxAccountVerifGas);
4015
4019
  const callGas = BigInt(userOp.callGasLimit || "0x0");
4016
- if (callGas > maxCallGas) userOp.callGasLimit = toHex2(maxCallGas);
4020
+ if (maxCallGas && callGas > maxCallGas) userOp.callGasLimit = toHex2(maxCallGas);
4017
4021
  } catch {
4018
4022
  }
4019
4023
  };
4020
4024
  let estimated = false;
4021
4025
  try {
4022
4026
  const gasEst = await (0, import_bundler.estimateUserOperationGas)({ ...userOp, signature: `0x${"00".repeat(65)}` });
4027
+ console.log("[Account] Gas estimation from bundler:", { callGasLimit: gasEst.callGasLimit, verificationGasLimit: gasEst.verificationGasLimit, preVerificationGas: gasEst.preVerificationGas });
4023
4028
  userOp.callGasLimit = gasEst.callGasLimit;
4024
4029
  userOp.verificationGasLimit = gasEst.verificationGasLimit;
4025
4030
  userOp.preVerificationGas = gasEst.preVerificationGas;
4026
4031
  ensureGenerousDefaults();
4027
4032
  enforceCaps(session.usePaymaster);
4028
4033
  estimated = true;
4029
- } catch {
4034
+ console.log("[Account] Gas after caps:", { callGasLimit: userOp.callGasLimit, verificationGasLimit: userOp.verificationGasLimit, preVerificationGas: userOp.preVerificationGas });
4035
+ } catch (e) {
4036
+ console.log("[Account] Gas estimation failed, using defaults:", e);
4030
4037
  ensureGenerousDefaults();
4031
4038
  enforceCaps(session.usePaymaster);
4039
+ console.log("[Account] Gas after defaults:", { callGasLimit: userOp.callGasLimit, verificationGasLimit: userOp.verificationGasLimit, preVerificationGas: userOp.preVerificationGas });
4032
4040
  }
4033
4041
  try {
4034
4042
  const toHex2 = (v) => `0x${v.toString(16)}`;
@@ -4439,17 +4447,17 @@ __export(index_exports, {
4439
4447
  module.exports = __toCommonJS(index_exports);
4440
4448
 
4441
4449
  // src/styles/built.css
4442
- 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}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"\\201C""\\201D""\\2018""\\2019";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:rgba(17,24,39,.1);--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:hsla(0,0%,100%,.1);--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.lumia-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}.lumia-scope .pointer-events-none{pointer-events:none}.lumia-scope .pointer-events-auto{pointer-events:auto}.lumia-scope .visible{visibility:visible}.lumia-scope .invisible{visibility:hidden}.lumia-scope .collapse{visibility:collapse}.lumia-scope .static{position:static}.lumia-scope .fixed{position:fixed}.lumia-scope .absolute{position:absolute}.lumia-scope .relative{position:relative}.lumia-scope .inset-0{inset:0}.lumia-scope .inset-y-0{top:0;bottom:0}.lumia-scope .-bottom-1{bottom:-.25rem}.lumia-scope .-right-1{right:-.25rem}.lumia-scope .-right-2{right:-.5rem}.lumia-scope .-top-1{top:-.25rem}.lumia-scope .-top-2{top:-.5rem}.lumia-scope .-top-3{top:-.75rem}.lumia-scope .bottom-full{bottom:100%}.lumia-scope .left-0{left:0}.lumia-scope .left-1{left:.25rem}.lumia-scope .left-1\\/2{left:50%}.lumia-scope .left-3{left:.75rem}.lumia-scope .left-4{left:1rem}.lumia-scope .right-0{right:0}.lumia-scope .right-2{right:.5rem}.lumia-scope .right-3{right:.75rem}.lumia-scope .right-4{right:1rem}.lumia-scope .right-\\[var\\(--l-pass-pd\\)\\]{right:var(--l-pass-pd)}.lumia-scope .right-full{right:100%}.lumia-scope .top-0{top:0}.lumia-scope .top-1{top:.25rem}.lumia-scope .top-1\\/2{top:50%}.lumia-scope .top-3{top:.75rem}.lumia-scope .top-4{top:1rem}.lumia-scope .top-\\[var\\(--l-pass-pd\\)\\]{top:var(--l-pass-pd)}.lumia-scope .top-full{top:100%}.lumia-scope .z-10{z-index:10}.lumia-scope .z-50{z-index:50}.lumia-scope .z-\\[9998\\]{z-index:9998}.lumia-scope .z-\\[9999\\]{z-index:9999}.lumia-scope .-m-px{margin:-1px}.lumia-scope .m-0{margin:0}.lumia-scope .m-4{margin:1rem}.lumia-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.lumia-scope .-mx-5{margin-left:-1.25rem;margin-right:-1.25rem}.lumia-scope .mx-1{margin-left:.25rem;margin-right:.25rem}.lumia-scope .mx-auto{margin-left:auto;margin-right:auto}.lumia-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.lumia-scope .my-6{margin-top:1.5rem;margin-bottom:1.5rem}.lumia-scope .my-auto{margin-top:auto;margin-bottom:auto}.lumia-scope .-mt-5{margin-top:-1.25rem}.lumia-scope .mb-1{margin-bottom:.25rem}.lumia-scope .mb-2{margin-bottom:.5rem}.lumia-scope .mb-3{margin-bottom:.75rem}.lumia-scope .mb-4{margin-bottom:1rem}.lumia-scope .mb-6{margin-bottom:1.5rem}.lumia-scope .mb-8{margin-bottom:2rem}.lumia-scope .ml-1{margin-left:.25rem}.lumia-scope .ml-2{margin-left:.5rem}.lumia-scope .ml-3{margin-left:.75rem}.lumia-scope .ml-4{margin-left:1rem}.lumia-scope .ml-auto{margin-left:auto}.lumia-scope .mr-1{margin-right:.25rem}.lumia-scope .mr-2{margin-right:.5rem}.lumia-scope .mr-4{margin-right:1rem}.lumia-scope .mt-0{margin-top:0}.lumia-scope .mt-1{margin-top:.25rem}.lumia-scope .mt-2{margin-top:.5rem}.lumia-scope .mt-3{margin-top:.75rem}.lumia-scope .mt-4{margin-top:1rem}.lumia-scope .mt-6{margin-top:1.5rem}.lumia-scope .mt-\\[var\\(--l-pass-gap\\)\\]{margin-top:var(--l-pass-gap)}.lumia-scope .block{display:block}.lumia-scope .inline-block{display:inline-block}.lumia-scope .inline{display:inline}.lumia-scope .flex{display:flex}.lumia-scope .inline-flex{display:inline-flex}.lumia-scope .table{display:table}.lumia-scope .grid{display:grid}.lumia-scope .contents{display:contents}.lumia-scope .hidden{display:none}.lumia-scope .aspect-square{aspect-ratio:1/1}.lumia-scope .size-3{width:.75rem;height:.75rem}.lumia-scope .size-3\\.5{width:.875rem;height:.875rem}.lumia-scope .size-4{width:1rem;height:1rem}.lumia-scope .size-5{width:1.25rem;height:1.25rem}.lumia-scope .h-10{height:2.5rem}.lumia-scope .h-11{height:2.75rem}.lumia-scope .h-12{height:3rem}.lumia-scope .h-14{height:3.5rem}.lumia-scope .h-16{height:4rem}.lumia-scope .h-2{height:.5rem}.lumia-scope .h-2\\.5{height:.625rem}.lumia-scope .h-20{height:5rem}.lumia-scope .h-3{height:.75rem}.lumia-scope .h-3\\.5{height:.875rem}.lumia-scope .h-4{height:1rem}.lumia-scope .h-48{height:12rem}.lumia-scope .h-5{height:1.25rem}.lumia-scope .h-6{height:1.5rem}.lumia-scope .h-8{height:2rem}.lumia-scope .h-9{height:2.25rem}.lumia-scope .h-\\[100dvh\\]{height:100dvh}.lumia-scope .h-\\[48px\\]{height:48px}.lumia-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.lumia-scope .h-fit{height:-moz-fit-content;height:fit-content}.lumia-scope .h-full{height:100%}.lumia-scope .h-px{height:1px}.lumia-scope .max-h-24{max-height:6rem}.lumia-scope .max-h-96{max-height:24rem}.lumia-scope .max-h-\\[95dvh\\]{max-height:95dvh}.lumia-scope .w-10{width:2.5rem}.lumia-scope .w-12{width:3rem}.lumia-scope .w-16{width:4rem}.lumia-scope .w-2{width:.5rem}.lumia-scope .w-2\\.5{width:.625rem}.lumia-scope .w-20{width:5rem}.lumia-scope .w-3{width:.75rem}.lumia-scope .w-3\\.5{width:.875rem}.lumia-scope .w-4{width:1rem}.lumia-scope .w-48{width:12rem}.lumia-scope .w-5{width:1.25rem}.lumia-scope .w-6{width:1.5rem}.lumia-scope .w-8{width:2rem}.lumia-scope .w-9{width:2.25rem}.lumia-scope .w-\\[100dvw\\]{width:100dvw}.lumia-scope .w-\\[40px\\]{width:40px}.lumia-scope .w-\\[var\\(--l-pass-maw\\)\\]{width:var(--l-pass-maw)}.lumia-scope .w-fit{width:-moz-fit-content;width:fit-content}.lumia-scope .w-full{width:100%}.lumia-scope .w-px{width:1px}.lumia-scope .min-w-0{min-width:0}.lumia-scope .min-w-16{min-width:4rem}.lumia-scope .min-w-24{min-width:6rem}.lumia-scope .min-w-32{min-width:8rem}.lumia-scope .min-w-\\[256px\\]{min-width:256px}.lumia-scope .min-w-\\[8rem\\]{min-width:8rem}.lumia-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.lumia-scope .max-w-2xl{max-width:42rem}.lumia-scope .max-w-\\[144px\\]{max-width:144px}.lumia-scope .max-w-\\[150px\\]{max-width:150px}.lumia-scope .max-w-\\[160px\\]{max-width:160px}.lumia-scope .max-w-\\[680px\\]{max-width:680px}.lumia-scope .max-w-full{max-width:100%}.lumia-scope .max-w-lg{max-width:32rem}.lumia-scope .max-w-md{max-width:28rem}.lumia-scope .max-w-sm{max-width:24rem}.lumia-scope .flex-1{flex:1 1 0%}.lumia-scope .flex-none{flex:none}.lumia-scope .flex-shrink{flex-shrink:1}.lumia-scope .flex-shrink-0,.lumia-scope .shrink-0{flex-shrink:0}.lumia-scope .border-collapse{border-collapse:collapse}.lumia-scope .-translate-x-1{--tw-translate-x:-0.25rem}.lumia-scope .-translate-x-1,.lumia-scope .-translate-x-1\\/2{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))}.lumia-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.lumia-scope .-translate-x-\\[var\\(--l-pass-gap\\)\\]{--tw-translate-x:calc(var(--l-pass-gap)*-1)}.lumia-scope .-translate-x-\\[var\\(--l-pass-gap\\)\\],.lumia-scope .-translate-y-1{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))}.lumia-scope .-translate-y-1{--tw-translate-y:-0.25rem}.lumia-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.lumia-scope .-translate-y-1\\/2,.lumia-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(--l-pass-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--l-pass-bg-warning)}}.lumia-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.6}}.lumia-scope .animate-pulse-warning{animation:pulse-warning 2s ease infinite}@keyframes spin{to{transform:rotate(1turn)}}.lumia-scope .animate-spin{animation:spin 1s linear infinite}.lumia-scope .cursor-default{cursor:default}.lumia-scope .cursor-not-allowed{cursor:not-allowed}.lumia-scope .cursor-pointer{cursor:pointer}.lumia-scope .cursor-text{cursor:text}.lumia-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.lumia-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.lumia-scope .resize{resize:both}.lumia-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.lumia-scope .list-inside{list-style-position:inside}.lumia-scope .list-disc{list-style-type:disc}.lumia-scope .appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.lumia-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lumia-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lumia-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lumia-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lumia-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lumia-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lumia-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lumia-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lumia-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lumia-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lumia-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lumia-scope .flex-row{flex-direction:row}.lumia-scope .flex-col{flex-direction:column}.lumia-scope .flex-col-reverse{flex-direction:column-reverse}.lumia-scope .flex-wrap{flex-wrap:wrap}.lumia-scope .place-content-center{place-content:center}.lumia-scope .items-start{align-items:flex-start}.lumia-scope .items-end{align-items:flex-end}.lumia-scope .items-center{align-items:center}.lumia-scope .justify-start{justify-content:flex-start}.lumia-scope .justify-end{justify-content:flex-end}.lumia-scope .justify-center{justify-content:center}.lumia-scope .justify-between{justify-content:space-between}.lumia-scope .justify-evenly{justify-content:space-evenly}.lumia-scope .gap-0{gap:0}.lumia-scope .gap-1{gap:.25rem}.lumia-scope .gap-2{gap:.5rem}.lumia-scope .gap-3{gap:.75rem}.lumia-scope .gap-4{gap:1rem}.lumia-scope .gap-\\[10px\\]{gap:10px}.lumia-scope .gap-\\[var\\(--l-pass-gap\\)\\]{gap:var(--l-pass-gap)}.lumia-scope .gap-\\[var\\(--l-pass-pd\\)\\]{gap:var(--l-pass-pd)}.lumia-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)))}.lumia-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)))}.lumia-scope :is(.space-x-3>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.lumia-scope :is(.space-x-4>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.lumia-scope :is(.space-y-0>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.lumia-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))}.lumia-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))}.lumia-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))}.lumia-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))}.lumia-scope :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.lumia-scope :is(.space-y-4>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.lumia-scope :is(.space-y-6>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.lumia-scope .overflow-auto{overflow:auto}.lumia-scope .overflow-hidden{overflow:hidden}.lumia-scope .overflow-visible{overflow:visible}.lumia-scope .overflow-y-auto{overflow-y:auto}.lumia-scope .overflow-x-hidden{overflow-x:hidden}.lumia-scope .overflow-y-hidden{overflow-y:hidden}.lumia-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lumia-scope .text-ellipsis{text-overflow:ellipsis}.lumia-scope .whitespace-nowrap{white-space:nowrap}.lumia-scope .whitespace-pre-line{white-space:pre-line}.lumia-scope .whitespace-pre-wrap{white-space:pre-wrap}.lumia-scope .break-normal{overflow-wrap:normal;word-break:normal}.lumia-scope .break-words{overflow-wrap:break-word}.lumia-scope .break-all{word-break:break-all}.lumia-scope .rounded{border-radius:.25rem}.lumia-scope .rounded-2xl{border-radius:1rem}.lumia-scope .rounded-3xl{border-radius:1.5rem}.lumia-scope .rounded-\\[10px\\]{border-radius:10px}.lumia-scope .rounded-\\[5px\\]{border-radius:5px}.lumia-scope .rounded-\\[var\\(--l-pass-bdrs\\)\\]{border-radius:var(--l-pass-bdrs)}.lumia-scope .rounded-\\[var\\(--l-pass-el-bdrs\\)\\]{border-radius:var(--l-pass-el-bdrs)}.lumia-scope .rounded-full{border-radius:9999px}.lumia-scope .rounded-lg{border-radius:.5rem}.lumia-scope .rounded-md{border-radius:.375rem}.lumia-scope .rounded-sm{border-radius:.125rem}.lumia-scope .rounded-xl{border-radius:.75rem}.lumia-scope .border{border-width:1px}.lumia-scope .border-0{border-width:0}.lumia-scope .border-2{border-width:2px}.lumia-scope .border-b{border-bottom-width:1px}.lumia-scope .border-b-2{border-bottom-width:2px}.lumia-scope .border-t{border-top-width:1px}.lumia-scope .border-dashed{border-style:dashed}.lumia-scope .border-\\[var\\(--l-pass-bd\\)\\]{border-color:var(--l-pass-bd)}.lumia-scope .border-\\[var\\(--l-pass-error\\)\\]{border-color:var(--l-pass-error)}.lumia-scope .border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.lumia-scope .border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.lumia-scope .border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.lumia-scope .border-amber-500{--tw-border-opacity:1;border-color:rgb(245 158 11/var(--tw-border-opacity,1))}.lumia-scope .border-amber-900{--tw-border-opacity:1;border-color:rgb(120 53 15/var(--tw-border-opacity,1))}.lumia-scope .border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.lumia-scope .border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.lumia-scope .border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.lumia-scope .border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.lumia-scope .border-blue-800{--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity,1))}.lumia-scope .border-blue-900{--tw-border-opacity:1;border-color:rgb(30 58 138/var(--tw-border-opacity,1))}.lumia-scope .border-current{border-color:currentColor}.lumia-scope .border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.lumia-scope .border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.lumia-scope .border-gray-600{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.lumia-scope .border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.lumia-scope .border-gray-900{--tw-border-opacity:1;border-color:rgb(17 24 39/var(--tw-border-opacity,1))}.lumia-scope .border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.lumia-scope .border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.lumia-scope .border-green-800{--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity,1))}.lumia-scope .border-green-900{--tw-border-opacity:1;border-color:rgb(20 83 45/var(--tw-border-opacity,1))}.lumia-scope .border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.lumia-scope .border-orange-800{--tw-border-opacity:1;border-color:rgb(154 52 18/var(--tw-border-opacity,1))}.lumia-scope .border-orange-900{--tw-border-opacity:1;border-color:rgb(124 45 18/var(--tw-border-opacity,1))}.lumia-scope .border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.lumia-scope .border-purple-800{--tw-border-opacity:1;border-color:rgb(107 33 168/var(--tw-border-opacity,1))}.lumia-scope .border-purple-900{--tw-border-opacity:1;border-color:rgb(88 28 135/var(--tw-border-opacity,1))}.lumia-scope .border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.lumia-scope .border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.lumia-scope .border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.lumia-scope .border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.lumia-scope .border-red-800{--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity,1))}.lumia-scope .border-red-900{--tw-border-opacity:1;border-color:rgb(127 29 29/var(--tw-border-opacity,1))}.lumia-scope .border-sky-200{--tw-border-opacity:1;border-color:rgb(186 230 253/var(--tw-border-opacity,1))}.lumia-scope .border-sky-800{--tw-border-opacity:1;border-color:rgb(7 89 133/var(--tw-border-opacity,1))}.lumia-scope .border-sky-900{--tw-border-opacity:1;border-color:rgb(12 74 110/var(--tw-border-opacity,1))}.lumia-scope .border-transparent{border-color:transparent}.lumia-scope .border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.lumia-scope .border-t-transparent{border-top-color:transparent}.lumia-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.lumia-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.lumia-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.lumia-scope .bg-\\[var\\(--l-pass-accent\\)\\]{background-color:var(--l-pass-accent)}.lumia-scope .bg-\\[var\\(--l-pass-bg\\)\\]{background-color:var(--l-pass-bg)}.lumia-scope .bg-\\[var\\(--l-pass-bg-error\\)\\]{background-color:var(--l-pass-bg-error)}.lumia-scope .bg-\\[var\\(--l-pass-bg-info\\)\\]{background-color:var(--l-pass-bg-info)}.lumia-scope .bg-\\[var\\(--l-pass-bg-muted\\)\\]{background-color:var(--l-pass-bg-muted)}.lumia-scope .bg-\\[var\\(--l-pass-bg-success\\)\\]{background-color:var(--l-pass-bg-success)}.lumia-scope .bg-\\[var\\(--l-pass-bg-warning\\)\\]{background-color:var(--l-pass-bg-warning)}.lumia-scope .bg-\\[var\\(--l-pass-error\\)\\]{background-color:var(--l-pass-error)}.lumia-scope .bg-\\[var\\(--l-pass-fg\\)\\]{background-color:var(--l-pass-fg)}.lumia-scope .bg-\\[var\\(--l-pass-overlay\\)\\]{background-color:var(--l-pass-overlay)}.lumia-scope .bg-\\[var\\(--l-pass-primary\\)\\]{background-color:var(--l-pass-primary)}.lumia-scope .bg-\\[var\\(--l-pass-secondary\\)\\]{background-color:var(--l-pass-secondary)}.lumia-scope .bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.lumia-scope .bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.lumia-scope .bg-amber-900{--tw-bg-opacity:1;background-color:rgb(120 53 15/var(--tw-bg-opacity,1))}.lumia-scope .bg-amber-950{--tw-bg-opacity:1;background-color:rgb(69 26 3/var(--tw-bg-opacity,1))}.lumia-scope .bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-900{--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-950{--tw-bg-opacity:1;background-color:rgb(23 37 84/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-700{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-900{--tw-bg-opacity:1;background-color:rgb(20 83 45/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-950{--tw-bg-opacity:1;background-color:rgb(5 46 22/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-700{--tw-bg-opacity:1;background-color:rgb(194 65 12/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-800{--tw-bg-opacity:1;background-color:rgb(154 52 18/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-900{--tw-bg-opacity:1;background-color:rgb(124 45 18/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-950{--tw-bg-opacity:1;background-color:rgb(67 20 7/var(--tw-bg-opacity,1))}.lumia-scope .bg-pink-100{--tw-bg-opacity:1;background-color:rgb(252 231 243/var(--tw-bg-opacity,1))}.lumia-scope .bg-pink-200{--tw-bg-opacity:1;background-color:rgb(251 207 232/var(--tw-bg-opacity,1))}.lumia-scope .bg-pink-600{--tw-bg-opacity:1;background-color:rgb(219 39 119/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-200{--tw-bg-opacity:1;background-color:rgb(233 213 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-700{--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-900{--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-950{--tw-bg-opacity:1;background-color:rgb(59 7 100/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-900{--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-950{--tw-bg-opacity:1;background-color:rgb(69 10 10/var(--tw-bg-opacity,1))}.lumia-scope .bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-sky-500{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.lumia-scope .bg-sky-950{--tw-bg-opacity:1;background-color:rgb(8 47 73/var(--tw-bg-opacity,1))}.lumia-scope .bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.lumia-scope .bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.lumia-scope .bg-transparent{background-color:transparent}.lumia-scope .bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.lumia-scope .bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.lumia-scope .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.lumia-scope .from-purple-100{--tw-gradient-from:#f3e8ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(243,232,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.lumia-scope .from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.lumia-scope .from-purple-600{--tw-gradient-from:#9333ea var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.lumia-scope .to-blue-100{--tw-gradient-to:#dbeafe var(--tw-gradient-to-position)}.lumia-scope .to-blue-500{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.lumia-scope .to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.lumia-scope .object-contain{-o-object-fit:contain;object-fit:contain}.lumia-scope .object-cover{-o-object-fit:cover;object-fit:cover}.lumia-scope .p-0{padding:0}.lumia-scope .p-1{padding:.25rem}.lumia-scope .p-2{padding:.5rem}.lumia-scope .p-3{padding:.75rem}.lumia-scope .p-4{padding:1rem}.lumia-scope .p-5{padding:1.25rem}.lumia-scope .p-6{padding:1.5rem}.lumia-scope .p-8{padding:2rem}.lumia-scope .p-\\[var\\(--l-pass-pd\\)\\]{padding:var(--l-pass-pd)}.lumia-scope .px-0{padding-left:0;padding-right:0}.lumia-scope .px-1{padding-left:.25rem;padding-right:.25rem}.lumia-scope .px-12{padding-left:3rem;padding-right:3rem}.lumia-scope .px-2{padding-left:.5rem;padding-right:.5rem}.lumia-scope .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.lumia-scope .px-3{padding-left:.75rem;padding-right:.75rem}.lumia-scope .px-4{padding-left:1rem;padding-right:1rem}.lumia-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.lumia-scope .px-6{padding-left:1.5rem;padding-right:1.5rem}.lumia-scope .px-8{padding-left:2rem;padding-right:2rem}.lumia-scope .px-\\[var\\(--l-pass-gap\\)\\]{padding-left:var(--l-pass-gap);padding-right:var(--l-pass-gap)}.lumia-scope .px-\\[var\\(--l-pass-pd\\)\\]{padding-left:var(--l-pass-pd);padding-right:var(--l-pass-pd)}.lumia-scope .py-0{padding-top:0;padding-bottom:0}.lumia-scope .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.lumia-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.lumia-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.lumia-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.lumia-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.lumia-scope .py-4{padding-top:1rem;padding-bottom:1rem}.lumia-scope .py-8{padding-top:2rem;padding-bottom:2rem}.lumia-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.lumia-scope .py-\\[var\\(--l-pass-gap\\)\\]{padding-top:var(--l-pass-gap);padding-bottom:var(--l-pass-gap)}.lumia-scope .pb-2{padding-bottom:.5rem}.lumia-scope .pb-3{padding-bottom:.75rem}.lumia-scope .pb-4{padding-bottom:1rem}.lumia-scope .pb-5{padding-bottom:1.25rem}.lumia-scope .pb-6{padding-bottom:1.5rem}.lumia-scope .pl-11{padding-left:2.75rem}.lumia-scope .pl-2{padding-left:.5rem}.lumia-scope .pr-10{padding-right:2.5rem}.lumia-scope .pr-16{padding-right:4rem}.lumia-scope .pr-8{padding-right:2rem}.lumia-scope .pt-0{padding-top:0}.lumia-scope .pt-2{padding-top:.5rem}.lumia-scope .pt-3{padding-top:.75rem}.lumia-scope .pt-4{padding-top:1rem}.lumia-scope .pt-5{padding-top:1.25rem}.lumia-scope .text-left{text-align:left}.lumia-scope .text-center{text-align:center}.lumia-scope .text-right{text-align:right}.lumia-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.lumia-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.lumia-scope .text-2xl{font-size:1.5rem;line-height:2rem}.lumia-scope .text-3xl{font-size:1.875rem;line-height:2.25rem}.lumia-scope .text-4xl{font-size:2.25rem;line-height:2.5rem}.lumia-scope .text-\\[10px\\]{font-size:10px}.lumia-scope .text-\\[14px\\]{font-size:14px}.lumia-scope .text-\\[16px\\]{font-size:16px}.lumia-scope .text-\\[8px\\]{font-size:8px}.lumia-scope .text-base{font-size:1rem;line-height:1.5rem}.lumia-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.lumia-scope .text-sm{font-size:.875rem;line-height:1.25rem}.lumia-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.lumia-scope .text-xs{font-size:.75rem;line-height:1rem}.lumia-scope .font-bold{font-weight:700}.lumia-scope .font-medium{font-weight:500}.lumia-scope .font-normal{font-weight:400}.lumia-scope .font-semibold{font-weight:600}.lumia-scope .uppercase{text-transform:uppercase}.lumia-scope .italic{font-style:italic}.lumia-scope .leading-4{line-height:1rem}.lumia-scope .leading-5{line-height:1.25rem}.lumia-scope .leading-6{line-height:1.5rem}.lumia-scope .leading-8{line-height:2rem}.lumia-scope .leading-\\[8px\\]{line-height:8px}.lumia-scope .leading-none{line-height:1}.lumia-scope .leading-relaxed{line-height:1.625}.lumia-scope .leading-tight{line-height:1.25}.lumia-scope .tracking-tight{letter-spacing:-.025em}.lumia-scope .tracking-wide{letter-spacing:.025em}.lumia-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.lumia-scope .text-\\[var\\(--l-pass-bg-error\\)\\]{color:var(--l-pass-bg-error)}.lumia-scope .text-\\[var\\(--l-pass-bg-success\\)\\]{color:var(--l-pass-bg-success)}.lumia-scope .text-\\[var\\(--l-pass-bg-warning\\)\\]{color:var(--l-pass-bg-warning)}.lumia-scope .text-\\[var\\(--l-pass-error\\)\\]{color:var(--l-pass-error)}.lumia-scope .text-\\[var\\(--l-pass-fg\\)\\]{color:var(--l-pass-fg)}.lumia-scope .text-\\[var\\(--l-pass-fg-inverted\\)\\]{color:var(--l-pass-fg-inverted)}.lumia-scope .text-\\[var\\(--l-pass-fg-muted\\)\\]{color:var(--l-pass-fg-muted)}.lumia-scope .text-\\[var\\(--l-pass-info\\)\\]{color:var(--l-pass-info)}.lumia-scope .text-\\[var\\(--l-pass-success\\)\\]{color:var(--l-pass-success)}.lumia-scope .text-\\[var\\(--l-pass-text-secondary\\)\\]{color:var(--l-pass-text-secondary)}.lumia-scope .text-\\[var\\(--l-pass-warning\\)\\]{color:var(--l-pass-warning)}.lumia-scope .text-amber-100{--tw-text-opacity:1;color:rgb(254 243 199/var(--tw-text-opacity,1))}.lumia-scope .text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.lumia-scope .text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.lumia-scope .text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.lumia-scope .text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.lumia-scope .text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.lumia-scope .text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.lumia-scope .text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.lumia-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.lumia-scope .text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.lumia-scope .text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.lumia-scope .text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.lumia-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.lumia-scope .text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.lumia-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.lumia-scope .text-gray-100{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}.lumia-scope .text-gray-200{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.lumia-scope .text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.lumia-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.lumia-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.lumia-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.lumia-scope .text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.lumia-scope .text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.lumia-scope .text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.lumia-scope .text-green-200{--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.lumia-scope .text-green-300{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.lumia-scope .text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.lumia-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.lumia-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.lumia-scope .text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.lumia-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.lumia-scope .text-indigo-400{--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.lumia-scope .text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.lumia-scope .text-orange-100{--tw-text-opacity:1;color:rgb(255 237 213/var(--tw-text-opacity,1))}.lumia-scope .text-orange-200{--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.lumia-scope .text-orange-300{--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.lumia-scope .text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.lumia-scope .text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.lumia-scope .text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.lumia-scope .text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12/var(--tw-text-opacity,1))}.lumia-scope .text-purple-200{--tw-text-opacity:1;color:rgb(233 213 255/var(--tw-text-opacity,1))}.lumia-scope .text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.lumia-scope .text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.lumia-scope .text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity,1))}.lumia-scope .text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.lumia-scope .text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206/var(--tw-text-opacity,1))}.lumia-scope .text-red-100{--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1))}.lumia-scope .text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.lumia-scope .text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.lumia-scope .text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.lumia-scope .text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.lumia-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.lumia-scope .text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.lumia-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.lumia-scope .text-red-900{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.lumia-scope .text-sky-400{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity,1))}.lumia-scope .text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity,1))}.lumia-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.lumia-scope .text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.lumia-scope .underline{text-decoration-line:underline}.lumia-scope .underline-offset-2{text-underline-offset:2px}.lumia-scope .underline-offset-4{text-underline-offset:4px}.lumia-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.lumia-scope .opacity-0{opacity:0}.lumia-scope .opacity-100{opacity:1}.lumia-scope .opacity-40{opacity:.4}.lumia-scope .opacity-50{opacity:.5}.lumia-scope .opacity-60{opacity:.6}.lumia-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)}.lumia-scope .shadow,.lumia-scope .shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lumia-scope .shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.lumia-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)}.lumia-scope .shadow-lg,.lumia-scope .shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lumia-scope .shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.lumia-scope .shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.lumia-scope .shadow-sm,.lumia-scope .shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lumia-scope .shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.lumia-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.lumia-scope .outline{outline-style:solid}.lumia-scope .blur{--tw-blur:blur(8px)}.lumia-scope .blur,.lumia-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)}.lumia-scope .grayscale{--tw-grayscale:grayscale(100%)}.lumia-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)}.lumia-scope .backdrop-blur{--tw-backdrop-blur:blur(8px)}.lumia-scope .backdrop-blur,.lumia-scope .backdrop-blur-sm{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.lumia-scope .backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.lumia-scope .backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.lumia-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}.lumia-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lumia-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lumia-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}.lumia-scope .transition-none{transition-property:none}.lumia-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lumia-scope .duration-200{transition-duration:.2s}.lumia-scope .ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.lumia-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.lumia-scope{--l-pass-ff:var(--lumia-passport-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--l-pass-maw:var(--lumia-passport-maw,384px);--l-pass-pd:var(--lumia-passport-pd,12px);--l-pass-gap:var(--lumia-passport-gap,10px);--l-pass-bdrs:var(--lumia-passport-bdrs,20px);--l-pass-el-bdrs:var(--lumia-passport-element-bdrs,10px);--l-pass-backdrop-blur:var(--lumia-passport-backdrop-blur,10px)}.lumia-scope[data-lumia-passport-mode=light]{--l-pass-overlay:var(--lumia-passport-overlay,hsla(0,0%,100%,.8));--l-pass-bg:var(--lumia-passport-bg,#fff);--l-pass-fg:var(--lumia-passport-fg,#000);--l-pass-fg-h:var(--lumia-passport-fg-h,rgba(0,0,0,.6));--l-pass-fg-a:var(--lumia-passport-fg-a,rgba(0,0,0,.4));--l-pass-fg-inverted:var(--lumia-passport-fg-inverted,#fff);--l-pass-fg-muted:var(--lumia-passport-fg-muted,rgba(0,0,0,.6));--l-pass-primary:var(--lumia-passport-primary,#000);--l-pass-primary-h:var(--lumia-passport-primary-h,rgba(0,0,0,.8));--l-pass-primary-a:var(--lumia-passport-primary-a,rgba(0,0,0,.6));--l-pass-secondary:var(--lumia-passport-secondary,#e4e4e4);--l-pass-secondary-h:var(--lumia-passport-secondary-h,hsla(0,0%,89%,.8));--l-pass-secondary-a:var(--lumia-passport-secondary-a,hsla(0,0%,89%,.6));--l-pass-bd:var(--lumia-passport-bd,#ebebeb);--l-pass-bd-intense:var(--lumia-passport-bd-intense,#a9a9a9);--l-pass-shadow-c:var(--lumia-passport-shadow-c,rgba(0,0,0,.1));--l-pass-info:var(--lumia-passport-info,var(--l-pass-fg));--l-pass-bg-info:var(--lumia-passport-bg-info,#e4e4e4);--l-pass-success:var(--lumia-passport-success,var(--l-pass-fg));--l-pass-bg-success:var(--lumia-passport-bg-success,#21ff51);--l-pass-warning:var(--lumia-passport-warning,var(--l-pass-fg));--l-pass-bg-warning:var(--lumia-passport-bg-warning,#e9fa00);--l-pass-error:var(--lumia-passport-error,#fff);--l-pass-bg-error:var(--lumia-passport-bg-error,#d6204e)}.lumia-scope[data-lumia-passport-mode=dark]{--l-pass-overlay:var(--lumia-passport-overlay,rgba(0,0,0,.8));--l-pass-bg:var(--lumia-passport-bg,#1a1a1a);--l-pass-fg:var(--lumia-passport-fg,#fff);--l-pass-fg-h:var(--lumia-passport-fg-h,hsla(0,0%,100%,.6));--l-pass-fg-a:var(--lumia-passport-fg-a,hsla(0,0%,100%,.4));--l-pass-fg-inverted:var(--lumia-passport-fg-inverted,#000);--l-pass-fg-muted:var(--lumia-passport-fg-muted,hsla(0,0%,100%,.6));--l-pass-primary:var(--lumia-passport-primary,#fff);--l-pass-primary-h:var(--lumia-passport-primary-h,hsla(0,0%,100%,.8));--l-pass-primary-a:var(--lumia-passport-primary-a,hsla(0,0%,100%,.6));--l-pass-secondary:var(--lumia-passport-secondary,#2a2a2a);--l-pass-secondary-h:var(--lumia-passport-secondary-h,rgba(42,42,42,.6));--l-pass-secondary-a:var(--lumia-passport-secondary-a,rgba(42,42,42,.4));--l-pass-bd:var(--lumia-passport-bd,#3a3a3a);--l-pass-bd-intense:var(--lumia-passport-bd-intense,#4a4a4a);--l-pass-shadow-c:var(--lumia-passport-shadow-c,rgba(0,0,0,.1));--l-pass-info:var(--lumia-passport-info,var(--l-pass-fg));--l-pass-bg-info:var(--lumia-passport-bg-info,#2a2a2a);--l-pass-success:var(--lumia-passport-success,var(--l-pass-fg-inverted));--l-pass-bg-success:var(--lumia-passport-bg-success,#21ff51);--l-pass-warning:var(--lumia-passport-warning,var(--l-pass-fg-inverted));--l-pass-bg-warning:var(--lumia-passport-bg-warning,#e9fa00);--l-pass-error:var(--lumia-passport-error,#fff);--l-pass-bg-error:var(--lumia-passport-bg-error,#d6204e)}.lumia-scope,.lumia-scope *{margin:0;box-sizing:border-box;font-family:var(--l-pass-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}.lumia-scope button,.lumia-scope h1,.lumia-scope h2,.lumia-scope h3,.lumia-scope h4,.lumia-scope h5,.lumia-scope h6,.lumia-scope input,.lumia-scope p,.lumia-scope select,.lumia-scope textarea{font-family:var(--l-pass-ff)!important;margin:0}.lumia-scope button,.lumia-scope input,.lumia-scope select,.lumia-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.lumia-scope input,.lumia-scope textarea{font-size:16px!important}.lumia-scope .lumia-passport-button{box-shadow:0 4px 20px var(--l-pass-shadow-c),inset 0 0 0 1px var(--l-pass-bd);transition:transform .25s ease}.lumia-scope .lumia-passport-button:hover{transform:scale(1.02)}.lumia-scope .lumia-passport-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)}}.lumia-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.lumia-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}}.lumia-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.lumia-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.lumia-scope .list-scrollbar-y{width:100%;padding-right:var(--l-pass-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--l-pass-scrollbar-mah,300px)}.lumia-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.lumia-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--l-pass-bd)}.lumia-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.lumia-scope .noScrollbars::-webkit-scrollbar{display:none}.lumia-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}.lumia-scope .file\\:mr-\\[var\\(--l-pass-pd\\)\\]::file-selector-button{margin-right:var(--l-pass-pd)}.lumia-scope .file\\:h-8::file-selector-button{height:2rem}.lumia-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.lumia-scope .file\\:rounded-\\[var\\(--l-pass-el-bdrs\\)\\]::file-selector-button{border-radius:var(--l-pass-el-bdrs)}.lumia-scope .file\\:border-0::file-selector-button{border-width:0}.lumia-scope .file\\:bg-\\[var\\(--l-pass-primary\\)\\]::file-selector-button{background-color:var(--l-pass-primary)}.lumia-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.lumia-scope .file\\:px-\\[var\\(--l-pass-pd\\)\\]::file-selector-button{padding-left:var(--l-pass-pd);padding-right:var(--l-pass-pd)}.lumia-scope .file\\:font-mono::file-selector-button{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.lumia-scope .file\\:text-\\[10px\\]::file-selector-button{font-size:10px}.lumia-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.lumia-scope .file\\:font-medium::file-selector-button{font-weight:500}.lumia-scope .file\\:text-\\[var\\(--l-pass-fg-inverted\\)\\]::file-selector-button{color:var(--l-pass-fg-inverted)}.lumia-scope .placeholder\\:text-\\[var\\(--l-pass-fg-muted\\)\\]::-moz-placeholder{color:var(--l-pass-fg-muted)}.lumia-scope .placeholder\\:text-\\[var\\(--l-pass-fg-muted\\)\\]::placeholder{color:var(--l-pass-fg-muted)}.lumia-scope .focus-within\\:bg-\\[var\\(--l-pass-secondary-a\\)\\]:focus-within{background-color:var(--l-pass-secondary-a)}.lumia-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.lumia-scope .hover\\:bg-\\[var\\(--l-pass-bg\\)\\]:hover{background-color:var(--l-pass-bg)}.lumia-scope .hover\\:bg-\\[var\\(--l-pass-primary-h\\)\\]:hover{background-color:var(--l-pass-primary-h)}.lumia-scope .hover\\:bg-\\[var\\(--l-pass-secondary-h\\)\\]:hover{background-color:var(--l-pass-secondary-h)}.lumia-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:bg-green-700:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:bg-yellow-600:hover{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.lumia-scope .hover\\:text-\\[var\\(--l-pass-fg-h\\)\\]:hover{color:var(--l-pass-fg-h)}.lumia-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.lumia-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.lumia-scope .hover\\:underline:hover{text-decoration-line:underline}.lumia-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.lumia-scope .focus\\:bg-\\[var\\(--l-pass-secondary-a\\)\\]:focus{background-color:var(--l-pass-secondary-a)}.lumia-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.lumia-scope .focus\\:ring-2:focus{--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)}.lumia-scope .focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}.lumia-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.lumia-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)}.lumia-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)}.lumia-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.lumia-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.lumia-scope .active\\:bg-\\[var\\(--l-pass-bg\\)\\]:active{background-color:var(--l-pass-bg)}.lumia-scope .active\\:bg-\\[var\\(--l-pass-primary-a\\)\\]:active{background-color:var(--l-pass-primary-a)}.lumia-scope .active\\:bg-\\[var\\(--l-pass-secondary-a\\)\\]:active{background-color:var(--l-pass-secondary-a)}.lumia-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.lumia-scope .active\\:text-\\[var\\(--l-pass-fg-a\\)\\]:active{color:var(--l-pass-fg-a)}.lumia-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.lumia-scope .disabled\\:cursor-default:disabled{cursor:default}.lumia-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.lumia-scope .disabled\\:opacity-50:disabled{opacity:.5}.lumia-scope .disabled\\:hover\\:bg-\\[var\\(--l-pass-bg\\)\\]:hover:disabled{background-color:var(--l-pass-bg)}.lumia-scope .disabled\\:hover\\:bg-\\[var\\(--l-pass-primary\\)\\]:hover:disabled{background-color:var(--l-pass-primary)}.lumia-scope .disabled\\:hover\\:bg-\\[var\\(--l-pass-secondary\\)\\]:hover:disabled{background-color:var(--l-pass-secondary)}.lumia-scope .disabled\\:hover\\:text-\\[var\\(--l-pass-fg\\)\\]:hover:disabled{color:var(--l-pass-fg)}.lumia-scope .disabled\\:active\\:bg-\\[var\\(--l-pass-bg\\)\\]:active:disabled{background-color:var(--l-pass-bg)}.lumia-scope .disabled\\:active\\:bg-\\[var\\(--l-pass-primary\\)\\]:active:disabled{background-color:var(--l-pass-primary)}.lumia-scope .disabled\\:active\\:text-\\[var\\(--l-pass-fg\\)\\]:active:disabled{color:var(--l-pass-fg)}.lumia-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.lumia-scope :is(.group:hover .group-hover\\:opacity-60){opacity:.6}.lumia-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.lumia-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.lumia-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.lumia-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.lumia-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.lumia-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))}.lumia-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.lumia-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.lumia-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.lumia-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))}.lumia-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.lumia-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--l-pass-bd-intense\\)\\][data-state=checked]{border-color:var(--l-pass-bd-intense)}.lumia-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--l-pass-secondary\\)\\][data-state=checked]{background-color:var(--l-pass-secondary)}.lumia-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--l-pass-fg\\)\\][data-state=checked]{color:var(--l-pass-fg)}.lumia-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.lumia-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}.lumia-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.lumia-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.lumia-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--l-pass-gap\\)\\][data-slot=select-value]>*){gap:var(--l-pass-gap)}@media (min-width:640px){.lumia-scope .sm\\:flex-row{flex-direction:row}.lumia-scope .sm\\:justify-end{justify-content:flex-end}.lumia-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)))}.lumia-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.lumia-scope .md\\:h-8{height:2rem}.lumia-scope .md\\:w-8{width:2rem}.lumia-scope .md\\:gap-\\[var\\(--l-pass-gap\\)\\]{gap:var(--l-pass-gap)}.lumia-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}@media (prefers-color-scheme:dark){.lumia-scope .dark\\:bg-green-700{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:bg-yellow-600{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:hover\\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:hover\\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:hover\\:bg-yellow-500:hover{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}}.lumia-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\\'size-\\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.lumia-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.lumia-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}';
4450
+ 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}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"\\201C""\\201D""\\2018""\\2019";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:rgba(17,24,39,.1);--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:hsla(0,0%,100%,.1);--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.lumia-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}.lumia-scope .pointer-events-none{pointer-events:none}.lumia-scope .pointer-events-auto{pointer-events:auto}.lumia-scope .visible{visibility:visible}.lumia-scope .invisible{visibility:hidden}.lumia-scope .collapse{visibility:collapse}.lumia-scope .static{position:static}.lumia-scope .fixed{position:fixed}.lumia-scope .absolute{position:absolute}.lumia-scope .relative{position:relative}.lumia-scope .inset-0{inset:0}.lumia-scope .inset-y-0{top:0;bottom:0}.lumia-scope .-bottom-1{bottom:-.25rem}.lumia-scope .-right-1{right:-.25rem}.lumia-scope .-right-2{right:-.5rem}.lumia-scope .-top-1{top:-.25rem}.lumia-scope .-top-2{top:-.5rem}.lumia-scope .-top-3{top:-.75rem}.lumia-scope .bottom-full{bottom:100%}.lumia-scope .left-0{left:0}.lumia-scope .left-1{left:.25rem}.lumia-scope .left-1\\/2{left:50%}.lumia-scope .left-3{left:.75rem}.lumia-scope .left-4{left:1rem}.lumia-scope .right-0{right:0}.lumia-scope .right-2{right:.5rem}.lumia-scope .right-3{right:.75rem}.lumia-scope .right-4{right:1rem}.lumia-scope .right-\\[var\\(--l-pass-pd\\)\\]{right:var(--l-pass-pd)}.lumia-scope .right-full{right:100%}.lumia-scope .top-0{top:0}.lumia-scope .top-1{top:.25rem}.lumia-scope .top-1\\/2{top:50%}.lumia-scope .top-3{top:.75rem}.lumia-scope .top-4{top:1rem}.lumia-scope .top-\\[var\\(--l-pass-pd\\)\\]{top:var(--l-pass-pd)}.lumia-scope .top-full{top:100%}.lumia-scope .z-10{z-index:10}.lumia-scope .z-50{z-index:50}.lumia-scope .z-\\[9998\\]{z-index:9998}.lumia-scope .z-\\[9999\\]{z-index:9999}.lumia-scope .-m-px{margin:-1px}.lumia-scope .m-0{margin:0}.lumia-scope .m-4{margin:1rem}.lumia-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.lumia-scope .-mx-5{margin-left:-1.25rem;margin-right:-1.25rem}.lumia-scope .mx-1{margin-left:.25rem;margin-right:.25rem}.lumia-scope .mx-auto{margin-left:auto;margin-right:auto}.lumia-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.lumia-scope .my-6{margin-top:1.5rem;margin-bottom:1.5rem}.lumia-scope .my-auto{margin-top:auto;margin-bottom:auto}.lumia-scope .-mt-5{margin-top:-1.25rem}.lumia-scope .mb-1{margin-bottom:.25rem}.lumia-scope .mb-2{margin-bottom:.5rem}.lumia-scope .mb-3{margin-bottom:.75rem}.lumia-scope .mb-4{margin-bottom:1rem}.lumia-scope .mb-6{margin-bottom:1.5rem}.lumia-scope .mb-8{margin-bottom:2rem}.lumia-scope .ml-1{margin-left:.25rem}.lumia-scope .ml-2{margin-left:.5rem}.lumia-scope .ml-3{margin-left:.75rem}.lumia-scope .ml-4{margin-left:1rem}.lumia-scope .ml-auto{margin-left:auto}.lumia-scope .mr-1{margin-right:.25rem}.lumia-scope .mr-2{margin-right:.5rem}.lumia-scope .mr-4{margin-right:1rem}.lumia-scope .mt-0{margin-top:0}.lumia-scope .mt-1{margin-top:.25rem}.lumia-scope .mt-2{margin-top:.5rem}.lumia-scope .mt-3{margin-top:.75rem}.lumia-scope .mt-4{margin-top:1rem}.lumia-scope .mt-6{margin-top:1.5rem}.lumia-scope .mt-\\[var\\(--l-pass-gap\\)\\]{margin-top:var(--l-pass-gap)}.lumia-scope .block{display:block}.lumia-scope .inline-block{display:inline-block}.lumia-scope .inline{display:inline}.lumia-scope .flex{display:flex}.lumia-scope .inline-flex{display:inline-flex}.lumia-scope .table{display:table}.lumia-scope .grid{display:grid}.lumia-scope .contents{display:contents}.lumia-scope .hidden{display:none}.lumia-scope .aspect-square{aspect-ratio:1/1}.lumia-scope .size-3{width:.75rem;height:.75rem}.lumia-scope .size-3\\.5{width:.875rem;height:.875rem}.lumia-scope .size-4{width:1rem;height:1rem}.lumia-scope .size-5{width:1.25rem;height:1.25rem}.lumia-scope .h-10{height:2.5rem}.lumia-scope .h-11{height:2.75rem}.lumia-scope .h-12{height:3rem}.lumia-scope .h-14{height:3.5rem}.lumia-scope .h-16{height:4rem}.lumia-scope .h-2{height:.5rem}.lumia-scope .h-2\\.5{height:.625rem}.lumia-scope .h-20{height:5rem}.lumia-scope .h-3{height:.75rem}.lumia-scope .h-3\\.5{height:.875rem}.lumia-scope .h-4{height:1rem}.lumia-scope .h-48{height:12rem}.lumia-scope .h-5{height:1.25rem}.lumia-scope .h-6{height:1.5rem}.lumia-scope .h-7{height:1.75rem}.lumia-scope .h-8{height:2rem}.lumia-scope .h-9{height:2.25rem}.lumia-scope .h-\\[100dvh\\]{height:100dvh}.lumia-scope .h-\\[48px\\]{height:48px}.lumia-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.lumia-scope .h-fit{height:-moz-fit-content;height:fit-content}.lumia-scope .h-full{height:100%}.lumia-scope .h-px{height:1px}.lumia-scope .max-h-24{max-height:6rem}.lumia-scope .max-h-96{max-height:24rem}.lumia-scope .max-h-\\[95dvh\\]{max-height:95dvh}.lumia-scope .w-10{width:2.5rem}.lumia-scope .w-12{width:3rem}.lumia-scope .w-16{width:4rem}.lumia-scope .w-2{width:.5rem}.lumia-scope .w-2\\.5{width:.625rem}.lumia-scope .w-20{width:5rem}.lumia-scope .w-3{width:.75rem}.lumia-scope .w-3\\.5{width:.875rem}.lumia-scope .w-4{width:1rem}.lumia-scope .w-48{width:12rem}.lumia-scope .w-5{width:1.25rem}.lumia-scope .w-6{width:1.5rem}.lumia-scope .w-8{width:2rem}.lumia-scope .w-9{width:2.25rem}.lumia-scope .w-\\[100dvw\\]{width:100dvw}.lumia-scope .w-\\[40px\\]{width:40px}.lumia-scope .w-\\[var\\(--l-pass-maw\\)\\]{width:var(--l-pass-maw)}.lumia-scope .w-fit{width:-moz-fit-content;width:fit-content}.lumia-scope .w-full{width:100%}.lumia-scope .w-px{width:1px}.lumia-scope .min-w-0{min-width:0}.lumia-scope .min-w-16{min-width:4rem}.lumia-scope .min-w-24{min-width:6rem}.lumia-scope .min-w-32{min-width:8rem}.lumia-scope .min-w-5{min-width:1.25rem}.lumia-scope .min-w-\\[256px\\]{min-width:256px}.lumia-scope .min-w-\\[8rem\\]{min-width:8rem}.lumia-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.lumia-scope .max-w-2xl{max-width:42rem}.lumia-scope .max-w-\\[144px\\]{max-width:144px}.lumia-scope .max-w-\\[150px\\]{max-width:150px}.lumia-scope .max-w-\\[160px\\]{max-width:160px}.lumia-scope .max-w-\\[680px\\]{max-width:680px}.lumia-scope .max-w-full{max-width:100%}.lumia-scope .max-w-lg{max-width:32rem}.lumia-scope .max-w-md{max-width:28rem}.lumia-scope .max-w-sm{max-width:24rem}.lumia-scope .flex-1{flex:1 1 0%}.lumia-scope .flex-none{flex:none}.lumia-scope .flex-shrink{flex-shrink:1}.lumia-scope .flex-shrink-0,.lumia-scope .shrink-0{flex-shrink:0}.lumia-scope .border-collapse{border-collapse:collapse}.lumia-scope .-translate-x-1{--tw-translate-x:-0.25rem}.lumia-scope .-translate-x-1,.lumia-scope .-translate-x-1\\/2{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))}.lumia-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.lumia-scope .-translate-x-\\[var\\(--l-pass-gap\\)\\]{--tw-translate-x:calc(var(--l-pass-gap)*-1)}.lumia-scope .-translate-x-\\[var\\(--l-pass-gap\\)\\],.lumia-scope .-translate-y-1{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))}.lumia-scope .-translate-y-1{--tw-translate-y:-0.25rem}.lumia-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.lumia-scope .-translate-y-1\\/2,.lumia-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(--l-pass-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--l-pass-bg-warning)}}.lumia-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.6}}.lumia-scope .animate-pulse-warning{animation:pulse-warning 2s ease infinite}@keyframes spin{to{transform:rotate(1turn)}}.lumia-scope .animate-spin{animation:spin 1s linear infinite}.lumia-scope .cursor-default{cursor:default}.lumia-scope .cursor-not-allowed{cursor:not-allowed}.lumia-scope .cursor-pointer{cursor:pointer}.lumia-scope .cursor-text{cursor:text}.lumia-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.lumia-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.lumia-scope .resize{resize:both}.lumia-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.lumia-scope .list-inside{list-style-position:inside}.lumia-scope .list-disc{list-style-type:disc}.lumia-scope .appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.lumia-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lumia-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.lumia-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.lumia-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lumia-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lumia-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lumia-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lumia-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lumia-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lumia-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lumia-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lumia-scope .flex-row{flex-direction:row}.lumia-scope .flex-col{flex-direction:column}.lumia-scope .flex-col-reverse{flex-direction:column-reverse}.lumia-scope .flex-wrap{flex-wrap:wrap}.lumia-scope .place-content-center{place-content:center}.lumia-scope .items-start{align-items:flex-start}.lumia-scope .items-end{align-items:flex-end}.lumia-scope .items-center{align-items:center}.lumia-scope .justify-start{justify-content:flex-start}.lumia-scope .justify-end{justify-content:flex-end}.lumia-scope .justify-center{justify-content:center}.lumia-scope .justify-between{justify-content:space-between}.lumia-scope .justify-evenly{justify-content:space-evenly}.lumia-scope .gap-0{gap:0}.lumia-scope .gap-1{gap:.25rem}.lumia-scope .gap-2{gap:.5rem}.lumia-scope .gap-3{gap:.75rem}.lumia-scope .gap-4{gap:1rem}.lumia-scope .gap-\\[10px\\]{gap:10px}.lumia-scope .gap-\\[var\\(--l-pass-gap\\)\\]{gap:var(--l-pass-gap)}.lumia-scope .gap-\\[var\\(--l-pass-pd\\)\\]{gap:var(--l-pass-pd)}.lumia-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)))}.lumia-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)))}.lumia-scope :is(.space-x-3>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.lumia-scope :is(.space-x-4>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.lumia-scope :is(.space-y-0>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.lumia-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))}.lumia-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))}.lumia-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))}.lumia-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))}.lumia-scope :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.lumia-scope :is(.space-y-4>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.lumia-scope :is(.space-y-6>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.lumia-scope .overflow-auto{overflow:auto}.lumia-scope .overflow-hidden{overflow:hidden}.lumia-scope .overflow-visible{overflow:visible}.lumia-scope .overflow-y-auto{overflow-y:auto}.lumia-scope .overflow-x-hidden{overflow-x:hidden}.lumia-scope .overflow-y-hidden{overflow-y:hidden}.lumia-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lumia-scope .text-ellipsis{text-overflow:ellipsis}.lumia-scope .whitespace-nowrap{white-space:nowrap}.lumia-scope .whitespace-pre-line{white-space:pre-line}.lumia-scope .whitespace-pre-wrap{white-space:pre-wrap}.lumia-scope .break-normal{overflow-wrap:normal;word-break:normal}.lumia-scope .break-words{overflow-wrap:break-word}.lumia-scope .break-all{word-break:break-all}.lumia-scope .rounded{border-radius:.25rem}.lumia-scope .rounded-2xl{border-radius:1rem}.lumia-scope .rounded-3xl{border-radius:1.5rem}.lumia-scope .rounded-\\[10px\\]{border-radius:10px}.lumia-scope .rounded-\\[5px\\]{border-radius:5px}.lumia-scope .rounded-\\[var\\(--l-pass-bdrs\\)\\]{border-radius:var(--l-pass-bdrs)}.lumia-scope .rounded-\\[var\\(--l-pass-el-bdrs\\)\\]{border-radius:var(--l-pass-el-bdrs)}.lumia-scope .rounded-full{border-radius:9999px}.lumia-scope .rounded-lg{border-radius:.5rem}.lumia-scope .rounded-md{border-radius:.375rem}.lumia-scope .rounded-sm{border-radius:.125rem}.lumia-scope .rounded-xl{border-radius:.75rem}.lumia-scope .border{border-width:1px}.lumia-scope .border-0{border-width:0}.lumia-scope .border-2{border-width:2px}.lumia-scope .border-b{border-bottom-width:1px}.lumia-scope .border-b-2{border-bottom-width:2px}.lumia-scope .border-t{border-top-width:1px}.lumia-scope .border-dashed{border-style:dashed}.lumia-scope .border-\\[var\\(--l-pass-bd\\)\\]{border-color:var(--l-pass-bd)}.lumia-scope .border-\\[var\\(--l-pass-error\\)\\]{border-color:var(--l-pass-error)}.lumia-scope .border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.lumia-scope .border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.lumia-scope .border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.lumia-scope .border-amber-500{--tw-border-opacity:1;border-color:rgb(245 158 11/var(--tw-border-opacity,1))}.lumia-scope .border-amber-900{--tw-border-opacity:1;border-color:rgb(120 53 15/var(--tw-border-opacity,1))}.lumia-scope .border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.lumia-scope .border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.lumia-scope .border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.lumia-scope .border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.lumia-scope .border-blue-800{--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity,1))}.lumia-scope .border-blue-900{--tw-border-opacity:1;border-color:rgb(30 58 138/var(--tw-border-opacity,1))}.lumia-scope .border-current{border-color:currentColor}.lumia-scope .border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.lumia-scope .border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.lumia-scope .border-gray-600{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.lumia-scope .border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.lumia-scope .border-gray-900{--tw-border-opacity:1;border-color:rgb(17 24 39/var(--tw-border-opacity,1))}.lumia-scope .border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.lumia-scope .border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.lumia-scope .border-green-800{--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity,1))}.lumia-scope .border-green-900{--tw-border-opacity:1;border-color:rgb(20 83 45/var(--tw-border-opacity,1))}.lumia-scope .border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.lumia-scope .border-orange-800{--tw-border-opacity:1;border-color:rgb(154 52 18/var(--tw-border-opacity,1))}.lumia-scope .border-orange-900{--tw-border-opacity:1;border-color:rgb(124 45 18/var(--tw-border-opacity,1))}.lumia-scope .border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255/var(--tw-border-opacity,1))}.lumia-scope .border-purple-800{--tw-border-opacity:1;border-color:rgb(107 33 168/var(--tw-border-opacity,1))}.lumia-scope .border-purple-900{--tw-border-opacity:1;border-color:rgb(88 28 135/var(--tw-border-opacity,1))}.lumia-scope .border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.lumia-scope .border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.lumia-scope .border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.lumia-scope .border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.lumia-scope .border-red-800{--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity,1))}.lumia-scope .border-red-900{--tw-border-opacity:1;border-color:rgb(127 29 29/var(--tw-border-opacity,1))}.lumia-scope .border-sky-200{--tw-border-opacity:1;border-color:rgb(186 230 253/var(--tw-border-opacity,1))}.lumia-scope .border-sky-800{--tw-border-opacity:1;border-color:rgb(7 89 133/var(--tw-border-opacity,1))}.lumia-scope .border-sky-900{--tw-border-opacity:1;border-color:rgb(12 74 110/var(--tw-border-opacity,1))}.lumia-scope .border-transparent{border-color:transparent}.lumia-scope .border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.lumia-scope .border-t-transparent{border-top-color:transparent}.lumia-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.lumia-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.lumia-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.lumia-scope .bg-\\[var\\(--l-pass-accent\\)\\]{background-color:var(--l-pass-accent)}.lumia-scope .bg-\\[var\\(--l-pass-bg\\)\\]{background-color:var(--l-pass-bg)}.lumia-scope .bg-\\[var\\(--l-pass-bg-error\\)\\]{background-color:var(--l-pass-bg-error)}.lumia-scope .bg-\\[var\\(--l-pass-bg-info\\)\\]{background-color:var(--l-pass-bg-info)}.lumia-scope .bg-\\[var\\(--l-pass-bg-muted\\)\\]{background-color:var(--l-pass-bg-muted)}.lumia-scope .bg-\\[var\\(--l-pass-bg-success\\)\\]{background-color:var(--l-pass-bg-success)}.lumia-scope .bg-\\[var\\(--l-pass-bg-warning\\)\\]{background-color:var(--l-pass-bg-warning)}.lumia-scope .bg-\\[var\\(--l-pass-error\\)\\]{background-color:var(--l-pass-error)}.lumia-scope .bg-\\[var\\(--l-pass-fg\\)\\]{background-color:var(--l-pass-fg)}.lumia-scope .bg-\\[var\\(--l-pass-fg-inverted\\)\\]{background-color:var(--l-pass-fg-inverted)}.lumia-scope .bg-\\[var\\(--l-pass-overlay\\)\\]{background-color:var(--l-pass-overlay)}.lumia-scope .bg-\\[var\\(--l-pass-primary\\)\\]{background-color:var(--l-pass-primary)}.lumia-scope .bg-\\[var\\(--l-pass-secondary\\)\\]{background-color:var(--l-pass-secondary)}.lumia-scope .bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.lumia-scope .bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.lumia-scope .bg-amber-900{--tw-bg-opacity:1;background-color:rgb(120 53 15/var(--tw-bg-opacity,1))}.lumia-scope .bg-amber-950{--tw-bg-opacity:1;background-color:rgb(69 26 3/var(--tw-bg-opacity,1))}.lumia-scope .bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-900{--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.lumia-scope .bg-blue-950{--tw-bg-opacity:1;background-color:rgb(23 37 84/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.lumia-scope .bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-600{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-700{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-900{--tw-bg-opacity:1;background-color:rgb(20 83 45/var(--tw-bg-opacity,1))}.lumia-scope .bg-green-950{--tw-bg-opacity:1;background-color:rgb(5 46 22/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-700{--tw-bg-opacity:1;background-color:rgb(194 65 12/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-800{--tw-bg-opacity:1;background-color:rgb(154 52 18/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-900{--tw-bg-opacity:1;background-color:rgb(124 45 18/var(--tw-bg-opacity,1))}.lumia-scope .bg-orange-950{--tw-bg-opacity:1;background-color:rgb(67 20 7/var(--tw-bg-opacity,1))}.lumia-scope .bg-pink-100{--tw-bg-opacity:1;background-color:rgb(252 231 243/var(--tw-bg-opacity,1))}.lumia-scope .bg-pink-200{--tw-bg-opacity:1;background-color:rgb(251 207 232/var(--tw-bg-opacity,1))}.lumia-scope .bg-pink-600{--tw-bg-opacity:1;background-color:rgb(219 39 119/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-200{--tw-bg-opacity:1;background-color:rgb(233 213 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-700{--tw-bg-opacity:1;background-color:rgb(126 34 206/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-900{--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.lumia-scope .bg-purple-950{--tw-bg-opacity:1;background-color:rgb(59 7 100/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-900{--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.lumia-scope .bg-red-950{--tw-bg-opacity:1;background-color:rgb(69 10 10/var(--tw-bg-opacity,1))}.lumia-scope .bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-sky-500{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1))}.lumia-scope .bg-sky-950{--tw-bg-opacity:1;background-color:rgb(8 47 73/var(--tw-bg-opacity,1))}.lumia-scope .bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.lumia-scope .bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.lumia-scope .bg-transparent{background-color:transparent}.lumia-scope .bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.lumia-scope .bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.lumia-scope .bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.lumia-scope .bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.lumia-scope .from-purple-100{--tw-gradient-from:#f3e8ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(243,232,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.lumia-scope .from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.lumia-scope .from-purple-600{--tw-gradient-from:#9333ea var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.lumia-scope .to-blue-100{--tw-gradient-to:#dbeafe var(--tw-gradient-to-position)}.lumia-scope .to-blue-500{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.lumia-scope .to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.lumia-scope .object-contain{-o-object-fit:contain;object-fit:contain}.lumia-scope .object-cover{-o-object-fit:cover;object-fit:cover}.lumia-scope .p-0{padding:0}.lumia-scope .p-1{padding:.25rem}.lumia-scope .p-2{padding:.5rem}.lumia-scope .p-3{padding:.75rem}.lumia-scope .p-4{padding:1rem}.lumia-scope .p-5{padding:1.25rem}.lumia-scope .p-6{padding:1.5rem}.lumia-scope .p-8{padding:2rem}.lumia-scope .p-\\[var\\(--l-pass-gap\\)\\]{padding:var(--l-pass-gap)}.lumia-scope .p-\\[var\\(--l-pass-pd\\)\\]{padding:var(--l-pass-pd)}.lumia-scope .px-0{padding-left:0;padding-right:0}.lumia-scope .px-1{padding-left:.25rem;padding-right:.25rem}.lumia-scope .px-12{padding-left:3rem;padding-right:3rem}.lumia-scope .px-2{padding-left:.5rem;padding-right:.5rem}.lumia-scope .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.lumia-scope .px-3{padding-left:.75rem;padding-right:.75rem}.lumia-scope .px-4{padding-left:1rem;padding-right:1rem}.lumia-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.lumia-scope .px-6{padding-left:1.5rem;padding-right:1.5rem}.lumia-scope .px-8{padding-left:2rem;padding-right:2rem}.lumia-scope .px-\\[var\\(--l-pass-gap\\)\\]{padding-left:var(--l-pass-gap);padding-right:var(--l-pass-gap)}.lumia-scope .px-\\[var\\(--l-pass-pd\\)\\]{padding-left:var(--l-pass-pd);padding-right:var(--l-pass-pd)}.lumia-scope .py-0{padding-top:0;padding-bottom:0}.lumia-scope .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.lumia-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.lumia-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.lumia-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.lumia-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.lumia-scope .py-4{padding-top:1rem;padding-bottom:1rem}.lumia-scope .py-8{padding-top:2rem;padding-bottom:2rem}.lumia-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.lumia-scope .py-\\[var\\(--l-pass-gap\\)\\]{padding-top:var(--l-pass-gap);padding-bottom:var(--l-pass-gap)}.lumia-scope .pb-2{padding-bottom:.5rem}.lumia-scope .pb-3{padding-bottom:.75rem}.lumia-scope .pb-4{padding-bottom:1rem}.lumia-scope .pb-5{padding-bottom:1.25rem}.lumia-scope .pb-6{padding-bottom:1.5rem}.lumia-scope .pl-11{padding-left:2.75rem}.lumia-scope .pl-2{padding-left:.5rem}.lumia-scope .pr-10{padding-right:2.5rem}.lumia-scope .pr-16{padding-right:4rem}.lumia-scope .pr-8{padding-right:2rem}.lumia-scope .pt-0{padding-top:0}.lumia-scope .pt-2{padding-top:.5rem}.lumia-scope .pt-3{padding-top:.75rem}.lumia-scope .pt-4{padding-top:1rem}.lumia-scope .pt-5{padding-top:1.25rem}.lumia-scope .text-left{text-align:left}.lumia-scope .text-center{text-align:center}.lumia-scope .text-right{text-align:right}.lumia-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.lumia-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.lumia-scope .text-2xl{font-size:1.5rem;line-height:2rem}.lumia-scope .text-3xl{font-size:1.875rem;line-height:2.25rem}.lumia-scope .text-4xl{font-size:2.25rem;line-height:2.5rem}.lumia-scope .text-\\[10px\\]{font-size:10px}.lumia-scope .text-\\[14px\\]{font-size:14px}.lumia-scope .text-\\[16px\\]{font-size:16px}.lumia-scope .text-\\[8px\\]{font-size:8px}.lumia-scope .text-base{font-size:1rem;line-height:1.5rem}.lumia-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.lumia-scope .text-sm{font-size:.875rem;line-height:1.25rem}.lumia-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.lumia-scope .text-xs{font-size:.75rem;line-height:1rem}.lumia-scope .font-bold{font-weight:700}.lumia-scope .font-medium{font-weight:500}.lumia-scope .font-normal{font-weight:400}.lumia-scope .font-semibold{font-weight:600}.lumia-scope .uppercase{text-transform:uppercase}.lumia-scope .italic{font-style:italic}.lumia-scope .leading-4{line-height:1rem}.lumia-scope .leading-5{line-height:1.25rem}.lumia-scope .leading-6{line-height:1.5rem}.lumia-scope .leading-8{line-height:2rem}.lumia-scope .leading-\\[8px\\]{line-height:8px}.lumia-scope .leading-none{line-height:1}.lumia-scope .leading-relaxed{line-height:1.625}.lumia-scope .leading-tight{line-height:1.25}.lumia-scope .tracking-tight{letter-spacing:-.025em}.lumia-scope .tracking-wide{letter-spacing:.025em}.lumia-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.lumia-scope .text-\\[var\\(--l-pass-bg-error\\)\\]{color:var(--l-pass-bg-error)}.lumia-scope .text-\\[var\\(--l-pass-bg-success\\)\\]{color:var(--l-pass-bg-success)}.lumia-scope .text-\\[var\\(--l-pass-bg-warning\\)\\]{color:var(--l-pass-bg-warning)}.lumia-scope .text-\\[var\\(--l-pass-error\\)\\]{color:var(--l-pass-error)}.lumia-scope .text-\\[var\\(--l-pass-fg\\)\\]{color:var(--l-pass-fg)}.lumia-scope .text-\\[var\\(--l-pass-fg-inverted\\)\\]{color:var(--l-pass-fg-inverted)}.lumia-scope .text-\\[var\\(--l-pass-fg-muted\\)\\]{color:var(--l-pass-fg-muted)}.lumia-scope .text-\\[var\\(--l-pass-info\\)\\]{color:var(--l-pass-info)}.lumia-scope .text-\\[var\\(--l-pass-success\\)\\]{color:var(--l-pass-success)}.lumia-scope .text-\\[var\\(--l-pass-text-secondary\\)\\]{color:var(--l-pass-text-secondary)}.lumia-scope .text-\\[var\\(--l-pass-warning\\)\\]{color:var(--l-pass-warning)}.lumia-scope .text-amber-100{--tw-text-opacity:1;color:rgb(254 243 199/var(--tw-text-opacity,1))}.lumia-scope .text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.lumia-scope .text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.lumia-scope .text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.lumia-scope .text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.lumia-scope .text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.lumia-scope .text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.lumia-scope .text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.lumia-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.lumia-scope .text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.lumia-scope .text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.lumia-scope .text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.lumia-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.lumia-scope .text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.lumia-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.lumia-scope .text-gray-100{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}.lumia-scope .text-gray-200{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.lumia-scope .text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.lumia-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.lumia-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.lumia-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.lumia-scope .text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.lumia-scope .text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.lumia-scope .text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.lumia-scope .text-green-200{--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.lumia-scope .text-green-300{--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.lumia-scope .text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.lumia-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.lumia-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.lumia-scope .text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity,1))}.lumia-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.lumia-scope .text-indigo-400{--tw-text-opacity:1;color:rgb(129 140 248/var(--tw-text-opacity,1))}.lumia-scope .text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.lumia-scope .text-orange-100{--tw-text-opacity:1;color:rgb(255 237 213/var(--tw-text-opacity,1))}.lumia-scope .text-orange-200{--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.lumia-scope .text-orange-300{--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.lumia-scope .text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.lumia-scope .text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.lumia-scope .text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity,1))}.lumia-scope .text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12/var(--tw-text-opacity,1))}.lumia-scope .text-purple-200{--tw-text-opacity:1;color:rgb(233 213 255/var(--tw-text-opacity,1))}.lumia-scope .text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.lumia-scope .text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.lumia-scope .text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity,1))}.lumia-scope .text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.lumia-scope .text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206/var(--tw-text-opacity,1))}.lumia-scope .text-red-100{--tw-text-opacity:1;color:rgb(254 226 226/var(--tw-text-opacity,1))}.lumia-scope .text-red-200{--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity,1))}.lumia-scope .text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.lumia-scope .text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.lumia-scope .text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.lumia-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.lumia-scope .text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.lumia-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.lumia-scope .text-red-900{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.lumia-scope .text-sky-400{--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity,1))}.lumia-scope .text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity,1))}.lumia-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.lumia-scope .text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}.lumia-scope .underline{text-decoration-line:underline}.lumia-scope .underline-offset-2{text-underline-offset:2px}.lumia-scope .underline-offset-4{text-underline-offset:4px}.lumia-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.lumia-scope .opacity-0{opacity:0}.lumia-scope .opacity-100{opacity:1}.lumia-scope .opacity-40{opacity:.4}.lumia-scope .opacity-50{opacity:.5}.lumia-scope .opacity-60{opacity:.6}.lumia-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)}.lumia-scope .shadow,.lumia-scope .shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lumia-scope .shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.lumia-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)}.lumia-scope .shadow-lg,.lumia-scope .shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lumia-scope .shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.lumia-scope .shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.lumia-scope .shadow-sm,.lumia-scope .shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.lumia-scope .shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.lumia-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.lumia-scope .outline{outline-style:solid}.lumia-scope .blur{--tw-blur:blur(8px)}.lumia-scope .blur,.lumia-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)}.lumia-scope .grayscale{--tw-grayscale:grayscale(100%)}.lumia-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)}.lumia-scope .backdrop-blur{--tw-backdrop-blur:blur(8px)}.lumia-scope .backdrop-blur,.lumia-scope .backdrop-blur-sm{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.lumia-scope .backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.lumia-scope .backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.lumia-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}.lumia-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lumia-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lumia-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}.lumia-scope .transition-none{transition-property:none}.lumia-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.lumia-scope .duration-200{transition-duration:.2s}.lumia-scope .ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.lumia-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.lumia-scope{--l-pass-ff:var(--lumia-passport-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--l-pass-maw:var(--lumia-passport-maw,384px);--l-pass-pd:var(--lumia-passport-pd,12px);--l-pass-gap:var(--lumia-passport-gap,10px);--l-pass-bdrs:var(--lumia-passport-bdrs,20px);--l-pass-el-bdrs:var(--lumia-passport-element-bdrs,10px);--l-pass-backdrop-blur:var(--lumia-passport-backdrop-blur,10px)}.lumia-scope[data-lumia-passport-mode=light]{--l-pass-overlay:var(--lumia-passport-overlay,hsla(0,0%,100%,.8));--l-pass-bg:var(--lumia-passport-bg,#fff);--l-pass-fg:var(--lumia-passport-fg,#000);--l-pass-fg-h:var(--lumia-passport-fg-h,rgba(0,0,0,.6));--l-pass-fg-a:var(--lumia-passport-fg-a,rgba(0,0,0,.4));--l-pass-fg-inverted:var(--lumia-passport-fg-inverted,#fff);--l-pass-fg-muted:var(--lumia-passport-fg-muted,rgba(0,0,0,.6));--l-pass-primary:var(--lumia-passport-primary,#000);--l-pass-primary-h:var(--lumia-passport-primary-h,rgba(0,0,0,.8));--l-pass-primary-a:var(--lumia-passport-primary-a,rgba(0,0,0,.6));--l-pass-secondary:var(--lumia-passport-secondary,#e4e4e4);--l-pass-secondary-h:var(--lumia-passport-secondary-h,hsla(0,0%,89%,.8));--l-pass-secondary-a:var(--lumia-passport-secondary-a,hsla(0,0%,89%,.6));--l-pass-bd:var(--lumia-passport-bd,#ebebeb);--l-pass-bd-intense:var(--lumia-passport-bd-intense,#a9a9a9);--l-pass-shadow-c:var(--lumia-passport-shadow-c,rgba(0,0,0,.1));--l-pass-info:var(--lumia-passport-info,var(--l-pass-fg));--l-pass-bg-info:var(--lumia-passport-bg-info,#e4e4e4);--l-pass-success:var(--lumia-passport-success,var(--l-pass-fg));--l-pass-bg-success:var(--lumia-passport-bg-success,#21ff51);--l-pass-warning:var(--lumia-passport-warning,var(--l-pass-fg));--l-pass-bg-warning:var(--lumia-passport-bg-warning,#e9fa00);--l-pass-error:var(--lumia-passport-error,#fff);--l-pass-bg-error:var(--lumia-passport-bg-error,#d6204e)}.lumia-scope[data-lumia-passport-mode=dark]{--l-pass-overlay:var(--lumia-passport-overlay,rgba(0,0,0,.8));--l-pass-bg:var(--lumia-passport-bg,#1a1a1a);--l-pass-fg:var(--lumia-passport-fg,#fff);--l-pass-fg-h:var(--lumia-passport-fg-h,hsla(0,0%,100%,.6));--l-pass-fg-a:var(--lumia-passport-fg-a,hsla(0,0%,100%,.4));--l-pass-fg-inverted:var(--lumia-passport-fg-inverted,#000);--l-pass-fg-muted:var(--lumia-passport-fg-muted,hsla(0,0%,100%,.6));--l-pass-primary:var(--lumia-passport-primary,#fff);--l-pass-primary-h:var(--lumia-passport-primary-h,hsla(0,0%,100%,.8));--l-pass-primary-a:var(--lumia-passport-primary-a,hsla(0,0%,100%,.6));--l-pass-secondary:var(--lumia-passport-secondary,#2a2a2a);--l-pass-secondary-h:var(--lumia-passport-secondary-h,rgba(42,42,42,.6));--l-pass-secondary-a:var(--lumia-passport-secondary-a,rgba(42,42,42,.4));--l-pass-bd:var(--lumia-passport-bd,#3a3a3a);--l-pass-bd-intense:var(--lumia-passport-bd-intense,#4a4a4a);--l-pass-shadow-c:var(--lumia-passport-shadow-c,rgba(0,0,0,.1));--l-pass-info:var(--lumia-passport-info,var(--l-pass-fg));--l-pass-bg-info:var(--lumia-passport-bg-info,#2a2a2a);--l-pass-success:var(--lumia-passport-success,var(--l-pass-fg-inverted));--l-pass-bg-success:var(--lumia-passport-bg-success,#21ff51);--l-pass-warning:var(--lumia-passport-warning,var(--l-pass-fg-inverted));--l-pass-bg-warning:var(--lumia-passport-bg-warning,#e9fa00);--l-pass-error:var(--lumia-passport-error,#fff);--l-pass-bg-error:var(--lumia-passport-bg-error,#d6204e)}.lumia-scope,.lumia-scope *{margin:0;box-sizing:border-box;font-family:var(--l-pass-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}.lumia-scope button,.lumia-scope h1,.lumia-scope h2,.lumia-scope h3,.lumia-scope h4,.lumia-scope h5,.lumia-scope h6,.lumia-scope input,.lumia-scope p,.lumia-scope select,.lumia-scope textarea{font-family:var(--l-pass-ff)!important;margin:0}.lumia-scope button,.lumia-scope input,.lumia-scope select,.lumia-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.lumia-scope input,.lumia-scope textarea{font-size:16px!important}.lumia-scope .lumia-passport-button{box-shadow:0 4px 20px var(--l-pass-shadow-c),inset 0 0 0 1px var(--l-pass-bd);transition:transform .25s ease}.lumia-scope .lumia-passport-button:hover{transform:scale(1.02)}.lumia-scope .lumia-passport-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)}}.lumia-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.lumia-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}}.lumia-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.lumia-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.lumia-scope .list-scrollbar-y{width:100%;padding-right:var(--l-pass-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--l-pass-scrollbar-mah,300px)}.lumia-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.lumia-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--l-pass-bd)}.lumia-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.lumia-scope .noScrollbars::-webkit-scrollbar{display:none}.lumia-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}.lumia-scope .file\\:mr-\\[var\\(--l-pass-gap\\)\\]::file-selector-button{margin-right:var(--l-pass-gap)}.lumia-scope .file\\:h-12::file-selector-button{height:3rem}.lumia-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.lumia-scope .file\\:rounded-\\[var\\(--l-pass-el-bdrs\\)\\]::file-selector-button{border-radius:var(--l-pass-el-bdrs)}.lumia-scope .file\\:border-0::file-selector-button{border-width:0}.lumia-scope .file\\:bg-\\[var\\(--l-pass-primary\\)\\]::file-selector-button{background-color:var(--l-pass-primary)}.lumia-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.lumia-scope .file\\:px-\\[var\\(--l-pass-pd\\)\\]::file-selector-button{padding-left:var(--l-pass-pd);padding-right:var(--l-pass-pd)}.lumia-scope .file\\:text-\\[16px\\]::file-selector-button{font-size:16px}.lumia-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.lumia-scope .file\\:font-medium::file-selector-button{font-weight:500}.lumia-scope .file\\:text-\\[var\\(--l-pass-fg-inverted\\)\\]::file-selector-button{color:var(--l-pass-fg-inverted)}.lumia-scope .placeholder\\:text-\\[var\\(--l-pass-fg-muted\\)\\]::-moz-placeholder{color:var(--l-pass-fg-muted)}.lumia-scope .placeholder\\:text-\\[var\\(--l-pass-fg-muted\\)\\]::placeholder{color:var(--l-pass-fg-muted)}.lumia-scope .focus-within\\:bg-\\[var\\(--l-pass-secondary-a\\)\\]:focus-within{background-color:var(--l-pass-secondary-a)}.lumia-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.lumia-scope .hover\\:bg-\\[var\\(--l-pass-bg\\)\\]:hover{background-color:var(--l-pass-bg)}.lumia-scope .hover\\:bg-\\[var\\(--l-pass-primary-h\\)\\]:hover{background-color:var(--l-pass-primary-h)}.lumia-scope .hover\\:bg-\\[var\\(--l-pass-secondary-h\\)\\]:hover{background-color:var(--l-pass-secondary-h)}.lumia-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:bg-green-700:hover{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:bg-yellow-600:hover{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.lumia-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.lumia-scope .hover\\:text-\\[var\\(--l-pass-fg-h\\)\\]:hover{color:var(--l-pass-fg-h)}.lumia-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.lumia-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.lumia-scope .hover\\:underline:hover{text-decoration-line:underline}.lumia-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.lumia-scope .focus\\:bg-\\[var\\(--l-pass-secondary-a\\)\\]:focus{background-color:var(--l-pass-secondary-a)}.lumia-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.lumia-scope .focus\\:ring-2:focus{--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)}.lumia-scope .focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}.lumia-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.lumia-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)}.lumia-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)}.lumia-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.lumia-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.lumia-scope .active\\:bg-\\[var\\(--l-pass-bg\\)\\]:active{background-color:var(--l-pass-bg)}.lumia-scope .active\\:bg-\\[var\\(--l-pass-primary-a\\)\\]:active{background-color:var(--l-pass-primary-a)}.lumia-scope .active\\:bg-\\[var\\(--l-pass-secondary-a\\)\\]:active{background-color:var(--l-pass-secondary-a)}.lumia-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.lumia-scope .active\\:text-\\[var\\(--l-pass-fg-a\\)\\]:active{color:var(--l-pass-fg-a)}.lumia-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.lumia-scope .disabled\\:cursor-default:disabled{cursor:default}.lumia-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.lumia-scope .disabled\\:opacity-50:disabled{opacity:.5}.lumia-scope .disabled\\:hover\\:bg-\\[var\\(--l-pass-bg\\)\\]:hover:disabled{background-color:var(--l-pass-bg)}.lumia-scope .disabled\\:hover\\:bg-\\[var\\(--l-pass-primary\\)\\]:hover:disabled{background-color:var(--l-pass-primary)}.lumia-scope .disabled\\:hover\\:bg-\\[var\\(--l-pass-secondary\\)\\]:hover:disabled{background-color:var(--l-pass-secondary)}.lumia-scope .disabled\\:hover\\:text-\\[var\\(--l-pass-fg\\)\\]:hover:disabled{color:var(--l-pass-fg)}.lumia-scope .disabled\\:active\\:bg-\\[var\\(--l-pass-bg\\)\\]:active:disabled{background-color:var(--l-pass-bg)}.lumia-scope .disabled\\:active\\:bg-\\[var\\(--l-pass-primary\\)\\]:active:disabled{background-color:var(--l-pass-primary)}.lumia-scope .disabled\\:active\\:text-\\[var\\(--l-pass-fg\\)\\]:active:disabled{color:var(--l-pass-fg)}.lumia-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.lumia-scope :is(.group:hover .group-hover\\:opacity-60){opacity:.6}.lumia-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.lumia-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.lumia-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.lumia-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.lumia-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.lumia-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))}.lumia-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.lumia-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.lumia-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.lumia-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))}.lumia-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.lumia-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--l-pass-bd-intense\\)\\][data-state=checked]{border-color:var(--l-pass-bd-intense)}.lumia-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--l-pass-secondary\\)\\][data-state=checked]{background-color:var(--l-pass-secondary)}.lumia-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--l-pass-fg\\)\\][data-state=checked]{color:var(--l-pass-fg)}.lumia-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.lumia-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}.lumia-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.lumia-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.lumia-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--l-pass-gap\\)\\][data-slot=select-value]>*){gap:var(--l-pass-gap)}@media (min-width:640px){.lumia-scope .sm\\:flex-row{flex-direction:row}.lumia-scope .sm\\:justify-end{justify-content:flex-end}.lumia-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)))}.lumia-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.lumia-scope .md\\:h-8{height:2rem}.lumia-scope .md\\:w-8{width:2rem}.lumia-scope .md\\:gap-\\[var\\(--l-pass-gap\\)\\]{gap:var(--l-pass-gap)}.lumia-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}@media (prefers-color-scheme:dark){.lumia-scope .dark\\:bg-green-700{--tw-bg-opacity:1;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:bg-yellow-600{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:hover\\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:hover\\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.lumia-scope .dark\\:hover\\:bg-yellow-500:hover{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}}.lumia-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\\'size-\\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.lumia-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.lumia-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}';
4443
4451
 
4444
4452
  // src/context/LumiaPassportContext.tsx
4445
4453
  var import_error_tracking4 = require("@lumiapassport/core/internal/error-tracking");
4446
4454
  var import_lodash_es4 = require("lodash-es");
4447
- var import_react59 = require("react");
4455
+ var import_react61 = require("react");
4448
4456
  init_lumiaPassport();
4449
4457
  init_iframe_manager();
4450
4458
 
4451
4459
  // src/context/LumiaPassportSessionContext.tsx
4452
- var import_react58 = require("react");
4460
+ var import_react60 = require("react");
4453
4461
  var import_zustand6 = require("zustand");
4454
4462
 
4455
4463
  // src/internal/components/BalanceFeedProvider/BalanceFeedProvider.tsx
@@ -4627,7 +4635,7 @@ function BalanceFeedProvider() {
4627
4635
 
4628
4636
  // src/internal/components/Dialog/LumiaPassportDialog.tsx
4629
4637
  var import_framer_motion3 = require("framer-motion");
4630
- var import_react55 = require("react");
4638
+ var import_react57 = require("react");
4631
4639
 
4632
4640
  // src/internal/components/Footer/Footer.tsx
4633
4641
  var import_react_query2 = require("@tanstack/react-query");
@@ -4688,6 +4696,35 @@ var LumiaLogo = (0, import_react2.forwardRef)(({ size = 24, className = "" }, re
4688
4696
  init_auth();
4689
4697
  init_base();
4690
4698
 
4699
+ // src/internal/hooks/useLayoutStore.ts
4700
+ var import_zustand2 = require("zustand");
4701
+ var useLayoutStore = (0, import_zustand2.create)((set) => ({
4702
+ colorMode: "light",
4703
+ // layoutView: 'desktop',
4704
+ // deviceType: 'non-touch',
4705
+ isMobileView: false,
4706
+ maxScrollHeight: MAX_CONTENT_HEIGHT,
4707
+ isDialogClosing: false,
4708
+ isDialogOpen: false,
4709
+ isDialogForced: false,
4710
+ dialogTitle: null,
4711
+ dialogDescription: null,
4712
+ dialogContent: null,
4713
+ isSettings: false,
4714
+ setColorMode: (colorMode) => set({ colorMode }),
4715
+ // setLayoutView: (layoutView) => set(() => ({ layoutView })),
4716
+ // setDeviceType: (deviceType) => set(() => ({ deviceType })),
4717
+ setIsMobileView: (isMobileView) => set({ isMobileView }),
4718
+ setMaxScrollHeight: (maxScrollHeight) => set({ maxScrollHeight }),
4719
+ setIsDialogClosing: (isDialogClosing) => set({ isDialogClosing }),
4720
+ setIsDialogOpen: (isDialogOpen) => set({ isDialogOpen }),
4721
+ setIsDialogForced: (isDialogForced) => set({ isDialogForced }),
4722
+ setDialogTitle: (dialogTitle) => set({ dialogTitle }),
4723
+ setDialogDescription: (dialogDescription) => set({ dialogDescription }),
4724
+ setDialogContent: (dialogContent) => set({ dialogContent }),
4725
+ setIsSettings: (isSettings) => set({ isSettings })
4726
+ }));
4727
+
4691
4728
  // src/internal/lib/utils.ts
4692
4729
  var import_clsx = require("clsx");
4693
4730
  var import_tailwind_merge = require("tailwind-merge");
@@ -4780,9 +4817,11 @@ function Footer() {
4780
4817
  const { callbacks } = useLumiaPassportConfig();
4781
4818
  const { address, setSession, setAddress, setStatus, setError, setIsLoading } = useLumiaPassportSession();
4782
4819
  const setPage = useLayoutDataStore((st) => st.setPage);
4820
+ const setIsDialogForced = useLayoutStore((st) => st.setIsDialogForced);
4783
4821
  const { mutate: disconnect, isPending: isDisconnecting } = (0, import_react_query2.useMutation)({
4784
4822
  mutationFn: async (disconnectAddress) => {
4785
4823
  if (!disconnectAddress) throw new Error("No address to disconnect");
4824
+ setIsDialogForced(true);
4786
4825
  setError(null);
4787
4826
  setStatus("disconnecting");
4788
4827
  setIsLoading(true);
@@ -4799,12 +4838,16 @@ function Footer() {
4799
4838
  setStatus("idle");
4800
4839
  setIsLoading(false);
4801
4840
  callbacks?.onLumiaPassportDisconnect?.({ address: disconnectAddress, userId: disconnectedUserId });
4802
- setTimeout(() => setPage("auth" /* AUTH */), 200);
4841
+ setTimeout(() => {
4842
+ setPage("auth" /* AUTH */);
4843
+ setIsDialogForced(false);
4844
+ }, 200);
4803
4845
  },
4804
4846
  onError: (err) => {
4805
4847
  setError(err.message || "An unknown error occurred during sign out");
4806
4848
  setStatus("idle");
4807
4849
  setIsLoading(false);
4850
+ setIsDialogForced(false);
4808
4851
  }
4809
4852
  });
4810
4853
  const { name, logo, logoDataUri } = lumiaBeam;
@@ -4990,35 +5033,6 @@ function BalanceView(props) {
4990
5033
  // src/internal/components/KYC/KycMenu.tsx
4991
5034
  var import_lucide_react5 = require("lucide-react");
4992
5035
 
4993
- // src/internal/hooks/useLayoutStore.ts
4994
- var import_zustand2 = require("zustand");
4995
- var useLayoutStore = (0, import_zustand2.create)((set) => ({
4996
- colorMode: "light",
4997
- // layoutView: 'desktop',
4998
- // deviceType: 'non-touch',
4999
- isMobileView: false,
5000
- maxScrollHeight: MAX_CONTENT_HEIGHT,
5001
- isDialogClosing: false,
5002
- isDialogOpen: false,
5003
- isDialogForced: false,
5004
- dialogTitle: null,
5005
- dialogDescription: null,
5006
- dialogContent: null,
5007
- isSettings: false,
5008
- setColorMode: (colorMode) => set({ colorMode }),
5009
- // setLayoutView: (layoutView) => set(() => ({ layoutView })),
5010
- // setDeviceType: (deviceType) => set(() => ({ deviceType })),
5011
- setIsMobileView: (isMobileView) => set({ isMobileView }),
5012
- setMaxScrollHeight: (maxScrollHeight) => set({ maxScrollHeight }),
5013
- setIsDialogClosing: (isDialogClosing) => set({ isDialogClosing }),
5014
- setIsDialogOpen: (isDialogOpen) => set({ isDialogOpen }),
5015
- setIsDialogForced: (isDialogForced) => set({ isDialogForced }),
5016
- setDialogTitle: (dialogTitle) => set({ dialogTitle }),
5017
- setDialogDescription: (dialogDescription) => set({ dialogDescription }),
5018
- setDialogContent: (dialogContent) => set({ dialogContent }),
5019
- setIsSettings: (isSettings) => set({ isSettings })
5020
- }));
5021
-
5022
5036
  // src/internal/components/KYC/SumsubIframe.tsx
5023
5037
  var import_lucide_react4 = require("lucide-react");
5024
5038
 
@@ -5401,7 +5415,7 @@ function Header() {
5401
5415
  // package.json
5402
5416
  var package_default = {
5403
5417
  name: "@lumiapassport/ui-kit",
5404
- version: "1.14.21",
5418
+ version: "1.14.23",
5405
5419
  description: "React UI components and hooks for Lumia Passport authentication and Account Abstraction",
5406
5420
  type: "module",
5407
5421
  main: "./dist/index.cjs",
@@ -5530,8 +5544,9 @@ var CONTENT_BG_SETUP = {
5530
5544
  boxShadow: "0px 4px 10px var(--l-pass-shadow-c)"
5531
5545
  };
5532
5546
  var DialogContent = (0, import_react6.forwardRef)(
5533
- ({ className, children, hideClose, colorMode, ...props }, ref) => {
5547
+ ({ className, children, colorMode, ...props }, ref) => {
5534
5548
  const isSettings = useLayoutStore((st) => st.isSettings);
5549
+ const isDialogForced = useLayoutStore((st) => st.isDialogForced);
5535
5550
  const setPage = useLayoutDataStore((st) => st.setPage);
5536
5551
  const settingsNotifications = useLayoutDataStore((st) => st.settingsNotifications);
5537
5552
  const { isMobileView, isClosing, style } = useDecideContentStyles();
@@ -5562,7 +5577,7 @@ var DialogContent = (0, import_react6.forwardRef)(
5562
5577
  ...props,
5563
5578
  children: [
5564
5579
  children,
5565
- /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
5580
+ !isDialogForced && /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
5566
5581
  "div",
5567
5582
  {
5568
5583
  className: cn(
@@ -5595,7 +5610,7 @@ var DialogContent = (0, import_react6.forwardRef)(
5595
5610
  ]
5596
5611
  }
5597
5612
  ),
5598
- !hideClose && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(DialogPrimitive.Close, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Button, { variant: "ghost", size: "icon", className: "w-4 h-4", children: [
5613
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(DialogPrimitive.Close, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(Button, { variant: "ghost", size: "icon", className: "w-4 h-4", children: [
5599
5614
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react8.X, { className: "h-4 w-4" }),
5600
5615
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: "sr-only", children: "Close" })
5601
5616
  ] }) })
@@ -5868,23 +5883,25 @@ function useBackupStatusChanges() {
5868
5883
 
5869
5884
  // src/internal/hooks/useBackupWarning.ts
5870
5885
  var import_react10 = require("react");
5871
- var WARNING_TIMEOUT_MS = 24e3;
5886
+ var WARNING_TIMEOUT_MS = 4500;
5872
5887
  function useBackupWarning() {
5873
- const config = useLumiaPassportConfig().config;
5874
5888
  const address = useLumiaPassportSession((st) => st.address);
5875
5889
  const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
5876
5890
  const page = useLayoutDataStore((st) => st.page);
5877
5891
  const setPage = useLayoutDataStore((st) => st.setPage);
5878
5892
  const timeoutRef = (0, import_react10.useRef)(null);
5893
+ const touchedRef = (0, import_react10.useRef)(false);
5879
5894
  (0, import_react10.useEffect)(() => {
5895
+ if (touchedRef.current) return;
5880
5896
  if (timeoutRef.current) {
5881
5897
  clearTimeout(timeoutRef.current);
5882
5898
  timeoutRef.current = null;
5883
5899
  }
5884
- const isShown = config.current?.warnings?.backupWarning && !hasServerVault;
5885
- if (!address || !isShown || page === "keysare-backup" /* KEYSARE_BACKUP */) return;
5900
+ if (!address || !!hasServerVault || page === "keysare-backup" /* KEYSARE_BACKUP */) return;
5886
5901
  timeoutRef.current = setTimeout(() => {
5887
5902
  setPage("keysare-backup" /* KEYSARE_BACKUP */);
5903
+ touchedRef.current = true;
5904
+ timeoutRef.current = null;
5888
5905
  }, WARNING_TIMEOUT_MS);
5889
5906
  return () => {
5890
5907
  if (timeoutRef.current) {
@@ -5949,7 +5966,7 @@ function useDetectMaxScrollHeight() {
5949
5966
  }
5950
5967
 
5951
5968
  // src/internal/hooks/usePageMapper.tsx
5952
- var import_react52 = require("react");
5969
+ var import_react54 = require("react");
5953
5970
 
5954
5971
  // src/internal/components/AuthMenu/AuthMenu.tsx
5955
5972
  var import_framer_motion = require("framer-motion");
@@ -7186,8 +7203,18 @@ function useAuthMenuHandlers() {
7186
7203
  const qc = (0, import_react_query8.useQueryClient)();
7187
7204
  const pendingLoginResponseRef = (0, import_react20.useRef)(null);
7188
7205
  const setPage = useLayoutDataStore((st) => st.setPage);
7206
+ const setIsDialogForced = useLayoutStore((st) => st.setIsDialogForced);
7189
7207
  const [telegramCleanup, setTelegramCleanup] = (0, import_react20.useState)(null);
7190
- const { usePaymaster, setError, setStatus, setSession, setAddress, setRecoveryUserId, setHasServerVault } = useLumiaPassportSession();
7208
+ const {
7209
+ usePaymaster,
7210
+ setError,
7211
+ setStatus,
7212
+ setSession,
7213
+ setAddress,
7214
+ setRecoveryUserId,
7215
+ setHasServerVault,
7216
+ setIsLoading
7217
+ } = useLumiaPassportSession();
7191
7218
  const setStep = useAuthStore((st) => st.setStep);
7192
7219
  const setAlert = useAuthStore((st) => st.setAlert);
7193
7220
  const createSessionWithKeyshare = (0, import_react20.useCallback)(
@@ -7225,6 +7252,7 @@ function useAuthMenuHandlers() {
7225
7252
  [setStatus, callbacks, usePaymaster]
7226
7253
  );
7227
7254
  const onAuthSuccess = (0, import_react20.useCallback)(async () => {
7255
+ setIsLoading(true);
7228
7256
  const loginResponse = pendingLoginResponseRef.current;
7229
7257
  if (!loginResponse || !loginResponse.userId) {
7230
7258
  setError("Authentication failed - no login data available");
@@ -7253,10 +7281,6 @@ function useAuthMenuHandlers() {
7253
7281
  );
7254
7282
  setError(null);
7255
7283
  setAlert(null);
7256
- setSession(sess);
7257
- setAddress(addr);
7258
- setStatus("ready");
7259
- setPage(null);
7260
7284
  try {
7261
7285
  callbacks?.onLumiaPassportConnect?.({ address: addr, session: sess });
7262
7286
  callbacks?.onLumiaPassportAccount?.({ userId, address: addr, session: sess, hasKeyshare: hasServerKeyshare });
@@ -7277,6 +7301,16 @@ function useAuthMenuHandlers() {
7277
7301
  } catch (e) {
7278
7302
  console.warn("[UI-KIT] Vault status check failed:", e);
7279
7303
  }
7304
+ setSession(sess);
7305
+ setAddress(addr);
7306
+ setStatus("ready");
7307
+ if (jwt?.isNewUser) {
7308
+ console.log("[AuthMenu] New user detected - forcing backup flow");
7309
+ setIsDialogForced(true);
7310
+ setPage("keysare-backup" /* KEYSARE_BACKUP */);
7311
+ } else {
7312
+ setPage(null);
7313
+ }
7280
7314
  } catch (error) {
7281
7315
  if (error?.code === "KEYSHARE_RECOVERY_NEEDED") {
7282
7316
  console.warn("[AuthMenu] Keyshare recovery needed for user:", userId);
@@ -7296,6 +7330,8 @@ function useAuthMenuHandlers() {
7296
7330
  });
7297
7331
  setStep("failed");
7298
7332
  }
7333
+ } finally {
7334
+ setIsLoading(false);
7299
7335
  }
7300
7336
  }, [
7301
7337
  // config.projectId,
@@ -7309,6 +7345,7 @@ function useAuthMenuHandlers() {
7309
7345
  setAddress,
7310
7346
  setRecoveryUserId,
7311
7347
  setHasServerVault,
7348
+ setIsDialogForced,
7312
7349
  createSessionWithKeyshare
7313
7350
  ]);
7314
7351
  const checkDisplayNameRequired = (0, import_react20.useCallback)(async (loginResponse) => {
@@ -7682,20 +7719,28 @@ function VerifyStep(props) {
7682
7719
  var import_jsx_runtime30 = require("react/jsx-runtime");
7683
7720
  var AuthMenu = () => {
7684
7721
  const isIframeReady = useLumiaPassportSession((st) => st.isIframeReady);
7685
- const [isMenuReady, setIsMenuReady] = (0, import_react22.useState)(false);
7686
7722
  const mainPageHeight = useLayoutDataStore((st) => st.mainPageHeight);
7687
7723
  const setMainPageHeight = useLayoutDataStore((st) => st.setMainPageHeight);
7688
7724
  const { step, alert: alert2, setStep, setPasskeyStatus, setEmail, setAlert } = useAuthStore();
7689
7725
  const { pendingLoginResponseRef, onAuthSuccess, goBackToSignIn, checkDisplayNameRequired } = useAuthMenuHandlers();
7726
+ const [isAlertShowReady, setIsAlertShowReady] = (0, import_react22.useState)(false);
7727
+ const readyTimeout = (0, import_react22.useRef)(null);
7728
+ (0, import_react22.useEffect)(() => {
7729
+ if (readyTimeout.current) {
7730
+ clearTimeout(readyTimeout.current);
7731
+ readyTimeout.current = null;
7732
+ }
7733
+ setIsAlertShowReady(false);
7734
+ readyTimeout.current = setTimeout(() => setIsAlertShowReady(true), 750);
7735
+ }, [step]);
7690
7736
  (0, import_react22.useEffect)(() => {
7691
7737
  setMainPageHeight(DEFAULT_AUTH_MENU_HEIGHT);
7692
- setTimeout(() => setIsMenuReady(true), 500);
7693
7738
  return () => {
7694
7739
  setStep("signin");
7695
7740
  setEmail("");
7696
7741
  setPasskeyStatus("idle");
7697
7742
  setAlert(null);
7698
- setIsMenuReady(false);
7743
+ setIsAlertShowReady(false);
7699
7744
  };
7700
7745
  }, []);
7701
7746
  if (!isIframeReady) {
@@ -7749,12 +7794,12 @@ var AuthMenu = () => {
7749
7794
  },
7750
7795
  step
7751
7796
  ) }),
7752
- isMenuReady && /* --------------------------------------------------------------------------------------------------------------- */
7797
+ isAlertShowReady && /* --------------------------------------------------------------------------------------------------------------- */
7753
7798
  /* -------- EXPANDABLE is designed to adjust its height automatically whenever ANY 1ST LEVEL CHILD changes! ------ */
7754
7799
  /* In order to ensure smooth expand animation consistency do not use 2nd (or 3rd etc) nested conditional rendering */
7755
7800
  /* elements, cause it might outcome Expandable not reacting to deeply nested elements' height changes ------------ */
7756
7801
  /* --------------------------------------------------------------------------------------------------------------- */
7757
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Expandable, { isExpanded: !!alert2 && isMenuReady, contentClassName: "px-[var(--l-pass-pd)]", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(Highlight, { type: "error", className: "w-full flex gap-[var(--l-pass-gap)] ", children: [
7802
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Expandable, { isExpanded: !!alert2 && isAlertShowReady, contentClassName: "px-[var(--l-pass-pd)]", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(Highlight, { type: "error", className: "w-full flex gap-[var(--l-pass-gap)] ", children: [
7758
7803
  /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_lucide_react15.AlertTriangle, { className: "w-5 h-5 text-[var(--l-pass-error)]" }),
7759
7804
  /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("span", { className: "block w-full flex flex-col gap-1 flex-1", children: [
7760
7805
  alert2?.title && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "block font-bold leading-5", children: alert2.title }),
@@ -8441,13 +8486,13 @@ function BuyMenu() {
8441
8486
 
8442
8487
  // src/internal/components/KeyshareRestoreMenu/KeyshareRestoreMenu.tsx
8443
8488
  var import_react_query17 = require("@tanstack/react-query");
8444
- var import_lucide_react27 = require("lucide-react");
8445
- var import_react34 = require("react");
8489
+ var import_lucide_react26 = require("lucide-react");
8490
+ var import_react36 = require("react");
8446
8491
  init_vaultClient();
8447
8492
 
8448
8493
  // src/internal/components/KeyshareRestoreMenu/components/MethodSelector.tsx
8449
8494
  var import_lucide_react19 = require("lucide-react");
8450
- var import_react30 = require("react");
8495
+ var import_react31 = require("react");
8451
8496
 
8452
8497
  // src/internal/components/KeyshareRestoreMenu/hooks/useCheckBackupAvailability.ts
8453
8498
  var import_react_query12 = require("@tanstack/react-query");
@@ -8631,12 +8676,21 @@ function useOnRestoreSuccess() {
8631
8676
 
8632
8677
  // src/internal/components/KeyshareRestoreMenu/hooks/useCreateBackup.ts
8633
8678
  var import_react_query13 = require("@tanstack/react-query");
8679
+ var import_react29 = require("react");
8634
8680
  init_iframe_manager();
8635
8681
  function useCreateBackup() {
8636
8682
  const qc = (0, import_react_query13.useQueryClient)();
8637
8683
  const session = useLumiaPassportSession((st) => st.session);
8638
8684
  const address = useLumiaPassportSession((st) => st.address);
8639
- const { usePasskey, restorePassword, selectedCloudProvider, setSuccess, setError } = useRestoreStore();
8685
+ const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
8686
+ const setIsDialogForced = useLayoutStore((st) => st.setIsDialogForced);
8687
+ const { usePasskey, restorePassword, selectedCloudProvider, setSuccess, setError, setMethod } = useRestoreStore();
8688
+ (0, import_react29.useEffect)(() => {
8689
+ if (!hasServerVault) {
8690
+ setMethod("server");
8691
+ setIsDialogForced(true);
8692
+ }
8693
+ }, [hasServerVault, setIsDialogForced, setMethod]);
8640
8694
  const passportUserId = session?.mpcUserId || "";
8641
8695
  const onBackupSuccess = () => console.log("[ConnectWalletButton] Backup created successfully");
8642
8696
  const { mutate: createPasswordBackup, isPending: isPasswordBackupCreating } = (0, import_react_query13.useMutation)({
@@ -8666,7 +8720,7 @@ function useCreateBackup() {
8666
8720
  })
8667
8721
  );
8668
8722
  }
8669
- onBackupSuccess?.();
8723
+ onBackupSuccess();
8670
8724
  } else {
8671
8725
  setError(response.error || "Server backup failed");
8672
8726
  }
@@ -8703,7 +8757,7 @@ function useCreateBackup() {
8703
8757
  })
8704
8758
  );
8705
8759
  }
8706
- onBackupSuccess?.();
8760
+ onBackupSuccess();
8707
8761
  },
8708
8762
  onError: async (error) => {
8709
8763
  setError(error?.message || "Backup creation failed");
@@ -8743,7 +8797,7 @@ function useCreateBackup() {
8743
8797
  })
8744
8798
  );
8745
8799
  }
8746
- onBackupSuccess?.();
8800
+ onBackupSuccess();
8747
8801
  },
8748
8802
  onError: async (error) => {
8749
8803
  setError(error?.message || "Backup creation failed");
@@ -8873,7 +8927,7 @@ function useRestoreAccount() {
8873
8927
  }
8874
8928
 
8875
8929
  // src/internal/components/KeyshareRestoreMenu/hooks/useValidateFileBackup.ts
8876
- var import_react29 = require("react");
8930
+ var import_react30 = require("react");
8877
8931
  function validateRestoreFileFormat(parsedData) {
8878
8932
  if (typeof parsedData !== "object" || parsedData === null) return false;
8879
8933
  const data = parsedData;
@@ -8883,7 +8937,7 @@ function useValidateFileBackup() {
8883
8937
  const restoreFile = useRestoreStore((st) => st.restoreFile);
8884
8938
  const setError = useRestoreStore((st) => st.setError);
8885
8939
  const setUsePasskey = useRestoreStore((st) => st.setUsePasskey);
8886
- (0, import_react29.useEffect)(() => {
8940
+ (0, import_react30.useEffect)(() => {
8887
8941
  if (!restoreFile) {
8888
8942
  return;
8889
8943
  }
@@ -8923,7 +8977,7 @@ function MethodSelector(props) {
8923
8977
  setError,
8924
8978
  setSuccess
8925
8979
  } = useRestoreStore();
8926
- const recoveryRenderMethods = (0, import_react30.useMemo)(() => {
8980
+ const recoveryRenderMethods = (0, import_react31.useMemo)(() => {
8927
8981
  const methodsWithBackupData = getRecoveryRenderMethods(mode).map((mt) => {
8928
8982
  let data = null;
8929
8983
  switch (true) {
@@ -8938,7 +8992,7 @@ function MethodSelector(props) {
8938
8992
  return methodsWithBackupData;
8939
8993
  }, [mode, serverRecoveryStatus]);
8940
8994
  if (!!selectedRecoveryMethod) return null;
8941
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_react30.Fragment, { children: [
8995
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_react31.Fragment, { children: [
8942
8996
  /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "block w-full text-xs font-semibold text-center leading-8 text-[var(--l-pass-fg-muted)]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "leading-8", children: mode === "restore" ? "Choose restore method" : "Create or Update Backup via" }) }),
8943
8997
  /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
8944
8998
  "div",
@@ -8965,7 +9019,7 @@ function MethodSelector(props) {
8965
9019
  },
8966
9020
  children: [
8967
9021
  /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Icon2, { className: "w-5 h-5 md:w-8 md:h-8" }),
8968
- !!data?.lastBackup && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-6 h-6 absolute -top-2 -right-2 flex items-center justify-center bg-[var(--l-pass-bg)]", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(PositiveIcon, { className: "w-4 h-4" }) })
9022
+ !!data?.lastBackup && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "w-6 h-6 absolute -top-2 -right-2 flex items-center justify-center bg-transparent", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(PositiveIcon, { className: "w-4 h-4" }) })
8969
9023
  ]
8970
9024
  }
8971
9025
  ),
@@ -8977,39 +9031,12 @@ function MethodSelector(props) {
8977
9031
  }
8978
9032
 
8979
9033
  // src/internal/components/KeyshareRestoreMenu/components/NoBackupFound.tsx
8980
- var import_lucide_react22 = require("lucide-react");
8981
-
8982
- // src/internal/components/KeyshareRestoreMenu/components/PasswordPasskey.tsx
8983
9034
  var import_lucide_react21 = require("lucide-react");
8984
- var import_react31 = require("react");
8985
9035
 
8986
- // src/internal/components/ui/checkbox.tsx
8987
- var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"), 1);
9036
+ // src/internal/components/KeyshareRestoreMenu/components/PasswordPasskey.tsx
8988
9037
  var import_lucide_react20 = require("lucide-react");
9038
+ var import_react32 = require("react");
8989
9039
  var import_jsx_runtime39 = require("react/jsx-runtime");
8990
- function Checkbox({ className, ...props }) {
8991
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
8992
- CheckboxPrimitive.Root,
8993
- {
8994
- "data-slot": "checkbox",
8995
- className: cn(
8996
- "cursor-pointer peer size-5 shrink-0 rounded-[5px] outline-none",
8997
- "border border-[var(--l-pass-bd)] data-[state=checked]:border-[var(--l-pass-bd-intense)] aria-invalid:border-[var(--l-pass-error)]",
8998
- "bg-[var(--l-pass-secondary)] data-[state=checked]:bg-[var(--l-pass-secondary)]",
8999
- "data-[state=checked]:text-[var(--l-pass-fg)]",
9000
- "aria-invalid:ring-[var(--l-pass-error)]",
9001
- "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[2px]",
9002
- "disabled:cursor-not-allowed disabled:opacity-50",
9003
- className
9004
- ),
9005
- ...props,
9006
- children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(CheckboxPrimitive.Indicator, { "data-slot": "checkbox-indicator", className: "grid place-content-center transition-none", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.CheckIcon, { className: "w-4 h-4 text-[var(--l-pass-fg)]" }) })
9007
- }
9008
- );
9009
- }
9010
-
9011
- // src/internal/components/KeyshareRestoreMenu/components/PasswordPasskey.tsx
9012
- var import_jsx_runtime40 = require("react/jsx-runtime");
9013
9040
  function PasswordPasskey(props) {
9014
9041
  const {
9015
9042
  mode = "restore",
@@ -9020,11 +9047,17 @@ function PasswordPasskey(props) {
9020
9047
  isEncryptionMethod,
9021
9048
  actionHandler
9022
9049
  } = props;
9023
- const actionRef = (0, import_react31.useRef)(null);
9024
- const { showPassword, restorePassword, usePasskey, error, setUsePasskey, setRestorePassword, setShowPassword } = useRestoreStore();
9025
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_jsx_runtime40.Fragment, { children: [
9026
- !usePasskey ? /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "w-full flex gap-[var(--l-pass-gap)]", children: [
9027
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9050
+ const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
9051
+ const actionRef = (0, import_react32.useRef)(null);
9052
+ const { showPassword, restorePassword, usePasskey, error, setRestorePassword, setShowPassword } = useRestoreStore();
9053
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_jsx_runtime39.Fragment, { children: [
9054
+ !hasServerVault && /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { className: "block w-full text-[10px] leading-4 px-[var(--l-pass-pd)] truncate", children: [
9055
+ "Use your ",
9056
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("strong", { children: usePasskey ? "Passkey" : "Password" }),
9057
+ " to complete account security setup."
9058
+ ] }),
9059
+ !usePasskey ? /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "w-full flex gap-[var(--l-pass-gap)]", children: [
9060
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
9028
9061
  Input,
9029
9062
  {
9030
9063
  autoComplete: "off",
@@ -9040,7 +9073,7 @@ function PasswordPasskey(props) {
9040
9073
  onKeyDown: (e) => {
9041
9074
  if (e.key === "Enter" && !isLoading && restorePassword) actionRef.current?.click();
9042
9075
  },
9043
- element: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9076
+ element: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
9044
9077
  Button,
9045
9078
  {
9046
9079
  variant: "ghost",
@@ -9049,12 +9082,12 @@ function PasswordPasskey(props) {
9049
9082
  title: "Toggle Password Visibility",
9050
9083
  disabled: isLoading || disabled,
9051
9084
  onClick: () => setShowPassword(!showPassword),
9052
- children: showPassword ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.EyeOff, { className: "h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.Eye, { className: "h-4 w-4" })
9085
+ children: showPassword ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.EyeOff, { className: "h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.Eye, { className: "h-4 w-4" })
9053
9086
  }
9054
9087
  )
9055
9088
  }
9056
9089
  ),
9057
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9090
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
9058
9091
  Button,
9059
9092
  {
9060
9093
  ref: actionRef,
@@ -9064,10 +9097,10 @@ function PasswordPasskey(props) {
9064
9097
  title: actionCaption,
9065
9098
  disabled: isLoading || disabled || error?.includes("Invalid backup file") || !usePasskey && !restorePassword,
9066
9099
  className: "w-full w-12 h-12 flex-shrink-0 rounded-[var(--l-pass-el-bdrs)]",
9067
- children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.Loader, { className: "animate-spin h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(ActionIcon, { className: "h-4 w-4" })
9100
+ children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.Loader, { className: "animate-spin h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.ChevronRight, { className: "h-4 w-4" })
9068
9101
  }
9069
9102
  )
9070
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
9103
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
9071
9104
  Button,
9072
9105
  {
9073
9106
  ref: actionRef,
@@ -9078,54 +9111,35 @@ function PasswordPasskey(props) {
9078
9111
  disabled: isLoading || disabled || !!error || !usePasskey && !restorePassword,
9079
9112
  className: "w-full",
9080
9113
  children: [
9081
- isLoading ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.Loader, { className: "animate-spin h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(ActionIcon, { className: "h-4 w-4" }),
9082
- !isLoading && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { children: actionCaption })
9114
+ isLoading ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.Loader, { className: "animate-spin h-4 w-4" }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ActionIcon, { className: "h-4 w-4" }),
9115
+ !isLoading && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { children: actionCaption })
9083
9116
  ]
9084
9117
  }
9085
9118
  ),
9086
- !isEncryptionMethod && /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(Highlight, { type: "info", className: "w-full flex flex-col gap-[var(--l-pass-gap)] text-[10px]", children: [
9087
- mode === "backup" && /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "flex gap-[var(--l-pass-gap)]", children: [
9088
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.Info, { className: "h-4 w-4 flex-shrink-0" }),
9089
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("span", { className: "text-[var(--l-pass-fg-muted)] block flex-1", children: [
9090
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { children: "Your Backup must be encrypted with a password or a passkey, so only you can decrypt it-no mater where it's stored." }),
9091
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("br", {}),
9092
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("span", { children: [
9093
- " Your Backup must be encrypted with a password or a passkey, so only you can decrypt it-no mater where it's stored. ",
9094
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9095
- "a",
9096
- {
9097
- target: "_blank",
9098
- rel: "noopener noreferrer",
9099
- href: "https://safety.google/safety/authentication/passkey/",
9100
- className: "inline font-bold underline underline-offset-2",
9101
- children: "Learn more about Google Passkey"
9102
- }
9103
- )
9104
- ] })
9105
- ] })
9106
- ] }),
9107
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9108
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9109
- Checkbox,
9110
- {
9111
- id: "use-backup-password-or-passkey",
9112
- name: "use-backup-password-checkbox",
9113
- checked: usePasskey,
9114
- disabled: isLoading || disabled || !!error,
9115
- onCheckedChange: (checked) => {
9116
- if (!!checked) setRestorePassword("");
9117
- setUsePasskey(!!checked);
9119
+ !isEncryptionMethod && !!usePasskey && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Highlight, { type: "info", className: "w-full flex flex-col gap-[var(--l-pass-gap)] text-[10px]", children: mode === "backup" && /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex gap-[var(--l-pass-gap)]", children: [
9120
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_lucide_react20.Info, { className: "h-4 w-4 flex-shrink-0" }),
9121
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { className: "text-[var(--l-pass-fg-muted)] block flex-1", children: [
9122
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "block mb-1", children: "Your Backup must be encrypted with a password or a passkey, so only you can decrypt it no matter where backup is stored." }),
9123
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("span", { className: "block", children: [
9124
+ " Passkeys are a password-free alternative. ",
9125
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
9126
+ "a",
9127
+ {
9128
+ target: "_blank",
9129
+ rel: "noopener noreferrer",
9130
+ href: "https://safety.google/safety/authentication/passkey/",
9131
+ className: "inline font-bold underline underline-offset-2 text-[var(--l-pass-fg)] hover:text-[var(--l-pass-fg-h)] active:text-[var(--l-pass-fg-a)]",
9132
+ children: "(Learn more about Google Passkey)"
9118
9133
  }
9119
- }
9120
- ),
9121
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("label", { htmlFor: "use-backup-password-or-passkey", className: "text-xs text-[var(--l-pass-fg-muted)]", children: "Use Passkey to encrypt your keyshare backup" })
9134
+ )
9135
+ ] })
9122
9136
  ] })
9123
- ] })
9137
+ ] }) })
9124
9138
  ] });
9125
9139
  }
9126
9140
 
9127
9141
  // src/internal/components/KeyshareRestoreMenu/components/NoBackupFound.tsx
9128
- var import_jsx_runtime41 = require("react/jsx-runtime");
9142
+ var import_jsx_runtime40 = require("react/jsx-runtime");
9129
9143
  function NoBackupFound(props) {
9130
9144
  const { isLoading, restoreFromFile } = props;
9131
9145
  const restoreFile = useRestoreStore((st) => st.restoreFile);
@@ -9134,38 +9148,33 @@ function NoBackupFound(props) {
9134
9148
  const setRestoreFile = useRestoreStore((st) => st.setRestoreFile);
9135
9149
  const setError = useRestoreStore((st) => st.setError);
9136
9150
  useValidateFileBackup();
9137
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
9138
- !restoreFile && /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(Highlight, { type: "warning", className: "animate-glow-warning flex gap-[var(--l-pass-gap)]", children: [
9139
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_lucide_react22.AlertCircle, { className: "h-4 w-4 flex-0" }),
9140
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "w-full flex-1 flex flex-col gap-2", children: [
9141
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "block w-full text-xl leading-5 font-semibold", children: "No Keyshare Found! Account Recovery Needed" }),
9142
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("span", { className: "block w-full text-xs", children: [
9143
- "Current device doesn't have access to your wallet keyshare and no backup entry exists in our Keyshare Vault.",
9144
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("br", {}),
9145
- "If you are using any other device but the one where you created your account, try using the original device to create a backup, then restore account access on current device with created backup."
9151
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(import_jsx_runtime40.Fragment, { children: [
9152
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "flex items-center justify-center gap-2 px-5 pt-3 pb-6", children: [
9153
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.User, { className: "w-6 h-6" }),
9154
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "font-bold text-xl leading-6", children: "Account Recovery" })
9155
+ ] }),
9156
+ !restoreFile && /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(Highlight, { type: "warning", className: "animate-glow-warning flex gap-[var(--l-pass-gap)]", children: [
9157
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.AlertCircle, { className: "h-4 w-4 flex-0" }),
9158
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "w-full flex-1 flex flex-col gap-2", children: [
9159
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "block w-full text-sm leading-4 font-bold", children: "No Backup Found" }),
9160
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("span", { className: "block w-full text-xs", children: [
9161
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "block mb-1", children: "This device doesn't have access to your wallet keyshare, and no backup was found." }),
9162
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "block w-full", children: "If you're using a different device, please return to the one where you created your account to create a backup, then restore access on this device." })
9146
9163
  ] })
9147
9164
  ] })
9148
9165
  ] }),
9149
- restoreFile ? /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "flex items-center justify-center gap-[var(--l-pass-gap)] px-[var(--l-pass-pd)] py-[var(--l-pass-gap)]", children: [
9150
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_lucide_react22.RefreshCcw, { className: "w-6 h-6" }),
9151
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "font-bold text-xl leading-6", children: "Account Recovery" })
9152
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "w-full flex items-center", children: [
9153
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { style: { borderTop: "1px solid var(--l-pass-bd)" }, className: "flex-1" }),
9154
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex-none font-bold px-2 text-xs leading-4", children: "Account Recovery" }),
9155
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { style: { borderTop: "1px solid var(--l-pass-bd)" }, className: "flex-1" })
9156
- ] }),
9157
- !restoreFile && /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(Highlight, { type: "warning", className: "flex gap-[var(--l-pass-gap)]", children: [
9158
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_lucide_react22.Upload, { className: "h-4 w-4 flex-0" }),
9159
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "block w-full text-xs", children: "Upload a backup file if you have one" })
9166
+ !restoreFile && /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(Highlight, { type: "info", className: "flex gap-[var(--l-pass-gap)]", children: [
9167
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react21.Upload, { className: "h-4 w-4 flex-0" }),
9168
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "block w-full text-xs", children: "Upload a backup file if you have one" })
9160
9169
  ] }),
9161
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
9170
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9162
9171
  "label",
9163
9172
  {
9164
9173
  className: cn(
9165
- "block w-full h-16 flex items-center justify-center cursor-pointer",
9166
- "p-[var(--l-pass-pd)] bg-[var(--l-pass-secondary)] rounded-[var(--l-pass-el-bdrs)]"
9174
+ "block w-full flex items-center justify-center cursor-pointer",
9175
+ "p-[var(--l-pass-gap)] bg-[var(--l-pass-secondary)] rounded-[var(--l-pass-el-bdrs)]"
9167
9176
  ),
9168
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
9177
+ children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9169
9178
  "input",
9170
9179
  {
9171
9180
  type: "file",
@@ -9177,23 +9186,23 @@ function NoBackupFound(props) {
9177
9186
  className: cn(
9178
9187
  "file:cursor-pointer",
9179
9188
  "transition-colors duration-200 ease-in-out",
9180
- "block w-fit text-[10px] font-medium font-mono",
9181
- "file:font-mono file:h-8 file:text-[10px] file:bg-[var(--l-pass-primary)] file:text-[var(--l-pass-fg-inverted)]",
9189
+ "block w-full font-medium font-mono",
9190
+ "file:h-12 file:text-[16px] file:bg-[var(--l-pass-primary)] file:text-[var(--l-pass-fg-inverted)]",
9182
9191
  "file:hover:opacity-90 file:active:opacity-80",
9183
- "file:mr-[var(--l-pass-pd)] file:px-[var(--l-pass-pd)] file:rounded-[var(--l-pass-el-bdrs)] file:border-0"
9192
+ "file:mr-[var(--l-pass-gap)] file:px-[var(--l-pass-pd)] file:rounded-[var(--l-pass-el-bdrs)] file:border-0"
9184
9193
  )
9185
9194
  }
9186
9195
  )
9187
9196
  }
9188
9197
  ),
9189
- restoreFile && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
9198
+ restoreFile && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
9190
9199
  PasswordPasskey,
9191
9200
  {
9192
9201
  mode: "restore",
9193
9202
  isEncryptionMethod: true,
9194
9203
  isLoading,
9195
9204
  actionCaption: `Decrypt ${restoreFile ? restoreFile.name : "Backup File"} by ${usePasskey ? "Passkey" : "Password"}`,
9196
- actionIcon: import_lucide_react22.FileUp,
9205
+ actionIcon: import_lucide_react21.FileUp,
9197
9206
  actionHandler: () => restoreFromFile()
9198
9207
  }
9199
9208
  )
@@ -9201,40 +9210,131 @@ function NoBackupFound(props) {
9201
9210
  }
9202
9211
 
9203
9212
  // src/internal/components/KeyshareRestoreMenu/methods/File.tsx
9204
- var import_lucide_react23 = require("lucide-react");
9213
+ var import_lucide_react22 = require("lucide-react");
9214
+
9215
+ // src/internal/components/ui/switch.tsx
9216
+ var import_react33 = require("react");
9217
+ var import_jsx_runtime41 = require("react/jsx-runtime");
9218
+ var Switch = (0, import_react33.forwardRef)((props, ref) => {
9219
+ const { className, labels, ...inputProps } = props;
9220
+ const colorMode = useLayoutStore((st) => st.colorMode);
9221
+ const [labelW, setLabelW] = (0, import_react33.useState)(0);
9222
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
9223
+ "div",
9224
+ {
9225
+ role: "switch",
9226
+ "aria-checked": inputProps.checked,
9227
+ className: cn(
9228
+ "block rounded-full w-fit h-7 p-1 outline-none flex-none",
9229
+ inputProps.checked ? "bg-[var(--l-pass-bg-success)]" : "bg-[var(--l-pass-bg-info)]",
9230
+ className
9231
+ ),
9232
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
9233
+ "label",
9234
+ {
9235
+ className: "relative inline-block h-5 outline-none",
9236
+ style: {
9237
+ width: `calc(20px + ${labelW}px)`,
9238
+ transition: "width 200ms ease",
9239
+ cursor: inputProps.disabled ? "not-allowed" : "pointer"
9240
+ },
9241
+ children: [
9242
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("input", { type: "checkbox", className: "hidden sr-only peer outline-none", ref, ...inputProps }),
9243
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
9244
+ "span",
9245
+ {
9246
+ ref: (inst) => {
9247
+ if (inst) setLabelW(inst.clientWidth);
9248
+ },
9249
+ style: {
9250
+ left: inputProps.checked ? "0px" : "20px",
9251
+ color: inputProps.checked ? colorMode === "dark" ? "var(--l-pass-fg-inverted)" : "var(--l-pass-fg)" : "var(--l-pass-fg)",
9252
+ transition: "left 200ms ease"
9253
+ },
9254
+ className: "absolute top-0 px-2 text-xs leading-5 font-semibold min-w-5 select-none",
9255
+ children: inputProps.checked ? labels?.checked : labels?.unchecked
9256
+ }
9257
+ ),
9258
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
9259
+ "span",
9260
+ {
9261
+ style: {
9262
+ left: inputProps.checked ? `${labelW}px` : "0px",
9263
+ transition: "left 200ms ease"
9264
+ },
9265
+ className: cn("absolute top-0 w-5 h-5 rounded-full bg-[var(--l-pass-fg)]", {
9266
+ // 'bg-[var(--l-pass-fg-inverted)]': inputProps.checked,
9267
+ // 'bg-[var(--l-pass-fg)]': !inputProps.checked
9268
+ })
9269
+ }
9270
+ )
9271
+ ]
9272
+ }
9273
+ )
9274
+ }
9275
+ );
9276
+ });
9277
+ Switch.displayName = "Switch";
9278
+
9279
+ // src/internal/components/KeyshareRestoreMenu/methods/File.tsx
9205
9280
  var import_jsx_runtime42 = require("react/jsx-runtime");
9206
9281
  function File2(props) {
9207
9282
  const { isLoading, mode = "restore", fileHandler } = props;
9208
- const { restoreFile, error, setMethod, setRestoreFile, setUsePasskey, setError, setSuccess } = useRestoreStore();
9283
+ const {
9284
+ restoreFile,
9285
+ error,
9286
+ usePasskey,
9287
+ setRestorePassword,
9288
+ setMethod,
9289
+ setRestoreFile,
9290
+ setUsePasskey,
9291
+ setError,
9292
+ setSuccess
9293
+ } = useRestoreStore();
9209
9294
  useValidateFileBackup();
9210
9295
  const actionText = mode === "backup" ? "Download" : "Restore with";
9211
9296
  const isPasswordPasskey = mode === "restore" && !!restoreFile || mode === "backup";
9212
9297
  return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
9213
- /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9214
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
9215
- Button,
9298
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex items-center justify-between", children: [
9299
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9300
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
9301
+ Button,
9302
+ {
9303
+ variant: "ghost",
9304
+ size: "icon",
9305
+ title: "Back",
9306
+ onClick: () => {
9307
+ setRestoreFile(null);
9308
+ setError(null);
9309
+ setSuccess(null);
9310
+ setUsePasskey(false);
9311
+ setMethod(null);
9312
+ },
9313
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react22.ArrowLeft, { className: "h-4 w-4" })
9314
+ }
9315
+ ),
9316
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-xl font-semibold", children: `${mode === "restore" ? "Restore with" : ""} File ${mode === "restore" ? "by" : "Backup by"}`.trim() })
9317
+ ] }),
9318
+ mode !== "restore" && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
9319
+ Switch,
9216
9320
  {
9217
- variant: "ghost",
9218
- size: "icon",
9219
- title: "Back",
9220
- onClick: () => {
9221
- setRestoreFile(null);
9222
- setError(null);
9223
- setSuccess(null);
9224
- setUsePasskey(false);
9225
- setMethod(null);
9226
- },
9227
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react23.ArrowLeft, { className: "h-4 w-4" })
9321
+ name: "password-passkey-toggle",
9322
+ labels: { checked: "Password", unchecked: "Passkey" },
9323
+ disabled: isLoading || !!error,
9324
+ checked: !usePasskey,
9325
+ onChange: (e) => {
9326
+ if (!!e.target.checked) setRestorePassword("");
9327
+ setUsePasskey(!e.target.checked);
9328
+ }
9228
9329
  }
9229
- ),
9230
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-xl font-semibold", children: `${mode === "restore" ? "Restore with" : "Create"} File ${mode === "restore" ? "" : "Backup"}`.trim() })
9330
+ )
9231
9331
  ] }),
9232
9332
  mode === "restore" && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
9233
9333
  "label",
9234
9334
  {
9235
9335
  className: cn(
9236
- "block w-full h-16 flex items-center justify-center cursor-pointer",
9237
- "p-[var(--l-pass-pd)] bg-[var(--l-pass-secondary)] rounded-[var(--l-pass-el-bdrs)]"
9336
+ "block w-full flex items-center justify-center cursor-pointer",
9337
+ "p-[var(--l-pass-gap)] bg-[var(--l-pass-secondary)] rounded-[var(--l-pass-el-bdrs)]"
9238
9338
  ),
9239
9339
  children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
9240
9340
  "input",
@@ -9248,9 +9348,9 @@ function File2(props) {
9248
9348
  className: cn(
9249
9349
  "file:cursor-pointer",
9250
9350
  "transition-colors duration-200 ease-in-out",
9251
- "block w-fit file:h-8 text-xs file:bg-[var(--l-pass-primary)] file:text-[var(--l-pass-fg-inverted)]",
9351
+ "block w-full file:h-12 text-xs file:bg-[var(--l-pass-primary)] file:text-[var(--l-pass-fg-inverted)]",
9252
9352
  "file:hover:opacity-90 file:active:opacity-80",
9253
- "file:mr-[var(--l-pass-pd)] file:px-[var(--l-pass-pd)] file:rounded-[var(--l-pass-el-bdrs)] file:border-0 text-xs font-medium"
9353
+ "file:mr-[var(--l-pass-gap)] file:px-[var(--l-pass-pd)] file:rounded-[var(--l-pass-el-bdrs)] file:border-0 text-xs font-medium"
9254
9354
  )
9255
9355
  }
9256
9356
  )
@@ -9263,7 +9363,7 @@ function File2(props) {
9263
9363
  isLoading,
9264
9364
  isEncryptionMethod: mode === "restore",
9265
9365
  actionCaption: `${actionText} ${restoreFile ? restoreFile.name : "Backup File"}`,
9266
- actionIcon: mode === "restore" ? import_lucide_react23.FileUp : import_lucide_react23.FileDown,
9366
+ actionIcon: mode === "restore" ? import_lucide_react22.FileUp : import_lucide_react22.FileDown,
9267
9367
  actionHandler: () => fileHandler(),
9268
9368
  disabled: !!isLoading || mode === "restore" && !restoreFile
9269
9369
  }
@@ -9274,54 +9374,72 @@ function File2(props) {
9274
9374
  // src/internal/components/KeyshareRestoreMenu/methods/Server.tsx
9275
9375
  var import_react_query15 = require("@tanstack/react-query");
9276
9376
  var import_dayjs = __toESM(require("dayjs"), 1);
9277
- var import_lucide_react24 = require("lucide-react");
9278
- var import_react32 = require("react");
9377
+ var import_lucide_react23 = require("lucide-react");
9378
+ var import_react34 = require("react");
9279
9379
  var import_jsx_runtime43 = require("react/jsx-runtime");
9280
9380
  function Server(props) {
9281
9381
  const { isLoading, mode = "restore", serverHandler } = props;
9282
9382
  const qc = (0, import_react_query15.useQueryClient)();
9283
9383
  const address = useLumiaPassportSession((st) => st.address);
9284
- const { usePasskey, setUsePasskey, setRestorePassword, setShowPassword, setMethod, setError, setSuccess } = useRestoreStore();
9384
+ const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
9385
+ const { usePasskey, error, setUsePasskey, setRestorePassword, setShowPassword, setMethod, setError, setSuccess } = useRestoreStore();
9285
9386
  const serverRecoveryStatus = qc.getQueryData([CHECK_BACKUP_QUERY_KEY, address]);
9286
- (0, import_react32.useEffect)(() => {
9387
+ (0, import_react34.useEffect)(() => {
9287
9388
  if (mode === "backup" || !serverRecoveryStatus?.created?.encryptionMethod) return;
9288
9389
  setUsePasskey(serverRecoveryStatus.created.encryptionMethod === "passkey");
9289
9390
  }, [mode, serverRecoveryStatus, setUsePasskey]);
9391
+ const isEncryptionMethod = mode === "restore" && !!serverRecoveryStatus?.created?.encryptionMethod;
9290
9392
  return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(import_jsx_runtime43.Fragment, { children: [
9291
- /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9292
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
9293
- Button,
9393
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: cn("flex items-center justify-between", { "px-[var(--l-pass-pd)]": !hasServerVault }), children: [
9394
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9395
+ !!hasServerVault && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
9396
+ Button,
9397
+ {
9398
+ variant: "ghost",
9399
+ size: "icon",
9400
+ title: "Back",
9401
+ onClick: () => {
9402
+ setShowPassword(false);
9403
+ setUsePasskey(false);
9404
+ setRestorePassword("");
9405
+ setUsePasskey(false);
9406
+ setError(null);
9407
+ setSuccess(null);
9408
+ setMethod(null);
9409
+ },
9410
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react23.ArrowLeft, { className: "h-4 w-4" })
9411
+ }
9412
+ ),
9413
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "text-xl font-semibold", children: mode === "restore" ? "Restore with" : usePasskey ? "Passkey" : "Password" })
9414
+ ] }),
9415
+ !isEncryptionMethod && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
9416
+ Switch,
9294
9417
  {
9295
- variant: "ghost",
9296
- size: "icon",
9297
- title: "Back",
9298
- onClick: () => {
9299
- setShowPassword(false);
9300
- setUsePasskey(false);
9301
- setRestorePassword("");
9302
- setUsePasskey(false);
9303
- setError(null);
9304
- setSuccess(null);
9305
- setMethod(null);
9306
- },
9307
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react24.ArrowLeft, { className: "h-4 w-4" })
9418
+ name: "password-passkey-toggle",
9419
+ labels: { checked: "Password", unchecked: "Passkey" },
9420
+ disabled: isLoading,
9421
+ checked: !usePasskey,
9422
+ onChange: (e) => {
9423
+ if (!!error) setError(null);
9424
+ if (!!e.target.checked) setRestorePassword("");
9425
+ setUsePasskey(!e.target.checked);
9426
+ }
9308
9427
  }
9309
- ),
9310
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "text-xl font-semibold", children: `${mode === "restore" ? "Restore with" : "Create"} ${usePasskey ? "Passkey" : "Password"} ${mode === "restore" ? "" : "Backup"}`.trim() })
9428
+ )
9311
9429
  ] }),
9312
9430
  /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
9313
9431
  PasswordPasskey,
9314
9432
  {
9315
9433
  mode,
9316
- isEncryptionMethod: mode === "restore" && !!serverRecoveryStatus?.created?.encryptionMethod,
9434
+ isEncryptionMethod,
9317
9435
  isLoading,
9318
- actionCaption: mode === "backup" ? "Create Backup" : "Restore from Vault",
9319
- actionIcon: mode === "backup" ? import_lucide_react24.Upload : import_lucide_react24.Download,
9436
+ actionCaption: mode === "backup" ? "Create Vault Backup" : "Restore from Vault",
9437
+ actionIcon: mode === "backup" ? import_lucide_react23.Upload : import_lucide_react23.Download,
9320
9438
  actionHandler: () => serverHandler()
9321
9439
  }
9322
9440
  ),
9323
9441
  !!serverRecoveryStatus?.created?.at && /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(Highlight, { type: "success", className: "flex gap-[var(--l-pass-gap)]", children: [
9324
- serverRecoveryStatus.created.encryptionMethod === "password" ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(OtpIcon, { className: "w-4 h-4 inline" }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react24.Key, { className: "w-4 h-4 inline" }),
9442
+ serverRecoveryStatus.created.encryptionMethod === "password" ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(OtpIcon, { className: "w-4 h-4 inline" }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react23.Key, { className: "w-4 h-4 inline" }),
9325
9443
  /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("span", { className: "text-[10px] flex-1 block", children: [
9326
9444
  /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { children: `We found a ${serverRecoveryStatus.created.encryptionMethod?.toUpperCase()} Backup` }),
9327
9445
  /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("br", {}),
@@ -9336,12 +9454,12 @@ function Server(props) {
9336
9454
 
9337
9455
  // src/internal/components/KeyshareRestoreMenu/methods/Cloud.tsx
9338
9456
  var import_react_query16 = require("@tanstack/react-query");
9339
- var import_lucide_react26 = require("lucide-react");
9340
- var import_react33 = require("react");
9457
+ var import_lucide_react25 = require("lucide-react");
9458
+ var import_react35 = require("react");
9341
9459
 
9342
9460
  // src/internal/components/ui/select.tsx
9343
9461
  var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
9344
- var import_lucide_react25 = require("lucide-react");
9462
+ var import_lucide_react24 = require("lucide-react");
9345
9463
  var import_jsx_runtime44 = require("react/jsx-runtime");
9346
9464
  function Select({ ...props }) {
9347
9465
  return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectPrimitive.Root, { "data-slot": "select", ...props });
@@ -9371,7 +9489,7 @@ function SelectTrigger({
9371
9489
  ...props,
9372
9490
  children: [
9373
9491
  children,
9374
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react25.ChevronDownIcon, { className: "size-4 opacity-50" }) })
9492
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react24.ChevronDownIcon, { className: "size-4 opacity-50" }) })
9375
9493
  ]
9376
9494
  }
9377
9495
  );
@@ -9432,7 +9550,7 @@ function SelectItem({ className, children, ...props }) {
9432
9550
  ),
9433
9551
  ...props,
9434
9552
  children: [
9435
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { "data-slot": "select-item-indicator", className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react25.CheckIcon, { className: "size-4" }) }) }),
9553
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { "data-slot": "select-item-indicator", className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react24.CheckIcon, { className: "size-4" }) }) }),
9436
9554
  /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectPrimitive.ItemText, { children })
9437
9555
  ]
9438
9556
  }
@@ -9445,7 +9563,7 @@ function SelectScrollUpButton({ className, ...props }) {
9445
9563
  "data-slot": "select-scroll-up-button",
9446
9564
  className: cn("flex cursor-default items-center justify-center py-1", className),
9447
9565
  ...props,
9448
- children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react25.ChevronUpIcon, { className: "size-4" })
9566
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react24.ChevronUpIcon, { className: "size-4" })
9449
9567
  }
9450
9568
  );
9451
9569
  }
@@ -9459,7 +9577,7 @@ function SelectScrollDownButton({
9459
9577
  "data-slot": "select-scroll-down-button",
9460
9578
  className: cn("flex cursor-default items-center justify-center py-1", className),
9461
9579
  ...props,
9462
- children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react25.ChevronDownIcon, { className: "size-4" })
9580
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react24.ChevronDownIcon, { className: "size-4" })
9463
9581
  }
9464
9582
  );
9465
9583
  }
@@ -9485,7 +9603,7 @@ function Cloud2(props) {
9485
9603
  return availableProviders.map((p) => ({ id: p.id, name: p.name, available: p.isAvailable() }));
9486
9604
  }
9487
9605
  });
9488
- (0, import_react33.useEffect)(() => {
9606
+ (0, import_react35.useEffect)(() => {
9489
9607
  if (isCloudProvidersLoading) return;
9490
9608
  if (!!cloudProvidersError) {
9491
9609
  console.error("[KeyshareBackup] Failed to load cloud providers:", cloudProvidersError);
@@ -9507,12 +9625,12 @@ function Cloud2(props) {
9507
9625
  setSelectedCloudProvider(null);
9508
9626
  setMethod(null);
9509
9627
  },
9510
- children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react26.ArrowLeft, { className: "h-4 w-4" })
9628
+ children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.ArrowLeft, { className: "h-4 w-4" })
9511
9629
  }
9512
9630
  ),
9513
9631
  /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: "text-lg font-semibold", children: `${mode === "restore" ? "Restore" : "Create"} Cloud Backup` })
9514
9632
  ] }),
9515
- isCloudProvidersLoading && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react26.Loader, { className: "animate-spin w-4 h-4 mx-auto" }),
9633
+ isCloudProvidersLoading && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react25.Loader, { className: "animate-spin w-4 h-4 mx-auto" }),
9516
9634
  /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: "block text-[10px] text-[var(--l-pass-fg-muted)]", children: "1. Select Cloud Backup Vault" }),
9517
9635
  /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
9518
9636
  Select,
@@ -9542,7 +9660,7 @@ function Cloud2(props) {
9542
9660
  mode,
9543
9661
  isLoading,
9544
9662
  actionCaption: mode === "backup" ? "Create Cloud Backup" : "Restore Cloud Backup",
9545
- actionIcon: mode === "backup" ? import_lucide_react26.CloudUpload : import_lucide_react26.CloudDownload,
9663
+ actionIcon: mode === "backup" ? import_lucide_react25.CloudUpload : import_lucide_react25.CloudDownload,
9546
9664
  actionHandler: () => cloudHandler?.(),
9547
9665
  disabled: !!isCloudProvidersLoading || !selectedCloudProvider || cloudProviders.length === 0 || true
9548
9666
  }
@@ -9569,7 +9687,7 @@ var KeyshareRestoreMenu = () => {
9569
9687
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
9570
9688
  const setIsDialogForced = useLayoutStore((st) => st.setIsDialogForced);
9571
9689
  const setPage = useLayoutDataStore((st) => st.setPage);
9572
- (0, import_react34.useEffect)(() => setIsDialogForced(true), []);
9690
+ (0, import_react36.useEffect)(() => setIsDialogForced(true), []);
9573
9691
  useCheckBackupAvailability();
9574
9692
  const {
9575
9693
  method: currentRestoreMethod,
@@ -9632,7 +9750,7 @@ var KeyshareRestoreMenu = () => {
9632
9750
  className: "list-scrollbar-y w-full",
9633
9751
  children: /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--l-pass-gap)] p-[var(--l-pass-pd)]", children: [
9634
9752
  isBackupChecking && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "w-full flex flex-col gap-[var(--l-pass-gap)] text-center justify-center items-center", children: [
9635
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react27.Loader, { className: "w-5 h-5 animate-spin" }),
9753
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react26.Loader, { className: "w-5 h-5 animate-spin" }),
9636
9754
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "block w-full text-xs leading-4", children: "Checking for backups..." }),
9637
9755
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "block w-full text-xs leading-4", children: "Please wait while we check for available backups..." })
9638
9756
  ] }),
@@ -9645,7 +9763,7 @@ var KeyshareRestoreMenu = () => {
9645
9763
  ),
9646
9764
  !success && !isBackupChecking && !isDisconnecting && hasServerBackup && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_jsx_runtime46.Fragment, { children: [
9647
9765
  /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex items-center justify-center gap-[var(--l-pass-gap)] px-[var(--l-pass-pd)] py-[var(--l-pass-gap)]", children: [
9648
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react27.CloudDownload, { className: "w-6 h-6" }),
9766
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react26.CloudDownload, { className: "w-6 h-6" }),
9649
9767
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "font-bold text-xl leading-6", children: "Restore Account" })
9650
9768
  ] }),
9651
9769
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(MethodSelector, { mode: "restore", serverRecoveryStatus }),
@@ -9679,18 +9797,18 @@ var KeyshareRestoreMenu = () => {
9679
9797
  disabled: isDisconnecting || isRestoringFromFile || isRestoringFromServer,
9680
9798
  className: "w-fit mx-auto",
9681
9799
  children: [
9682
- isDisconnecting ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react27.Loader, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react27.UserCircle, { className: "w-4 h-4" }),
9800
+ isDisconnecting ? /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react26.Loader, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react26.UserCircle, { className: "w-4 h-4" }),
9683
9801
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { children: "Try Another Account" })
9684
9802
  ]
9685
9803
  }
9686
9804
  )
9687
9805
  ] }),
9688
9806
  error && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
9689
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react27.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
9807
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react26.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
9690
9808
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "w-full flex-1 block", children: error })
9691
9809
  ] }),
9692
9810
  success && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(Highlight, { type: "success", className: "flex gap-[var(--l-pass-gap)]", children: [
9693
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react27.CheckCircle2, { className: "h-4 w-4 flex-shrink-0" }),
9811
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react26.CheckCircle2, { className: "h-4 w-4 flex-shrink-0" }),
9694
9812
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "w-full flex-1 block", children: success })
9695
9813
  ] })
9696
9814
  ] })
@@ -9700,8 +9818,8 @@ var KeyshareRestoreMenu = () => {
9700
9818
 
9701
9819
  // src/internal/components/KeyshareRestoreMenu/KeyshareBackupMenu.tsx
9702
9820
  var import_react_query18 = require("@tanstack/react-query");
9703
- var import_lucide_react28 = require("lucide-react");
9704
- var import_react35 = require("react");
9821
+ var import_lucide_react27 = require("lucide-react");
9822
+ var import_react37 = require("react");
9705
9823
  init_vaultClient();
9706
9824
  var import_jsx_runtime47 = require("react/jsx-runtime");
9707
9825
  var COMPONENTS = {
@@ -9711,10 +9829,10 @@ var COMPONENTS = {
9711
9829
  };
9712
9830
  function KeyshareBackupMenu() {
9713
9831
  const address = useLumiaPassportSession((st) => st.address);
9832
+ const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
9714
9833
  const setPage = useLayoutDataStore((st) => st.setPage);
9715
9834
  const setMainPageHeight = useLayoutDataStore((st) => st.setMainPageHeight);
9716
9835
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
9717
- (0, import_react35.useEffect)(() => setMainPageHeight(DEFAULT_SETTINGS_MENU_HEIGHT), [setMainPageHeight]);
9718
9836
  const {
9719
9837
  method: currentBackupMethod,
9720
9838
  error,
@@ -9725,8 +9843,15 @@ function KeyshareBackupMenu() {
9725
9843
  setRestorePassword,
9726
9844
  setRestoreFile,
9727
9845
  setShowPassword,
9728
- setUsePasskey
9846
+ setUsePasskey,
9847
+ setMethod
9729
9848
  } = useRestoreStore();
9849
+ (0, import_react37.useEffect)(() => {
9850
+ setMainPageHeight(DEFAULT_SETTINGS_MENU_HEIGHT);
9851
+ return () => {
9852
+ setMethod(null);
9853
+ };
9854
+ }, []);
9730
9855
  const { data: serverRecoveryStatus } = (0, import_react_query18.useQuery)({
9731
9856
  retry: false,
9732
9857
  queryKey: [CHECK_BACKUP_QUERY_KEY, address],
@@ -9748,7 +9873,11 @@ function KeyshareBackupMenu() {
9748
9873
  style: { "--l-pass-scrollbar-mah": `${maxScrollHeight}px` },
9749
9874
  className: "list-scrollbar-y w-full",
9750
9875
  children: /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--l-pass-gap)] p-[var(--l-pass-pd)]", children: [
9751
- !currentBackupMethod && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9876
+ !hasServerVault && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center justify-center gap-2 px-5 pt-3 pb-6", children: [
9877
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react27.LockIcon, { className: "w-6 h-6" }),
9878
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "font-bold text-xl leading-6", children: "Secure Account" })
9879
+ ] }),
9880
+ !!hasServerVault && !currentBackupMethod && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
9752
9881
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
9753
9882
  Button,
9754
9883
  {
@@ -9763,14 +9892,15 @@ function KeyshareBackupMenu() {
9763
9892
  setUsePasskey(false);
9764
9893
  setError(null);
9765
9894
  setSuccess(null);
9895
+ setMethod(null);
9766
9896
  setPage("settings" /* SETTINGS */);
9767
9897
  },
9768
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react28.ArrowLeft, { className: "h-4 w-4" })
9898
+ children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react27.ArrowLeft, { className: "h-4 w-4" })
9769
9899
  }
9770
9900
  ),
9771
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-xl font-semibold", children: "Create Backup" })
9901
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-xl font-semibold leading-8", children: "Create Backup" })
9772
9902
  ] }),
9773
- !currentBackupMethod && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(MethodSelector, { mode: "backup", serverRecoveryStatus }),
9903
+ !!hasServerVault && !currentBackupMethod && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(MethodSelector, { mode: "backup", serverRecoveryStatus }),
9774
9904
  !!currentBackupMethod && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_jsx_runtime47.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
9775
9905
  BackupComponent,
9776
9906
  {
@@ -9782,21 +9912,21 @@ function KeyshareBackupMenu() {
9782
9912
  }
9783
9913
  ) }),
9784
9914
  !isRecoveryLoading && !currentBackupMethod && !hasRecoveryData && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(Highlight, { type: "warning", className: "flex gap-[var(--l-pass-gap)]", children: [
9785
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react28.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
9915
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react27.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
9786
9916
  /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("span", { className: "block flex-1", children: [
9787
9917
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "font-semibold", children: "No Backup Found" }),
9788
9918
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("br", {}),
9789
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { children: "Create a backup to restore access if you switch devices or clear your browser." }),
9919
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-[10px]", children: "Create a backup to restore access if you switch devices or clear your browser." }),
9790
9920
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("br", {}),
9791
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { children: "You can ignore this if you already have a backup or don't want to use Keyshare Vault." })
9921
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-[10px]", children: "You can ignore this if you already have a backup or don't want to use Keyshare Vault." })
9792
9922
  ] })
9793
9923
  ] }),
9794
9924
  error && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
9795
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react28.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
9925
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react27.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
9796
9926
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "block w-full flex-1", children: error })
9797
9927
  ] }),
9798
9928
  success && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(Highlight, { type: "success", className: "flex gap-[var(--l-pass-gap)]", children: [
9799
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react28.CheckCircle2, { className: "h-4 w-4 flex-shrink-0" }),
9929
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react27.CheckCircle2, { className: "h-4 w-4 flex-shrink-0" }),
9800
9930
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "block w-full flex-1", children: success })
9801
9931
  ] })
9802
9932
  ] })
@@ -9805,8 +9935,8 @@ function KeyshareBackupMenu() {
9805
9935
  }
9806
9936
 
9807
9937
  // src/internal/components/MainMenu/MainMenu.tsx
9808
- var import_lucide_react29 = require("lucide-react");
9809
- var import_react36 = require("react");
9938
+ var import_lucide_react28 = require("lucide-react");
9939
+ var import_react38 = require("react");
9810
9940
 
9811
9941
  // src/internal/components/ManageWalletMenu/hooks/useProvidersList.ts
9812
9942
  var import_react_query19 = require("@tanstack/react-query");
@@ -9827,16 +9957,16 @@ function useProvidersList() {
9827
9957
  // src/internal/components/MainMenu/MainMenu.tsx
9828
9958
  var import_jsx_runtime48 = require("react/jsx-runtime");
9829
9959
  var MAIN_MENU_BUTTONS = [
9830
- { id: "send" /* SEND */, label: "Send", icon: import_lucide_react29.ChevronRight },
9831
- { id: "receive" /* RECEIVE */, label: "Receive", icon: import_lucide_react29.ChevronLeft },
9832
- { id: "buy" /* BUY */, label: "Buy", icon: import_lucide_react29.DollarSign },
9833
- { id: "assets" /* ASSETS */, label: "Portfolio", icon: import_lucide_react29.Wallet2 }
9960
+ { id: "send" /* SEND */, label: "Send", icon: import_lucide_react28.ChevronRight },
9961
+ { id: "receive" /* RECEIVE */, label: "Receive", icon: import_lucide_react28.ChevronLeft },
9962
+ { id: "buy" /* BUY */, label: "Buy", icon: import_lucide_react28.DollarSign },
9963
+ { id: "assets" /* ASSETS */, label: "Portfolio", icon: import_lucide_react28.Wallet2 }
9834
9964
  ];
9835
9965
  function MainMenu() {
9836
9966
  const address = useLumiaPassportSession((st) => st.address);
9837
9967
  const setPage = useLayoutDataStore((st) => st.setPage);
9838
9968
  const setMainPageHeight = useLayoutDataStore((st) => st.setMainPageHeight);
9839
- (0, import_react36.useEffect)(() => setMainPageHeight(DEFAULT_MAIN_MENU_HEIGHT), [setMainPageHeight]);
9969
+ (0, import_react38.useEffect)(() => setMainPageHeight(DEFAULT_MAIN_MENU_HEIGHT), [setMainPageHeight]);
9840
9970
  useProvidersList();
9841
9971
  return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "w-full grid grid-cols-4 gap-0 md:gap-[var(--l-pass-gap)] py-[10px] md:py-1", children: MAIN_MENU_BUTTONS.map(({ id, label, icon: Icon2 }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
9842
9972
  Button,
@@ -9857,12 +9987,12 @@ function MainMenu() {
9857
9987
 
9858
9988
  // src/internal/components/ManageWalletMenu/ManageWallet.tsx
9859
9989
  var import_lodash_es3 = require("lodash-es");
9860
- var import_lucide_react33 = require("lucide-react");
9861
- var import_react40 = require("react");
9990
+ var import_lucide_react32 = require("lucide-react");
9991
+ var import_react42 = require("react");
9862
9992
 
9863
9993
  // src/modules/linkedProfiles.ts
9864
9994
  var import_react_query20 = require("@tanstack/react-query");
9865
- var import_react37 = require("react");
9995
+ var import_react39 = require("react");
9866
9996
  init_auth();
9867
9997
  init_common();
9868
9998
  init_types();
@@ -9895,7 +10025,7 @@ function useLumiaPassportLinkedProfiles() {
9895
10025
  queryFn: getLinkProfilesData
9896
10026
  });
9897
10027
  const { profiles = [], avatar = null } = data || {};
9898
- const refresh = (0, import_react37.useCallback)(async () => {
10028
+ const refresh = (0, import_react39.useCallback)(async () => {
9899
10029
  await qc.invalidateQueries({ queryKey: [LINKED_PROFILES_QUERY_KEY, address] });
9900
10030
  }, [qc, address]);
9901
10031
  return { profiles, avatar, isLoading, error, refresh };
@@ -9908,7 +10038,7 @@ init_passkey2();
9908
10038
  // src/internal/components/ManageWalletMenu/EmailForm.tsx
9909
10039
  init_lumiaPassport();
9910
10040
  var import_react_query21 = require("@tanstack/react-query");
9911
- var import_lucide_react30 = require("lucide-react");
10041
+ var import_lucide_react29 = require("lucide-react");
9912
10042
  init_projectId();
9913
10043
 
9914
10044
  // src/internal/components/ManageWalletMenu/hooks/useStore.ts
@@ -10005,7 +10135,7 @@ function EmailForm() {
10005
10135
  Input,
10006
10136
  {
10007
10137
  name: "signin-email",
10008
- Icon: import_lucide_react30.Mail,
10138
+ Icon: import_lucide_react29.Mail,
10009
10139
  type: "email",
10010
10140
  autoComplete: "off",
10011
10141
  placeholder: config.email.placeholder,
@@ -10022,7 +10152,7 @@ function EmailForm() {
10022
10152
  size: "large",
10023
10153
  disabled: !email || isLoading,
10024
10154
  onClick: () => onSendVerificationCode(),
10025
- children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react30.Loader, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react30.ChevronRight, { className: "w-4 h-4" })
10155
+ children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react29.Loader, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react29.ChevronRight, { className: "w-4 h-4" })
10026
10156
  }
10027
10157
  )
10028
10158
  ] });
@@ -10245,7 +10375,7 @@ function AddProvider() {
10245
10375
 
10246
10376
  // src/internal/components/ManageWalletMenu/EmailNotConnectedWarning.tsx
10247
10377
  var import_framer_motion2 = require("framer-motion");
10248
- var import_lucide_react31 = require("lucide-react");
10378
+ var import_lucide_react30 = require("lucide-react");
10249
10379
  init_auth();
10250
10380
  var import_jsx_runtime51 = require("react/jsx-runtime");
10251
10381
  function EmailNotConnectedWarning() {
@@ -10264,7 +10394,7 @@ function EmailNotConnectedWarning() {
10264
10394
  transition: Y_ANIMATION_SETUP,
10265
10395
  children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(Highlight, { type: "warning", className: "flex flex-col gap-[var(--l-pass-gap)] items-center text-center", children: [
10266
10396
  /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("span", { className: "flex items-center gap-[var(--l-pass-gap)] text-lg font-bold", children: [
10267
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react31.Mail, { className: "w-5 h-5" }),
10397
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react30.Mail, { className: "w-5 h-5" }),
10268
10398
  "CONNECT EMAIL"
10269
10399
  ] }),
10270
10400
  /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "font-medium", children: "Connect your email for easier account recovery and additional security." })
@@ -10275,7 +10405,7 @@ function EmailNotConnectedWarning() {
10275
10405
 
10276
10406
  // src/internal/components/ManageWalletMenu/hooks/useLinkSocial.ts
10277
10407
  var import_react_query25 = require("@tanstack/react-query");
10278
- var import_react38 = __toESM(require("react"), 1);
10408
+ var import_react40 = __toESM(require("react"), 1);
10279
10409
  init_auth();
10280
10410
  function useLinkSocial() {
10281
10411
  const qc = (0, import_react_query25.useQueryClient)();
@@ -10287,7 +10417,7 @@ function useLinkSocial() {
10287
10417
  const setPage = useLayoutDataStore((st) => st.setPage);
10288
10418
  const isWalletLinking = useLayoutDataStore((st) => st.isWalletLinking);
10289
10419
  const { providerType, linkIsLoading, setProviderType, setAlert, setLinkIsLoading } = useManageWalletStore();
10290
- const handleLinkSocialProvider = import_react38.default.useCallback(
10420
+ const handleLinkSocialProvider = import_react40.default.useCallback(
10291
10421
  async (providerIdRaw) => {
10292
10422
  const providerKey = providerIdRaw.toLowerCase();
10293
10423
  const normalizedKey = providerKey === "twitter" ? "x" : providerKey;
@@ -10339,8 +10469,8 @@ function useLinkSocial() {
10339
10469
  },
10340
10470
  [config.social?.providers, callbacks]
10341
10471
  );
10342
- const [socialLinkStarted, setSocialLinkStarted] = import_react38.default.useState(false);
10343
- (0, import_react38.useEffect)(() => {
10472
+ const [socialLinkStarted, setSocialLinkStarted] = import_react40.default.useState(false);
10473
+ (0, import_react40.useEffect)(() => {
10344
10474
  const key = providerType?.toLowerCase();
10345
10475
  console.log("[useLinkSocial] Effect triggered:", { key, linkIsLoading, socialLinkStarted, isWalletLinking });
10346
10476
  if (isWalletLinking) {
@@ -10361,7 +10491,7 @@ function useLinkSocial() {
10361
10491
 
10362
10492
  // src/internal/components/ManageWalletMenu/hooks/useLinkTelegram.ts
10363
10493
  var import_react_query26 = require("@tanstack/react-query");
10364
- var import_react39 = require("react");
10494
+ var import_react41 = require("react");
10365
10495
  init_telegram2();
10366
10496
  function useLinkTelegram() {
10367
10497
  const {
@@ -10373,7 +10503,7 @@ function useLinkTelegram() {
10373
10503
  const isWalletLinking = useLayoutDataStore((st) => st.isWalletLinking);
10374
10504
  const { providerType, linkIsLoading, setLinkIsLoading, setProviderType, setAlert } = useManageWalletStore();
10375
10505
  const setPage = useLayoutDataStore((st) => st.setPage);
10376
- const handleLinkTelegram = (0, import_react39.useCallback)(async () => {
10506
+ const handleLinkTelegram = (0, import_react41.useCallback)(async () => {
10377
10507
  try {
10378
10508
  setLinkIsLoading(true);
10379
10509
  setAlert(null);
@@ -10415,8 +10545,8 @@ function useLinkTelegram() {
10415
10545
  setLinkIsLoading(false);
10416
10546
  }
10417
10547
  }, [config.social?.providers, callbacks]);
10418
- const [telegramLinkStarted, setTelegramLinkStarted] = (0, import_react39.useState)(false);
10419
- (0, import_react39.useEffect)(() => {
10548
+ const [telegramLinkStarted, setTelegramLinkStarted] = (0, import_react41.useState)(false);
10549
+ (0, import_react41.useEffect)(() => {
10420
10550
  console.log("[useLinkTelegram] Effect triggered:", {
10421
10551
  providerType,
10422
10552
  linkIsLoading,
@@ -10433,7 +10563,7 @@ function useLinkTelegram() {
10433
10563
  handleLinkTelegram();
10434
10564
  }
10435
10565
  }, [providerType, handleLinkTelegram, linkIsLoading, telegramLinkStarted, isWalletLinking]);
10436
- (0, import_react39.useEffect)(() => {
10566
+ (0, import_react41.useEffect)(() => {
10437
10567
  if (providerType !== "telegram") {
10438
10568
  setTelegramLinkStarted(false);
10439
10569
  }
@@ -10441,7 +10571,7 @@ function useLinkTelegram() {
10441
10571
  }
10442
10572
 
10443
10573
  // src/internal/components/ManageWalletMenu/ProviderCard.tsx
10444
- var import_lucide_react32 = require("lucide-react");
10574
+ var import_lucide_react31 = require("lucide-react");
10445
10575
  init_types();
10446
10576
  var import_jsx_runtime52 = require("react/jsx-runtime");
10447
10577
  function ProviderCard(props) {
@@ -10467,14 +10597,14 @@ function ProviderCard(props) {
10467
10597
  props.externalId && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
10468
10598
  "span",
10469
10599
  {
10470
- style: { maxWidth: 144 },
10471
- className: "block w-full font-bold text-sm whitespace-nowrap text-ellipsis overflow-hidden",
10600
+ style: { maxWidth: 184 },
10601
+ className: "block w-full font-bold text-xs whitespace-nowrap text-ellipsis overflow-hidden",
10472
10602
  children: props.externalId
10473
10603
  }
10474
10604
  )
10475
10605
  ] }),
10476
10606
  /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)("div", { className: "w-fit flex items-center gap-[var(--l-pass-gap)] flex-none", children: [
10477
- props.verified ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react32.CheckCircle, { className: `w-4 h-4 text-[var(--l-pass-bg-success)]` }) : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react32.Clock, { className: "w-4 h-4 text-[var(--l-pass-bg-warning)]" }),
10607
+ props.verified ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react31.CheckCircle, { className: `w-4 h-4 text-[var(--l-pass-bg-success)]` }) : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react31.Clock, { className: "w-4 h-4 text-[var(--l-pass-bg-warning)]" }),
10478
10608
  allowUnlink && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
10479
10609
  Button,
10480
10610
  {
@@ -10486,7 +10616,7 @@ function ProviderCard(props) {
10486
10616
  setConfirmUnlink({ provider: props.provider, providerName: info.name, externalId: props.externalId });
10487
10617
  setPage("unlink-provider" /* UNLINK_PROVIDER */);
10488
10618
  },
10489
- children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react32.Trash2, { className: "w-4 h-4 text-[var(--l-pass-bg-error)]" })
10619
+ children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react31.Trash2, { className: "w-4 h-4 text-[var(--l-pass-bg-error)]" })
10490
10620
  }
10491
10621
  )
10492
10622
  ] })
@@ -10542,7 +10672,7 @@ function ManageWalletMenu() {
10542
10672
  } = useManageWalletStore();
10543
10673
  const configuredProviders = getConfiguredProviders(config);
10544
10674
  const { data: providers = [], isLoading: isProvidersLoading, error: providersError } = useProvidersList();
10545
- const renderProviders = (0, import_react40.useMemo)(() => {
10675
+ const renderProviders = (0, import_react42.useMemo)(() => {
10546
10676
  const normalizeProviderName = (name) => {
10547
10677
  if (name === "x") return "twitter";
10548
10678
  return name;
@@ -10635,17 +10765,17 @@ function ManageWalletMenu() {
10635
10765
  if (!providerType) setPage("settings" /* SETTINGS */);
10636
10766
  setProviderType(null);
10637
10767
  },
10638
- children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react33.ArrowLeft, { className: "h-4 w-4" })
10768
+ children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react32.ArrowLeft, { className: "h-4 w-4" })
10639
10769
  }
10640
10770
  ),
10641
10771
  /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("span", { className: "text-xl font-semibold", children: "Profiles" })
10642
10772
  ] }),
10643
- isProvidersLoading && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "flex items-center justify-center p-4 text-[var(--l-pass-fg-muted)]", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react33.Loader, { className: "w-5 h-5 animate-spin" }) }),
10773
+ isProvidersLoading && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "flex items-center justify-center p-4 text-[var(--l-pass-fg-muted)]", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react32.Loader, { className: "w-5 h-5 animate-spin" }) }),
10644
10774
  /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(EmailNotConnectedWarning, {}),
10645
10775
  showCurrentProviders && renderProviders.map((node) => node),
10646
10776
  showExtraProvidersUi && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(AddProvider, {}),
10647
10777
  combinedAlertMessage && /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
10648
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react33.AlertTriangle, { className: "w-4 h-4 shrink-0" }),
10778
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react32.AlertTriangle, { className: "w-4 h-4 shrink-0" }),
10649
10779
  /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)("span", { className: "break-words whitespace-pre-wrap", children: [
10650
10780
  alert2?.title && /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(import_jsx_runtime53.Fragment, { children: [
10651
10781
  /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("strong", { children: alert2.title }),
@@ -10661,8 +10791,8 @@ function ManageWalletMenu() {
10661
10791
 
10662
10792
  // src/internal/components/ManageWalletMenu/UnlinkProviderMenu.tsx
10663
10793
  var import_react_query27 = require("@tanstack/react-query");
10664
- var import_lucide_react34 = require("lucide-react");
10665
- var import_react41 = require("react");
10794
+ var import_lucide_react33 = require("lucide-react");
10795
+ var import_react43 = require("react");
10666
10796
  init_auth();
10667
10797
  var import_jsx_runtime54 = require("react/jsx-runtime");
10668
10798
  function UnlinkProviderMenu() {
@@ -10671,7 +10801,7 @@ function UnlinkProviderMenu() {
10671
10801
  const { callbacks } = useLumiaPassportConfig();
10672
10802
  const setPage = useLayoutDataStore((st) => st.setPage);
10673
10803
  const { confirmUnlink, setConfirmUnlink, setAlert } = useManageWalletStore();
10674
- const [confirmInput, setConfirmInput] = (0, import_react41.useState)("");
10804
+ const [confirmInput, setConfirmInput] = (0, import_react43.useState)("");
10675
10805
  const { mutate: handleUnlinkProvider, isPending: isProviderUnlinking } = (0, import_react_query27.useMutation)({
10676
10806
  mutationFn: async () => {
10677
10807
  if (!confirmUnlink) {
@@ -10704,7 +10834,7 @@ function UnlinkProviderMenu() {
10704
10834
  /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
10705
10835
  Input,
10706
10836
  {
10707
- Icon: import_lucide_react34.Key,
10837
+ Icon: import_lucide_react33.Key,
10708
10838
  value: confirmInput,
10709
10839
  onChange: (e) => setConfirmInput(e.target.value),
10710
10840
  placeholder: "Enter provider ID"
@@ -10735,7 +10865,7 @@ function UnlinkProviderMenu() {
10735
10865
  disabled: !!isProviderUnlinking || !confirmUnlink || confirmInput !== confirmUnlink.externalId,
10736
10866
  className: "w-full flex-1",
10737
10867
  children: [
10738
- isProviderUnlinking && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_lucide_react34.Loader, { className: "animate-spin h-4 w-4" }),
10868
+ isProviderUnlinking && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_lucide_react33.Loader, { className: "animate-spin h-4 w-4" }),
10739
10869
  isProviderUnlinking ? "Removing\u2026" : "Remove"
10740
10870
  ]
10741
10871
  }
@@ -10746,11 +10876,11 @@ function UnlinkProviderMenu() {
10746
10876
 
10747
10877
  // src/internal/components/PortfolioMenu/PortfolioMenu.tsx
10748
10878
  var import_react_query30 = require("@tanstack/react-query");
10749
- var import_lucide_react36 = require("lucide-react");
10750
- var import_react44 = require("react");
10879
+ var import_lucide_react35 = require("lucide-react");
10880
+ var import_react46 = require("react");
10751
10881
 
10752
10882
  // src/internal/hooks/useBlockscoutAssets.ts
10753
- var import_react42 = require("react");
10883
+ var import_react44 = require("react");
10754
10884
  var import_react_query28 = require("@tanstack/react-query");
10755
10885
  var import_wagmi2 = require("wagmi");
10756
10886
  var import_viem5 = require("viem");
@@ -10893,12 +11023,12 @@ function createError(error) {
10893
11023
  function useBlockscoutAssets(options) {
10894
11024
  const { address, enabled = true, detectSecurityTokens = true } = options;
10895
11025
  const blockscoutApiUrl = getBlockscoutApiUrl();
10896
- const blockscoutClient = (0, import_react42.useMemo)(
11026
+ const blockscoutClient = (0, import_react44.useMemo)(
10897
11027
  () => (0, import_clients2.createBlockscoutClient)({ baseUrl: blockscoutApiUrl }),
10898
11028
  [blockscoutApiUrl]
10899
11029
  );
10900
11030
  const publicClient2 = (0, import_wagmi2.usePublicClient)({ chainId: lumiaBeam.id });
10901
- const lastRefreshRef = (0, import_react42.useRef)(0);
11031
+ const lastRefreshRef = (0, import_react44.useRef)(0);
10902
11032
  const {
10903
11033
  data: nativeBalanceData,
10904
11034
  isLoading: nativeLoading,
@@ -10938,7 +11068,7 @@ function useBlockscoutAssets(options) {
10938
11068
  retry: 2,
10939
11069
  retryDelay: 1e3
10940
11070
  });
10941
- const erc20TokenAddresses = (0, import_react42.useMemo)(() => {
11071
+ const erc20TokenAddresses = (0, import_react44.useMemo)(() => {
10942
11072
  if (!tokenBalances) return [];
10943
11073
  return tokenBalances.filter((tb) => tb.token.type === "ERC-20").map((tb) => tb.token.address);
10944
11074
  }, [tokenBalances]);
@@ -10982,7 +11112,7 @@ function useBlockscoutAssets(options) {
10982
11112
  gcTime: BLOCKSCOUT_QUERY_GC_TIME,
10983
11113
  retry: 1
10984
11114
  });
10985
- const assets = (0, import_react42.useMemo)(() => {
11115
+ const assets = (0, import_react44.useMemo)(() => {
10986
11116
  const result = [];
10987
11117
  if (nativeBalanceData) {
10988
11118
  result.push({
@@ -11018,7 +11148,7 @@ function useBlockscoutAssets(options) {
11018
11148
  }
11019
11149
  return result;
11020
11150
  }, [nativeBalanceData, tokenBalances, nftItems, erc3643Results]);
11021
- const nativeBalance = (0, import_react42.useMemo)(() => {
11151
+ const nativeBalance = (0, import_react44.useMemo)(() => {
11022
11152
  if (!nativeBalanceData) return null;
11023
11153
  return {
11024
11154
  value: nativeBalanceData.value,
@@ -11026,11 +11156,11 @@ function useBlockscoutAssets(options) {
11026
11156
  symbol: "LUMIA"
11027
11157
  };
11028
11158
  }, [nativeBalanceData]);
11029
- const error = (0, import_react42.useMemo)(() => {
11159
+ const error = (0, import_react44.useMemo)(() => {
11030
11160
  if (!tokensError) return null;
11031
11161
  return createError(tokensError);
11032
11162
  }, [tokensError]);
11033
- const refreshBalances = (0, import_react42.useCallback)(async () => {
11163
+ const refreshBalances = (0, import_react44.useCallback)(async () => {
11034
11164
  const now = Date.now();
11035
11165
  if (now - lastRefreshRef.current < BLOCKSCOUT_REFRESH_DEBOUNCE) {
11036
11166
  return;
@@ -11038,7 +11168,7 @@ function useBlockscoutAssets(options) {
11038
11168
  lastRefreshRef.current = now;
11039
11169
  await Promise.all([refetchNative(), refetchTokens(), refetchNfts()]);
11040
11170
  }, [refetchNative, refetchTokens, refetchNfts]);
11041
- const getTokenBalance = (0, import_react42.useCallback)(
11171
+ const getTokenBalance = (0, import_react44.useCallback)(
11042
11172
  (tokenAddress) => {
11043
11173
  return assets.find((a) => a.address?.toLowerCase() === tokenAddress.toLowerCase()) || null;
11044
11174
  },
@@ -11059,8 +11189,8 @@ function useBlockscoutAssets(options) {
11059
11189
 
11060
11190
  // src/internal/components/PortfolioMenu/PortfolioItem.tsx
11061
11191
  var import_react_query29 = require("@tanstack/react-query");
11062
- var import_lucide_react35 = require("lucide-react");
11063
- var import_react43 = require("react");
11192
+ var import_lucide_react34 = require("lucide-react");
11193
+ var import_react45 = require("react");
11064
11194
  var import_viem6 = require("viem");
11065
11195
  init_base();
11066
11196
  var import_jsx_runtime55 = require("react/jsx-runtime");
@@ -11098,8 +11228,8 @@ async function getAssetRate2(symbol) {
11098
11228
  var ASSETS_RATES_QUERY_KEY = "lumia-passport-assets-rates-query-key";
11099
11229
  function PortfolioItem(props) {
11100
11230
  const { address, asset, isProjectAsset } = props;
11101
- const [nftImageError, setNftImageError] = (0, import_react43.useState)(false);
11102
- const [logoError, setLogoError] = (0, import_react43.useState)(false);
11231
+ const [nftImageError, setNftImageError] = (0, import_react45.useState)(false);
11232
+ const [logoError, setLogoError] = (0, import_react45.useState)(false);
11103
11233
  const { assets: projectAssets, showBalanceAs: showBalanceAsSymbol } = useLumiaPassportConfig().config.current.projectAssets || {};
11104
11234
  const qc = (0, import_react_query29.useQueryClient)();
11105
11235
  const { balanceQueryKey } = projectAssets?.find((a) => a.symbol === showBalanceAsSymbol) || {};
@@ -11149,7 +11279,7 @@ function PortfolioItem(props) {
11149
11279
  }
11150
11280
  ) : isNft && (!nftImage || nftImageError) ? (
11151
11281
  // NFT placeholder when no image available
11152
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "w-full h-full bg-[var(--l-pass-fg)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react35.Image, { className: "w-5 h-5 text-[var(--l-pass-fg-inverted)]" }) })
11282
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "w-full h-full bg-[var(--l-pass-fg)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react34.Image, { className: "w-5 h-5 text-[var(--l-pass-fg-inverted)]" }) })
11153
11283
  ) : asset.logo && !logoError ? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
11154
11284
  "img",
11155
11285
  {
@@ -11159,13 +11289,13 @@ function PortfolioItem(props) {
11159
11289
  onError: () => setLogoError(true)
11160
11290
  }
11161
11291
  ) : /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { className: "text-[var(--l-pass-fg-inverted)] font-bold text-sm", children: asset.symbol.charAt(0) }),
11162
- isNft && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "absolute -top-1 -right-1 w-4 h-4 rounded-full bg-[var(--l-pass-accent)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react35.Sparkles, { className: "w-2.5 h-2.5 text-[var(--l-pass-fg-inverted)]" }) }),
11292
+ isNft && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "absolute -top-1 -right-1 w-4 h-4 rounded-full bg-[var(--l-pass-accent)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react34.Sparkles, { className: "w-2.5 h-2.5 text-[var(--l-pass-fg-inverted)]" }) }),
11163
11293
  isSecurity && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
11164
11294
  "div",
11165
11295
  {
11166
11296
  className: "absolute -top-1 -right-1 w-4 h-4 rounded-full bg-amber-500 flex items-center justify-center",
11167
11297
  title: "Security Token (ERC-3643)",
11168
- children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react35.Shield, { className: "w-2.5 h-2.5 text-white" })
11298
+ children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react34.Shield, { className: "w-2.5 h-2.5 text-white" })
11169
11299
  }
11170
11300
  )
11171
11301
  ]
@@ -11196,7 +11326,7 @@ function PortfolioItem(props) {
11196
11326
  /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { children: formatPrice(Number(renderBalance)) }),
11197
11327
  /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { children: " " + asset.symbol })
11198
11328
  ] }),
11199
- isRateLoading && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react35.Loader, { className: "h-4 w-4 animate-spin" }),
11329
+ isRateLoading && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react34.Loader, { className: "h-4 w-4 animate-spin" }),
11200
11330
  !isRateLoading && !!usdRenderBalance && /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("span", { children: [
11201
11331
  /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { children: "$" }),
11202
11332
  /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { children: formatPrice(usdRenderBalance) })
@@ -11225,7 +11355,7 @@ function PortfolioMenu() {
11225
11355
  } = useBlockscoutAssets({
11226
11356
  address
11227
11357
  });
11228
- const refreshAllAssetsBalances = (0, import_react44.useCallback)(() => {
11358
+ const refreshAllAssetsBalances = (0, import_react46.useCallback)(() => {
11229
11359
  Promise.all(projectAssets.map((asset) => qc.invalidateQueries({ queryKey: asset.balanceQueryKey })));
11230
11360
  refreshBlockscoutBalances();
11231
11361
  }, [qc, projectAssets, refreshBlockscoutBalances]);
@@ -11239,7 +11369,7 @@ function PortfolioMenu() {
11239
11369
  className: "list-scrollbar-y w-full p-[var(--l-pass-pd)]",
11240
11370
  children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: [
11241
11371
  /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
11242
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react36.ArrowLeft, { className: "h-4 w-4" }) }),
11372
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react35.ArrowLeft, { className: "h-4 w-4" }) }),
11243
11373
  /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-xl font-semibold", children: "Your Assets" }),
11244
11374
  /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
11245
11375
  Button,
@@ -11249,13 +11379,13 @@ function PortfolioMenu() {
11249
11379
  size: "icon",
11250
11380
  onClick: refreshAllAssetsBalances,
11251
11381
  disabled: isBlockscoutLoading,
11252
- children: isBlockscoutLoading ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react36.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react36.RefreshCw, { className: "h-4 w-4" })
11382
+ children: isBlockscoutLoading ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react35.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react35.RefreshCw, { className: "h-4 w-4" })
11253
11383
  }
11254
11384
  )
11255
11385
  ] }),
11256
- isBlockscoutLoading && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "w-full flex items-center justify-center gap-[var(--l-pass-gap)] p-[var(--l-pass-pd)]", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react36.Loader, { className: "h-5 w-5 animate-spin" }) }),
11386
+ isBlockscoutLoading && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "w-full flex items-center justify-center gap-[var(--l-pass-gap)] p-[var(--l-pass-pd)]", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react35.Loader, { className: "h-5 w-5 animate-spin" }) }),
11257
11387
  !isBlockscoutLoading && blockscoutAssets?.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(Highlight, { type: "info", className: "flex flex-col items-center justify-center gap-[var(--l-pass-gap)]", children: [
11258
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react36.Gem, { className: "w-8 h-8" }),
11388
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react35.Gem, { className: "w-8 h-8" }),
11259
11389
  /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "block", children: "No assets found" })
11260
11390
  ] }),
11261
11391
  !isBlockscoutLoading && projectAssets?.map((asset, index) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(PortfolioItem, { isProjectAsset: true, address, asset }, `project-${asset.symbol}-${index}`)),
@@ -11268,7 +11398,7 @@ function PortfolioMenu() {
11268
11398
  `${asset.type}-${asset.address || "native"}-${asset.tokenId || index}`
11269
11399
  )),
11270
11400
  blockscoutError && !isBlockscoutAvailable && /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
11271
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react36.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
11401
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react35.AlertCircle, { className: "h-4 w-4 flex-shrink-0" }),
11272
11402
  /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "text-xs", children: blockscoutError.message })
11273
11403
  ] })
11274
11404
  ] })
@@ -11278,8 +11408,9 @@ function PortfolioMenu() {
11278
11408
 
11279
11409
  // src/internal/components/SecurityMenu/SecurityMenu.tsx
11280
11410
  var import_react_query31 = require("@tanstack/react-query");
11281
- var import_lucide_react40 = require("lucide-react");
11282
- var import_react45 = require("react");
11411
+ var import_dayjs3 = __toESM(require("dayjs"), 1);
11412
+ var import_lucide_react39 = require("lucide-react");
11413
+ var import_react47 = require("react");
11283
11414
  init_auth();
11284
11415
  init_keyshare();
11285
11416
  init_iframe_manager();
@@ -11289,7 +11420,7 @@ init_vaultClient();
11289
11420
  var KEYSHARE_RECOVERY_STATS_QUERY = "keyshare-recovery-stats-query";
11290
11421
 
11291
11422
  // src/internal/components/SecurityMenu/Keyshare/Keyshare.tsx
11292
- var import_lucide_react39 = require("lucide-react");
11423
+ var import_lucide_react38 = require("lucide-react");
11293
11424
 
11294
11425
  // src/internal/assets/NegativeIcon.tsx
11295
11426
  var import_jsx_runtime57 = require("react/jsx-runtime");
@@ -11306,11 +11437,11 @@ function NegativeIcon(props) {
11306
11437
  init_vaultClient();
11307
11438
 
11308
11439
  // src/internal/components/SecurityMenu/Keyshare/KeyshareStatus.tsx
11309
- var import_lucide_react37 = require("lucide-react");
11440
+ var import_lucide_react36 = require("lucide-react");
11310
11441
  var import_jsx_runtime58 = require("react/jsx-runtime");
11311
11442
  function KeyshareStatus(props) {
11312
11443
  const { isLoading, content, icon: Icon2, children } = props;
11313
- if (isLoading) return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_lucide_react37.Loader, { className: "w-4 h-4 animate-spin text-[var(--l-pass-fg-muted)]" });
11444
+ if (isLoading) return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_lucide_react36.Loader, { className: "w-4 h-4 animate-spin text-[var(--l-pass-fg-muted)]" });
11314
11445
  return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "group relative w-full h-full", children: [
11315
11446
  children,
11316
11447
  /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
@@ -11342,7 +11473,8 @@ function KeyshareStatus(props) {
11342
11473
  }
11343
11474
 
11344
11475
  // src/internal/components/SecurityMenu/Keyshare/LastBackup.tsx
11345
- var import_lucide_react38 = require("lucide-react");
11476
+ var import_dayjs2 = __toESM(require("dayjs"), 1);
11477
+ var import_lucide_react37 = require("lucide-react");
11346
11478
  var import_jsx_runtime59 = require("react/jsx-runtime");
11347
11479
  function parseOS(ua) {
11348
11480
  if (!ua) return null;
@@ -11366,26 +11498,26 @@ function LastBackup(props) {
11366
11498
  const hasBackupData = backup?.server?.enabled && backup.server.lastBackup || !backup.server.lastBackup && recoveryCreatedAt || backup.cloud.enabled && backup.cloud?.lastBackup || backup.local.enabled && backup.local.lastBackup;
11367
11499
  if (!hasBackupData) return null;
11368
11500
  return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(Highlight, { type: "info", className: "flex flex-col gap-[var(--l-pass-gap)] text-[10px] leading-tight", children: [
11369
- /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("span", { className: "block font-bold text-xs", children: [
11370
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react38.Server, { className: "w-4 h-4 inline" }),
11371
- " Last Keyshare Vault Backup"
11501
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("span", { className: "flex items-center gap-[var(--l-pass-gap)] font-bold text-xs leading-4", children: [
11502
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react37.Server, { className: "w-4 h-4 inline" }),
11503
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { children: "Last Keyshare Vault Backup" })
11372
11504
  ] }),
11373
11505
  recoveryCreatedAt && /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_jsx_runtime59.Fragment, { children: [
11374
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { children: new Date(recoveryCreatedAt).toLocaleString() }),
11506
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { children: (0, import_dayjs2.default)(recoveryCreatedAt).format("MMMM DD, YYYY HH:mm") }),
11375
11507
  /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { children: `${recoveryBrowser || "UNKNOWN"} browser at ${recoveryDeviceName || "UNKNOWN"} device under ${parseOS(recoveryUa) || "UNKNOWN"} OS` })
11376
11508
  ] }),
11377
11509
  backup.cloud.enabled && backup.cloud.lastBackup && /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-center gap-1", children: [
11378
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react38.Cloud, { className: "h-3 w-3" }),
11510
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react37.Cloud, { className: "h-3 w-3" }),
11379
11511
  /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("span", { children: [
11380
11512
  "Cloud: ",
11381
- new Date(backup.cloud.lastBackup).toLocaleString()
11513
+ (0, import_dayjs2.default)(backup.cloud.lastBackup).format("MMMM DD, YYYY HH:mm")
11382
11514
  ] })
11383
11515
  ] }),
11384
11516
  backup.local.enabled && backup.local.lastBackup && /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-center gap-1", children: [
11385
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react38.HardDrive, { className: "h-3 w-3" }),
11517
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react37.HardDrive, { className: "h-3 w-3" }),
11386
11518
  /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("span", { children: [
11387
11519
  "Local: ",
11388
- new Date(backup.local.lastBackup).toLocaleString()
11520
+ (0, import_dayjs2.default)(backup.local.lastBackup).format("MMMM DD, YYYY HH:mm")
11389
11521
  ] })
11390
11522
  ] })
11391
11523
  ] });
@@ -11399,7 +11531,7 @@ function Keyshare(props) {
11399
11531
  return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(import_jsx_runtime60.Fragment, { children: [
11400
11532
  /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex items-center justify-between gap-[var(--l-pass-gap)]", children: [
11401
11533
  /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "text-xs text-[var(--l-pass-fg-muted)]", children: "Keyshare Status" }),
11402
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(Button, { variant: "ghost", size: "icon", title: "Refresh", disabled: isLoading, onClick: refresh, children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react39.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react39.RefreshCw, { className: "h-4 w-4" }) })
11534
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(Button, { variant: "ghost", size: "icon", title: "Refresh", disabled: isLoading, onClick: refresh, children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react38.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react38.RefreshCw, { className: "h-4 w-4" }) })
11403
11535
  ] }),
11404
11536
  /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "grid grid-cols-3 gap-[var(--l-pass-gap)] px-[var(--l-pass-gap)]", children: [
11405
11537
  /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
@@ -11413,7 +11545,7 @@ function Keyshare(props) {
11413
11545
  type: serverHasKeyshare ? "success" : "warning",
11414
11546
  className: "w-full h-full flex flex-col items-center gap-0",
11415
11547
  children: [
11416
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react39.Cloud, { className: "h-6 w-6" }),
11548
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react38.Cloud, { className: "h-6 w-6" }),
11417
11549
  /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "text-[10px] font-medium leading-4", children: "Server Share" })
11418
11550
  ]
11419
11551
  }
@@ -11431,7 +11563,7 @@ function Keyshare(props) {
11431
11563
  type: localInfo?.hasKeyshare ? "success" : "warning",
11432
11564
  className: "w-full h-full flex flex-col items-center gap-0",
11433
11565
  children: [
11434
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react39.Laptop, { className: "h-6 w-6" }),
11566
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react38.Laptop, { className: "h-6 w-6" }),
11435
11567
  /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "text-[10px] font-medium leading-4", children: "Local Share" })
11436
11568
  ]
11437
11569
  }
@@ -11449,7 +11581,7 @@ function Keyshare(props) {
11449
11581
  type: hasServerBackup ? "success" : "warning",
11450
11582
  className: "w-full h-full flex flex-col items-center gap-0",
11451
11583
  children: [
11452
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react39.Server, { className: "h-6 w-6" }),
11584
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react38.Server, { className: "h-6 w-6" }),
11453
11585
  /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "text-[10px] font-medium leading-4", children: "Backup Vault" })
11454
11586
  ]
11455
11587
  }
@@ -11470,8 +11602,8 @@ function SecurityMenu() {
11470
11602
  const setPage = useLayoutDataStore((st) => st.setPage);
11471
11603
  const userId = import_auth3.jwtTokenManager.getUserId();
11472
11604
  const serverHasKeyshare = import_auth3.jwtTokenManager.getHasKeyshare() ?? false;
11473
- const [isRemoving, setIsRemoving] = (0, import_react45.useState)(false);
11474
- const [appToRemove, setAppToRemove] = (0, import_react45.useState)(null);
11605
+ const [isRemoving, setIsRemoving] = (0, import_react47.useState)(false);
11606
+ const [appToRemove, setAppToRemove] = (0, import_react47.useState)(null);
11475
11607
  const { data: recoveryData, isFetching: isRecoveryLoading } = (0, import_react_query31.useQuery)({
11476
11608
  enabled: !!userId,
11477
11609
  queryKey: [KEYSHARE_RECOVERY_STATS_QUERY, userId],
@@ -11531,7 +11663,7 @@ function SecurityMenu() {
11531
11663
  if (!!appToRemove) setAppToRemove(null);
11532
11664
  else setPage("settings" /* SETTINGS */);
11533
11665
  },
11534
- children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react40.ArrowLeft, { className: "h-4 w-4" })
11666
+ children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react39.ArrowLeft, { className: "h-4 w-4" })
11535
11667
  }
11536
11668
  ),
11537
11669
  /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "text-xl font-semibold", children: "Security" })
@@ -11555,15 +11687,22 @@ function SecurityMenu() {
11555
11687
  /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-full space-y-1", children: trustedApps.map((app, index) => /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
11556
11688
  "div",
11557
11689
  {
11558
- className: "text-[10px] leading-tight p-2 rounded flex items-center gap-2 bg-[var(--l-pass-secondary)]",
11690
+ className: "text-[10px] leading-tight p-2 rounded-[var(--l-pass-el-bdrs)] flex items-center gap-[var(--l-pass-gap)] bg-[var(--l-pass-bg-info)]",
11559
11691
  children: [
11560
- app.appLogo ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("img", { src: app.appLogo, alt: "", className: "w-8 h-8 rounded-md object-cover flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-8 h-8 rounded-md bg-[var(--l-pass-bg-muted)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "text-sm", children: "\u{1F517}" }) }),
11692
+ app.appLogo ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
11693
+ "img",
11694
+ {
11695
+ src: app.appLogo,
11696
+ alt: app.appName,
11697
+ className: "w-8 h-8 rounded-[var(--l-pass-el-bdrs)] object-cover flex-shrink-0"
11698
+ }
11699
+ ) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-8 h-8 rounded-[var(--l-pass-el-bdrs)] bg-[var(--l-pass-bg-muted)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "text-sm", children: "\u{1F517}" }) }),
11561
11700
  /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex-1 min-w-0", children: [
11562
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "font-medium truncate", children: app.appName || new URL(app.origin).hostname }),
11701
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "font-semibold truncate", children: app.appName || new URL(app.origin).hostname }),
11563
11702
  /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "text-[var(--l-pass-fg-muted)] truncate", children: new URL(app.origin).hostname }),
11564
- /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "text-[var(--l-pass-fg-muted)]", children: [
11703
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "text-[var(--l-pass-fg-muted)] truncate", children: [
11565
11704
  "Trusted: ",
11566
- new Date(app.trustedAt).toLocaleDateString()
11705
+ (0, import_dayjs3.default)(app.trustedAt).format("MMM D, YYYY HH:mm")
11567
11706
  ] })
11568
11707
  ] }),
11569
11708
  /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
@@ -11572,7 +11711,7 @@ function SecurityMenu() {
11572
11711
  variant: "ghost",
11573
11712
  size: "icon",
11574
11713
  title: "Remove from trusted",
11575
- className: "text-[var(--l-pass-error)] flex-shrink-0",
11714
+ className: "text-[var(--l-pass-bg-error)] flex-shrink-0",
11576
11715
  onClick: () => setAppToRemove({
11577
11716
  projectId: app.projectId,
11578
11717
  origin: app.origin,
@@ -11580,7 +11719,7 @@ function SecurityMenu() {
11580
11719
  appName: app.appName,
11581
11720
  appLogo: app.appLogo
11582
11721
  }),
11583
- children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react40.Trash2, { className: "h-3 w-3" })
11722
+ children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react39.Trash2, { className: "h-4 w-4" })
11584
11723
  }
11585
11724
  )
11586
11725
  ]
@@ -11618,7 +11757,7 @@ function SecurityMenu() {
11618
11757
  className: "flex-1 bg-[var(--l-pass-error)] hover:bg-[var(--l-pass-error)]/60 active:bg-[var(--l-pass-error)]/40",
11619
11758
  onClick: handleRemoveTrustedApp,
11620
11759
  disabled: isRemoving,
11621
- children: isRemoving ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react40.Loader, { className: "h-4 w-4 animate-spin" }) : "Remove"
11760
+ children: isRemoving ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react39.Loader, { className: "h-4 w-4 animate-spin" }) : "Remove"
11622
11761
  }
11623
11762
  )
11624
11763
  ] })
@@ -11629,22 +11768,22 @@ function SecurityMenu() {
11629
11768
  }
11630
11769
 
11631
11770
  // src/internal/components/SendRecieveMenu/SendLumiaMenu.tsx
11632
- var import_lucide_react41 = require("lucide-react");
11633
- var import_react48 = require("react");
11771
+ var import_lucide_react40 = require("lucide-react");
11772
+ var import_react50 = require("react");
11634
11773
  var import_viem9 = require("viem");
11635
11774
  var import_wagmi4 = require("wagmi");
11636
11775
 
11637
11776
  // src/hooks/useSendTransaction.ts
11638
- var import_react46 = require("react");
11777
+ var import_react48 = require("react");
11639
11778
  var import_viem7 = require("viem");
11640
11779
  init_account();
11641
11780
  function useSendTransaction() {
11642
11781
  const session = useLumiaPassportSession((st) => st.session);
11643
11782
  const address = useLumiaPassportSession((st) => st.address);
11644
- const [isLoading, setIsLoading] = (0, import_react46.useState)(false);
11645
- const [error, setError] = (0, import_react46.useState)(null);
11646
- const [userOpHash, setUserOpHash] = (0, import_react46.useState)(null);
11647
- const sendTransaction = (0, import_react46.useCallback)(
11783
+ const [isLoading, setIsLoading] = (0, import_react48.useState)(false);
11784
+ const [error, setError] = (0, import_react48.useState)(null);
11785
+ const [userOpHash, setUserOpHash] = (0, import_react48.useState)(null);
11786
+ const sendTransaction = (0, import_react48.useCallback)(
11648
11787
  async (params) => {
11649
11788
  if (!session || !address) {
11650
11789
  setError("No active session");
@@ -11684,7 +11823,7 @@ function useSendTransaction() {
11684
11823
  },
11685
11824
  [session, address]
11686
11825
  );
11687
- const reset = (0, import_react46.useCallback)(() => {
11826
+ const reset = (0, import_react48.useCallback)(() => {
11688
11827
  setError(null);
11689
11828
  setUserOpHash(null);
11690
11829
  setIsLoading(false);
@@ -11699,7 +11838,7 @@ function useSendTransaction() {
11699
11838
  }
11700
11839
 
11701
11840
  // src/modules/assets.ts
11702
- var import_react47 = __toESM(require("react"), 1);
11841
+ var import_react49 = __toESM(require("react"), 1);
11703
11842
  var import_wagmi3 = require("wagmi");
11704
11843
  var import_viem8 = require("viem");
11705
11844
  init_base();
@@ -11846,7 +11985,7 @@ function useTokenBalance(tokenAddress, userAddress) {
11846
11985
  }
11847
11986
  });
11848
11987
  const { tokenInfo } = useTokenInfo(tokenAddress);
11849
- const formattedBalance = import_react47.default.useMemo(() => {
11988
+ const formattedBalance = import_react49.default.useMemo(() => {
11850
11989
  if (!balance || !tokenInfo) return "0";
11851
11990
  return (0, import_viem8.formatUnits)(balance, tokenInfo.decimals);
11852
11991
  }, [balance, tokenInfo]);
@@ -11873,13 +12012,13 @@ function SendLumiaMenu() {
11873
12012
  address,
11874
12013
  chainId: lumiaBeam.id
11875
12014
  });
11876
- const [recipient, setRecipient] = (0, import_react48.useState)("");
11877
- const [amount, setAmount] = (0, import_react48.useState)("");
11878
- const [txStep, setTxStep] = (0, import_react48.useState)("input");
11879
- const [validationError, setValidationError] = (0, import_react48.useState)(null);
12015
+ const [recipient, setRecipient] = (0, import_react50.useState)("");
12016
+ const [amount, setAmount] = (0, import_react50.useState)("");
12017
+ const [txStep, setTxStep] = (0, import_react50.useState)("input");
12018
+ const [validationError, setValidationError] = (0, import_react50.useState)(null);
11880
12019
  const nativeAsset = assets.find((a) => a.type === "native");
11881
12020
  const balance = nativeAsset ? parseFloat(nativeAsset.formattedBalance) : 0;
11882
- (0, import_react48.useEffect)(() => {
12021
+ (0, import_react50.useEffect)(() => {
11883
12022
  if (open) {
11884
12023
  setTxStep("input");
11885
12024
  setValidationError(null);
@@ -11936,7 +12075,7 @@ function SendLumiaMenu() {
11936
12075
  };
11937
12076
  return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]", children: [
11938
12077
  /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
11939
- txStep === "input" && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react41.ArrowLeft, { className: "h-4 w-4" }) }),
12078
+ txStep === "input" && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react40.ArrowLeft, { className: "h-4 w-4" }) }),
11940
12079
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "text-xl font-semibold", children: "Send LUMIA" })
11941
12080
  ] }),
11942
12081
  txStep === "input" && /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
@@ -11945,7 +12084,7 @@ function SendLumiaMenu() {
11945
12084
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
11946
12085
  Input,
11947
12086
  {
11948
- Icon: import_lucide_react41.Wallet,
12087
+ Icon: import_lucide_react40.Wallet,
11949
12088
  type: "text",
11950
12089
  value: recipient,
11951
12090
  onChange: (e) => setRecipient(e.target.value),
@@ -11988,7 +12127,7 @@ function SendLumiaMenu() {
11988
12127
  ] })
11989
12128
  ] }),
11990
12129
  (validationError || error) && /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex items-center gap-2 p-3 bg-[var(--l-pass-bg-error)] text-[var(--l-pass-error)] rounded-[var(--l-pass-el-bdrs)]", children: [
11991
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react41.AlertCircle, { className: "h-4 w-4" }),
12130
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react40.AlertCircle, { className: "h-4 w-4" }),
11992
12131
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "text-sm", children: validationError || error })
11993
12132
  ] }),
11994
12133
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { onClick: handleSend, disabled: isLoading, className: "w-full", size: "large", children: "Continue" })
@@ -12017,13 +12156,13 @@ function SendLumiaMenu() {
12017
12156
  /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex gap-2", children: [
12018
12157
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(Button, { onClick: () => setTxStep("input"), variant: "outline", className: "flex-1", size: "large", children: "Back" }),
12019
12158
  /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(Button, { onClick: handleConfirm, disabled: isLoading, className: "flex-1", size: "large", children: [
12020
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react41.Loader, { className: "h-4 w-4 animate-spin" }),
12159
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react40.Loader, { className: "h-4 w-4 animate-spin" }),
12021
12160
  "Confirm"
12022
12161
  ] })
12023
12162
  ] })
12024
12163
  ] }),
12025
12164
  txStep === "pending" && /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "py-8 text-center space-y-4", children: [
12026
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react41.Loader, { className: "h-5 w-5 animate-spin mx-auto" }),
12165
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react40.Loader, { className: "h-5 w-5 animate-spin mx-auto" }),
12027
12166
  /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { children: [
12028
12167
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "block font-medium", children: "Transaction Pending" }),
12029
12168
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "block text-sm mt-1", children: "Please wait while we process your transaction" })
@@ -12031,7 +12170,7 @@ function SendLumiaMenu() {
12031
12170
  ] }),
12032
12171
  txStep === "success" && userOpHash && /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(import_jsx_runtime62.Fragment, { children: [
12033
12172
  /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "text-center py-4", children: [
12034
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react41.CheckCircle2, { className: "h-12 w-12 text-[var(--l-pass-success)] mx-auto mb-3" }),
12173
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react40.CheckCircle2, { className: "h-12 w-12 text-[var(--l-pass-success)] mx-auto mb-3" }),
12035
12174
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("p", { className: "font-medium", children: "Transaction Sent!" }),
12036
12175
  /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("p", { className: "text-sm mt-1", children: "Your transaction is being processed" })
12037
12176
  ] }),
@@ -12041,9 +12180,9 @@ function SendLumiaMenu() {
12041
12180
  }
12042
12181
 
12043
12182
  // src/internal/components/SendRecieveMenu/ReceiveLumiaMenu.tsx
12044
- var import_lucide_react42 = require("lucide-react");
12183
+ var import_lucide_react41 = require("lucide-react");
12045
12184
  var import_qrcode = __toESM(require("qrcode"), 1);
12046
- var import_react49 = require("react");
12185
+ var import_react51 = require("react");
12047
12186
  init_clients();
12048
12187
  var import_jsx_runtime63 = require("react/jsx-runtime");
12049
12188
  function ReceiveLumiaMenu() {
@@ -12052,9 +12191,9 @@ function ReceiveLumiaMenu() {
12052
12191
  const setPage = useLayoutDataStore((st) => st.setPage);
12053
12192
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
12054
12193
  const open = page === "receive";
12055
- const [qrCodeUrl, setQrCodeUrl] = (0, import_react49.useState)("");
12056
- const [copied, setCopied] = (0, import_react49.useState)(false);
12057
- (0, import_react49.useEffect)(() => {
12194
+ const [qrCodeUrl, setQrCodeUrl] = (0, import_react51.useState)("");
12195
+ const [copied, setCopied] = (0, import_react51.useState)(false);
12196
+ (0, import_react51.useEffect)(() => {
12058
12197
  if (open && address) {
12059
12198
  import_qrcode.default.toDataURL(address, {
12060
12199
  width: 200,
@@ -12067,7 +12206,7 @@ function ReceiveLumiaMenu() {
12067
12206
  });
12068
12207
  }
12069
12208
  }, [open, address]);
12070
- const handleCopy = (0, import_react49.useCallback)(async () => {
12209
+ const handleCopy = (0, import_react51.useCallback)(async () => {
12071
12210
  if (!address) return;
12072
12211
  try {
12073
12212
  await navigator.clipboard.writeText(address);
@@ -12087,21 +12226,21 @@ function ReceiveLumiaMenu() {
12087
12226
  className: "list-scrollbar-y w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]",
12088
12227
  children: [
12089
12228
  /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "w-full flex items-center gap-[var(--l-pass-gap)]", children: [
12090
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react42.ArrowLeft, { className: "h-4 w-4" }) }),
12229
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react41.ArrowLeft, { className: "h-4 w-4" }) }),
12091
12230
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: "text-xl font-semibold", children: "Receive LUMIA" })
12092
12231
  ] }),
12093
12232
  /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(Highlight, { className: "text-center", type: "warning", children: [
12094
12233
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("strong", { className: "block w-full", children: `Network: ${lumiaBeam.name}` }),
12095
12234
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: "block w-full", children: "Ensure sender is on the same network" })
12096
12235
  ] }),
12097
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "flex items-center justify-center p-[var(--l-pass-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("img", { src: qrCodeUrl, alt: "Wallet QR Code", className: "w-48 h-48" }) : /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react42.Loader, { className: "w-5 h-5 animate-spin text-[var(--l-pass-fg-muted)]" }) }),
12236
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "flex items-center justify-center p-[var(--l-pass-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("img", { src: qrCodeUrl, alt: "Wallet QR Code", className: "w-48 h-48" }) : /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react41.Loader, { className: "w-5 h-5 animate-spin text-[var(--l-pass-fg-muted)]" }) }),
12098
12237
  /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(Highlight, { type: "info", children: [
12099
12238
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: "block w-full text-center font-mono text-[10px] break-all mb-2", children: address }),
12100
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Button, { onClick: handleCopy, className: "w-full", size: "medium", children: copied ? /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_jsx_runtime63.Fragment, { children: [
12101
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react42.CheckCircle2, { className: "h-4 w-4" }),
12239
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Button, { onClick: handleCopy, className: "w-full", size: "large", children: copied ? /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_jsx_runtime63.Fragment, { children: [
12240
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react41.CheckCircle2, { className: "h-4 w-4" }),
12102
12241
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { children: "Copied!" })
12103
12242
  ] }) : /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(import_jsx_runtime63.Fragment, { children: [
12104
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react42.Copy, { className: "h-4 w-4" }),
12243
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react41.Copy, { className: "h-4 w-4" }),
12105
12244
  /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { children: "Copy Address" })
12106
12245
  ] }) })
12107
12246
  ] }),
@@ -12112,11 +12251,11 @@ function ReceiveLumiaMenu() {
12112
12251
  }
12113
12252
 
12114
12253
  // src/internal/components/SettingsMenu/SettingsMenu.tsx
12115
- var import_lucide_react44 = require("lucide-react");
12116
- var import_react50 = require("react");
12254
+ var import_lucide_react43 = require("lucide-react");
12255
+ var import_react52 = require("react");
12117
12256
 
12118
12257
  // src/internal/components/SettingsMenu/constants.ts
12119
- var import_lucide_react43 = require("lucide-react");
12258
+ var import_lucide_react42 = require("lucide-react");
12120
12259
 
12121
12260
  // src/internal/assets/KycIcon.tsx
12122
12261
  var import_jsx_runtime64 = require("react/jsx-runtime");
@@ -12133,11 +12272,11 @@ function KycIcon(props) {
12133
12272
 
12134
12273
  // src/internal/components/SettingsMenu/constants.ts
12135
12274
  var NAV_BUTTONS = [
12136
- { id: "transactions" /* TRANSACTIONS */, name: "Transactions", Icon: import_lucide_react43.ArrowLeftRight },
12275
+ { id: "transactions" /* TRANSACTIONS */, name: "Transactions", Icon: import_lucide_react42.ArrowLeftRight },
12137
12276
  { id: "kyc" /* KYC */, name: "KYC", Icon: KycIcon },
12138
- { id: "manage-wallet" /* MANAGE_WALLET */, name: "Profiles", Icon: import_lucide_react43.UsersRound },
12139
- { id: "security" /* SECURITY */, name: "Security", Icon: import_lucide_react43.LockKeyhole },
12140
- { id: "keysare-backup" /* KEYSARE_BACKUP */, name: "Backup", Icon: import_lucide_react43.DatabaseBackup }
12277
+ { id: "manage-wallet" /* MANAGE_WALLET */, name: "Profiles", Icon: import_lucide_react42.UsersRound },
12278
+ { id: "security" /* SECURITY */, name: "Security", Icon: import_lucide_react42.LockKeyhole },
12279
+ { id: "keysare-backup" /* KEYSARE_BACKUP */, name: "Backup", Icon: import_lucide_react42.DatabaseBackup }
12141
12280
  ];
12142
12281
 
12143
12282
  // src/internal/components/SettingsMenu/SettingsMenu.tsx
@@ -12147,13 +12286,13 @@ function SettingsMenu() {
12147
12286
  const setPage = useLayoutDataStore((st) => st.setPage);
12148
12287
  const settingsNotifications = useLayoutDataStore((st) => st.settingsNotifications);
12149
12288
  const setMainPageHeight = useLayoutDataStore((st) => st.setMainPageHeight);
12150
- (0, import_react50.useEffect)(() => setMainPageHeight(DEFAULT_SETTINGS_MENU_HEIGHT), [setMainPageHeight]);
12289
+ (0, import_react52.useEffect)(() => setMainPageHeight(DEFAULT_SETTINGS_MENU_HEIGHT), [setMainPageHeight]);
12151
12290
  useProvidersList();
12152
12291
  const navItems = NAV_BUTTONS.map((el) => ({ ...el, onClick: () => setPage(el.id) }));
12153
12292
  const highlightedKeys = settingsNotifications.map((n) => n.target);
12154
12293
  return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]", children: [
12155
12294
  /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
12156
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react44.ArrowLeft, { className: "h-4 w-4" }) }),
12295
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.ArrowLeft, { className: "h-4 w-4" }) }),
12157
12296
  /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-xl font-semibold", children: "Settings" })
12158
12297
  ] }),
12159
12298
  /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: navItems.map(({ id, name, Icon: Icon2, onClick }) => /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
@@ -12179,7 +12318,7 @@ function SettingsMenu() {
12179
12318
  }
12180
12319
 
12181
12320
  // src/internal/components/TermsOfService.tsx
12182
- var import_lucide_react45 = require("lucide-react");
12321
+ var import_lucide_react44 = require("lucide-react");
12183
12322
  var import_jsx_runtime66 = require("react/jsx-runtime");
12184
12323
  function TermsOfService() {
12185
12324
  const address = useLumiaPassportSession((st) => st.address);
@@ -12193,7 +12332,7 @@ function TermsOfService() {
12193
12332
  size: "icon",
12194
12333
  title: "Back",
12195
12334
  onClick: () => setPage(!!address ? "settings" /* SETTINGS */ : "auth" /* AUTH */),
12196
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react45.ArrowLeft, { className: "h-4 w-4" })
12335
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react44.ArrowLeft, { className: "h-4 w-4" })
12197
12336
  }
12198
12337
  ),
12199
12338
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "text-xl font-semibold", children: "Terms of Service" })
@@ -12207,8 +12346,8 @@ function TermsOfService() {
12207
12346
 
12208
12347
  // src/internal/components/TransactionsMenu/TransactionsMenu.tsx
12209
12348
  var import_react_query32 = require("@tanstack/react-query");
12210
- var import_lucide_react47 = require("lucide-react");
12211
- var import_react51 = require("react");
12349
+ var import_lucide_react46 = require("lucide-react");
12350
+ var import_react53 = require("react");
12212
12351
 
12213
12352
  // src/internal/components/TransactionsMenu/api.ts
12214
12353
  init_base();
@@ -12499,7 +12638,7 @@ async function getTransactionsListQuery(address) {
12499
12638
  }
12500
12639
 
12501
12640
  // src/internal/components/TransactionsMenu/TransactionsGroup.tsx
12502
- var import_lucide_react46 = require("lucide-react");
12641
+ var import_lucide_react45 = require("lucide-react");
12503
12642
 
12504
12643
  // src/internal/components/TransactionsMenu/utils.ts
12505
12644
  init_base();
@@ -12584,7 +12723,7 @@ function TransactionsGroup(props) {
12584
12723
  children: [
12585
12724
  /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center justify-between gap-[var(--l-pass-gap)]", children: [
12586
12725
  /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center gap-1 flex-0 w-fit", children: [
12587
- parent.direction === "in" ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react46.ChevronLeft, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react46.ChevronRight, { className: "w-4 h-4" }),
12726
+ parent.direction === "in" ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react45.ChevronLeft, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react45.ChevronRight, { className: "w-4 h-4" }),
12588
12727
  /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "text-[10px]", children: isIncoming ? "RECEIVED" : "SENT" }),
12589
12728
  parent.status === "ok" ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(PositiveIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(NegativeIcon, {})
12590
12729
  ] }),
@@ -12606,7 +12745,7 @@ function TransactionsGroup(props) {
12606
12745
  onClick: (e) => {
12607
12746
  e.stopPropagation();
12608
12747
  },
12609
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react46.Copy, { className: "w-4 h-4" })
12748
+ children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react45.Copy, { className: "w-4 h-4" })
12610
12749
  }
12611
12750
  ),
12612
12751
  /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
@@ -12678,7 +12817,7 @@ function TransactionsMenu() {
12678
12817
  const page = useLayoutDataStore((st) => st.page);
12679
12818
  const setPage = useLayoutDataStore((st) => st.setPage);
12680
12819
  const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
12681
- const [expandedGroups, setExpandedGroups] = (0, import_react51.useState)({});
12820
+ const [expandedGroups, setExpandedGroups] = (0, import_react53.useState)({});
12682
12821
  const {
12683
12822
  data: txHistoryGroups = [],
12684
12823
  isLoading: isTxHistoryLoading,
@@ -12690,7 +12829,7 @@ function TransactionsMenu() {
12690
12829
  queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, address],
12691
12830
  queryFn: () => getTransactionsListQuery(address)
12692
12831
  });
12693
- const refreshTxHistory = (0, import_react51.useCallback)(
12832
+ const refreshTxHistory = (0, import_react53.useCallback)(
12694
12833
  () => qc.invalidateQueries({ queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, address] }),
12695
12834
  [qc, address]
12696
12835
  );
@@ -12705,7 +12844,7 @@ function TransactionsMenu() {
12705
12844
  className: "list-scrollbar-y w-full p-[var(--l-pass-pd)]",
12706
12845
  children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: [
12707
12846
  /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
12708
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react47.ArrowLeft, { className: "h-4 w-4" }) }),
12847
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.ArrowLeft, { className: "h-4 w-4" }) }),
12709
12848
  /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-xl font-semibold", children: "Transaction History" }),
12710
12849
  /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
12711
12850
  Button,
@@ -12715,16 +12854,16 @@ function TransactionsMenu() {
12715
12854
  onClick: refreshTxHistory,
12716
12855
  disabled: isTxHistoryFetching,
12717
12856
  title: "Refresh transactions",
12718
- children: isTxHistoryFetching ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react47.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react47.RefreshCw, { className: "h-4 w-4" })
12857
+ children: isTxHistoryFetching ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.RefreshCw, { className: "h-4 w-4" })
12719
12858
  }
12720
12859
  )
12721
12860
  ] }),
12722
- isTxHistoryLoading && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react47.Loader, { className: "h-5 w-5 animate-spin" }) }),
12861
+ isTxHistoryLoading && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.Loader, { className: "h-5 w-5 animate-spin" }) }),
12723
12862
  !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
12724
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react47.XCircle, { className: "w-4 h-4 flex-none" }),
12863
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.XCircle, { className: "w-4 h-4 flex-none" }),
12725
12864
  /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "block w-full flex-1 text-center text-xs", children: txHistoryResolvedError })
12726
12865
  ] }),
12727
- !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Highlight, { type: "warning", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "No transactions found. Smart account transactions will appear here" }) }),
12866
+ !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Highlight, { type: "warning", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "No transactions found." }) }),
12728
12867
  !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: txHistoryGroups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
12729
12868
  TransactionsGroup,
12730
12869
  {
@@ -12848,7 +12987,7 @@ function usePageMapper() {
12848
12987
  setIsDialogOpen,
12849
12988
  setIsDialogClosing
12850
12989
  } = useLayoutStore();
12851
- const closeDialog = (0, import_react52.useCallback)(() => {
12990
+ const closeDialog = (0, import_react54.useCallback)(() => {
12852
12991
  setIsDialogClosing(true);
12853
12992
  setTimeout(() => {
12854
12993
  setDialogContent(null);
@@ -12859,7 +12998,7 @@ function usePageMapper() {
12859
12998
  setIsDialogOpen(false);
12860
12999
  }, CLEAR_DIALOG_TIMEOUT);
12861
13000
  }, [setDialogContent, setDialogDescription, setDialogTitle, setIsDialogForced, setIsDialogOpen, setIsDialogClosing]);
12862
- const openDialog = (0, import_react52.useCallback)(
13001
+ const openDialog = (0, import_react54.useCallback)(
12863
13002
  (pageItem) => {
12864
13003
  const PageContentComponent = pageItem.component;
12865
13004
  setDialogTitle(pageItem.title);
@@ -12869,7 +13008,7 @@ function usePageMapper() {
12869
13008
  },
12870
13009
  [setDialogContent, setDialogDescription, setDialogTitle, setIsDialogOpen]
12871
13010
  );
12872
- (0, import_react52.useEffect)(() => {
13011
+ (0, import_react54.useEffect)(() => {
12873
13012
  if (page === null) return closeDialog();
12874
13013
  const pageItem = protectedRoutes[page];
12875
13014
  if (!pageItem) {
@@ -12882,30 +13021,18 @@ function usePageMapper() {
12882
13021
  }
12883
13022
 
12884
13023
  // src/internal/hooks/useSettingsNotifications.ts
12885
- var import_react53 = require("react");
13024
+ var import_react55 = require("react");
12886
13025
  init_auth();
12887
13026
  var EMAIL_NOT_CONNECTED_NOTIFICATION = {
12888
13027
  id: "email-not-connected",
12889
13028
  target: "manage-wallet" /* MANAGE_WALLET */,
12890
13029
  message: "Email is not connected"
12891
13030
  };
12892
- var BACKUP_IS_NOT_CREATED_NOTIFICATION = {
12893
- id: "backup-is-not-created",
12894
- target: "keysare-backup" /* KEYSARE_BACKUP */,
12895
- message: "Backup is not created"
12896
- };
12897
13031
  function useSettingsNotifications() {
12898
- const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
12899
13032
  const setSettingsNotifications = useLayoutDataStore((st) => st.setSettingsNotifications);
12900
13033
  const providers = import_auth3.jwtTokenManager.getProviders();
12901
13034
  const hasEmail = providers.includes("email");
12902
- (0, import_react53.useEffect)(() => {
12903
- setSettingsNotifications({
12904
- ...BACKUP_IS_NOT_CREATED_NOTIFICATION,
12905
- status: hasServerVault ? "resolved" : "active"
12906
- });
12907
- }, [hasServerVault, setSettingsNotifications]);
12908
- (0, import_react53.useEffect)(() => {
13035
+ (0, import_react55.useEffect)(() => {
12909
13036
  setSettingsNotifications({
12910
13037
  ...EMAIL_NOT_CONNECTED_NOTIFICATION,
12911
13038
  status: hasEmail ? "resolved" : "active"
@@ -12914,7 +13041,7 @@ function useSettingsNotifications() {
12914
13041
  }
12915
13042
 
12916
13043
  // src/internal/hooks/useWalletStatus.ts
12917
- var import_react54 = require("react");
13044
+ var import_react56 = require("react");
12918
13045
  init_auth();
12919
13046
  function useWalletStatus() {
12920
13047
  const isIframeReady = useLumiaPassportSession((st) => st.isIframeReady);
@@ -12924,7 +13051,7 @@ function useWalletStatus() {
12924
13051
  config: { current: config },
12925
13052
  callbacks
12926
13053
  } = useLumiaPassportConfig();
12927
- (0, import_react54.useEffect)(() => {
13054
+ (0, import_react56.useEffect)(() => {
12928
13055
  if (!isIframeReady || !config.projectId || !callbacks?.onWalletReady) return;
12929
13056
  const userId = import_auth3.jwtTokenManager.getUserId();
12930
13057
  const hasKeyshare = import_auth3.jwtTokenManager.getHasKeyshare();
@@ -12949,11 +13076,12 @@ function LumiaPassportDialog() {
12949
13076
  const config = useLumiaPassportConfig().config;
12950
13077
  const className = config.current?.ui?.dialogClassName;
12951
13078
  const session = useLumiaPassportSession((st) => st.session);
13079
+ const hasServerVault = useLumiaPassportSession((st) => st.hasServerVault);
12952
13080
  const page = useLayoutDataStore((st) => st.page);
12953
13081
  const mainPageHeight = useLayoutDataStore((st) => st.mainPageHeight);
12954
13082
  const setPage = useLayoutDataStore((st) => st.setPage);
12955
13083
  const { colorMode, isDialogOpen, dialogTitle, dialogDescription, dialogContent, isDialogForced, setIsSettings } = useLayoutStore();
12956
- (0, import_react55.useEffect)(() => setIsSettings(!!session), [session, setIsSettings]);
13084
+ (0, import_react57.useEffect)(() => setIsSettings(!!session), [session, setIsSettings]);
12957
13085
  usePageMapper();
12958
13086
  useAutoConnect();
12959
13087
  useCheckVaultStatus();
@@ -12963,6 +13091,7 @@ function LumiaPassportDialog() {
12963
13091
  useListenIframeAuthEvents();
12964
13092
  useBackupWarning();
12965
13093
  useWalletStatus();
13094
+ const isHeaderHidden = !session || page === "keysare-backup" /* KEYSARE_BACKUP */ && !hasServerVault;
12966
13095
  return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
12967
13096
  Dialog,
12968
13097
  {
@@ -12971,10 +13100,10 @@ function LumiaPassportDialog() {
12971
13100
  if (isDialogForced) return;
12972
13101
  if (!open) setPage(null);
12973
13102
  },
12974
- children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(DialogContent, { colorMode, hideClose: isDialogForced, className, children: [
13103
+ children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(DialogContent, { colorMode, className, children: [
12975
13104
  /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(VisuallyHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(DialogTitle, { children: dialogTitle }) }),
12976
13105
  /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(DialogDescription, { className: "sr-only", children: dialogDescription }),
12977
- !!session && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Header, {}),
13106
+ !isHeaderHidden && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Header, {}),
12978
13107
  /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_framer_motion3.AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
12979
13108
  import_framer_motion3.motion.div,
12980
13109
  {
@@ -12994,23 +13123,23 @@ function LumiaPassportDialog() {
12994
13123
  }
12995
13124
 
12996
13125
  // src/internal/components/TssManager.tsx
12997
- var import_react56 = __toESM(require("react"), 1);
13126
+ var import_react58 = __toESM(require("react"), 1);
12998
13127
  init_auth();
12999
13128
  init_clients();
13000
- var TssManagerWithRef = import_react56.default.forwardRef((props, ref) => {
13129
+ var TssManagerWithRef = import_react58.default.forwardRef((props, ref) => {
13001
13130
  const { mpcPin } = props;
13002
13131
  const usePaymaster = useLumiaPassportSession((st) => st.usePaymaster);
13003
13132
  const setStatus = useLumiaPassportSession((st) => st.setStatus);
13004
13133
  const setSession = useLumiaPassportSession((st) => st.setSession);
13005
13134
  const setAddress = useLumiaPassportSession((st) => st.setAddress);
13006
- const onSessionCreated = (0, import_react56.useCallback)(
13135
+ const onSessionCreated = (0, import_react58.useCallback)(
13007
13136
  (session, address) => {
13008
13137
  setSession(session);
13009
13138
  setAddress(address);
13010
13139
  },
13011
13140
  [setSession, setAddress]
13012
13141
  );
13013
- const createSessionWithKeyshare = import_react56.default.useCallback(
13142
+ const createSessionWithKeyshare = import_react58.default.useCallback(
13014
13143
  async (userId, hasServerKeyshare, isNewUser) => {
13015
13144
  setStatus("checking key management setup...");
13016
13145
  await ensureKeyshare(userId, hasServerKeyshare, setStatus, isNewUser);
@@ -13031,14 +13160,14 @@ var TssManagerWithRef = import_react56.default.forwardRef((props, ref) => {
13031
13160
  },
13032
13161
  [setStatus, usePaymaster, mpcPin]
13033
13162
  );
13034
- import_react56.default.useImperativeHandle(ref, () => ({ createSessionWithKeyshare }), [createSessionWithKeyshare]);
13163
+ import_react58.default.useImperativeHandle(ref, () => ({ createSessionWithKeyshare }), [createSessionWithKeyshare]);
13035
13164
  return null;
13036
13165
  });
13037
13166
 
13038
13167
  // src/internal/components/WalletConnectHandler.tsx
13039
13168
  var import_rainbowkit = require("@rainbow-me/rainbowkit");
13040
13169
  var import_react_query33 = require("@tanstack/react-query");
13041
- var import_react57 = __toESM(require("react"), 1);
13170
+ var import_react59 = __toESM(require("react"), 1);
13042
13171
  var import_wagmi5 = require("wagmi");
13043
13172
  init_wallet();
13044
13173
  function WalletConnectHandler() {
@@ -13056,7 +13185,7 @@ function WalletConnectHandler() {
13056
13185
  const setManageWalletLinkError = useManageWalletStore((st) => st.setLinkError);
13057
13186
  const setLinkIsLoading = useManageWalletStore((st) => st.setLinkIsLoading);
13058
13187
  const setProviderType = useManageWalletStore((st) => st.setProviderType);
13059
- const onLinkingComplete = (0, import_react57.useCallback)(
13188
+ const onLinkingComplete = (0, import_react59.useCallback)(
13060
13189
  async (success) => {
13061
13190
  setIsWalletLinking(false);
13062
13191
  if (!success && !passportWalletAddress) {
@@ -13083,8 +13212,8 @@ function WalletConnectHandler() {
13083
13212
  },
13084
13213
  [qc, passportWalletAddress, callbacks, setProviderType, setPage, setIsWalletLinking]
13085
13214
  );
13086
- const [hasStartedLinking, setHasStartedLinking] = import_react57.default.useState(false);
13087
- (0, import_react57.useEffect)(() => {
13215
+ const [hasStartedLinking, setHasStartedLinking] = import_react59.default.useState(false);
13216
+ (0, import_react59.useEffect)(() => {
13088
13217
  if (isWalletLinking && !hasStartedLinking) {
13089
13218
  setHasStartedLinking(true);
13090
13219
  setProviderType(null);
@@ -13104,7 +13233,7 @@ function WalletConnectHandler() {
13104
13233
  if (isConnected) disconnect();
13105
13234
  }
13106
13235
  }, [isWalletLinking, hasStartedLinking, isConnected, openConnectModal, disconnect, setPage, setProviderType]);
13107
- (0, import_react57.useEffect)(() => {
13236
+ (0, import_react59.useEffect)(() => {
13108
13237
  if (hasStartedLinking && !connectModalOpen && !isConnected && isWalletLinking) {
13109
13238
  console.log("[WalletConnectHandler] Modal closed without connecting");
13110
13239
  onLinkingComplete(false);
@@ -13180,7 +13309,7 @@ function WalletConnectHandler() {
13180
13309
  setPage(passportWalletAddress ? "manage-wallet" /* MANAGE_WALLET */ : "auth" /* AUTH */);
13181
13310
  }
13182
13311
  });
13183
- (0, import_react57.useEffect)(() => {
13312
+ (0, import_react59.useEffect)(() => {
13184
13313
  if (!!chain?.id && isConnected && walletAddress && isWalletLinking && hasStartedLinking) {
13185
13314
  console.log("[WalletConnectHandler] handleWalletSign triggered");
13186
13315
  handleWalletSign({ chainId: chain.id, signingWalletAddress: walletAddress });
@@ -13216,7 +13345,7 @@ var useLumiaPassportSession = (0, import_zustand6.create)((set) => ({
13216
13345
  }));
13217
13346
  function LumiaPassportSessionProvider({ children }) {
13218
13347
  const config = useLumiaPassportConfig().config;
13219
- return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_react58.Fragment, { children: [
13348
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_react60.Fragment, { children: [
13220
13349
  children,
13221
13350
  config.current?.wallet?.enabled && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(WalletConnectHandler, {}),
13222
13351
  /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(BalanceFeedProvider, {}),
@@ -13268,14 +13397,14 @@ var LumiaWagmiProvider = ({ children }) => {
13268
13397
 
13269
13398
  // src/context/LumiaPassportContext.tsx
13270
13399
  var import_jsx_runtime73 = require("react/jsx-runtime");
13271
- var LumiaPassportContext = (0, import_react59.createContext)(void 0);
13400
+ var LumiaPassportContext = (0, import_react61.createContext)(void 0);
13272
13401
  function LumiaPassportProvider(props) {
13273
13402
  const { children, projectId, initialConfig = {}, callbacks } = props;
13274
13403
  const setIsIframeReady = useLumiaPassportSession((st) => st.setIsIframeReady);
13275
13404
  const setWalletReadyStatus = useLumiaPassportSession((st) => st.setWalletReadyStatus);
13276
- (0, import_react59.useEffect)(() => notifyNoProjetctId(projectId), [projectId]);
13277
- const config = (0, import_react59.useRef)({ projectId, ...DEFAULT_LUMIA_PASSPORT_CONFIG });
13278
- const updateConfig = (0, import_react59.useCallback)((updates) => {
13405
+ (0, import_react61.useEffect)(() => notifyNoProjetctId(projectId), [projectId]);
13406
+ const config = (0, import_react61.useRef)({ projectId, ...DEFAULT_LUMIA_PASSPORT_CONFIG });
13407
+ const updateConfig = (0, import_react61.useCallback)((updates) => {
13279
13408
  const prev = config.current;
13280
13409
  const next = { ...prev };
13281
13410
  if (updates.projectId !== void 0) next.projectId = updates.projectId;
@@ -13310,7 +13439,7 @@ function LumiaPassportProvider(props) {
13310
13439
  }
13311
13440
  config.current = next;
13312
13441
  }, []);
13313
- (0, import_react59.useEffect)(() => {
13442
+ (0, import_react61.useEffect)(() => {
13314
13443
  if (typeof window === "undefined" || !projectId) return;
13315
13444
  const mergedConfig = (0, import_lodash_es4.merge)(DEFAULT_LUMIA_PASSPORT_CONFIG, initialConfig);
13316
13445
  updateConfig(mergedConfig);
@@ -13355,18 +13484,18 @@ function LumiaPassportProvider(props) {
13355
13484
  console.error("[LumiaPassport] Error setting up iframe manager:", error);
13356
13485
  }
13357
13486
  }, [projectId, initialConfig, callbacks, updateConfig, setIsIframeReady, setWalletReadyStatus]);
13358
- const contextValue = (0, import_react59.useMemo)(() => ({ config, updateConfig, callbacks }), [config, updateConfig, callbacks]);
13487
+ const contextValue = (0, import_react61.useMemo)(() => ({ config, updateConfig, callbacks }), [config, updateConfig, callbacks]);
13359
13488
  return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(LumiaWagmiProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(LumiaPassportContext.Provider, { value: contextValue, children }) });
13360
13489
  }
13361
13490
  var useLumiaPassportConfig = () => {
13362
- const ctx = (0, import_react59.useContext)(LumiaPassportContext);
13491
+ const ctx = (0, import_react61.useContext)(LumiaPassportContext);
13363
13492
  if (!ctx) throw new Error("useLumiaPassportConfig must be used within a LumiaPassportProvider");
13364
13493
  return ctx;
13365
13494
  };
13366
13495
 
13367
13496
  // src/components/ConnectWalletButton.tsx
13368
- var import_lucide_react48 = require("lucide-react");
13369
- var import_react60 = require("react");
13497
+ var import_lucide_react47 = require("lucide-react");
13498
+ var import_react62 = require("react");
13370
13499
  init_auth();
13371
13500
  var import_jsx_runtime74 = (
13372
13501
  /** external Buttons can be provided */
@@ -13390,10 +13519,10 @@ function ConnectWalletButton(props) {
13390
13519
  const colorMode = useLayoutStore((st) => st.colorMode);
13391
13520
  const { session, address, hasServerVault, isLoading, isIframeReady, status, setUsePaymaster } = useLumiaPassportSession();
13392
13521
  const connectButtonLabel = getFormattedStatus(label || "Connect", status, isIframeReady);
13393
- (0, import_react60.useEffect)(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
13522
+ (0, import_react62.useEffect)(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
13394
13523
  const avatar = import_auth3.jwtTokenManager.getAvatar();
13395
13524
  const displayName = import_auth3.jwtTokenManager.getDisplayName();
13396
- const indicators = (0, import_react60.useMemo)(() => {
13525
+ const indicators = (0, import_react62.useMemo)(() => {
13397
13526
  const userId = import_auth3.jwtTokenManager.getUserId();
13398
13527
  if (!userId) return { server: false, local: false, backup: false };
13399
13528
  const server = import_auth3.jwtTokenManager.getHasKeyshare() ?? false;
@@ -13408,7 +13537,7 @@ function ConnectWalletButton(props) {
13408
13537
  disabled: isConnecting,
13409
13538
  onClick: () => setPage("auth" /* AUTH */),
13410
13539
  children: [
13411
- isConnecting && /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_lucide_react48.Loader, { className: "w-4 h-4 animate-spin" }),
13540
+ isConnecting && /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_lucide_react47.Loader, { className: "w-4 h-4 animate-spin" }),
13412
13541
  connectButtonLabel
13413
13542
  ]
13414
13543
  }
@@ -13429,7 +13558,7 @@ function ConnectWalletButton(props) {
13429
13558
  "disabled:hover:bg-[var(--l-pass-bg)] disabled:active:bg-[var(--l-pass-bg)]"
13430
13559
  ),
13431
13560
  children: [
13432
- isConnecting && /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_lucide_react48.Loader, { className: "w-4 h-4 animate-spin" }),
13561
+ isConnecting && /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_lucide_react47.Loader, { className: "w-4 h-4 animate-spin" }),
13433
13562
  connectButtonLabel.toUpperCase()
13434
13563
  ]
13435
13564
  }
@@ -13457,7 +13586,7 @@ function ConnectWalletButton(props) {
13457
13586
  /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: "flex items-center space-x-1", children: [
13458
13587
  /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: "group relative", children: [
13459
13588
  /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
13460
- import_lucide_react48.Cloud,
13589
+ import_lucide_react47.Cloud,
13461
13590
  {
13462
13591
  className: `w-3 h-3 ${indicators.server ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-warning)]"}`
13463
13592
  }
@@ -13479,7 +13608,7 @@ function ConnectWalletButton(props) {
13479
13608
  ] }),
13480
13609
  /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: "group relative", children: [
13481
13610
  /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
13482
- import_lucide_react48.Laptop,
13611
+ import_lucide_react47.Laptop,
13483
13612
  {
13484
13613
  className: `w-3 h-3 ${indicators.local ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-warning)]"}`
13485
13614
  }
@@ -13501,7 +13630,7 @@ function ConnectWalletButton(props) {
13501
13630
  ] }),
13502
13631
  /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: "group relative", children: [
13503
13632
  /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
13504
- import_lucide_react48.Shield,
13633
+ import_lucide_react47.Shield,
13505
13634
  {
13506
13635
  className: `w-3 h-3 ${indicators.backup ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-warning)]"}`
13507
13636
  }
@@ -13563,13 +13692,13 @@ var useLumiaPassportRecoveryUserId = () => useLumiaPassportSession((st) => st.re
13563
13692
  var useLumiaPassportHasServerVault = () => useLumiaPassportSession((st) => st.hasServerVault);
13564
13693
 
13565
13694
  // src/hooks/useLumiaPassportOpen.ts
13566
- var import_react61 = require("react");
13695
+ var import_react63 = require("react");
13567
13696
  function useLumiaPassportOpen() {
13568
13697
  const page = useLayoutDataStore((st) => st.page);
13569
13698
  const setPage = useLayoutDataStore((st) => st.setPage);
13570
13699
  const setPageParams = useLayoutDataStore((st) => st.setPageParams);
13571
13700
  const address = useLumiaPassportSession((st) => st.address);
13572
- const open = (0, import_react61.useCallback)(
13701
+ const open = (0, import_react63.useCallback)(
13573
13702
  (passportPage, params) => {
13574
13703
  if (!address) return setPage("auth" /* AUTH */);
13575
13704
  if (!!address && passportPage === "auth" /* AUTH */) return setPage("manage-wallet" /* MANAGE_WALLET */);
@@ -13578,12 +13707,12 @@ function useLumiaPassportOpen() {
13578
13707
  },
13579
13708
  [setPage, setPageParams, address]
13580
13709
  );
13581
- const close = (0, import_react61.useCallback)(() => setPage(null), [setPage]);
13710
+ const close = (0, import_react63.useCallback)(() => setPage(null), [setPage]);
13582
13711
  return { open, close, isOpen: page !== null };
13583
13712
  }
13584
13713
 
13585
13714
  // src/hooks/useLumiaPassportColorMode.ts
13586
- var import_react62 = require("react");
13715
+ var import_react64 = require("react");
13587
13716
  function useLumiaPassportColorMode() {
13588
13717
  const {
13589
13718
  config: { current: config }
@@ -13591,14 +13720,14 @@ function useLumiaPassportColorMode() {
13591
13720
  const preferedColorMode = config?.preferedColorMode;
13592
13721
  const colorMode = useLayoutStore((st) => st.colorMode);
13593
13722
  const handleStoreColorMode = useLayoutStore((st) => st.setColorMode);
13594
- const setColorMode = (0, import_react62.useCallback)(
13723
+ const setColorMode = (0, import_react64.useCallback)(
13595
13724
  (mode) => {
13596
13725
  localStorage.setItem(LOCAL_COLOR_MODE_KEY, mode);
13597
13726
  handleStoreColorMode(mode);
13598
13727
  },
13599
13728
  [handleStoreColorMode]
13600
13729
  );
13601
- (0, import_react62.useEffect)(() => {
13730
+ (0, import_react64.useEffect)(() => {
13602
13731
  let targetColorMode = localStorage.getItem(LOCAL_COLOR_MODE_KEY);
13603
13732
  if (!targetColorMode && !preferedColorMode) {
13604
13733
  const systemMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
@@ -13615,7 +13744,7 @@ function useLumiaPassportColorMode() {
13615
13744
  }
13616
13745
 
13617
13746
  // src/components/ThemeToggle.tsx
13618
- var import_lucide_react49 = require("lucide-react");
13747
+ var import_lucide_react48 = require("lucide-react");
13619
13748
  var import_jsx_runtime75 = require("react/jsx-runtime");
13620
13749
  function ThemeToggle(props) {
13621
13750
  const { colorMode, setColorMode } = useLumiaPassportColorMode();
@@ -13632,7 +13761,7 @@ function ThemeToggle(props) {
13632
13761
  variant: "ghost",
13633
13762
  onClick: () => setColorMode(colorMode === "light" ? "dark" : "light"),
13634
13763
  title: `Current theme: ${colorMode}. Click to switch.`,
13635
- children: colorMode === "dark" ? /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_lucide_react49.Sun, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_lucide_react49.Moon, { className: "w-4 h-4" })
13764
+ children: colorMode === "dark" ? /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_lucide_react48.Sun, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_lucide_react48.Moon, { className: "w-4 h-4" })
13636
13765
  }
13637
13766
  )
13638
13767
  }
@@ -13641,7 +13770,7 @@ function ThemeToggle(props) {
13641
13770
 
13642
13771
  // src/context/RainbowKitContext.tsx
13643
13772
  var import_rainbowkit3 = require("@rainbow-me/rainbowkit");
13644
- var import_react63 = require("react");
13773
+ var import_react65 = require("react");
13645
13774
  var import_wagmi9 = require("wagmi");
13646
13775
 
13647
13776
  // src/config/rainbowkit.ts
@@ -13873,8 +14002,8 @@ var import_jsx_runtime76 = require("react/jsx-runtime");
13873
14002
  function LumiaRainbowKitProvider({ children }) {
13874
14003
  const config = useLumiaPassportConfig().config;
13875
14004
  const colorMode = useLayoutStore((st) => st.colorMode);
13876
- const rainbowConfig2 = (0, import_react63.useMemo)(() => createRainbowConfig(config.current?.wallet?.walletConnectProjectId), [config]);
13877
- const customTheme = (0, import_react63.useMemo)(
14005
+ const rainbowConfig2 = (0, import_react65.useMemo)(() => createRainbowConfig(config.current?.wallet?.walletConnectProjectId), [config]);
14006
+ const customTheme = (0, import_react65.useMemo)(
13878
14007
  () => colorMode === "dark" ? {
13879
14008
  ...(0, import_rainbowkit3.darkTheme)(),
13880
14009
  colors: { ...(0, import_rainbowkit3.darkTheme)().colors, ...rainbowTheme.darkMode.colors },
@@ -13893,7 +14022,7 @@ function LumiaRainbowKitProvider({ children }) {
13893
14022
  }
13894
14023
 
13895
14024
  // src/internal/components/UserOpStatus.tsx
13896
- var import_lucide_react51 = require("lucide-react");
14025
+ var import_lucide_react50 = require("lucide-react");
13897
14026
  var React12 = __toESM(require("react"), 1);
13898
14027
  init_base();
13899
14028
 
@@ -13905,7 +14034,7 @@ function cn2(...inputs) {
13905
14034
  }
13906
14035
 
13907
14036
  // src/internal/components/Address.tsx
13908
- var import_lucide_react50 = require("lucide-react");
14037
+ var import_lucide_react49 = require("lucide-react");
13909
14038
  var React11 = __toESM(require("react"), 1);
13910
14039
  var import_jsx_runtime77 = require("react/jsx-runtime");
13911
14040
  function toExplorerAddressUrl(address, chain) {
@@ -13947,7 +14076,7 @@ var Address = ({
13947
14076
  } catch {
13948
14077
  }
13949
14078
  },
13950
- children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.Copy, { className: "h-4 w-4" })
14079
+ children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react49.Copy, { className: "h-4 w-4" })
13951
14080
  }
13952
14081
  ),
13953
14082
  showExplorer && explorer && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
@@ -13958,7 +14087,7 @@ var Address = ({
13958
14087
  rel: "noreferrer noopener",
13959
14088
  className: "inline-flex items-center justify-center h-10 w-10 rounded-md hover:bg-accent text-foreground",
13960
14089
  title: "Open in explorer",
13961
- children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.ExternalLink, { className: "h-4 w-4" })
14090
+ children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react49.ExternalLink, { className: "h-4 w-4" })
13962
14091
  }
13963
14092
  )
13964
14093
  ] });
@@ -14124,30 +14253,30 @@ var UserOpStatus = ({
14124
14253
  if (receipt) {
14125
14254
  const ok = !!receipt.success;
14126
14255
  return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(Badge, { variant: ok ? "success" : "destructive", className: "gap-1", children: [
14127
- ok ? /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.CheckCircle2, { className: "h-3 w-3" }) : /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.AlertCircle, { className: "h-3 w-3" }),
14256
+ ok ? /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.CheckCircle2, { className: "h-3 w-3" }) : /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.AlertCircle, { className: "h-3 w-3" }),
14128
14257
  ok ? "Included" : "Failed"
14129
14258
  ] });
14130
14259
  }
14131
14260
  if (rejected) {
14132
14261
  return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(Badge, { variant: "destructive", className: "gap-1", children: [
14133
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.AlertCircle, { className: "h-3 w-3" }),
14262
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.AlertCircle, { className: "h-3 w-3" }),
14134
14263
  " Rejected by bundler"
14135
14264
  ] });
14136
14265
  }
14137
14266
  if (timedOut) {
14138
14267
  return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(Badge, { variant: "warning", className: "gap-1", children: [
14139
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.AlertCircle, { className: "h-3 w-3" }),
14268
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.AlertCircle, { className: "h-3 w-3" }),
14140
14269
  " Timeout - may be rejected"
14141
14270
  ] });
14142
14271
  }
14143
14272
  if (mempool) {
14144
14273
  return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(Badge, { variant: "outline", className: "gap-1", children: [
14145
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.Clock, { className: "h-3 w-3" }),
14274
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.Clock, { className: "h-3 w-3" }),
14146
14275
  " Pending in bundler"
14147
14276
  ] });
14148
14277
  }
14149
14278
  return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(Badge, { variant: "secondary", className: "gap-1", children: [
14150
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.Clock, { className: "h-3 w-3" }),
14279
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.Clock, { className: "h-3 w-3" }),
14151
14280
  " Waiting"
14152
14281
  ] });
14153
14282
  };
@@ -14166,7 +14295,7 @@ var UserOpStatus = ({
14166
14295
  /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-xs text-muted-foreground", children: "This is a UserOperation hash (EIP-4337), not a L2 tx hash." })
14167
14296
  ] }),
14168
14297
  /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(Button, { variant: "ghost", size: "small", onClick: () => tick(), disabled: refreshing, className: "h-8", children: [
14169
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.RefreshCw, { className: cn2("h-3.5 w-3.5 mr-1", refreshing && "animate-spin") }),
14298
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.RefreshCw, { className: cn2("h-3.5 w-3.5 mr-1", refreshing && "animate-spin") }),
14170
14299
  /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-xs", children: "Refresh" })
14171
14300
  ] })
14172
14301
  ] }),
@@ -14185,7 +14314,7 @@ var UserOpStatus = ({
14185
14314
  } catch {
14186
14315
  }
14187
14316
  },
14188
- children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.Copy, { className: "h-3.5 w-3.5" })
14317
+ children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.Copy, { className: "h-3.5 w-3.5" })
14189
14318
  }
14190
14319
  )
14191
14320
  ] }),
@@ -14204,7 +14333,7 @@ var UserOpStatus = ({
14204
14333
  } catch {
14205
14334
  }
14206
14335
  },
14207
- children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.Copy, { className: "h-3.5 w-3.5" })
14336
+ children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.Copy, { className: "h-3.5 w-3.5" })
14208
14337
  }
14209
14338
  ),
14210
14339
  chain?.blockExplorers?.default?.url && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
@@ -14215,7 +14344,7 @@ var UserOpStatus = ({
14215
14344
  rel: "noreferrer noopener",
14216
14345
  className: "inline-flex items-center justify-center h-8 w-8 rounded-md hover:bg-accent text-foreground",
14217
14346
  title: "Open in explorer",
14218
- children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.ExternalLink, { className: "h-3.5 w-3.5" })
14347
+ children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.ExternalLink, { className: "h-3.5 w-3.5" })
14219
14348
  }
14220
14349
  )
14221
14350
  ] }),
@@ -14244,16 +14373,16 @@ var UserOpStatus = ({
14244
14373
  ] })
14245
14374
  ] }),
14246
14375
  error && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
14247
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.AlertCircle, { className: "h-4 w-4" }),
14376
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.AlertCircle, { className: "h-4 w-4" }),
14248
14377
  " ",
14249
14378
  error
14250
14379
  ] }),
14251
14380
  rejected && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
14252
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.AlertCircle, { className: "h-4 w-4" }),
14381
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.AlertCircle, { className: "h-4 w-4" }),
14253
14382
  "UserOperation was dropped from bundler mempool. This usually means it was invalid or replaced."
14254
14383
  ] }),
14255
14384
  timedOut && /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
14256
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.AlertCircle, { className: "h-4 w-4" }),
14385
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react50.AlertCircle, { className: "h-4 w-4" }),
14257
14386
  "Stopped polling after ",
14258
14387
  Math.round(maxPollTimeMs / 1e3),
14259
14388
  "s. UserOperation may have been rejected by the bundler."
@@ -14264,7 +14393,7 @@ var UserOpStatus = ({
14264
14393
  };
14265
14394
 
14266
14395
  // src/internal/components/Hash.tsx
14267
- var import_lucide_react52 = require("lucide-react");
14396
+ var import_lucide_react51 = require("lucide-react");
14268
14397
  var React13 = __toESM(require("react"), 1);
14269
14398
  var import_jsx_runtime80 = require("react/jsx-runtime");
14270
14399
  function toExplorerUrl(kind, value, chain) {
@@ -14308,7 +14437,7 @@ var Hash = ({
14308
14437
  } catch {
14309
14438
  }
14310
14439
  },
14311
- children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react52.Copy, { className: "h-4 w-4" })
14440
+ children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react51.Copy, { className: "h-4 w-4" })
14312
14441
  }
14313
14442
  ),
14314
14443
  showExplorer && explorer && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
@@ -14319,21 +14448,21 @@ var Hash = ({
14319
14448
  rel: "noreferrer noopener",
14320
14449
  className: "inline-flex items-center justify-center h-10 w-10 rounded-md hover:bg-accent text-foreground",
14321
14450
  title: "Open in explorer",
14322
- children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react52.ExternalLink, { className: "h-4 w-4" })
14451
+ children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react51.ExternalLink, { className: "h-4 w-4" })
14323
14452
  }
14324
14453
  )
14325
14454
  ] });
14326
14455
  };
14327
14456
 
14328
14457
  // src/internal/components/TransactionsMenu/TransactionsList.tsx
14329
- var import_react64 = require("react");
14458
+ var import_react66 = require("react");
14330
14459
  init_base();
14331
14460
  var import_jsx_runtime81 = require("react/jsx-runtime");
14332
14461
  var TransactionsList = ({ address, itemsCount = 10 }) => {
14333
- const [transactions, setTransactions] = (0, import_react64.useState)([]);
14334
- const [loading, setLoading] = (0, import_react64.useState)(true);
14335
- const [error, setError] = (0, import_react64.useState)(null);
14336
- (0, import_react64.useEffect)(() => {
14462
+ const [transactions, setTransactions] = (0, import_react66.useState)([]);
14463
+ const [loading, setLoading] = (0, import_react66.useState)(true);
14464
+ const [error, setError] = (0, import_react66.useState)(null);
14465
+ (0, import_react66.useEffect)(() => {
14337
14466
  const fetchTransactions = async () => {
14338
14467
  try {
14339
14468
  setLoading(true);
@@ -14635,11 +14764,11 @@ function useUserOpStatus(options = {}) {
14635
14764
 
14636
14765
  // src/hooks/useLogout.ts
14637
14766
  var import_auth20 = require("@lumiapassport/core/auth");
14638
- var import_react65 = require("react");
14767
+ var import_react67 = require("react");
14639
14768
  function useLogout() {
14640
14769
  const { setSession, setIsLoading, setAddress, setStatus, setError, address } = useLumiaPassportSession();
14641
14770
  const { callbacks } = useLumiaPassportConfig();
14642
- const logout2 = (0, import_react65.useCallback)(async () => {
14771
+ const logout2 = (0, import_react67.useCallback)(async () => {
14643
14772
  const prevAddress = address;
14644
14773
  let userId = null;
14645
14774
  setIsLoading(true);