@lumiapassport/ui-kit 1.15.2 → 1.15.3

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
@@ -4557,6 +4557,7 @@ __export(index_exports, {
4557
4557
  signTypedData: () => signTypedData,
4558
4558
  updateUserProfile: () => updateUserProfile,
4559
4559
  useAssets: () => useAssets,
4560
+ useErc3643Compliance: () => useErc3643Compliance,
4560
4561
  useLogout: () => useLogout,
4561
4562
  useLumiaPassportAccountSession: () => useLumiaPassportAccountSession,
4562
4563
  useLumiaPassportAddress: () => useLumiaPassportAddress,
@@ -4586,7 +4587,7 @@ __export(index_exports, {
4586
4587
  module.exports = __toCommonJS(index_exports);
4587
4588
 
4588
4589
  // src/styles/built.css
4589
- 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 .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-4{min-width:1rem}.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-\\[256px\\]{max-width:256px}.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-0\\.5{gap:.125rem}.lumia-scope .gap-1{gap:.25rem}.lumia-scope .gap-1\\.5{gap:.375rem}.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 :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-border\\)\\]{border-color:var(--l-pass-border)}.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-secondary\\)\\]{background-color:var(--l-pass-bg-secondary)}.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-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-\\[2px\\]{padding-left:2px;padding-right:2px}.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-pd\\)\\]{padding-top:var(--l-pass-pd);padding-bottom:var(--l-pass-pd)}.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 .lowercase{text-transform:lowercase}.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}';
4590
+ 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 .sticky{position:sticky}.lumia-scope .inset-0{inset:0}.lumia-scope .inset-y-0{top:0;bottom:0}.lumia-scope .-bottom-1{bottom:-.25rem}.lumia-scope .-right-0{right:0}.lumia-scope .-right-0\\.5{right:-.125rem}.lumia-scope .-right-1{right:-.25rem}.lumia-scope .-right-2{right:-.5rem}.lumia-scope .-top-0{top:0}.lumia-scope .-top-0\\.5{top:-.125rem}.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 .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-1{height:.25rem}.lumia-scope .h-1\\.5{height:.375rem}.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-64{max-height:16rem}.lumia-scope .max-h-80{max-height:20rem}.lumia-scope .max-h-96{max-height:24rem}.lumia-scope .max-h-\\[95dvh\\]{max-height:95dvh}.lumia-scope .max-h-full{max-height:100%}.lumia-scope .w-1{width:.25rem}.lumia-scope .w-1\\.5{width:.375rem}.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-72{width:18rem}.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-4{min-width:1rem}.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-\\[256px\\]{max-width:256px}.lumia-scope .max-w-\\[680px\\]{max-width:680px}.lumia-scope .max-w-\\[80px\\]{max-width:80px}.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 .rotate-180{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 .rotate-180{--tw-rotate:180deg}.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-0\\.5{gap:.125rem}.lumia-scope .gap-1{gap:.25rem}.lumia-scope .gap-1\\.5{gap:.375rem}.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 :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-border\\)\\]{border-color:var(--l-pass-border)}.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-secondary\\)\\]{background-color:var(--l-pass-bg-secondary)}.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-black\\/90{background-color:rgba(0,0,0,.9)}.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-\\[2px\\]{padding-left:2px;padding-right:2px}.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-pd\\)\\]{padding-top:var(--l-pass-pd);padding-bottom:var(--l-pass-pd)}.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 .lowercase{text-transform:lowercase}.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 .tracking-wider{letter-spacing:.05em}.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 .transition-transform{transition-property:transform;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-bg-secondary\\)\\]:hover{background-color:var(--l-pass-bg-secondary)}.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-300:hover{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.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}';
4590
4591
 
4591
4592
  // src/context/LumiaPassportContext.tsx
4592
4593
  var import_error_tracking4 = require("@lumiapassport/core/internal/error-tracking");
@@ -5458,6 +5459,23 @@ function Header() {
5458
5459
  const config = useLumiaPassportConfig().config;
5459
5460
  const address = useLumiaPassportSession((st) => st.address);
5460
5461
  const [copied, setCopied] = (0, import_react5.useState)(false);
5462
+ const [showEasterEgg, setShowEasterEgg] = (0, import_react5.useState)(false);
5463
+ const clickCountRef = (0, import_react5.useRef)(0);
5464
+ const clickTimerRef = (0, import_react5.useRef)(null);
5465
+ const handleAvatarClick = (0, import_react5.useCallback)(() => {
5466
+ clickCountRef.current += 1;
5467
+ if (clickTimerRef.current) {
5468
+ clearTimeout(clickTimerRef.current);
5469
+ }
5470
+ if (clickCountRef.current >= 5) {
5471
+ clickCountRef.current = 0;
5472
+ setShowEasterEgg(true);
5473
+ } else {
5474
+ clickTimerRef.current = setTimeout(() => {
5475
+ clickCountRef.current = 0;
5476
+ }, 1e3);
5477
+ }
5478
+ }, []);
5461
5479
  const { data: profile, isLoading: isProfileLoading } = (0, import_react_query5.useQuery)({
5462
5480
  retry: false,
5463
5481
  enabled: !!address,
@@ -5475,7 +5493,14 @@ function Header() {
5475
5493
  className: "w-full flex flex-col gap-[var(--l-pass-gap)] p-[var(--l-pass-pd)] pt-5",
5476
5494
  children: [
5477
5495
  /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "w-full flex items-center gap-[var(--l-pass-gap)]", children: [
5478
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex-none w-12 h-12 flex items-center justify-center", children: avatar ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("img", { src: avatar, alt: displayName, className: "w-full h-full object-cover rounded-full" }) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(LumiaIcon, { width: 48, height: 48 }) }),
5496
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
5497
+ "div",
5498
+ {
5499
+ className: "flex-none w-12 h-12 flex items-center justify-center cursor-pointer select-none",
5500
+ onClick: handleAvatarClick,
5501
+ children: avatar ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("img", { src: avatar, alt: displayName, className: "w-full h-full object-cover rounded-full" }) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(LumiaIcon, { width: 48, height: 48 })
5502
+ }
5503
+ ),
5479
5504
  /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
5480
5505
  "div",
5481
5506
  {
@@ -5553,7 +5578,35 @@ function Header() {
5553
5578
  }
5554
5579
  )
5555
5580
  ] })
5556
- ] })
5581
+ ] }),
5582
+ showEasterEgg && /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
5583
+ "div",
5584
+ {
5585
+ className: "fixed inset-0 z-[9999] bg-black/90 flex items-center justify-center",
5586
+ onClick: () => setShowEasterEgg(false),
5587
+ children: [
5588
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
5589
+ "button",
5590
+ {
5591
+ className: "absolute top-4 right-4 text-white hover:text-gray-300 transition-colors",
5592
+ onClick: () => setShowEasterEgg(false),
5593
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react7.X, { className: "w-8 h-8" })
5594
+ }
5595
+ ),
5596
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
5597
+ "video",
5598
+ {
5599
+ autoPlay: true,
5600
+ controls: true,
5601
+ className: "max-w-full max-h-full",
5602
+ onEnded: () => setShowEasterEgg(false),
5603
+ onClick: (e) => e.stopPropagation(),
5604
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("source", { src: "https://github.com/cyberkostyan/ABrobot-ESP32-C3/raw/main/2026.webm", type: "video/webm" })
5605
+ }
5606
+ )
5607
+ ]
5608
+ }
5609
+ )
5557
5610
  ]
5558
5611
  }
5559
5612
  );
@@ -5562,7 +5615,7 @@ function Header() {
5562
5615
  // package.json
5563
5616
  var package_default = {
5564
5617
  name: "@lumiapassport/ui-kit",
5565
- version: "1.15.2",
5618
+ version: "1.15.3",
5566
5619
  description: "React UI components and hooks for Lumia Passport authentication and Account Abstraction",
5567
5620
  type: "module",
5568
5621
  main: "./dist/index.cjs",
@@ -11994,10 +12047,69 @@ function SecurityMenu() {
11994
12047
  }
11995
12048
 
11996
12049
  // src/internal/components/SendRecieveMenu/SendLumiaMenu.tsx
11997
- var import_lucide_react42 = require("lucide-react");
12050
+ var import_lucide_react43 = require("lucide-react");
11998
12051
  var import_react50 = require("react");
11999
12052
  var import_viem10 = require("viem");
12000
- var import_wagmi4 = require("wagmi");
12053
+
12054
+ // src/hooks/useErc3643Compliance.ts
12055
+ var import_wagmi3 = require("wagmi");
12056
+ init_base();
12057
+ var ERC3643_CAN_TRANSFER_ABI = [
12058
+ {
12059
+ type: "function",
12060
+ name: "canTransfer",
12061
+ inputs: [
12062
+ { name: "_to", type: "address" },
12063
+ { name: "_value", type: "uint256" }
12064
+ ],
12065
+ outputs: [{ name: "", type: "bool" }]
12066
+ }
12067
+ ];
12068
+ function useErc3643Compliance(options) {
12069
+ const { tokenAddress, to, amount, enabled = true } = options;
12070
+ const isQueryEnabled = enabled && !!tokenAddress && !!to && amount !== void 0;
12071
+ const {
12072
+ data: canTransferResult,
12073
+ isLoading,
12074
+ error: queryError,
12075
+ refetch
12076
+ } = (0, import_wagmi3.useReadContract)({
12077
+ address: tokenAddress,
12078
+ abi: ERC3643_CAN_TRANSFER_ABI,
12079
+ functionName: "canTransfer",
12080
+ args: to && amount !== void 0 ? [to, amount] : void 0,
12081
+ chainId: lumiaBeam.id,
12082
+ query: {
12083
+ enabled: isQueryEnabled
12084
+ }
12085
+ });
12086
+ let error = null;
12087
+ if (queryError) {
12088
+ const errorMessage = queryError.message || "";
12089
+ if (errorMessage.includes("IDENTITY_NOT_VERIFIED")) {
12090
+ error = "Recipient identity is not verified for this security token";
12091
+ } else if (errorMessage.includes("COUNTRY_NOT_ALLOWED")) {
12092
+ error = "Transfer not allowed to recipient country";
12093
+ } else if (errorMessage.includes("INVESTOR_LIMIT_EXCEEDED")) {
12094
+ error = "Maximum investor limit exceeded for this token";
12095
+ } else if (errorMessage.includes("HOLDING_PERIOD_NOT_MET")) {
12096
+ error = "Holding period requirement not met";
12097
+ } else if (errorMessage.includes("AMOUNT_EXCEEDS_LIMIT")) {
12098
+ error = "Transfer amount exceeds allowed limit";
12099
+ } else {
12100
+ error = "Compliance check failed. Transfer may not be allowed.";
12101
+ }
12102
+ } else if (canTransferResult === false) {
12103
+ error = "Transfer not allowed by token compliance rules";
12104
+ }
12105
+ const canTransfer = typeof canTransferResult === "boolean" ? canTransferResult : void 0;
12106
+ return {
12107
+ canTransfer,
12108
+ isLoading,
12109
+ error,
12110
+ refetch
12111
+ };
12112
+ }
12001
12113
 
12002
12114
  // src/hooks/useNicknameResolve.ts
12003
12115
  var import_react_query34 = require("@tanstack/react-query");
@@ -12148,6 +12260,43 @@ function useNicknameResolve(input, options) {
12148
12260
  var import_react48 = require("react");
12149
12261
  var import_viem8 = require("viem");
12150
12262
  init_account();
12263
+ var ERC20_TRANSFER_ABI = [
12264
+ {
12265
+ type: "function",
12266
+ name: "transfer",
12267
+ inputs: [
12268
+ { name: "to", type: "address" },
12269
+ { name: "amount", type: "uint256" }
12270
+ ],
12271
+ outputs: [{ name: "", type: "bool" }]
12272
+ }
12273
+ ];
12274
+ var ERC721_SAFE_TRANSFER_ABI = [
12275
+ {
12276
+ type: "function",
12277
+ name: "safeTransferFrom",
12278
+ inputs: [
12279
+ { name: "from", type: "address" },
12280
+ { name: "to", type: "address" },
12281
+ { name: "tokenId", type: "uint256" }
12282
+ ],
12283
+ outputs: []
12284
+ }
12285
+ ];
12286
+ var ERC1155_SAFE_TRANSFER_ABI = [
12287
+ {
12288
+ type: "function",
12289
+ name: "safeTransferFrom",
12290
+ inputs: [
12291
+ { name: "from", type: "address" },
12292
+ { name: "to", type: "address" },
12293
+ { name: "id", type: "uint256" },
12294
+ { name: "amount", type: "uint256" },
12295
+ { name: "data", type: "bytes" }
12296
+ ],
12297
+ outputs: []
12298
+ }
12299
+ ];
12151
12300
  function useSendTransaction() {
12152
12301
  const session = useLumiaPassportSession((st) => st.session);
12153
12302
  const address = useLumiaPassportSession((st) => st.address);
@@ -12164,21 +12313,80 @@ function useSendTransaction() {
12164
12313
  setError("Invalid recipient address");
12165
12314
  return null;
12166
12315
  }
12167
- const value = parseFloat(params.value);
12168
- if (isNaN(value) || value < 0) {
12169
- setError("Invalid amount");
12316
+ const assetType = params.assetType || "native";
12317
+ if (assetType !== "erc721") {
12318
+ const value = parseFloat(params.value);
12319
+ if (isNaN(value) || value < 0) {
12320
+ setError("Invalid amount");
12321
+ return null;
12322
+ }
12323
+ }
12324
+ if (assetType !== "native" && !params.tokenAddress) {
12325
+ setError("Token address is required for token transfers");
12326
+ return null;
12327
+ }
12328
+ if ((assetType === "erc721" || assetType === "erc1155") && !params.tokenId) {
12329
+ setError("Token ID is required for NFT transfers");
12170
12330
  return null;
12171
12331
  }
12172
12332
  setIsLoading(true);
12173
12333
  setError(null);
12174
12334
  setUserOpHash(null);
12175
12335
  try {
12176
- const valueWei = (0, import_viem8.parseEther)(params.value).toString();
12336
+ let callTarget;
12337
+ let valueWei;
12338
+ let innerData;
12339
+ switch (assetType) {
12340
+ case "native": {
12341
+ callTarget = params.to;
12342
+ valueWei = (0, import_viem8.parseEther)(params.value).toString();
12343
+ innerData = params.data || "0x";
12344
+ break;
12345
+ }
12346
+ case "erc20":
12347
+ case "erc3643": {
12348
+ const decimals = params.decimals ?? 18;
12349
+ const amount = (0, import_viem8.parseUnits)(params.value, decimals);
12350
+ callTarget = params.tokenAddress;
12351
+ valueWei = "0";
12352
+ innerData = (0, import_viem8.encodeFunctionData)({
12353
+ abi: ERC20_TRANSFER_ABI,
12354
+ functionName: "transfer",
12355
+ args: [params.to, amount]
12356
+ });
12357
+ break;
12358
+ }
12359
+ case "erc721": {
12360
+ callTarget = params.tokenAddress;
12361
+ valueWei = "0";
12362
+ innerData = (0, import_viem8.encodeFunctionData)({
12363
+ abi: ERC721_SAFE_TRANSFER_ABI,
12364
+ functionName: "safeTransferFrom",
12365
+ args: [address, params.to, BigInt(params.tokenId)]
12366
+ });
12367
+ break;
12368
+ }
12369
+ case "erc1155": {
12370
+ const amount = params.value ? BigInt(params.value) : 1n;
12371
+ callTarget = params.tokenAddress;
12372
+ valueWei = "0";
12373
+ innerData = (0, import_viem8.encodeFunctionData)({
12374
+ abi: ERC1155_SAFE_TRANSFER_ABI,
12375
+ functionName: "safeTransferFrom",
12376
+ args: [address, params.to, BigInt(params.tokenId), amount, "0x"]
12377
+ });
12378
+ break;
12379
+ }
12380
+ default: {
12381
+ setError(`Unsupported asset type: ${assetType}`);
12382
+ return null;
12383
+ }
12384
+ }
12177
12385
  const hash = await sendUserOperation(
12178
12386
  session,
12179
- params.to,
12387
+ callTarget,
12180
12388
  valueWei,
12181
- params.data || "0x",
12389
+ innerData,
12182
12390
  "standard",
12183
12391
  "v0.7"
12184
12392
  );
@@ -12208,185 +12416,331 @@ function useSendTransaction() {
12208
12416
  };
12209
12417
  }
12210
12418
 
12211
- // src/modules/assets.ts
12212
- var import_react49 = __toESM(require("react"), 1);
12213
- var import_wagmi3 = require("wagmi");
12214
- var import_viem9 = require("viem");
12419
+ // src/internal/components/SendRecieveMenu/SendLumiaMenu.tsx
12215
12420
  init_base();
12216
- var COMMON_TOKENS = [
12217
- // Add real token addresses here when available
12218
- // {
12219
- // address: '0x....',
12220
- // name: 'USD Coin',
12221
- // symbol: 'USDC',
12222
- // decimals: 6,
12223
- // logo: 'https://...'
12224
- // }
12225
- ];
12226
- function useAssets(address) {
12227
- const { data: nativeBalance, isLoading: nativeBalanceLoading, refetch: refetchNativeBalance } = (0, import_wagmi3.useBalance)({
12228
- address,
12229
- chainId: lumiaBeam.id,
12230
- query: {
12231
- enabled: !!address
12232
- }
12233
- });
12234
- const tokenContracts = COMMON_TOKENS.map((token) => ({
12235
- address: token.address,
12236
- abi: import_viem9.erc20Abi,
12237
- functionName: "balanceOf",
12238
- args: [address],
12239
- chainId: lumiaBeam.id
12240
- }));
12241
- const readContractsResult = (0, import_wagmi3.useReadContracts)({
12242
- contracts: tokenContracts,
12243
- query: {
12244
- enabled: !!address && COMMON_TOKENS.length > 0
12245
- }
12246
- });
12247
- const { data: tokenBalances, isLoading: tokenBalancesLoading, refetch: refetchTokenBalances } = readContractsResult;
12248
- const getAllAssets = () => {
12249
- const assets = [];
12250
- if (nativeBalance) {
12251
- assets.push({
12252
- type: "native",
12253
- name: "Lumia",
12254
- symbol: "LUMIA",
12255
- balance: nativeBalance.value.toString(),
12256
- formattedBalance: parseFloat(nativeBalance.formatted).toFixed(4),
12257
- decimals: 18
12258
- });
12259
- }
12260
- if (tokenBalances && COMMON_TOKENS.length > 0) {
12261
- tokenBalances.forEach((balance, index) => {
12262
- const token = COMMON_TOKENS[index];
12263
- if (balance.status === "success" && balance.result) {
12264
- const balanceValue = balance.result;
12265
- const formattedBalance = (0, import_viem9.formatUnits)(balanceValue, token.decimals);
12266
- assets.push({
12267
- type: "erc20",
12268
- address: token.address,
12269
- name: token.name,
12270
- symbol: token.symbol,
12271
- balance: balanceValue.toString(),
12272
- formattedBalance: parseFloat(formattedBalance).toFixed(4),
12273
- decimals: token.decimals,
12274
- logo: token.logo
12275
- });
12421
+
12422
+ // src/internal/components/SendRecieveMenu/AssetSelector.tsx
12423
+ var import_lucide_react42 = require("lucide-react");
12424
+ var import_react49 = require("react");
12425
+ var import_viem9 = require("viem");
12426
+ var import_jsx_runtime64 = require("react/jsx-runtime");
12427
+ function isNftAsset2(asset) {
12428
+ return asset.type === "erc721" || asset.type === "erc1155";
12429
+ }
12430
+ function isSecurityToken2(asset) {
12431
+ return asset.type === "erc3643";
12432
+ }
12433
+ function getAssetBalance(asset) {
12434
+ if (isNftAsset2(asset)) {
12435
+ return "1";
12436
+ }
12437
+ const balance = Number((0, import_viem9.formatUnits)(BigInt(asset?.balance || "0"), asset?.decimals || 18));
12438
+ if (balance >= 1e6) {
12439
+ return `${(balance / 1e6).toFixed(2)}M`;
12440
+ }
12441
+ if (balance >= 1e3) {
12442
+ return `${(balance / 1e3).toFixed(2)}K`;
12443
+ }
12444
+ return balance.toFixed(4);
12445
+ }
12446
+ function AssetIcon({ asset, size = "sm" }) {
12447
+ const [imageError, setImageError] = (0, import_react49.useState)(false);
12448
+ const sizeClasses = size === "sm" ? "w-6 h-6" : "w-10 h-10";
12449
+ const textSize = size === "sm" ? "text-xs" : "text-sm";
12450
+ const isNft = isNftAsset2(asset);
12451
+ const nftImage = asset.image || asset.nftMetadata?.image;
12452
+ const isSecurity = isSecurityToken2(asset);
12453
+ if (isNft && nftImage && !imageError) {
12454
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: cn(sizeClasses, "rounded-[var(--l-pass-el-bdrs)] overflow-hidden relative flex-shrink-0"), children: [
12455
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12456
+ "img",
12457
+ {
12458
+ src: nftImage,
12459
+ alt: asset.nftMetadata?.name || asset.name,
12460
+ className: "w-full h-full object-cover",
12461
+ onError: () => setImageError(true)
12276
12462
  }
12277
- });
12278
- }
12279
- return assets;
12463
+ ),
12464
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "absolute -top-0.5 -right-0.5 w-3 h-3 rounded-full bg-[var(--l-pass-accent)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Sparkles, { className: "w-2 h-2 text-[var(--l-pass-fg-inverted)]" }) })
12465
+ ] });
12466
+ }
12467
+ if (isNft) {
12468
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: cn(sizeClasses, "rounded-[var(--l-pass-el-bdrs)] bg-[var(--l-pass-fg)] flex items-center justify-center relative flex-shrink-0"), children: [
12469
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Image, { className: cn(size === "sm" ? "w-3 h-3" : "w-5 h-5", "text-[var(--l-pass-fg-inverted)]") }),
12470
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "absolute -top-0.5 -right-0.5 w-3 h-3 rounded-full bg-[var(--l-pass-accent)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Sparkles, { className: "w-2 h-2 text-[var(--l-pass-fg-inverted)]" }) })
12471
+ ] });
12472
+ }
12473
+ if (asset.logo && !imageError) {
12474
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: cn(sizeClasses, "rounded-full overflow-hidden relative flex-shrink-0"), children: [
12475
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12476
+ "img",
12477
+ {
12478
+ src: asset.logo,
12479
+ alt: asset.symbol,
12480
+ className: "w-full h-full object-cover",
12481
+ onError: () => setImageError(true)
12482
+ }
12483
+ ),
12484
+ isSecurity && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "absolute -top-0.5 -right-0.5 w-3 h-3 rounded-full bg-amber-500 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Shield, { className: "w-2 h-2 text-white" }) })
12485
+ ] });
12486
+ }
12487
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: cn(sizeClasses, "rounded-full bg-[var(--l-pass-fg)] flex items-center justify-center relative flex-shrink-0"), children: [
12488
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: cn("text-[var(--l-pass-fg-inverted)] font-bold", textSize), children: asset.symbol.charAt(0) }),
12489
+ isSecurity && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "absolute -top-0.5 -right-0.5 w-3 h-3 rounded-full bg-amber-500 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Shield, { className: "w-2 h-2 text-white" }) })
12490
+ ] });
12491
+ }
12492
+ function AssetListItem({ asset, onSelect, isSelected }) {
12493
+ const isNft = isNftAsset2(asset);
12494
+ const handleClick = (e) => {
12495
+ e.preventDefault();
12496
+ e.stopPropagation();
12497
+ onSelect();
12280
12498
  };
12281
- const getTokenBalance = (tokenAddress) => {
12282
- const tokenIndex = COMMON_TOKENS.findIndex(
12283
- (token2) => token2.address.toLowerCase() === tokenAddress.toLowerCase()
12284
- );
12285
- if (tokenIndex === -1 || !tokenBalances?.[tokenIndex]) {
12286
- return null;
12287
- }
12288
- const balance = tokenBalances[tokenIndex];
12289
- const token = COMMON_TOKENS[tokenIndex];
12290
- if (balance.status === "success" && balance.result) {
12291
- const balanceValue = balance.result;
12292
- const formattedBalance = (0, import_viem9.formatUnits)(balanceValue, token.decimals);
12293
- return {
12294
- address: token.address,
12295
- name: token.name,
12296
- symbol: token.symbol,
12297
- decimals: token.decimals,
12298
- balance: balanceValue.toString(),
12299
- formattedBalance: parseFloat(formattedBalance).toFixed(4),
12300
- logo: token.logo
12301
- };
12499
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
12500
+ "button",
12501
+ {
12502
+ type: "button",
12503
+ className: cn(
12504
+ "w-full flex items-center gap-3 p-3 rounded-[var(--l-pass-el-bdrs)]",
12505
+ "hover:bg-[var(--l-pass-bg-secondary)] transition-colors cursor-pointer",
12506
+ isSelected && "bg-[var(--l-pass-bg-secondary)]"
12507
+ ),
12508
+ onClick: handleClick,
12509
+ children: [
12510
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(AssetIcon, { asset, size: "md" }),
12511
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex-1 min-w-0 text-left", children: [
12512
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "font-semibold text-[var(--l-pass-fg)] truncate", children: isNft ? asset.nftMetadata?.name || asset.name : asset.name }),
12513
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "text-xs text-[var(--l-pass-fg-muted)]", children: isNft ? /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12514
+ asset.symbol,
12515
+ asset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: "ml-1", children: [
12516
+ "#",
12517
+ asset.tokenId.length > 6 ? `${asset.tokenId.slice(0, 4)}...` : asset.tokenId
12518
+ ] })
12519
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12520
+ getAssetBalance(asset),
12521
+ " ",
12522
+ asset.symbol
12523
+ ] }) })
12524
+ ] })
12525
+ ]
12302
12526
  }
12303
- return null;
12527
+ );
12528
+ }
12529
+ function AssetSelector({ assets, selectedAsset, onSelect, disabled }) {
12530
+ const [isOpen, setIsOpen] = (0, import_react49.useState)(false);
12531
+ const dropdownRef = (0, import_react49.useRef)(null);
12532
+ const buttonRef = (0, import_react49.useRef)(null);
12533
+ (0, import_react49.useEffect)(() => {
12534
+ function handleClickOutside(event) {
12535
+ if (dropdownRef.current && !dropdownRef.current.contains(event.target) && buttonRef.current && !buttonRef.current.contains(event.target)) {
12536
+ setIsOpen(false);
12537
+ }
12538
+ }
12539
+ if (isOpen) {
12540
+ document.addEventListener("mousedown", handleClickOutside);
12541
+ return () => document.removeEventListener("mousedown", handleClickOutside);
12542
+ }
12543
+ }, [isOpen]);
12544
+ const transferableAssets = assets.filter((asset) => {
12545
+ if (isNftAsset2(asset)) return true;
12546
+ const balance = BigInt(asset.balance || "0");
12547
+ return balance > 0n;
12548
+ });
12549
+ const nativeAssets = transferableAssets.filter((a) => a.type === "native");
12550
+ const tokenAssets = transferableAssets.filter((a) => a.type === "erc20");
12551
+ const securityAssets = transferableAssets.filter((a) => a.type === "erc3643");
12552
+ const nftAssets = transferableAssets.filter((a) => a.type === "erc721" || a.type === "erc1155");
12553
+ const handleSelect = (asset) => {
12554
+ onSelect(asset);
12555
+ setIsOpen(false);
12304
12556
  };
12305
- const refreshBalances = async () => {
12306
- await Promise.all([
12307
- refetchNativeBalance(),
12308
- refetchTokenBalances()
12309
- ]);
12557
+ const handleToggle = (e) => {
12558
+ e.preventDefault();
12559
+ e.stopPropagation();
12560
+ if (!disabled) {
12561
+ setIsOpen(!isOpen);
12562
+ }
12310
12563
  };
12311
- return {
12312
- nativeBalance,
12313
- tokenBalances,
12314
- assets: getAllAssets(),
12315
- getTokenBalance,
12316
- refreshBalances,
12317
- isLoading: nativeBalanceLoading || tokenBalancesLoading,
12318
- isConnected: !!address
12564
+ const handleClose = (e) => {
12565
+ e.preventDefault();
12566
+ e.stopPropagation();
12567
+ setIsOpen(false);
12319
12568
  };
12320
- }
12321
- function useTokenInfo(tokenAddress) {
12322
- const readContractsResult = (0, import_wagmi3.useReadContracts)({
12323
- contracts: [
12324
- { address: tokenAddress, abi: import_viem9.erc20Abi, functionName: "name", chainId: lumiaBeam.id },
12325
- { address: tokenAddress, abi: import_viem9.erc20Abi, functionName: "symbol", chainId: lumiaBeam.id },
12326
- { address: tokenAddress, abi: import_viem9.erc20Abi, functionName: "decimals", chainId: lumiaBeam.id }
12327
- ]
12328
- });
12329
- const { data: tokenData, isLoading } = readContractsResult;
12330
- if (!tokenData || isLoading) {
12331
- return { isLoading, tokenInfo: null };
12569
+ if (!selectedAsset) {
12570
+ return null;
12332
12571
  }
12333
- const [nameResult, symbolResult, decimalsResult] = tokenData;
12334
- if (nameResult.status === "success" && symbolResult.status === "success" && decimalsResult.status === "success") {
12335
- return {
12336
- isLoading: false,
12337
- tokenInfo: {
12338
- name: nameResult.result,
12339
- symbol: symbolResult.result,
12340
- decimals: decimalsResult.result,
12341
- address: tokenAddress
12572
+ const isNft = isNftAsset2(selectedAsset);
12573
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "relative", style: { zIndex: isOpen ? 100 : "auto" }, children: [
12574
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
12575
+ "button",
12576
+ {
12577
+ ref: buttonRef,
12578
+ type: "button",
12579
+ disabled,
12580
+ className: cn(
12581
+ "flex items-center gap-1.5 px-2 py-1 rounded-[var(--l-pass-el-bdrs)]",
12582
+ "bg-[var(--l-pass-bg)] hover:bg-[var(--l-pass-bg-secondary)]",
12583
+ "transition-colors cursor-pointer",
12584
+ disabled && "opacity-50 cursor-not-allowed"
12585
+ ),
12586
+ onClick: handleToggle,
12587
+ children: [
12588
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(AssetIcon, { asset: selectedAsset, size: "sm" }),
12589
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-sm font-semibold text-[var(--l-pass-fg)] max-w-[80px] truncate", children: isNft ? selectedAsset.nftMetadata?.name || selectedAsset.symbol : selectedAsset.symbol }),
12590
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.ChevronDown, { className: cn("w-4 h-4 text-[var(--l-pass-fg-muted)] transition-transform", isOpen && "rotate-180") })
12591
+ ]
12342
12592
  }
12343
- };
12344
- }
12345
- return { isLoading: false, tokenInfo: null };
12346
- }
12347
- function useTokenBalance(tokenAddress, userAddress) {
12348
- const { data: balance, isLoading, refetch } = (0, import_wagmi3.useReadContract)({
12349
- address: tokenAddress,
12350
- abi: import_viem9.erc20Abi,
12351
- functionName: "balanceOf",
12352
- args: userAddress ? [userAddress] : void 0,
12353
- chainId: lumiaBeam.id,
12354
- query: {
12355
- enabled: !!userAddress
12356
- }
12357
- });
12358
- const { tokenInfo } = useTokenInfo(tokenAddress);
12359
- const formattedBalance = import_react49.default.useMemo(() => {
12360
- if (!balance || !tokenInfo) return "0";
12361
- return (0, import_viem9.formatUnits)(balance, tokenInfo.decimals);
12362
- }, [balance, tokenInfo]);
12363
- return {
12364
- balance,
12365
- formattedBalance,
12366
- tokenInfo,
12367
- isLoading,
12368
- refetch
12369
- };
12593
+ ),
12594
+ isOpen && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
12595
+ "div",
12596
+ {
12597
+ ref: dropdownRef,
12598
+ className: cn(
12599
+ "absolute left-0 bottom-full mb-2",
12600
+ "w-72 max-h-64 overflow-y-auto",
12601
+ "bg-[var(--l-pass-bg)] border border-[var(--l-pass-bd)]",
12602
+ "rounded-[var(--l-pass-el-bdrs)] shadow-lg"
12603
+ ),
12604
+ style: { zIndex: 100 },
12605
+ onClick: (e) => e.stopPropagation(),
12606
+ children: [
12607
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "sticky top-0 flex items-center justify-between px-3 py-2 bg-[var(--l-pass-bg)] border-b border-[var(--l-pass-bd)]", children: [
12608
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-sm font-semibold text-[var(--l-pass-fg)]", children: "Select Asset" }),
12609
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { variant: "ghost", size: "icon", onClick: handleClose, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.X, { className: "w-4 h-4" }) })
12610
+ ] }),
12611
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "p-2", children: [
12612
+ nativeAssets.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_jsx_runtime64.Fragment, { children: nativeAssets.map((asset) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12613
+ AssetListItem,
12614
+ {
12615
+ asset,
12616
+ onSelect: () => handleSelect(asset),
12617
+ isSelected: selectedAsset?.type === asset.type && selectedAsset?.symbol === asset.symbol
12618
+ },
12619
+ `native-${asset.symbol}`
12620
+ )) }),
12621
+ tokenAssets.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12622
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "px-3 py-1 text-xs text-[var(--l-pass-fg-muted)] uppercase tracking-wider mt-2", children: "Tokens" }),
12623
+ tokenAssets.map((asset) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12624
+ AssetListItem,
12625
+ {
12626
+ asset,
12627
+ onSelect: () => handleSelect(asset),
12628
+ isSelected: selectedAsset?.address === asset.address && selectedAsset?.type === asset.type
12629
+ },
12630
+ `token-${asset.address}`
12631
+ ))
12632
+ ] }),
12633
+ securityAssets.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12634
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "px-3 py-1 text-xs text-[var(--l-pass-fg-muted)] uppercase tracking-wider mt-2", children: "Security Tokens" }),
12635
+ securityAssets.map((asset) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12636
+ AssetListItem,
12637
+ {
12638
+ asset,
12639
+ onSelect: () => handleSelect(asset),
12640
+ isSelected: selectedAsset?.address === asset.address && selectedAsset?.type === asset.type
12641
+ },
12642
+ `security-${asset.address}`
12643
+ ))
12644
+ ] }),
12645
+ nftAssets.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12646
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "px-3 py-1 text-xs text-[var(--l-pass-fg-muted)] uppercase tracking-wider mt-2", children: "NFTs" }),
12647
+ nftAssets.map((asset) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12648
+ AssetListItem,
12649
+ {
12650
+ asset,
12651
+ onSelect: () => handleSelect(asset),
12652
+ isSelected: selectedAsset?.address === asset.address && selectedAsset?.tokenId === asset.tokenId
12653
+ },
12654
+ `nft-${asset.address}-${asset.tokenId}`
12655
+ ))
12656
+ ] }),
12657
+ transferableAssets.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "p-4 text-center text-sm text-[var(--l-pass-fg-muted)]", children: "No assets available" })
12658
+ ] })
12659
+ ]
12660
+ }
12661
+ )
12662
+ ] });
12370
12663
  }
12371
12664
 
12372
12665
  // src/internal/components/SendRecieveMenu/SendLumiaMenu.tsx
12373
- init_base();
12374
- var import_jsx_runtime64 = require("react/jsx-runtime");
12666
+ var import_jsx_runtime65 = require("react/jsx-runtime");
12667
+ function isNftAsset3(asset) {
12668
+ if (!asset) return false;
12669
+ return asset.type === "erc721" || asset.type === "erc1155";
12670
+ }
12671
+ function isSecurityToken3(asset) {
12672
+ if (!asset) return false;
12673
+ return asset.type === "erc3643";
12674
+ }
12675
+ function getAssetBalance2(asset) {
12676
+ if (!asset) return 0;
12677
+ if (isNftAsset3(asset)) return 1;
12678
+ return Number((0, import_viem10.formatUnits)(BigInt(asset.balance || "0"), asset.decimals || 18));
12679
+ }
12680
+ function formatBalance(balance, decimals = 4) {
12681
+ if (balance >= 1e6) {
12682
+ return `${(balance / 1e6).toFixed(2)}M`;
12683
+ }
12684
+ if (balance >= 1e3) {
12685
+ return `${(balance / 1e3).toFixed(2)}K`;
12686
+ }
12687
+ return balance.toFixed(decimals);
12688
+ }
12689
+ function NftDisplayCard({ asset }) {
12690
+ const [imageError, setImageError] = (0, import_react50.useState)(false);
12691
+ const nftImage = asset.image || asset.nftMetadata?.image;
12692
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-3 p-3 rounded-[var(--l-pass-el-bdrs)] bg-[var(--l-pass-bg-secondary)]", children: [
12693
+ nftImage && !imageError ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
12694
+ "img",
12695
+ {
12696
+ src: nftImage,
12697
+ alt: asset.nftMetadata?.name || asset.name,
12698
+ className: "w-16 h-16 rounded-[var(--l-pass-el-bdrs)] object-cover",
12699
+ onError: () => setImageError(true)
12700
+ }
12701
+ ) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "w-16 h-16 rounded-[var(--l-pass-el-bdrs)] bg-[var(--l-pass-fg)] flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Image, { className: "w-8 h-8 text-[var(--l-pass-fg-inverted)]" }) }),
12702
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex-1 min-w-0", children: [
12703
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "font-semibold text-[var(--l-pass-fg)] truncate", children: asset.nftMetadata?.name || asset.name }),
12704
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-sm text-[var(--l-pass-fg-muted)]", children: [
12705
+ asset.symbol,
12706
+ asset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "ml-1", children: [
12707
+ "#",
12708
+ asset.tokenId.length > 8 ? `${asset.tokenId.slice(0, 6)}...` : asset.tokenId
12709
+ ] })
12710
+ ] }),
12711
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-xs text-[var(--l-pass-fg-muted)] mt-1 flex items-center gap-1", children: [
12712
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Sparkles, { className: "w-3 h-3" }),
12713
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: asset.type === "erc721" ? "ERC-721" : "ERC-1155" })
12714
+ ] })
12715
+ ] })
12716
+ ] });
12717
+ }
12375
12718
  function SendLumiaMenu() {
12376
12719
  const page = useLayoutDataStore((st) => st.page);
12377
12720
  const setPage = useLayoutDataStore((st) => st.setPage);
12378
12721
  const open = page === "send";
12379
12722
  const address = useLumiaPassportSession((st) => st.address);
12380
- const { assets } = useAssets(address);
12381
- const { sendTransaction, isLoading, error, userOpHash, reset } = useSendTransaction();
12382
- const { refetch: refetchBalance } = (0, import_wagmi4.useBalance)({
12383
- address,
12384
- chainId: lumiaBeam.id
12723
+ const {
12724
+ assets,
12725
+ refreshBalances,
12726
+ isLoading: isAssetsLoading
12727
+ } = useBlockscoutAssets({
12728
+ address
12385
12729
  });
12730
+ const { sendTransaction, isLoading, error, userOpHash, reset } = useSendTransaction();
12386
12731
  const [recipient, setRecipient] = (0, import_react50.useState)("");
12387
12732
  const [amount, setAmount] = (0, import_react50.useState)("");
12733
+ const [selectedAsset, setSelectedAsset] = (0, import_react50.useState)(null);
12388
12734
  const [txStep, setTxStep] = (0, import_react50.useState)("input");
12389
12735
  const [validationError, setValidationError] = (0, import_react50.useState)(null);
12736
+ (0, import_react50.useEffect)(() => {
12737
+ if (assets.length > 0 && !selectedAsset) {
12738
+ const nativeAsset = assets.find((a) => a.type === "native");
12739
+ if (nativeAsset) {
12740
+ setSelectedAsset(nativeAsset);
12741
+ }
12742
+ }
12743
+ }, [assets, selectedAsset]);
12390
12744
  const isNicknameInput = looksLikeNickname(recipient);
12391
12745
  const {
12392
12746
  resolvedAddress,
@@ -12395,22 +12749,46 @@ function SendLumiaMenu() {
12395
12749
  isWalletNotSetup,
12396
12750
  isFrozen,
12397
12751
  isFingerprintVerified,
12398
- fingerprintVerification,
12399
12752
  data: nicknameData
12400
12753
  } = useNicknameResolve(recipient, {
12401
12754
  enabled: isNicknameInput,
12402
12755
  chainId: lumiaBeam.id
12403
12756
  });
12404
12757
  const effectiveAddress = isNicknameInput ? resolvedAddress : recipient;
12405
- const nativeAsset = assets.find((a) => a.type === "native");
12406
- const balance = nativeAsset ? parseFloat(nativeAsset.formattedBalance) : 0;
12758
+ const balance = getAssetBalance2(selectedAsset);
12759
+ const isNft = isNftAsset3(selectedAsset);
12760
+ const isSecurity = isSecurityToken3(selectedAsset);
12761
+ const complianceAmount = (0, import_react50.useMemo)(() => {
12762
+ if (!isSecurity || !amount || !selectedAsset) return void 0;
12763
+ try {
12764
+ return (0, import_viem10.parseUnits)(amount, selectedAsset.decimals || 18);
12765
+ } catch {
12766
+ return void 0;
12767
+ }
12768
+ }, [isSecurity, amount, selectedAsset]);
12769
+ const {
12770
+ canTransfer: erc3643CanTransfer,
12771
+ isLoading: isComplianceLoading,
12772
+ error: complianceError
12773
+ } = useErc3643Compliance({
12774
+ tokenAddress: selectedAsset?.address,
12775
+ to: effectiveAddress,
12776
+ amount: complianceAmount,
12777
+ enabled: isSecurity && !!effectiveAddress && !!complianceAmount
12778
+ });
12407
12779
  (0, import_react50.useEffect)(() => {
12408
12780
  if (open) {
12409
12781
  setTxStep("input");
12410
12782
  setValidationError(null);
12783
+ setRecipient("");
12784
+ setAmount("");
12411
12785
  reset();
12786
+ const nativeAsset = assets.find((a) => a.type === "native");
12787
+ if (nativeAsset) {
12788
+ setSelectedAsset(nativeAsset);
12789
+ }
12412
12790
  }
12413
- }, [open, reset]);
12791
+ }, [open, reset, assets]);
12414
12792
  const validateInput = () => {
12415
12793
  if (!recipient) {
12416
12794
  setValidationError("Please enter a recipient address or @nickname");
@@ -12445,14 +12823,34 @@ function SendLumiaMenu() {
12445
12823
  setValidationError("Cannot send to yourself");
12446
12824
  return false;
12447
12825
  }
12448
- const amountNum = parseFloat(amount);
12449
- if (!amount || isNaN(amountNum) || amountNum <= 0) {
12450
- setValidationError("Please enter a valid amount");
12826
+ if (!selectedAsset) {
12827
+ setValidationError("Please select an asset to send");
12451
12828
  return false;
12452
12829
  }
12453
- if (amountNum > balance) {
12454
- setValidationError("Insufficient balance");
12455
- return false;
12830
+ if (!isNft) {
12831
+ const amountNum = parseFloat(amount);
12832
+ if (!amount || isNaN(amountNum) || amountNum <= 0) {
12833
+ setValidationError("Please enter a valid amount");
12834
+ return false;
12835
+ }
12836
+ if (amountNum > balance) {
12837
+ setValidationError("Insufficient balance");
12838
+ return false;
12839
+ }
12840
+ }
12841
+ if (isSecurity) {
12842
+ if (isComplianceLoading) {
12843
+ setValidationError("Checking compliance...");
12844
+ return false;
12845
+ }
12846
+ if (complianceError) {
12847
+ setValidationError(complianceError);
12848
+ return false;
12849
+ }
12850
+ if (erc3643CanTransfer === false) {
12851
+ setValidationError("Transfer not allowed by token compliance rules");
12852
+ return false;
12853
+ }
12456
12854
  }
12457
12855
  setValidationError(null);
12458
12856
  return true;
@@ -12462,206 +12860,309 @@ function SendLumiaMenu() {
12462
12860
  setTxStep("confirm");
12463
12861
  };
12464
12862
  const handleConfirm = async () => {
12465
- if (!effectiveAddress) return;
12863
+ if (!effectiveAddress || !selectedAsset) return;
12466
12864
  setTxStep("pending");
12865
+ const txAmount = isNft ? "1" : amount;
12467
12866
  const hash = await sendTransaction({
12468
12867
  to: effectiveAddress,
12469
- value: amount
12868
+ value: txAmount,
12869
+ assetType: selectedAsset.type,
12870
+ tokenAddress: selectedAsset.address,
12871
+ tokenId: selectedAsset.tokenId,
12872
+ decimals: selectedAsset.decimals
12470
12873
  });
12471
12874
  if (hash) {
12472
12875
  setTxStep("success");
12473
- setTimeout(() => {
12474
- refetchBalance();
12475
- }, 2e3);
12876
+ setTimeout(() => refreshBalances(), 3e3);
12476
12877
  } else {
12477
12878
  setTxStep("input");
12478
12879
  }
12479
12880
  };
12480
12881
  const handleMaxAmount = () => {
12481
- const maxAmount = Math.max(0, balance - 1e-3);
12482
- setAmount(maxAmount.toFixed(6));
12882
+ if (!selectedAsset || isNft) return;
12883
+ if (selectedAsset.type === "native") {
12884
+ const maxAmount = Math.max(0, balance - 1e-3);
12885
+ setAmount(maxAmount.toFixed(6));
12886
+ } else {
12887
+ setAmount((0, import_viem10.formatUnits)(BigInt(selectedAsset.balance || "0"), selectedAsset.decimals || 18));
12888
+ }
12889
+ };
12890
+ const handleAssetSelect = (asset) => {
12891
+ setSelectedAsset(asset);
12892
+ setAmount("");
12483
12893
  };
12484
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]", children: [
12485
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
12486
- txStep === "input" && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.ArrowLeft, { className: "h-4 w-4" }) }),
12487
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-xl font-semibold", children: "Send LUMIA" })
12894
+ const getPageTitle = () => {
12895
+ if (!selectedAsset) return "Send";
12896
+ if (isNft) return `Send NFT`;
12897
+ return `Send ${selectedAsset.symbol}`;
12898
+ };
12899
+ 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: [
12900
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
12901
+ txStep === "input" && /* @__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" }) }),
12902
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-xl font-semibold", children: getPageTitle() })
12488
12903
  ] }),
12489
- txStep === "input" && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12490
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "w-full flex flex-col gap-2", children: [
12491
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "block text-sm font-medium mb-2 text-[var(--l-pass-fg-muted)]", children: "Recipient" }),
12492
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12904
+ txStep === "input" && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
12905
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "w-full flex flex-col gap-2", children: [
12906
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block text-sm font-medium mb-2 text-[var(--l-pass-fg-muted)]", children: "Recipient" }),
12907
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
12493
12908
  Input,
12494
12909
  {
12495
- Icon: isNicknameInput ? import_lucide_react42.AtSign : import_lucide_react42.Wallet,
12910
+ Icon: isNicknameInput ? import_lucide_react43.AtSign : import_lucide_react43.Wallet,
12496
12911
  type: "text",
12497
12912
  value: recipient,
12498
12913
  onChange: (e) => setRecipient(e.target.value),
12499
12914
  placeholder: "0x... or @nickname",
12500
- element: isNicknameInput && isResolving ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Loader, { className: "w-4 h-4 animate-spin text-[var(--l-pass-fg-muted)]" }) : null
12915
+ element: isNicknameInput && isResolving ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Loader, { className: "w-4 h-4 animate-spin text-[var(--l-pass-fg-muted)]" }) : null
12501
12916
  }
12502
12917
  ),
12503
- isNicknameInput && resolvedAddress && !isResolving && nicknameData && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-start gap-3 p-3 rounded-[var(--l-pass-el-bdrs)] bg-[var(--l-pass-bg-secondary)]", children: [
12504
- nicknameData.avatarSvg ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12918
+ isNicknameInput && resolvedAddress && !isResolving && nicknameData && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-start gap-3 p-3 rounded-[var(--l-pass-el-bdrs)] bg-[var(--l-pass-bg-secondary)]", children: [
12919
+ nicknameData.avatarSvg ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
12505
12920
  "img",
12506
12921
  {
12507
12922
  src: nicknameData.avatarSvg,
12508
12923
  alt: nicknameData.handle,
12509
12924
  className: "w-10 h-10 rounded-full object-cover flex-shrink-0"
12510
12925
  }
12511
- ) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "w-10 h-10 rounded-full bg-[var(--l-pass-bg)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AtSign, { className: "w-5 h-5 text-[var(--l-pass-fg-muted)]" }) }),
12512
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex flex-col gap-1 min-w-0", children: [
12513
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-success)]", children: [
12514
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.CheckCircle2, { className: "w-3 h-3 flex-shrink-0" }),
12515
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "font-mono", children: `${resolvedAddress.slice(0, 6)}...${resolvedAddress.slice(-4)}` })
12926
+ ) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "w-10 h-10 rounded-full bg-[var(--l-pass-bg)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AtSign, { className: "w-5 h-5 text-[var(--l-pass-fg-muted)]" }) }),
12927
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col gap-1 min-w-0", children: [
12928
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-success)]", children: [
12929
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.CheckCircle2, { className: "w-3 h-3 flex-shrink-0" }),
12930
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "font-mono", children: `${resolvedAddress.slice(0, 6)}...${resolvedAddress.slice(-4)}` })
12516
12931
  ] }),
12517
- nicknameData.fingerprint && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: `flex items-center gap-1.5 text-xs ${isFingerprintVerified ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-error)]"}`, children: [
12518
- isFingerprintVerified ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Shield, { className: "w-3 h-3 flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.ShieldAlert, { className: "w-3 h-3 flex-shrink-0" }),
12519
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
12932
+ nicknameData.fingerprint && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: `flex items-center gap-1.5 text-xs ${isFingerprintVerified ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-error)]"}`, children: [
12933
+ isFingerprintVerified ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Shield, { className: "w-3 h-3 flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.ShieldAlert, { className: "w-3 h-3 flex-shrink-0" }),
12934
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { children: [
12520
12935
  "Fingerprint: ",
12521
12936
  nicknameData.fingerprint
12522
12937
  ] }),
12523
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: isFingerprintVerified ? "Verified" : "FAILED" })
12938
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: isFingerprintVerified ? "Verified" : "FAILED" })
12524
12939
  ] })
12525
12940
  ] })
12526
12941
  ] }),
12527
- isNicknameInput && isFrozen && !isResolving && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-warning)]", children: [
12528
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AlertTriangle, { className: "w-3 h-3" }),
12529
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "This handle is frozen. Proceed with caution." })
12942
+ isNicknameInput && isFrozen && !isResolving && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-warning)]", children: [
12943
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AlertTriangle, { className: "w-3 h-3" }),
12944
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "This handle is frozen. Proceed with caution." })
12530
12945
  ] }),
12531
- isNicknameInput && isWalletNotSetup && !isResolving && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-error)]", children: [
12532
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AlertCircle, { className: "w-3 h-3" }),
12533
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "This user has not set up their wallet yet" })
12946
+ isNicknameInput && isWalletNotSetup && !isResolving && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-error)]", children: [
12947
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AlertCircle, { className: "w-3 h-3" }),
12948
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "This user has not set up their wallet yet" })
12534
12949
  ] }),
12535
- isNicknameInput && isNotFound && !isResolving && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-error)]", children: [
12536
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AlertCircle, { className: "w-3 h-3" }),
12537
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "Nickname not found" })
12950
+ isNicknameInput && isNotFound && !isResolving && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-1.5 text-xs text-[var(--l-pass-bg-error)]", children: [
12951
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AlertCircle, { className: "w-3 h-3" }),
12952
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "Nickname not found" })
12538
12953
  ] })
12539
12954
  ] }),
12540
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "w-full flex flex-col gap-2", children: [
12541
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between items-center", children: [
12542
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "block text-sm font-medium text-[var(--l-pass-fg-muted)]", children: "Amount" }),
12543
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: "block text-sm text-[var(--l-pass-fg-muted)]", children: [
12955
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "w-full flex flex-col gap-2", children: [
12956
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between items-center", children: [
12957
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block text-sm font-medium text-[var(--l-pass-fg-muted)]", children: isNft ? "Asset" : "Amount" }),
12958
+ !isNft && selectedAsset && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "block text-sm text-[var(--l-pass-fg-muted)]", children: [
12544
12959
  "Balance: ",
12545
- balance.toFixed(4),
12546
- " LUMIA"
12960
+ formatBalance(balance),
12961
+ " ",
12962
+ selectedAsset.symbol
12547
12963
  ] })
12548
12964
  ] }),
12549
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
12550
- Input,
12551
- {
12552
- Icon: LumiaIcon,
12553
- type: "number",
12554
- value: amount,
12555
- onChange: (e) => setAmount(e.target.value),
12556
- placeholder: "0.0",
12557
- step: "0.000001",
12558
- element: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { onClick: handleMaxAmount, variant: "ghost", size: "medium", children: "MAX" })
12559
- }
12560
- )
12965
+ isNft && selectedAsset ? (
12966
+ // NFT display card
12967
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(NftDisplayCard, { asset: selectedAsset })
12968
+ ) : (
12969
+ // Fungible token amount input
12970
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex h-12 w-full rounded-[var(--l-pass-el-bdrs)] items-center gap-[var(--l-pass-gap)] px-[var(--l-pass-pd)] bg-[var(--l-pass-secondary)] hover:bg-[var(--l-pass-secondary-h)] transition-colors duration-200 ease-in-out focus-within:bg-[var(--l-pass-secondary-a)]", children: [
12971
+ selectedAsset && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
12972
+ AssetSelector,
12973
+ {
12974
+ assets,
12975
+ selectedAsset,
12976
+ onSelect: handleAssetSelect,
12977
+ disabled: isAssetsLoading
12978
+ }
12979
+ ),
12980
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
12981
+ "input",
12982
+ {
12983
+ type: "number",
12984
+ value: amount,
12985
+ onChange: (e) => setAmount(e.target.value),
12986
+ placeholder: "0.0",
12987
+ step: "0.000001",
12988
+ className: cn(
12989
+ "text-[16px] text-[var(--l-pass-fg)] font-semibold",
12990
+ "placeholder:text-[var(--l-pass-fg-muted)]",
12991
+ "focus-visible:outline-none focus-visible:ring-0",
12992
+ "w-full h-full flex-1 border-0 bg-transparent px-0"
12993
+ )
12994
+ }
12995
+ ),
12996
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { onClick: handleMaxAmount, variant: "ghost", size: "medium", children: "MAX" })
12997
+ ] })
12998
+ ),
12999
+ isNft && selectedAsset && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-2 mt-2", children: [
13000
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm text-[var(--l-pass-fg-muted)]", children: "Change asset:" }),
13001
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
13002
+ AssetSelector,
13003
+ {
13004
+ assets,
13005
+ selectedAsset,
13006
+ onSelect: handleAssetSelect,
13007
+ disabled: isAssetsLoading
13008
+ }
13009
+ )
13010
+ ] })
12561
13011
  ] }),
12562
- (validationError || error) && /* @__PURE__ */ (0, import_jsx_runtime64.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: [
12563
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AlertCircle, { className: "h-4 w-4" }),
12564
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-sm", children: validationError || error })
13012
+ isSecurity && effectiveAddress && amount && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: cn(
13013
+ "flex items-center gap-2 p-3 rounded-[var(--l-pass-el-bdrs)]",
13014
+ isComplianceLoading && "bg-[var(--l-pass-bg-info)] text-[var(--l-pass-info)]",
13015
+ !isComplianceLoading && erc3643CanTransfer && "bg-[var(--l-pass-bg-success)] text-[var(--l-pass-success)]",
13016
+ !isComplianceLoading && !erc3643CanTransfer && "bg-[var(--l-pass-bg-error)] text-[var(--l-pass-error)]"
13017
+ ), children: isComplianceLoading ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13018
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Loader, { className: "h-4 w-4 animate-spin" }),
13019
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "Checking compliance..." })
13020
+ ] }) : erc3643CanTransfer ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13021
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.CheckCircle2, { className: "h-4 w-4" }),
13022
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: "Transfer compliant" })
13023
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13024
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AlertCircle, { className: "h-4 w-4" }),
13025
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: complianceError || "Transfer not allowed" })
13026
+ ] }) }),
13027
+ (validationError || error) && /* @__PURE__ */ (0, import_jsx_runtime65.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: [
13028
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AlertCircle, { className: "h-4 w-4" }),
13029
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm", children: validationError || error })
12565
13030
  ] }),
12566
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { onClick: handleSend, disabled: isLoading, className: "w-full", size: "large", children: "Continue" })
13031
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { onClick: handleSend, disabled: isLoading || isComplianceLoading, className: "w-full", size: "large", children: "Continue" })
12567
13032
  ] }),
12568
- txStep === "confirm" && effectiveAddress && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12569
- isNicknameInput && isFrozen && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-2 p-3 bg-[var(--l-pass-bg-warning)] text-[var(--l-pass-warning)] rounded-[var(--l-pass-el-bdrs)]", children: [
12570
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AlertTriangle, { className: "h-4 w-4 flex-shrink-0" }),
12571
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-sm font-medium", children: "This handle is frozen. Proceed with caution." })
13033
+ txStep === "confirm" && effectiveAddress && selectedAsset && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13034
+ isNicknameInput && isFrozen && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-2 p-3 bg-[var(--l-pass-bg-warning)] text-[var(--l-pass-warning)] rounded-[var(--l-pass-el-bdrs)]", children: [
13035
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AlertTriangle, { className: "h-4 w-4 flex-shrink-0" }),
13036
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm font-medium", children: "This handle is frozen. Proceed with caution." })
13037
+ ] }),
13038
+ isSecurity && erc3643CanTransfer && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-2 p-3 bg-[var(--l-pass-bg-success)] text-[var(--l-pass-success)] rounded-[var(--l-pass-el-bdrs)]", children: [
13039
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Shield, { className: "h-4 w-4 flex-shrink-0" }),
13040
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-sm font-medium", children: "Security token compliance verified" })
12572
13041
  ] }),
12573
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "bg-[var(--l-pass-bg-secondary)] rounded-[var(--l-pass-el-bdrs)] p-4", children: isNicknameInput && nicknameData ? /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12574
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-start gap-3 mb-4", children: [
12575
- nicknameData.avatarSvg ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
13042
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "bg-[var(--l-pass-bg-secondary)] rounded-[var(--l-pass-el-bdrs)] p-4", children: isNicknameInput && nicknameData ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13043
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-start gap-3 mb-4", children: [
13044
+ nicknameData.avatarSvg ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
12576
13045
  "img",
12577
13046
  {
12578
13047
  src: nicknameData.avatarSvg,
12579
13048
  alt: nicknameData.handle,
12580
13049
  className: "w-12 h-12 rounded-full object-cover flex-shrink-0"
12581
13050
  }
12582
- ) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "w-12 h-12 rounded-full bg-[var(--l-pass-bg)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.AtSign, { className: "w-6 h-6 text-[var(--l-pass-fg-muted)]" }) }),
12583
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex flex-col gap-1 min-w-0", children: [
12584
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "font-semibold text-lg text-[var(--l-pass-fg)] truncate", children: nicknameData.handle }),
12585
- nicknameData.fingerprint && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: `flex items-center gap-1.5 text-sm ${isFingerprintVerified ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-error)]"}`, children: [
12586
- isFingerprintVerified ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Shield, { className: "w-4 h-4 flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.ShieldAlert, { className: "w-4 h-4 flex-shrink-0" }),
12587
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { children: [
13051
+ ) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "w-12 h-12 rounded-full bg-[var(--l-pass-bg)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.AtSign, { className: "w-6 h-6 text-[var(--l-pass-fg-muted)]" }) }),
13052
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col gap-1 min-w-0", children: [
13053
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "font-semibold text-lg text-[var(--l-pass-fg)] truncate", children: nicknameData.handle }),
13054
+ nicknameData.fingerprint && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: `flex items-center gap-1.5 text-sm ${isFingerprintVerified ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-error)]"}`, children: [
13055
+ isFingerprintVerified ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Shield, { className: "w-4 h-4 flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.ShieldAlert, { className: "w-4 h-4 flex-shrink-0" }),
13056
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { children: [
12588
13057
  "Fingerprint: ",
12589
13058
  nicknameData.fingerprint
12590
13059
  ] }),
12591
- isFingerprintVerified && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.CheckCircle2, { className: "w-3 h-3" }),
12592
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-xs", children: isFingerprintVerified ? "Verified" : "FAILED" })
13060
+ isFingerprintVerified && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.CheckCircle2, { className: "w-3 h-3" }),
13061
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-xs", children: isFingerprintVerified ? "Verified" : "FAILED" })
12593
13062
  ] }),
12594
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: "font-mono text-xs text-[var(--l-pass-fg-muted)]", children: [
13063
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "font-mono text-xs text-[var(--l-pass-fg-muted)]", children: [
12595
13064
  "Address: ",
12596
13065
  `${effectiveAddress.slice(0, 6)}...${effectiveAddress.slice(-6)}`
12597
13066
  ] })
12598
13067
  ] })
12599
13068
  ] }),
12600
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "border-t border-[var(--l-pass-border)] pt-3 space-y-2 text-sm text-[var(--l-pass-fg)]", children: [
12601
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between", children: [
12602
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Amount:" }),
12603
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: "font-semibold", children: [
12604
- amount,
12605
- " LUMIA"
13069
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "border-t border-[var(--l-pass-border)] pt-3 space-y-2 text-sm text-[var(--l-pass-fg)]", children: [
13070
+ isNft ? (
13071
+ // NFT details
13072
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_jsx_runtime65.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between items-start", children: [
13073
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "NFT:" }),
13074
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-right", children: [
13075
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "font-semibold block", children: selectedAsset.nftMetadata?.name || selectedAsset.name }),
13076
+ selectedAsset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "text-xs text-[var(--l-pass-fg-muted)]", children: [
13077
+ "#",
13078
+ selectedAsset.tokenId.length > 10 ? `${selectedAsset.tokenId.slice(0, 8)}...` : selectedAsset.tokenId
13079
+ ] })
13080
+ ] })
13081
+ ] }) })
13082
+ ) : (
13083
+ // Fungible token details
13084
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between", children: [
13085
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Amount:" }),
13086
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "font-semibold", children: [
13087
+ amount,
13088
+ " ",
13089
+ selectedAsset.symbol
13090
+ ] })
12606
13091
  ] })
12607
- ] }),
12608
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between", children: [
12609
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Network:" }),
12610
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "Lumia Beam" })
13092
+ ),
13093
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between", children: [
13094
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Network:" }),
13095
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "Lumia Beam" })
12611
13096
  ] })
12612
13097
  ] })
12613
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12614
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h3", { className: "font-medium mb-3 text-[var(--l-pass-fg)]", children: "Transaction Details" }),
12615
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "space-y-2 text-sm text-[var(--l-pass-fg)]", children: [
12616
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between", children: [
12617
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "To:" }),
12618
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "font-mono text-xs", children: `${effectiveAddress.slice(0, 6)}...${effectiveAddress.slice(-4)}` })
13098
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13099
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("h3", { className: "font-medium mb-3 text-[var(--l-pass-fg)]", children: "Transaction Details" }),
13100
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "space-y-2 text-sm text-[var(--l-pass-fg)]", children: [
13101
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between", children: [
13102
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "To:" }),
13103
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "font-mono text-xs", children: `${effectiveAddress.slice(0, 6)}...${effectiveAddress.slice(-4)}` })
12619
13104
  ] }),
12620
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between", children: [
12621
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Amount:" }),
12622
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("span", { className: "font-semibold", children: [
12623
- amount,
12624
- " LUMIA"
13105
+ isNft ? (
13106
+ // NFT details
13107
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_jsx_runtime65.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between items-start", children: [
13108
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "NFT:" }),
13109
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-right", children: [
13110
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "font-semibold block", children: selectedAsset.nftMetadata?.name || selectedAsset.name }),
13111
+ selectedAsset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "text-xs text-[var(--l-pass-fg-muted)]", children: [
13112
+ "#",
13113
+ selectedAsset.tokenId.length > 10 ? `${selectedAsset.tokenId.slice(0, 8)}...` : selectedAsset.tokenId
13114
+ ] })
13115
+ ] })
13116
+ ] }) })
13117
+ ) : (
13118
+ // Fungible token details
13119
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between", children: [
13120
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Amount:" }),
13121
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("span", { className: "font-semibold", children: [
13122
+ amount,
13123
+ " ",
13124
+ selectedAsset.symbol
13125
+ ] })
12625
13126
  ] })
12626
- ] }),
12627
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex justify-between", children: [
12628
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Network:" }),
12629
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { children: "Lumia Beam" })
13127
+ ),
13128
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex justify-between", children: [
13129
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: "Network:" }),
13130
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "Lumia Beam" })
12630
13131
  ] })
12631
13132
  ] })
12632
13133
  ] }) }),
12633
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex gap-2", children: [
12634
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { onClick: () => setTxStep("input"), variant: "outline", className: "flex-1", size: "large", children: "Back" }),
12635
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Button, { onClick: handleConfirm, disabled: isLoading, className: "flex-1", size: "large", children: [
12636
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Loader, { className: "h-4 w-4 animate-spin" }),
13134
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex gap-2", children: [
13135
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { onClick: () => setTxStep("input"), variant: "outline", className: "flex-1", size: "large", children: "Back" }),
13136
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(Button, { onClick: handleConfirm, disabled: isLoading, className: "flex-1", size: "large", children: [
13137
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Loader, { className: "h-4 w-4 animate-spin" }),
12637
13138
  "Confirm"
12638
13139
  ] })
12639
13140
  ] })
12640
13141
  ] }),
12641
- txStep === "pending" && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "py-8 text-center space-y-4", children: [
12642
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.Loader, { className: "h-5 w-5 animate-spin mx-auto" }),
12643
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { children: [
12644
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "block font-medium", children: "Transaction Pending" }),
12645
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "block text-sm mt-1", children: "Please wait while we process your transaction" })
13142
+ txStep === "pending" && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "py-8 text-center space-y-4", children: [
13143
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Loader, { className: "h-5 w-5 animate-spin mx-auto" }),
13144
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { children: [
13145
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block font-medium", children: "Transaction Pending" }),
13146
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block text-sm mt-1", children: "Please wait while we process your transaction" })
12646
13147
  ] })
12647
13148
  ] }),
12648
- txStep === "success" && userOpHash && /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(import_jsx_runtime64.Fragment, { children: [
12649
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "text-center py-4", children: [
12650
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react42.CheckCircle2, { className: "h-12 w-12 text-[var(--l-pass-success)] mx-auto mb-3" }),
12651
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: "font-medium", children: "Transaction Sent!" }),
12652
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("p", { className: "text-sm mt-1", children: "Your transaction is being processed" })
13149
+ txStep === "success" && userOpHash && /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
13150
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-center py-4", children: [
13151
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.CheckCircle2, { className: "h-12 w-12 text-[var(--l-pass-success)] mx-auto mb-3" }),
13152
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("p", { className: "font-medium", children: "Transaction Sent!" }),
13153
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("p", { className: "text-sm mt-1", children: "Your transaction is being processed" })
12653
13154
  ] }),
12654
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { onClick: () => setPage("transactions" /* TRANSACTIONS */), className: "w-full", size: "large", children: "Done" })
13155
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { onClick: () => setPage("transactions" /* TRANSACTIONS */), className: "w-full", size: "large", children: "Done" })
12655
13156
  ] })
12656
13157
  ] });
12657
13158
  }
12658
13159
 
12659
13160
  // src/internal/components/SendRecieveMenu/ReceiveLumiaMenu.tsx
12660
- var import_lucide_react43 = require("lucide-react");
13161
+ var import_lucide_react44 = require("lucide-react");
12661
13162
  var import_qrcode = __toESM(require("qrcode"), 1);
12662
13163
  var import_react51 = require("react");
12663
13164
  init_clients();
12664
- var import_jsx_runtime65 = require("react/jsx-runtime");
13165
+ var import_jsx_runtime66 = require("react/jsx-runtime");
12665
13166
  function ReceiveLumiaMenu() {
12666
13167
  const address = useLumiaPassportSession((st) => st.address);
12667
13168
  const page = useLayoutDataStore((st) => st.page);
@@ -12693,7 +13194,7 @@ function ReceiveLumiaMenu() {
12693
13194
  console.error("Failed to copy address:", error);
12694
13195
  }
12695
13196
  }, [address]);
12696
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
13197
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
12697
13198
  "div",
12698
13199
  {
12699
13200
  style: {
@@ -12702,43 +13203,43 @@ function ReceiveLumiaMenu() {
12702
13203
  },
12703
13204
  className: "list-scrollbar-y w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]",
12704
13205
  children: [
12705
- /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "w-full flex items-center gap-[var(--l-pass-gap)]", children: [
12706
- /* @__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" }) }),
12707
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-xl font-semibold", children: "Receive LUMIA" })
13206
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "w-full flex items-center gap-[var(--l-pass-gap)]", children: [
13207
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react44.ArrowLeft, { className: "h-4 w-4" }) }),
13208
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "text-xl font-semibold", children: "Receive LUMIA" })
12708
13209
  ] }),
12709
- /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(Highlight, { className: "text-center", type: "warning", children: [
12710
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("strong", { className: "block w-full", children: `Network: ${lumiaBeam.name}` }),
12711
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block w-full", children: "Ensure sender is on the same network" })
13210
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(Highlight, { className: "text-center", type: "warning", children: [
13211
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("strong", { className: "block w-full", children: `Network: ${lumiaBeam.name}` }),
13212
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "block w-full", children: "Ensure sender is on the same network" })
12712
13213
  ] }),
12713
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "flex items-center justify-center p-[var(--l-pass-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("img", { src: qrCodeUrl, alt: "Wallet QR Code", className: "w-48 h-48" }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Loader, { className: "w-5 h-5 animate-spin text-[var(--l-pass-fg-muted)]" }) }),
12714
- /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(Highlight, { type: "info", children: [
12715
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block w-full text-center font-mono text-[10px] break-all mb-2", children: address }),
12716
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Button, { onClick: handleCopy, className: "w-full", size: "large", children: copied ? /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
12717
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.CheckCircle2, { className: "h-4 w-4" }),
12718
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "Copied!" })
12719
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
12720
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react43.Copy, { className: "h-4 w-4" }),
12721
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { children: "Copy Address" })
13214
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "flex items-center justify-center p-[var(--l-pass-pd)]", style: { minHeight: "216px" }, children: qrCodeUrl ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("img", { src: qrCodeUrl, alt: "Wallet QR Code", className: "w-48 h-48" }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react44.Loader, { className: "w-5 h-5 animate-spin text-[var(--l-pass-fg-muted)]" }) }),
13215
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(Highlight, { type: "info", children: [
13216
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "block w-full text-center font-mono text-[10px] break-all mb-2", children: address }),
13217
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Button, { onClick: handleCopy, className: "w-full", size: "large", children: copied ? /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
13218
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react44.CheckCircle2, { className: "h-4 w-4" }),
13219
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { children: "Copied!" })
13220
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
13221
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react44.Copy, { className: "h-4 w-4" }),
13222
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { children: "Copy Address" })
12722
13223
  ] }) })
12723
13224
  ] }),
12724
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "text-center text-xs text-[var(--l-pass-fg-muted)]", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "block", children: "Share this address to receive LUMIA tokens." }) })
13225
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "text-center text-xs text-[var(--l-pass-fg-muted)]", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "block", children: "Share this address to receive LUMIA tokens." }) })
12725
13226
  ]
12726
13227
  }
12727
13228
  );
12728
13229
  }
12729
13230
 
12730
13231
  // src/internal/components/SettingsMenu/SettingsMenu.tsx
12731
- var import_lucide_react45 = require("lucide-react");
13232
+ var import_lucide_react46 = require("lucide-react");
12732
13233
  var import_react52 = require("react");
12733
13234
 
12734
13235
  // src/internal/components/SettingsMenu/constants.ts
12735
- var import_lucide_react44 = require("lucide-react");
13236
+ var import_lucide_react45 = require("lucide-react");
12736
13237
 
12737
13238
  // src/internal/assets/KycIcon.tsx
12738
- var import_jsx_runtime66 = require("react/jsx-runtime");
13239
+ var import_jsx_runtime67 = require("react/jsx-runtime");
12739
13240
  function KycIcon(props) {
12740
13241
  const { width = "24", height = "24", ...rest } = props;
12741
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("svg", { ...rest, width, height, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
13242
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("svg", { ...rest, width, height, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
12742
13243
  "path",
12743
13244
  {
12744
13245
  d: "M12 18.5455C10.1727 18.5455 8.625 17.9114 7.35682 16.6432C6.08864 15.375 5.45455 13.8273 5.45455 12C5.45455 10.1727 6.08864 8.625 7.35682 7.35682C8.625 6.08864 10.1727 5.45455 12 5.45455C13.8273 5.45455 15.375 6.08864 16.6432 7.35682C17.9114 8.625 18.5455 10.1727 18.5455 12C18.5455 13.8273 17.9114 15.375 16.6432 16.6432C15.375 17.9114 13.8273 18.5455 12 18.5455ZM12 16.9091C13.3636 16.9091 14.5227 16.4318 15.4773 15.4773C16.4318 14.5227 16.9091 13.3636 16.9091 12C16.9091 11.7682 16.892 11.5398 16.858 11.3148C16.8239 11.0898 16.7727 10.8682 16.7045 10.65C16.5 10.6909 16.2955 10.7216 16.0909 10.742C15.8864 10.7625 15.6818 10.7727 15.4773 10.7727C14.6182 10.7727 13.8 10.6091 13.0227 10.2818C12.2455 9.95455 11.55 9.47727 10.9364 8.85C10.5545 9.62727 10.0295 10.3023 9.36136 10.875C8.69318 11.4477 7.93636 11.8636 7.09091 12.1227C7.13182 13.4591 7.62614 14.5909 8.57386 15.5182C9.52159 16.4455 10.6636 16.9091 12 16.9091ZM7.41818 10.2409C8.01818 9.92727 8.475 9.5625 8.78864 9.14659C9.10227 8.73068 9.40909 8.23636 9.70909 7.66364C9.19091 7.93636 8.73409 8.29432 8.33864 8.7375C7.94318 9.18068 7.63636 9.68182 7.41818 10.2409ZM9.95455 13.6364C9.72273 13.6364 9.52841 13.558 9.37159 13.4011C9.21477 13.2443 9.13636 13.05 9.13636 12.8182C9.13636 12.5864 9.21477 12.392 9.37159 12.2352C9.52841 12.0784 9.72273 12 9.95455 12C10.1864 12 10.3807 12.0784 10.5375 12.2352C10.6943 12.392 10.7727 12.5864 10.7727 12.8182C10.7727 13.05 10.6943 13.2443 10.5375 13.4011C10.3807 13.558 10.1864 13.6364 9.95455 13.6364ZM15.4773 9.13636H15.7227C15.8045 9.13636 15.8864 9.12955 15.9682 9.11591C15.5182 8.50227 14.9489 8.01136 14.2602 7.64318C13.5716 7.275 12.8182 7.09091 12 7.09091H11.7545C11.6727 7.09091 11.5977 7.09773 11.5295 7.11136C12.0614 7.725 12.6239 8.21591 13.217 8.58409C13.8102 8.95227 14.5636 9.13636 15.4773 9.13636ZM14.0455 13.6364C13.8136 13.6364 13.6193 13.558 13.4625 13.4011C13.3057 13.2443 13.2273 13.05 13.2273 12.8182C13.2273 12.5864 13.3057 12.392 13.4625 12.2352C13.6193 12.0784 13.8136 12 14.0455 12C14.2773 12 14.4716 12.0784 14.6284 12.2352C14.7852 12.392 14.8636 12.5864 14.8636 12.8182C14.8636 13.05 14.7852 13.2443 14.6284 13.4011C14.4716 13.558 14.2773 13.6364 14.0455 13.6364ZM3 7.09091V4.63636C3 4.18636 3.16023 3.80114 3.48068 3.48068C3.80114 3.16023 4.18636 3 4.63636 3H7.09091V4.63636H4.63636V7.09091H3ZM7.09091 21H4.63636C4.18636 21 3.80114 20.8398 3.48068 20.5193C3.16023 20.1989 3 19.8136 3 19.3636V16.9091H4.63636V19.3636H7.09091V21ZM16.9091 21V19.3636H19.3636V16.9091H21V19.3636C21 19.8136 20.8398 20.1989 20.5193 20.5193C20.1989 20.8398 19.8136 21 19.3636 21H16.9091ZM19.3636 7.09091V4.63636H16.9091V3H19.3636C19.8136 3 20.1989 3.16023 20.5193 3.48068C20.8398 3.80114 21 4.18636 21 4.63636V7.09091H19.3636Z",
@@ -12749,16 +13250,16 @@ function KycIcon(props) {
12749
13250
 
12750
13251
  // src/internal/components/SettingsMenu/constants.ts
12751
13252
  var NAV_BUTTONS = [
12752
- { id: "transactions" /* TRANSACTIONS */, name: "Transactions", Icon: import_lucide_react44.ArrowLeftRight },
13253
+ { id: "transactions" /* TRANSACTIONS */, name: "Transactions", Icon: import_lucide_react45.ArrowLeftRight },
12753
13254
  { id: "kyc" /* KYC */, name: "KYC", Icon: KycIcon },
12754
- { id: "nickname-settings" /* NICKNAME_SETTINGS */, name: "Nickname", Icon: import_lucide_react44.AtSign },
12755
- { id: "manage-wallet" /* MANAGE_WALLET */, name: "Profiles", Icon: import_lucide_react44.UsersRound },
12756
- { id: "security" /* SECURITY */, name: "Security", Icon: import_lucide_react44.LockKeyhole },
12757
- { id: "keysare-backup" /* KEYSARE_BACKUP */, name: "Backup", Icon: import_lucide_react44.DatabaseBackup }
13255
+ { id: "nickname-settings" /* NICKNAME_SETTINGS */, name: "Nickname", Icon: import_lucide_react45.AtSign },
13256
+ { id: "manage-wallet" /* MANAGE_WALLET */, name: "Profiles", Icon: import_lucide_react45.UsersRound },
13257
+ { id: "security" /* SECURITY */, name: "Security", Icon: import_lucide_react45.LockKeyhole },
13258
+ { id: "keysare-backup" /* KEYSARE_BACKUP */, name: "Backup", Icon: import_lucide_react45.DatabaseBackup }
12758
13259
  ];
12759
13260
 
12760
13261
  // src/internal/components/SettingsMenu/SettingsMenu.tsx
12761
- var import_jsx_runtime67 = require("react/jsx-runtime");
13262
+ var import_jsx_runtime68 = require("react/jsx-runtime");
12762
13263
  function SettingsMenu() {
12763
13264
  const address = useLumiaPassportSession((st) => st.address);
12764
13265
  const setPage = useLayoutDataStore((st) => st.setPage);
@@ -12769,7 +13270,7 @@ function SettingsMenu() {
12769
13270
  useProvidersList();
12770
13271
  const navItems = NAV_BUTTONS.map((el) => ({ ...el, onClick: () => setPage(el.id) }));
12771
13272
  const highlightedKeys = settingsNotifications.map((n) => n.target);
12772
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
13273
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
12773
13274
  "div",
12774
13275
  {
12775
13276
  style: {
@@ -12778,11 +13279,11 @@ function SettingsMenu() {
12778
13279
  },
12779
13280
  className: "list-scrollbar-y w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]",
12780
13281
  children: [
12781
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
12782
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react45.ArrowLeft, { className: "h-4 w-4" }) }),
12783
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "text-xl font-semibold", children: "Settings" })
13282
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
13283
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("main-menu" /* MAIN_MENU */), children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.ArrowLeft, { className: "h-4 w-4" }) }),
13284
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-xl font-semibold", children: "Settings" })
12784
13285
  ] }),
12785
- /* @__PURE__ */ (0, import_jsx_runtime67.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_runtime67.jsxs)(
13286
+ /* @__PURE__ */ (0, import_jsx_runtime68.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_runtime68.jsxs)(
12786
13287
  Button,
12787
13288
  {
12788
13289
  variant: "outline",
@@ -12795,8 +13296,8 @@ function SettingsMenu() {
12795
13296
  highlightedKeys.includes(id) && "animate-glow-warning"
12796
13297
  ),
12797
13298
  children: [
12798
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Icon2, { className: "w-4 h-4" }),
12799
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { children: name })
13299
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Icon2, { className: "w-4 h-4" }),
13300
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: name })
12800
13301
  ]
12801
13302
  },
12802
13303
  id
@@ -12807,35 +13308,35 @@ function SettingsMenu() {
12807
13308
  }
12808
13309
 
12809
13310
  // src/internal/components/TermsOfService.tsx
12810
- var import_lucide_react46 = require("lucide-react");
12811
- var import_jsx_runtime68 = require("react/jsx-runtime");
13311
+ var import_lucide_react47 = require("lucide-react");
13312
+ var import_jsx_runtime69 = require("react/jsx-runtime");
12812
13313
  function TermsOfService() {
12813
13314
  const address = useLumiaPassportSession((st) => st.address);
12814
13315
  const setPage = useLayoutDataStore((st) => st.setPage);
12815
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]", children: [
12816
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
12817
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
13316
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "w-full p-[var(--l-pass-pd)] flex flex-col gap-[var(--l-pass-gap)]", children: [
13317
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
13318
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
12818
13319
  Button,
12819
13320
  {
12820
13321
  variant: "ghost",
12821
13322
  size: "icon",
12822
13323
  title: "Back",
12823
13324
  onClick: () => setPage(!!address ? "settings" /* SETTINGS */ : "auth" /* AUTH */),
12824
- children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react46.ArrowLeft, { className: "h-4 w-4" })
13325
+ children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react47.ArrowLeft, { className: "h-4 w-4" })
12825
13326
  }
12826
13327
  ),
12827
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-xl font-semibold", children: "Terms of Service" })
13328
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-xl font-semibold", children: "Terms of Service" })
12828
13329
  ] }),
12829
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(Highlight, { type: "warning", className: "text-center", children: [
12830
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "block text-xs", children: "By using Lumia Passport you agree to our terms." }),
12831
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "block text-xs", children: "To be updated..." })
13330
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(Highlight, { type: "warning", className: "text-center", children: [
13331
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "block text-xs", children: "By using Lumia Passport you agree to our terms." }),
13332
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "block text-xs", children: "To be updated..." })
12832
13333
  ] })
12833
13334
  ] });
12834
13335
  }
12835
13336
 
12836
13337
  // src/internal/components/TransactionsMenu/TransactionsMenu.tsx
12837
13338
  var import_react_query35 = require("@tanstack/react-query");
12838
- var import_lucide_react48 = require("lucide-react");
13339
+ var import_lucide_react49 = require("lucide-react");
12839
13340
  var import_react53 = require("react");
12840
13341
 
12841
13342
  // src/internal/components/TransactionsMenu/api.ts
@@ -13092,7 +13593,7 @@ async function getTransactionsListQuery(address) {
13092
13593
  });
13093
13594
  });
13094
13595
  tokenTransfersData.forEach((transfer, index) => {
13095
- const rawValue = transfer.value ?? "0";
13596
+ const rawValue = transfer.total?.value ?? transfer.value ?? "0";
13096
13597
  const amount = toBigInt(rawValue);
13097
13598
  if (amount === 0n) {
13098
13599
  return;
@@ -13108,7 +13609,7 @@ async function getTransactionsListQuery(address) {
13108
13609
  }
13109
13610
  const tsInput = transfer.timestamp;
13110
13611
  const timestampMs = typeof tsInput === "number" ? tsInput > 1e12 ? tsInput : tsInput * 1e3 : tsInput ? new Date(tsInput).getTime() : now;
13111
- const decimalsRaw = transfer.token?.decimals;
13612
+ const decimalsRaw = transfer.total?.decimals ?? transfer.token?.decimals;
13112
13613
  const decimals = typeof decimalsRaw === "string" ? parseInt(decimalsRaw, 10) : typeof decimalsRaw === "number" ? decimalsRaw : 18;
13113
13614
  const assetSymbol = transfer.token?.symbol || "Token";
13114
13615
  const tokenItem = {
@@ -13160,7 +13661,7 @@ async function getTransactionsListQuery(address) {
13160
13661
  }
13161
13662
 
13162
13663
  // src/internal/components/TransactionsMenu/TransactionsGroup.tsx
13163
- var import_lucide_react47 = require("lucide-react");
13664
+ var import_lucide_react48 = require("lucide-react");
13164
13665
 
13165
13666
  // src/internal/components/TransactionsMenu/utils.ts
13166
13667
  init_base();
@@ -13207,22 +13708,22 @@ var formatTimestamp = (timestampMs) => {
13207
13708
  };
13208
13709
 
13209
13710
  // src/internal/components/TransactionsMenu/TransactionsGroup.tsx
13210
- var import_jsx_runtime69 = require("react/jsx-runtime");
13711
+ var import_jsx_runtime70 = require("react/jsx-runtime");
13211
13712
  function InternalTransaction({ internal, assetSymbol, assetDecimals }) {
13212
13713
  const internalSymbol = internal.assetSymbol || assetSymbol;
13213
13714
  const internalDecimals = internal.decimals ?? assetDecimals;
13214
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "border-t border-dashed border-[var(--l-pass-bd)]", children: [
13215
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex gap-2 items-center justify-between", children: [
13216
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: internal.method || "CALL" }),
13217
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { children: [
13715
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "border-t border-dashed border-[var(--l-pass-bd)]", children: [
13716
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex gap-2 items-center justify-between", children: [
13717
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: "text-[var(--l-pass-fg-muted)]", children: internal.method || "CALL" }),
13718
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("span", { children: [
13218
13719
  formatValue2(internal.value, internalDecimals),
13219
13720
  " ",
13220
13721
  internalSymbol
13221
13722
  ] })
13222
13723
  ] }),
13223
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex gap-2 items-center justify-between", children: [
13224
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { children: internal.direction === "in" ? "From" : "To" }),
13225
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "font-mono", children: internal.counterpartyName || formatAddress2(internal.counterparty) })
13724
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex gap-2 items-center justify-between", children: [
13725
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { children: internal.direction === "in" ? "From" : "To" }),
13726
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: "font-mono", children: internal.counterpartyName || formatAddress2(internal.counterparty) })
13226
13727
  ] })
13227
13728
  ] });
13228
13729
  }
@@ -13233,7 +13734,7 @@ function TransactionsGroup(props) {
13233
13734
  const assetSymbol = parent.assetSymbol || "LUMIA";
13234
13735
  const assetDecimals = parent.decimals ?? 18;
13235
13736
  const internalsToRender = group.internals.filter((internal) => parseValue(internal.value) !== 0n);
13236
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
13737
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(
13237
13738
  "div",
13238
13739
  {
13239
13740
  onClick: () => openInExplorer2(parent.parentHash),
@@ -13243,28 +13744,28 @@ function TransactionsGroup(props) {
13243
13744
  "bg-transparent hover:bg-[var(--l-pass-secondary-h)] active:bg-[var(--l-pass-secondary-a)]"
13244
13745
  ),
13245
13746
  children: [
13246
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center justify-between gap-[var(--l-pass-gap)]", children: [
13247
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-1 flex-0 w-fit", children: [
13248
- parent.direction === "in" ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react47.ChevronLeft, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react47.ChevronRight, { className: "w-4 h-4" }),
13249
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-[10px]", children: isIncoming ? "RECEIVED" : "SENT" }),
13250
- parent.status === "ok" ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(PositiveIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(NegativeIcon, {})
13747
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center justify-between gap-[var(--l-pass-gap)]", children: [
13748
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center gap-1 flex-0 w-fit", children: [
13749
+ parent.direction === "in" ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.ChevronLeft, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.ChevronRight, { className: "w-4 h-4" }),
13750
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: "text-[10px]", children: isIncoming ? "RECEIVED" : "SENT" }),
13751
+ parent.status === "ok" ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(PositiveIcon, {}) : /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(NegativeIcon, {})
13251
13752
  ] }),
13252
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "block flex-0 font-mono text-[10px] text-[var(--l-pass-fg-muted)]", children: formatTimestamp(group.timestampMs) })
13753
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: "block flex-0 font-mono text-[10px] text-[var(--l-pass-fg-muted)]", children: formatTimestamp(group.timestampMs) })
13253
13754
  ] }),
13254
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center justify-between gap-[var(--l-pass-gap)]", children: [
13255
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex flex-col gap-0", children: [
13256
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { className: "font-bold", children: [
13755
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center justify-between gap-[var(--l-pass-gap)]", children: [
13756
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex flex-col gap-0", children: [
13757
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("span", { className: "font-bold", children: [
13257
13758
  formatValue2(parent.value, assetDecimals),
13258
13759
  " ",
13259
13760
  assetSymbol
13260
13761
  ] }),
13261
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { className: "text-[10px] font-mono text-[var(--l-pass-fg-muted)]", children: [
13762
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("span", { className: "text-[10px] font-mono text-[var(--l-pass-fg-muted)]", children: [
13262
13763
  isIncoming ? "From: " : "To: ",
13263
13764
  parent.counterpartyName || formatAddress2(parent.counterparty)
13264
13765
  ] })
13265
13766
  ] }),
13266
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-0", children: [
13267
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
13767
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center gap-0", children: [
13768
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
13268
13769
  Button,
13269
13770
  {
13270
13771
  variant: "ghost",
@@ -13273,10 +13774,10 @@ function TransactionsGroup(props) {
13273
13774
  onClick: (e) => {
13274
13775
  e.stopPropagation();
13275
13776
  },
13276
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react47.Copy, { className: "w-4 h-4" })
13777
+ children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.Copy, { className: "w-4 h-4" })
13277
13778
  }
13278
13779
  ),
13279
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
13780
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
13280
13781
  Button,
13281
13782
  {
13282
13783
  variant: "ghost",
@@ -13285,24 +13786,24 @@ function TransactionsGroup(props) {
13285
13786
  onClick: (e) => {
13286
13787
  e.stopPropagation();
13287
13788
  },
13288
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(LumiaIcon, { className: "w-4 h-4" })
13789
+ children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(LumiaIcon, { className: "w-4 h-4" })
13289
13790
  }
13290
13791
  )
13291
13792
  ] })
13292
13793
  ] }),
13293
- internalsToRender.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_jsx_runtime69.Fragment, { children: [
13294
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "w-full flex items-center", children: [
13295
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { style: { borderTop: "1px solid var(--l-pass-bd)" }, className: "flex-1" }),
13296
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex-none font-bold px-2 text-xs leading-4 text-[var(--l-pass-fg-muted)]", children: "Internals" }),
13297
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { style: { borderTop: "1px solid var(--l-pass-bd)" }, className: "flex-1" })
13794
+ internalsToRender.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(import_jsx_runtime70.Fragment, { children: [
13795
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "w-full flex items-center", children: [
13796
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { style: { borderTop: "1px solid var(--l-pass-bd)" }, className: "flex-1" }),
13797
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "flex-none font-bold px-2 text-xs leading-4 text-[var(--l-pass-fg-muted)]", children: "Internals" }),
13798
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { style: { borderTop: "1px solid var(--l-pass-bd)" }, className: "flex-1" })
13298
13799
  ] }),
13299
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
13800
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(
13300
13801
  "div",
13301
13802
  {
13302
13803
  className: "w-full rounded-[var(--l-pass-el-bdrs)] border border-dashed border-[var(--l-pass-bd)]",
13303
13804
  onClick: (event) => event.stopPropagation(),
13304
13805
  children: [
13305
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
13806
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(
13306
13807
  Button,
13307
13808
  {
13308
13809
  variant: "ghost",
@@ -13310,16 +13811,16 @@ function TransactionsGroup(props) {
13310
13811
  className: "w-full justify-between",
13311
13812
  onClick: () => onToggleExpanded(group.id),
13312
13813
  children: [
13313
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { children: [
13814
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("span", { children: [
13314
13815
  "View internal calls (",
13315
13816
  internalsToRender.length,
13316
13817
  ")"
13317
13818
  ] }),
13318
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { children: expanded ? "Hide" : "Show" })
13819
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { children: expanded ? "Hide" : "Show" })
13319
13820
  ]
13320
13821
  }
13321
13822
  ),
13322
- expanded && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "px-2 pb-2 flex flex-col gap-2 text-xs", children: internalsToRender.map((internal) => /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
13823
+ expanded && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "px-2 pb-2 flex flex-col gap-2 text-xs", children: internalsToRender.map((internal) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
13323
13824
  InternalTransaction,
13324
13825
  {
13325
13826
  internal,
@@ -13338,7 +13839,7 @@ function TransactionsGroup(props) {
13338
13839
  }
13339
13840
 
13340
13841
  // src/internal/components/TransactionsMenu/TransactionsMenu.tsx
13341
- var import_jsx_runtime70 = require("react/jsx-runtime");
13842
+ var import_jsx_runtime71 = require("react/jsx-runtime");
13342
13843
  function TransactionsMenu() {
13343
13844
  const qc = (0, import_react_query35.useQueryClient)();
13344
13845
  const address = useLumiaPassportSession((st) => st.address);
@@ -13362,7 +13863,7 @@ function TransactionsMenu() {
13362
13863
  [qc, address]
13363
13864
  );
13364
13865
  const txHistoryResolvedError = txHistoryError ? txHistoryError instanceof Error ? txHistoryError.message : "Failed to load transactions" : null;
13365
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
13866
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
13366
13867
  "div",
13367
13868
  {
13368
13869
  style: {
@@ -13370,11 +13871,11 @@ function TransactionsMenu() {
13370
13871
  "--l-pass-list-scrollbar-pd-r": "var(--l-pass-pd)"
13371
13872
  },
13372
13873
  className: "list-scrollbar-y w-full p-[var(--l-pass-pd)]",
13373
- children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: [
13374
- /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
13375
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.ArrowLeft, { className: "h-4 w-4" }) }),
13376
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: "text-xl font-semibold", children: "Transaction History" }),
13377
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
13874
+ children: /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(Expandable, { isExpanded: true, contentClassName: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: [
13875
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
13876
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(Button, { variant: "ghost", size: "icon", title: "Back", onClick: () => setPage("settings" /* SETTINGS */), children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react49.ArrowLeft, { className: "h-4 w-4" }) }),
13877
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "text-xl font-semibold", children: "Transaction History" }),
13878
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
13378
13879
  Button,
13379
13880
  {
13380
13881
  variant: "ghost",
@@ -13382,17 +13883,17 @@ function TransactionsMenu() {
13382
13883
  onClick: refreshTxHistory,
13383
13884
  disabled: isTxHistoryFetching,
13384
13885
  title: "Refresh transactions",
13385
- children: isTxHistoryFetching ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.RefreshCw, { className: "h-4 w-4" })
13886
+ children: isTxHistoryFetching ? /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react49.Loader, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react49.RefreshCw, { className: "h-4 w-4" })
13386
13887
  }
13387
13888
  )
13388
13889
  ] }),
13389
- isTxHistoryLoading && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.Loader, { className: "h-5 w-5 animate-spin" }) }),
13390
- !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
13391
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react48.XCircle, { className: "w-4 h-4 flex-none" }),
13392
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: "block w-full flex-1 text-center text-xs", children: txHistoryResolvedError })
13890
+ isTxHistoryLoading && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react49.Loader, { className: "h-5 w-5 animate-spin" }) }),
13891
+ !isTxHistoryLoading && txHistoryResolvedError && /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(Highlight, { type: "error", className: "flex gap-[var(--l-pass-gap)]", children: [
13892
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react49.XCircle, { className: "w-4 h-4 flex-none" }),
13893
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "block w-full flex-1 text-center text-xs", children: txHistoryResolvedError })
13393
13894
  ] }),
13394
- !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Highlight, { type: "warning", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { children: "No transactions found." }) }),
13395
- !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: txHistoryGroups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
13895
+ !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(Highlight, { type: "warning", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { children: "No transactions found." }) }),
13896
+ !isTxHistoryLoading && !txHistoryResolvedError && txHistoryGroups.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "w-full flex flex-col gap-[var(--l-pass-gap)]", children: txHistoryGroups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
13396
13897
  TransactionsGroup,
13397
13898
  {
13398
13899
  group,
@@ -13507,7 +14008,7 @@ var PAGE_MAP = {
13507
14008
  };
13508
14009
 
13509
14010
  // src/internal/hooks/usePageMapper.tsx
13510
- var import_jsx_runtime71 = require("react/jsx-runtime");
14011
+ var import_jsx_runtime72 = require("react/jsx-runtime");
13511
14012
  var CLEAR_DIALOG_TIMEOUT = MAIN_DIALOG_ANIMATION_SPEED + 5;
13512
14013
  function usePageMapper() {
13513
14014
  const page = useLayoutDataStore((st) => st.page);
@@ -13535,7 +14036,7 @@ function usePageMapper() {
13535
14036
  const PageContentComponent = pageItem.component;
13536
14037
  setDialogTitle(pageItem.title);
13537
14038
  setDialogDescription(pageItem.description);
13538
- setDialogContent(/* @__PURE__ */ (0, import_jsx_runtime71.jsx)(PageContentComponent, {}));
14039
+ setDialogContent(/* @__PURE__ */ (0, import_jsx_runtime72.jsx)(PageContentComponent, {}));
13539
14040
  setIsDialogOpen(true);
13540
14041
  },
13541
14042
  [setDialogContent, setDialogDescription, setDialogTitle, setIsDialogOpen]
@@ -13603,7 +14104,7 @@ function useWalletStatus() {
13603
14104
  }
13604
14105
 
13605
14106
  // src/internal/components/Dialog/LumiaPassportDialog.tsx
13606
- var import_jsx_runtime72 = require("react/jsx-runtime");
14107
+ var import_jsx_runtime73 = require("react/jsx-runtime");
13607
14108
  function LumiaPassportDialog() {
13608
14109
  const config = useLumiaPassportConfig().config;
13609
14110
  const className = config.current?.ui?.dialogClassName;
@@ -13622,7 +14123,7 @@ function LumiaPassportDialog() {
13622
14123
  useListenIframeAuthEvents();
13623
14124
  useWalletStatus();
13624
14125
  const isHeaderHidden = !session || page === "keysare-backup" /* KEYSARE_BACKUP */ && !hasServerVault;
13625
- return /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
14126
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
13626
14127
  Dialog,
13627
14128
  {
13628
14129
  open: isDialogOpen,
@@ -13630,11 +14131,11 @@ function LumiaPassportDialog() {
13630
14131
  if (isDialogForced) return;
13631
14132
  if (!open) setPage(null);
13632
14133
  },
13633
- children: /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(DialogContent, { colorMode, className, children: [
13634
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(VisuallyHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(DialogTitle, { children: dialogTitle }) }),
13635
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(DialogDescription, { className: "sr-only", children: dialogDescription }),
13636
- !isHeaderHidden && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(Header, {}),
13637
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_framer_motion3.AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
14134
+ children: /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(DialogContent, { colorMode, className, children: [
14135
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(VisuallyHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(DialogTitle, { children: dialogTitle }) }),
14136
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(DialogDescription, { className: "sr-only", children: dialogDescription }),
14137
+ !isHeaderHidden && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Header, {}),
14138
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_framer_motion3.AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
13638
14139
  import_framer_motion3.motion.div,
13639
14140
  {
13640
14141
  initial: { opacity: 0, height: mainPageHeight },
@@ -13646,7 +14147,7 @@ function LumiaPassportDialog() {
13646
14147
  },
13647
14148
  page || "empty"
13648
14149
  ) }),
13649
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(Footer, {})
14150
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Footer, {})
13650
14151
  ] })
13651
14152
  }
13652
14153
  );
@@ -13698,16 +14199,16 @@ var TssManagerWithRef = import_react58.default.forwardRef((props, ref) => {
13698
14199
  var import_rainbowkit = require("@rainbow-me/rainbowkit");
13699
14200
  var import_react_query36 = require("@tanstack/react-query");
13700
14201
  var import_react59 = __toESM(require("react"), 1);
13701
- var import_wagmi5 = require("wagmi");
14202
+ var import_wagmi4 = require("wagmi");
13702
14203
  init_wallet();
13703
14204
  function WalletConnectHandler() {
13704
14205
  const qc = (0, import_react_query36.useQueryClient)();
13705
14206
  const callbacks = useLumiaPassportConfig().callbacks;
13706
14207
  const passportWalletAddress = useLumiaPassportSession((st) => st.address);
13707
- const { address: walletAddress, isConnected, chain, connector } = (0, import_wagmi5.useAccount)();
14208
+ const { address: walletAddress, isConnected, chain, connector } = (0, import_wagmi4.useAccount)();
13708
14209
  const { openConnectModal, connectModalOpen } = (0, import_rainbowkit.useConnectModal)();
13709
- const { disconnect } = (0, import_wagmi5.useDisconnect)();
13710
- const { signMessageAsync } = (0, import_wagmi5.useSignMessage)();
14210
+ const { disconnect } = (0, import_wagmi4.useDisconnect)();
14211
+ const { signMessageAsync } = (0, import_wagmi4.useSignMessage)();
13711
14212
  const isWalletLinking = useLayoutDataStore((st) => st.isWalletLinking);
13712
14213
  const setPage = useLayoutDataStore((st) => st.setPage);
13713
14214
  const setIsWalletLinking = useLayoutDataStore((st) => st.setIsWalletLinking);
@@ -13849,7 +14350,7 @@ function WalletConnectHandler() {
13849
14350
  }
13850
14351
 
13851
14352
  // src/context/LumiaPassportSessionContext.tsx
13852
- var import_jsx_runtime73 = require("react/jsx-runtime");
14353
+ var import_jsx_runtime74 = require("react/jsx-runtime");
13853
14354
  var useLumiaPassportSession = (0, import_zustand6.create)((set) => ({
13854
14355
  isLoading: false,
13855
14356
  usePaymaster: true,
@@ -13875,17 +14376,17 @@ var useLumiaPassportSession = (0, import_zustand6.create)((set) => ({
13875
14376
  }));
13876
14377
  function LumiaPassportSessionProvider({ children }) {
13877
14378
  const config = useLumiaPassportConfig().config;
13878
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(import_react60.Fragment, { children: [
14379
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(import_react60.Fragment, { children: [
13879
14380
  children,
13880
- config.current?.wallet?.enabled && /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(WalletConnectHandler, {}),
13881
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(BalanceFeedProvider, {}),
13882
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
14381
+ config.current?.wallet?.enabled && /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(WalletConnectHandler, {}),
14382
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(BalanceFeedProvider, {}),
14383
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
13883
14384
  TssManagerWithRef,
13884
14385
  {
13885
14386
  mpcPin: void 0
13886
14387
  }
13887
14388
  ),
13888
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(LumiaPassportDialog, {})
14389
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(LumiaPassportDialog, {})
13889
14390
  ] });
13890
14391
  }
13891
14392
 
@@ -13901,15 +14402,15 @@ function notifyNoProjetctId(projectId) {
13901
14402
  }
13902
14403
 
13903
14404
  // src/context/WagmiContext.tsx
13904
- var import_wagmi7 = require("wagmi");
14405
+ var import_wagmi6 = require("wagmi");
13905
14406
 
13906
14407
  // src/config/wagmi.ts
13907
- var import_wagmi6 = require("wagmi");
14408
+ var import_wagmi5 = require("wagmi");
13908
14409
  init_base();
13909
- var wagmiConfig = (0, import_wagmi6.createConfig)({
14410
+ var wagmiConfig = (0, import_wagmi5.createConfig)({
13910
14411
  chains: [lumiaBeam],
13911
14412
  transports: {
13912
- [lumiaBeam.id]: (0, import_wagmi6.http)(lumiaBeam.rpcUrls.default.http[0], {
14413
+ [lumiaBeam.id]: (0, import_wagmi5.http)(lumiaBeam.rpcUrls.default.http[0], {
13913
14414
  timeout: 1e4,
13914
14415
  retryCount: 0,
13915
14416
  batch: false,
@@ -13920,13 +14421,13 @@ var wagmiConfig = (0, import_wagmi6.createConfig)({
13920
14421
  });
13921
14422
 
13922
14423
  // src/context/WagmiContext.tsx
13923
- var import_jsx_runtime74 = require("react/jsx-runtime");
14424
+ var import_jsx_runtime75 = require("react/jsx-runtime");
13924
14425
  var LumiaWagmiProvider = ({ children }) => {
13925
- return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_wagmi7.WagmiProvider, { config: wagmiConfig, children });
14426
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_wagmi6.WagmiProvider, { config: wagmiConfig, children });
13926
14427
  };
13927
14428
 
13928
14429
  // src/context/LumiaPassportContext.tsx
13929
- var import_jsx_runtime75 = require("react/jsx-runtime");
14430
+ var import_jsx_runtime76 = require("react/jsx-runtime");
13930
14431
  var LumiaPassportContext = (0, import_react61.createContext)(void 0);
13931
14432
  function LumiaPassportProvider(props) {
13932
14433
  const { children, projectId, initialConfig = {}, callbacks } = props;
@@ -14015,7 +14516,7 @@ function LumiaPassportProvider(props) {
14015
14516
  }
14016
14517
  }, [projectId, initialConfig, callbacks, updateConfig, setIsIframeReady, setWalletReadyStatus]);
14017
14518
  const contextValue = (0, import_react61.useMemo)(() => ({ config, updateConfig, callbacks }), [config, updateConfig, callbacks]);
14018
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(LumiaWagmiProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(LumiaPassportContext.Provider, { value: contextValue, children }) });
14519
+ return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(LumiaWagmiProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(LumiaPassportContext.Provider, { value: contextValue, children }) });
14019
14520
  }
14020
14521
  var useLumiaPassportConfig = () => {
14021
14522
  const ctx = (0, import_react61.useContext)(LumiaPassportContext);
@@ -14025,11 +14526,11 @@ var useLumiaPassportConfig = () => {
14025
14526
 
14026
14527
  // src/components/ConnectWalletButton.tsx
14027
14528
  var import_react_query37 = require("@tanstack/react-query");
14028
- var import_lucide_react49 = require("lucide-react");
14529
+ var import_lucide_react50 = require("lucide-react");
14029
14530
  var import_react62 = require("react");
14030
14531
  init_auth();
14031
14532
  init_profile();
14032
- var import_jsx_runtime76 = (
14533
+ var import_jsx_runtime77 = (
14033
14534
  /** external Buttons can be provided */
14034
14535
  require("react/jsx-runtime")
14035
14536
  );
@@ -14068,18 +14569,18 @@ function ConnectWalletButton(props) {
14068
14569
  return { server, local, backup: hasServerVault };
14069
14570
  }, [session, address, hasServerVault]);
14070
14571
  const isConnecting = connectButtonLabel !== label || isLoading;
14071
- return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { "data-lumia-passport-mode": colorMode, className: cn("lumia-scope w-fit h-fit", className), children: !address ? /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_jsx_runtime76.Fragment, { children: ConnectButton ? /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
14572
+ return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { "data-lumia-passport-mode": colorMode, className: cn("lumia-scope w-fit h-fit", className), children: !address ? /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_jsx_runtime77.Fragment, { children: ConnectButton ? /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
14072
14573
  ConnectButton,
14073
14574
  {
14074
14575
  type: "button",
14075
14576
  disabled: isConnecting,
14076
14577
  onClick: () => setPage("auth" /* AUTH */),
14077
14578
  children: [
14078
- isConnecting && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_lucide_react49.Loader, { className: "w-4 h-4 animate-spin" }),
14579
+ isConnecting && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.Loader, { className: "w-4 h-4 animate-spin" }),
14079
14580
  connectButtonLabel
14080
14581
  ]
14081
14582
  }
14082
- ) : /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
14583
+ ) : /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
14083
14584
  Button,
14084
14585
  {
14085
14586
  type: "button",
@@ -14096,11 +14597,11 @@ function ConnectWalletButton(props) {
14096
14597
  "disabled:hover:bg-[var(--l-pass-bg)] disabled:active:bg-[var(--l-pass-bg)]"
14097
14598
  ),
14098
14599
  children: [
14099
- isConnecting && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_lucide_react49.Loader, { className: "w-4 h-4 animate-spin" }),
14600
+ isConnecting && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.Loader, { className: "w-4 h-4 animate-spin" }),
14100
14601
  connectButtonLabel.toUpperCase()
14101
14602
  ]
14102
14603
  }
14103
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
14604
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
14104
14605
  "button",
14105
14606
  {
14106
14607
  type: "button",
@@ -14113,23 +14614,23 @@ function ConnectWalletButton(props) {
14113
14614
  "rounded-[var(--l-pass-bdrs)] p-4 max-w-sm min-w-[256px]"
14114
14615
  ),
14115
14616
  children: [
14116
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { className: "w-12 h-12 rounded-full bg-[var(--l-pass-fg)] flex items-center justify-center flex-shrink-0", children: avatar ? /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("img", { src: avatar, alt: "User avatar", className: "w-full h-full object-cover" }) : /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(LumiaIcon, { width: 48, height: 48 }) }),
14117
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "text-left flex-1 min-w-0 text-[var(--l-pass-fg)]", children: [
14118
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
14119
- isProfileLoading ? /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_lucide_react49.Loader, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("span", { className: "w-fit text-[14px] leading-4 truncate max-w-[144px] text-[var(--l-pass-fg)]", children: displayName }),
14120
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(KYCStatus, {})
14617
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { className: "w-12 h-12 rounded-full bg-[var(--l-pass-fg)] flex items-center justify-center flex-shrink-0", children: avatar ? /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("img", { src: avatar, alt: "User avatar", className: "w-full h-full object-cover" }) : /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(LumiaIcon, { width: 48, height: 48 }) }),
14618
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "text-left flex-1 min-w-0 text-[var(--l-pass-fg)]", children: [
14619
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "flex items-center gap-[var(--l-pass-gap)]", children: [
14620
+ isProfileLoading ? /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.Loader, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "w-fit text-[14px] leading-4 truncate max-w-[144px] text-[var(--l-pass-fg)]", children: displayName }),
14621
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(KYCStatus, {})
14121
14622
  ] }),
14122
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(BalanceView, {})
14623
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(BalanceView, {})
14123
14624
  ] }),
14124
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "flex items-center space-x-1", children: [
14125
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "group relative", children: [
14126
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
14127
- import_lucide_react49.Cloud,
14625
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "flex items-center space-x-1", children: [
14626
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "group relative", children: [
14627
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
14628
+ import_lucide_react50.Cloud,
14128
14629
  {
14129
14630
  className: `w-3 h-3 ${indicators.server ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-warning)]"}`
14130
14631
  }
14131
14632
  ),
14132
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
14633
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
14133
14634
  "div",
14134
14635
  {
14135
14636
  className: cn(
@@ -14144,14 +14645,14 @@ function ConnectWalletButton(props) {
14144
14645
  }
14145
14646
  )
14146
14647
  ] }),
14147
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "group relative", children: [
14148
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
14149
- import_lucide_react49.Laptop,
14648
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "group relative", children: [
14649
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
14650
+ import_lucide_react50.Laptop,
14150
14651
  {
14151
14652
  className: `w-3 h-3 ${indicators.local ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-warning)]"}`
14152
14653
  }
14153
14654
  ),
14154
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
14655
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
14155
14656
  "div",
14156
14657
  {
14157
14658
  className: cn(
@@ -14166,14 +14667,14 @@ function ConnectWalletButton(props) {
14166
14667
  }
14167
14668
  )
14168
14669
  ] }),
14169
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)("div", { className: "group relative", children: [
14170
- /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
14171
- import_lucide_react49.Shield,
14670
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "group relative", children: [
14671
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
14672
+ import_lucide_react50.Shield,
14172
14673
  {
14173
14674
  className: `w-3 h-3 ${indicators.backup ? "text-[var(--l-pass-bg-success)]" : "text-[var(--l-pass-bg-warning)]"}`
14174
14675
  }
14175
14676
  ),
14176
- /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
14677
+ /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
14177
14678
  "div",
14178
14679
  {
14179
14680
  className: cn(
@@ -14189,7 +14690,7 @@ function ConnectWalletButton(props) {
14189
14690
  )
14190
14691
  ] })
14191
14692
  ] }),
14192
- !!settingsNotifications.length && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
14693
+ !!settingsNotifications.length && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
14193
14694
  "div",
14194
14695
  {
14195
14696
  className: cn(
@@ -14282,24 +14783,24 @@ function useLumiaPassportColorMode() {
14282
14783
  }
14283
14784
 
14284
14785
  // src/components/ThemeToggle.tsx
14285
- var import_lucide_react50 = require("lucide-react");
14286
- var import_jsx_runtime77 = require("react/jsx-runtime");
14786
+ var import_lucide_react51 = require("lucide-react");
14787
+ var import_jsx_runtime78 = require("react/jsx-runtime");
14287
14788
  function ThemeToggle(props) {
14288
14789
  const { colorMode, setColorMode } = useLumiaPassportColorMode();
14289
- return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
14790
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
14290
14791
  "div",
14291
14792
  {
14292
14793
  className: "lumia-scope",
14293
14794
  "data-lumia-passport-mode": colorMode,
14294
14795
  style: { width: "fit-content", height: "fit-content" },
14295
- children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
14796
+ children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
14296
14797
  Button,
14297
14798
  {
14298
14799
  ...props,
14299
14800
  variant: "ghost",
14300
14801
  onClick: () => setColorMode(colorMode === "light" ? "dark" : "light"),
14301
14802
  title: `Current theme: ${colorMode}. Click to switch.`,
14302
- children: colorMode === "dark" ? /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.Sun, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react50.Moon, { className: "w-4 h-4" })
14803
+ children: colorMode === "dark" ? /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_lucide_react51.Sun, { className: "w-4 h-4" }) : /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_lucide_react51.Moon, { className: "w-4 h-4" })
14303
14804
  }
14304
14805
  )
14305
14806
  }
@@ -14309,7 +14810,7 @@ function ThemeToggle(props) {
14309
14810
  // src/context/RainbowKitContext.tsx
14310
14811
  var import_rainbowkit3 = require("@rainbow-me/rainbowkit");
14311
14812
  var import_react65 = require("react");
14312
- var import_wagmi9 = require("wagmi");
14813
+ var import_wagmi8 = require("wagmi");
14313
14814
 
14314
14815
  // src/config/rainbowkit.ts
14315
14816
  var import_rainbowkit2 = require("@rainbow-me/rainbowkit");
@@ -14536,7 +15037,7 @@ var rainbowTheme = {
14536
15037
 
14537
15038
  // src/context/RainbowKitContext.tsx
14538
15039
  var import_styles = require("@rainbow-me/rainbowkit/styles.css");
14539
- var import_jsx_runtime78 = require("react/jsx-runtime");
15040
+ var import_jsx_runtime79 = require("react/jsx-runtime");
14540
15041
  function LumiaRainbowKitProvider({ children }) {
14541
15042
  const config = useLumiaPassportConfig().config;
14542
15043
  const colorMode = useLayoutStore((st) => st.colorMode);
@@ -14555,13 +15056,13 @@ function LumiaRainbowKitProvider({ children }) {
14555
15056
  },
14556
15057
  [colorMode]
14557
15058
  );
14558
- if (!config.current?.wallet?.enabled) return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_jsx_runtime78.Fragment, { children });
14559
- return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_wagmi9.WagmiProvider, { config: rainbowConfig2, children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_rainbowkit3.RainbowKitProvider, { theme: customTheme, modalSize: "compact", showRecentTransactions: true, children }) });
15059
+ if (!config.current?.wallet?.enabled) return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_jsx_runtime79.Fragment, { children });
15060
+ return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_wagmi8.WagmiProvider, { config: rainbowConfig2, children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_rainbowkit3.RainbowKitProvider, { theme: customTheme, modalSize: "compact", showRecentTransactions: true, children }) });
14560
15061
  }
14561
15062
 
14562
15063
  // src/internal/components/UserOpStatus.tsx
14563
- var import_lucide_react52 = require("lucide-react");
14564
- var React11 = __toESM(require("react"), 1);
15064
+ var import_lucide_react53 = require("lucide-react");
15065
+ var React10 = __toESM(require("react"), 1);
14565
15066
  init_base();
14566
15067
 
14567
15068
  // src/internal/utils/cn.ts
@@ -14572,9 +15073,9 @@ function cn2(...inputs) {
14572
15073
  }
14573
15074
 
14574
15075
  // src/internal/components/Address.tsx
14575
- var import_lucide_react51 = require("lucide-react");
14576
- var React10 = __toESM(require("react"), 1);
14577
- var import_jsx_runtime79 = require("react/jsx-runtime");
15076
+ var import_lucide_react52 = require("lucide-react");
15077
+ var React9 = __toESM(require("react"), 1);
15078
+ var import_jsx_runtime80 = require("react/jsx-runtime");
14578
15079
  function toExplorerAddressUrl(address, chain) {
14579
15080
  const base2 = chain?.blockExplorers?.default?.url;
14580
15081
  if (!base2) return null;
@@ -14595,12 +15096,12 @@ var Address = ({
14595
15096
  }) => {
14596
15097
  const addr = address || "";
14597
15098
  const explorer = toExplorerAddressUrl(addr, chain || void 0);
14598
- const [copied, setCopied] = React10.useState(false);
14599
- if (!addr) return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: cn2("text-muted-foreground", className), children: "\u2014" });
14600
- return /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("div", { className: cn2("flex items-center gap-2", className), style: { listStyle: "none" }, children: [
14601
- label && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "text-sm font-medium", children: label }),
14602
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("code", { className: "text-xs bg-background px-2 py-1 rounded select-all", children: truncate ? short(addr) : addr }),
14603
- showCopy && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
15099
+ const [copied, setCopied] = React9.useState(false);
15100
+ if (!addr) return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { className: cn2("text-muted-foreground", className), children: "\u2014" });
15101
+ return /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("div", { className: cn2("flex items-center gap-2", className), style: { listStyle: "none" }, children: [
15102
+ label && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { className: "text-sm font-medium", children: label }),
15103
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("code", { className: "text-xs bg-background px-2 py-1 rounded select-all", children: truncate ? short(addr) : addr }),
15104
+ showCopy && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
14604
15105
  Button,
14605
15106
  {
14606
15107
  variant: "ghost",
@@ -14614,10 +15115,10 @@ var Address = ({
14614
15115
  } catch {
14615
15116
  }
14616
15117
  },
14617
- children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.Copy, { className: "h-4 w-4" })
15118
+ children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react52.Copy, { className: "h-4 w-4" })
14618
15119
  }
14619
15120
  ),
14620
- showExplorer && explorer && /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
15121
+ showExplorer && explorer && /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
14621
15122
  "a",
14622
15123
  {
14623
15124
  href: explorer,
@@ -14625,7 +15126,7 @@ var Address = ({
14625
15126
  rel: "noreferrer noopener",
14626
15127
  className: "inline-flex items-center justify-center h-10 w-10 rounded-md hover:bg-accent text-foreground",
14627
15128
  title: "Open in explorer",
14628
- children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react51.ExternalLink, { className: "h-4 w-4" })
15129
+ children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react52.ExternalLink, { className: "h-4 w-4" })
14629
15130
  }
14630
15131
  )
14631
15132
  ] });
@@ -14633,7 +15134,7 @@ var Address = ({
14633
15134
 
14634
15135
  // src/internal/components/ui/badge.tsx
14635
15136
  var import_class_variance_authority2 = require("class-variance-authority");
14636
- var import_jsx_runtime80 = require("react/jsx-runtime");
15137
+ var import_jsx_runtime81 = require("react/jsx-runtime");
14637
15138
  var badgeVariants = (0, import_class_variance_authority2.cva)(
14638
15139
  "inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
14639
15140
  {
@@ -14653,11 +15154,11 @@ var badgeVariants = (0, import_class_variance_authority2.cva)(
14653
15154
  }
14654
15155
  );
14655
15156
  function Badge({ className, variant, ...props }) {
14656
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("div", { className: cn2(badgeVariants({ variant }), className), ...props });
15157
+ return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { className: cn2(badgeVariants({ variant }), className), ...props });
14657
15158
  }
14658
15159
 
14659
15160
  // src/internal/components/UserOpStatus.tsx
14660
- var import_jsx_runtime81 = require("react/jsx-runtime");
15161
+ var import_jsx_runtime82 = require("react/jsx-runtime");
14661
15162
  var UserOpStatus = ({
14662
15163
  userOpHash,
14663
15164
  chain,
@@ -14668,20 +15169,20 @@ var UserOpStatus = ({
14668
15169
  externalState
14669
15170
  }) => {
14670
15171
  const useExternalState = !!externalState;
14671
- const [internalReceipt, setInternalReceipt] = React11.useState(null);
14672
- const [internalMempool, setInternalMempool] = React11.useState(null);
14673
- const [internalError, setInternalError] = React11.useState(null);
14674
- const [attempt, setAttempt] = React11.useState(0);
14675
- const [internalRefreshing, setInternalRefreshing] = React11.useState(false);
14676
- const [timedOut, setTimedOut] = React11.useState(false);
14677
- const [rejected, setRejected] = React11.useState(false);
14678
- const intervalRef = React11.useRef(null);
14679
- const startTimeRef = React11.useRef(Date.now());
15172
+ const [internalReceipt, setInternalReceipt] = React10.useState(null);
15173
+ const [internalMempool, setInternalMempool] = React10.useState(null);
15174
+ const [internalError, setInternalError] = React10.useState(null);
15175
+ const [attempt, setAttempt] = React10.useState(0);
15176
+ const [internalRefreshing, setInternalRefreshing] = React10.useState(false);
15177
+ const [timedOut, setTimedOut] = React10.useState(false);
15178
+ const [rejected, setRejected] = React10.useState(false);
15179
+ const intervalRef = React10.useRef(null);
15180
+ const startTimeRef = React10.useRef(Date.now());
14680
15181
  const receipt = useExternalState ? externalState.receipt ?? null : internalReceipt;
14681
15182
  const mempool = useExternalState ? externalState.mempool ?? null : internalMempool;
14682
15183
  const error = useExternalState ? externalState.error ?? null : internalError;
14683
15184
  const refreshing = useExternalState ? externalState.isPolling ?? false : internalRefreshing;
14684
- const rpc = React11.useCallback(async (method, params) => {
15185
+ const rpc = React10.useCallback(async (method, params) => {
14685
15186
  const body = { jsonrpc: "2.0", id: 1, method, params };
14686
15187
  const res = await fetch(getBundlerUrl(), {
14687
15188
  method: "POST",
@@ -14692,14 +15193,14 @@ var UserOpStatus = ({
14692
15193
  if (json.error) throw new Error(json.error.message || JSON.stringify(json.error));
14693
15194
  return json.result;
14694
15195
  }, []);
14695
- const extractMempoolInfo = React11.useCallback((m) => {
15196
+ const extractMempoolInfo = React10.useCallback((m) => {
14696
15197
  if (!m) return null;
14697
15198
  const entryPoint = m.entryPoint || m?.userOperation?.entryPoint || null;
14698
15199
  const sender = m.sender || m?.userOperation?.sender || null;
14699
15200
  if (!entryPoint && !sender) return null;
14700
15201
  return { entryPoint, sender };
14701
15202
  }, []);
14702
- const tick = React11.useCallback(async () => {
15203
+ const tick = React10.useCallback(async () => {
14703
15204
  if (useExternalState) return;
14704
15205
  const elapsed = Date.now() - startTimeRef.current;
14705
15206
  if (elapsed > maxPollTimeMs) {
@@ -14743,7 +15244,7 @@ var UserOpStatus = ({
14743
15244
  setAttempt((x) => x + 1);
14744
15245
  }
14745
15246
  }, [rpc, userOpHash, maxPollTimeMs, extractMempoolInfo, useExternalState]);
14746
- React11.useEffect(() => {
15247
+ React10.useEffect(() => {
14747
15248
  if (useExternalState) return;
14748
15249
  console.log("[UserOpStatus] Initializing polling for UserOp hash:", userOpHash);
14749
15250
  startTimeRef.current = Date.now();
@@ -14755,7 +15256,7 @@ var UserOpStatus = ({
14755
15256
  setAttempt(0);
14756
15257
  setInternalRefreshing(false);
14757
15258
  }, [userOpHash, useExternalState]);
14758
- React11.useEffect(() => {
15259
+ React10.useEffect(() => {
14759
15260
  if (useExternalState) {
14760
15261
  console.log("[UserOpStatus] Using external state, skipping internal polling");
14761
15262
  return;
@@ -14790,35 +15291,35 @@ var UserOpStatus = ({
14790
15291
  const stateBadge = () => {
14791
15292
  if (receipt) {
14792
15293
  const ok = !!receipt.success;
14793
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(Badge, { variant: ok ? "success" : "destructive", className: "gap-1", children: [
14794
- ok ? /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.CheckCircle2, { className: "h-3 w-3" }) : /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.AlertCircle, { className: "h-3 w-3" }),
15294
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(Badge, { variant: ok ? "success" : "destructive", className: "gap-1", children: [
15295
+ ok ? /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.CheckCircle2, { className: "h-3 w-3" }) : /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.AlertCircle, { className: "h-3 w-3" }),
14795
15296
  ok ? "Included" : "Failed"
14796
15297
  ] });
14797
15298
  }
14798
15299
  if (rejected) {
14799
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(Badge, { variant: "destructive", className: "gap-1", children: [
14800
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.AlertCircle, { className: "h-3 w-3" }),
15300
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(Badge, { variant: "destructive", className: "gap-1", children: [
15301
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.AlertCircle, { className: "h-3 w-3" }),
14801
15302
  " Rejected by bundler"
14802
15303
  ] });
14803
15304
  }
14804
15305
  if (timedOut) {
14805
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(Badge, { variant: "warning", className: "gap-1", children: [
14806
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.AlertCircle, { className: "h-3 w-3" }),
15306
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(Badge, { variant: "warning", className: "gap-1", children: [
15307
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.AlertCircle, { className: "h-3 w-3" }),
14807
15308
  " Timeout - may be rejected"
14808
15309
  ] });
14809
15310
  }
14810
15311
  if (mempool) {
14811
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(Badge, { variant: "outline", className: "gap-1", children: [
14812
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.Clock, { className: "h-3 w-3" }),
15312
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(Badge, { variant: "outline", className: "gap-1", children: [
15313
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.Clock, { className: "h-3 w-3" }),
14813
15314
  " Pending in bundler"
14814
15315
  ] });
14815
15316
  }
14816
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(Badge, { variant: "secondary", className: "gap-1", children: [
14817
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.Clock, { className: "h-3 w-3" }),
15317
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(Badge, { variant: "secondary", className: "gap-1", children: [
15318
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.Clock, { className: "h-3 w-3" }),
14818
15319
  " Waiting"
14819
15320
  ] });
14820
15321
  };
14821
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(
15322
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(
14822
15323
  "div",
14823
15324
  {
14824
15325
  className: cn2(
@@ -14827,20 +15328,20 @@ var UserOpStatus = ({
14827
15328
  ),
14828
15329
  style: { textAlign: "left", listStyle: "none" },
14829
15330
  children: [
14830
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "flex items-center justify-between mb-3", children: [
14831
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "flex items-center gap-2", children: [
15331
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "flex items-center justify-between mb-3", children: [
15332
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "flex items-center gap-2", children: [
14832
15333
  stateBadge(),
14833
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "text-xs text-muted-foreground", children: "This is a UserOperation hash (EIP-4337), not a L2 tx hash." })
15334
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-xs text-muted-foreground", children: "This is a UserOperation hash (EIP-4337), not a L2 tx hash." })
14834
15335
  ] }),
14835
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(Button, { variant: "ghost", size: "small", onClick: () => tick(), disabled: refreshing, className: "h-8", children: [
14836
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.RefreshCw, { className: cn2("h-3.5 w-3.5 mr-1", refreshing && "animate-spin") }),
14837
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "text-xs", children: "Refresh" })
15336
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)(Button, { variant: "ghost", size: "small", onClick: () => tick(), disabled: refreshing, className: "h-8", children: [
15337
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.RefreshCw, { className: cn2("h-3.5 w-3.5 mr-1", refreshing && "animate-spin") }),
15338
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-xs", children: "Refresh" })
14838
15339
  ] })
14839
15340
  ] }),
14840
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "flex items-center gap-2 mb-2", children: [
14841
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "text-sm font-medium min-w-16 shrink-0", children: "UO Hash" }),
14842
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("code", { className: "text-xs font-mono flex-1 select-all", children: userOpHash }),
14843
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
15341
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "flex items-center gap-2 mb-2", children: [
15342
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-sm font-medium min-w-16 shrink-0", children: "UO Hash" }),
15343
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("code", { className: "text-xs font-mono flex-1 select-all", children: userOpHash }),
15344
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
14844
15345
  Button,
14845
15346
  {
14846
15347
  variant: "ghost",
@@ -14852,14 +15353,14 @@ var UserOpStatus = ({
14852
15353
  } catch {
14853
15354
  }
14854
15355
  },
14855
- children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.Copy, { className: "h-3.5 w-3.5" })
15356
+ children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.Copy, { className: "h-3.5 w-3.5" })
14856
15357
  }
14857
15358
  )
14858
15359
  ] }),
14859
- receipt && receipt.receipt?.transactionHash && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "flex items-center gap-2 mb-3", children: [
14860
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("span", { className: "text-sm font-medium min-w-16 shrink-0", children: "Tx Hash" }),
14861
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("code", { className: "text-xs font-mono flex-1 select-all", children: receipt.receipt.transactionHash }),
14862
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
15360
+ receipt && receipt.receipt?.transactionHash && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "flex items-center gap-2 mb-3", children: [
15361
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-sm font-medium min-w-16 shrink-0", children: "Tx Hash" }),
15362
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("code", { className: "text-xs font-mono flex-1 select-all", children: receipt.receipt.transactionHash }),
15363
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
14863
15364
  Button,
14864
15365
  {
14865
15366
  variant: "ghost",
@@ -14871,10 +15372,10 @@ var UserOpStatus = ({
14871
15372
  } catch {
14872
15373
  }
14873
15374
  },
14874
- children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.Copy, { className: "h-3.5 w-3.5" })
15375
+ children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.Copy, { className: "h-3.5 w-3.5" })
14875
15376
  }
14876
15377
  ),
14877
- chain?.blockExplorers?.default?.url && /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
15378
+ chain?.blockExplorers?.default?.url && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
14878
15379
  "a",
14879
15380
  {
14880
15381
  href: `${chain.blockExplorers.default.url}/tx/${receipt.receipt.transactionHash}`,
@@ -14882,11 +15383,11 @@ var UserOpStatus = ({
14882
15383
  rel: "noreferrer noopener",
14883
15384
  className: "inline-flex items-center justify-center h-8 w-8 rounded-md hover:bg-accent text-foreground",
14884
15385
  title: "Open in explorer",
14885
- children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.ExternalLink, { className: "h-3.5 w-3.5" })
15386
+ children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.ExternalLink, { className: "h-3.5 w-3.5" })
14886
15387
  }
14887
15388
  )
14888
15389
  ] }),
14889
- receipt && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "text-xs text-muted-foreground mb-3", children: [
15390
+ receipt && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "text-xs text-muted-foreground mb-3", children: [
14890
15391
  "Block ",
14891
15392
  parseInt(receipt.receipt?.blockNumber || "0x0", 16),
14892
15393
  " \u2022 Gas Used",
@@ -14895,32 +15396,32 @@ var UserOpStatus = ({
14895
15396
  " \u2022 Success ",
14896
15397
  String(!!receipt.success)
14897
15398
  ] }),
14898
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("div", { className: "text-xs text-muted-foreground", children: !receipt && !timedOut && !rejected && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("span", { className: "ml-2", children: [
15399
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { className: "text-xs text-muted-foreground", children: !receipt && !timedOut && !rejected && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("span", { className: "ml-2", children: [
14899
15400
  "\u2022 Polling for ",
14900
15401
  Math.round((Date.now() - startTimeRef.current) / 1e3),
14901
15402
  "s"
14902
15403
  ] }) }),
14903
- mempool && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "text-sm text-muted-foreground mt-2", style: { listStyle: "none" }, children: [
14904
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { children: [
15404
+ mempool && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "text-sm text-muted-foreground mt-2", style: { listStyle: "none" }, children: [
15405
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { children: [
14905
15406
  "Seen by bundler at ",
14906
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(Address, { address: mempool.entryPoint, chain, showExplorer: true, truncate: false })
15407
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(Address, { address: mempool.entryPoint, chain, showExplorer: true, truncate: false })
14907
15408
  ] }),
14908
- /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { children: [
15409
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { children: [
14909
15410
  "sender ",
14910
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(Address, { address: mempool.sender, chain, truncate: false })
15411
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(Address, { address: mempool.sender, chain, truncate: false })
14911
15412
  ] })
14912
15413
  ] }),
14913
- error && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
14914
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.AlertCircle, { className: "h-4 w-4" }),
15414
+ error && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
15415
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.AlertCircle, { className: "h-4 w-4" }),
14915
15416
  " ",
14916
15417
  error
14917
15418
  ] }),
14918
- rejected && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
14919
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.AlertCircle, { className: "h-4 w-4" }),
15419
+ rejected && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
15420
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.AlertCircle, { className: "h-4 w-4" }),
14920
15421
  "UserOperation was dropped from bundler mempool. This usually means it was invalid or replaced."
14921
15422
  ] }),
14922
- timedOut && /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
14923
- /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react52.AlertCircle, { className: "h-4 w-4" }),
15423
+ timedOut && /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: "text-sm text-destructive flex items-center gap-1 mt-4", children: [
15424
+ /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.AlertCircle, { className: "h-4 w-4" }),
14924
15425
  "Stopped polling after ",
14925
15426
  Math.round(maxPollTimeMs / 1e3),
14926
15427
  "s. UserOperation may have been rejected by the bundler."
@@ -14931,9 +15432,9 @@ var UserOpStatus = ({
14931
15432
  };
14932
15433
 
14933
15434
  // src/internal/components/Hash.tsx
14934
- var import_lucide_react53 = require("lucide-react");
14935
- var React12 = __toESM(require("react"), 1);
14936
- var import_jsx_runtime82 = require("react/jsx-runtime");
15435
+ var import_lucide_react54 = require("lucide-react");
15436
+ var React11 = __toESM(require("react"), 1);
15437
+ var import_jsx_runtime83 = require("react/jsx-runtime");
14937
15438
  function toExplorerUrl(kind, value, chain) {
14938
15439
  const base2 = chain?.blockExplorers?.default?.url;
14939
15440
  if (!base2) return null;
@@ -14956,12 +15457,12 @@ var Hash = ({
14956
15457
  }) => {
14957
15458
  const value = hash || "";
14958
15459
  const explorer = toExplorerUrl(kind, value, chain || void 0);
14959
- const [copied, setCopied] = React12.useState(false);
14960
- if (!value) return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: cn2("text-muted-foreground", className), children: "\u2014" });
14961
- return /* @__PURE__ */ (0, import_jsx_runtime82.jsxs)("div", { className: cn2("flex items-center gap-2", className), children: [
14962
- label && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("span", { className: "text-sm font-medium", children: label }),
14963
- /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("code", { className: "text-xs bg-background px-2 py-1 rounded break-all", children: truncate ? short2(value) : value }),
14964
- showCopy && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
15460
+ const [copied, setCopied] = React11.useState(false);
15461
+ if (!value) return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: cn2("text-muted-foreground", className), children: "\u2014" });
15462
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: cn2("flex items-center gap-2", className), children: [
15463
+ label && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-sm font-medium", children: label }),
15464
+ /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("code", { className: "text-xs bg-background px-2 py-1 rounded break-all", children: truncate ? short2(value) : value }),
15465
+ showCopy && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
14965
15466
  Button,
14966
15467
  {
14967
15468
  variant: "ghost",
@@ -14975,10 +15476,10 @@ var Hash = ({
14975
15476
  } catch {
14976
15477
  }
14977
15478
  },
14978
- children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.Copy, { className: "h-4 w-4" })
15479
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_lucide_react54.Copy, { className: "h-4 w-4" })
14979
15480
  }
14980
15481
  ),
14981
- showExplorer && explorer && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
15482
+ showExplorer && explorer && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
14982
15483
  "a",
14983
15484
  {
14984
15485
  href: explorer,
@@ -14986,7 +15487,7 @@ var Hash = ({
14986
15487
  rel: "noreferrer noopener",
14987
15488
  className: "inline-flex items-center justify-center h-10 w-10 rounded-md hover:bg-accent text-foreground",
14988
15489
  title: "Open in explorer",
14989
- children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react53.ExternalLink, { className: "h-4 w-4" })
15490
+ children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_lucide_react54.ExternalLink, { className: "h-4 w-4" })
14990
15491
  }
14991
15492
  )
14992
15493
  ] });
@@ -14995,7 +15496,7 @@ var Hash = ({
14995
15496
  // src/internal/components/TransactionsMenu/TransactionsList.tsx
14996
15497
  var import_react66 = require("react");
14997
15498
  init_base();
14998
- var import_jsx_runtime83 = require("react/jsx-runtime");
15499
+ var import_jsx_runtime84 = require("react/jsx-runtime");
14999
15500
  var TransactionsList = ({ address, itemsCount = 10 }) => {
15000
15501
  const [transactions, setTransactions] = (0, import_react66.useState)([]);
15001
15502
  const [loading, setLoading] = (0, import_react66.useState)(true);
@@ -15046,31 +15547,31 @@ var TransactionsList = ({ address, itemsCount = 10 }) => {
15046
15547
  window.open(`${explorerUrl}/tx/${txHash}`, "_blank");
15047
15548
  };
15048
15549
  if (loading) {
15049
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "p-4 text-center", children: [
15050
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "animate-spin inline-block w-6 h-6 border-2 border-current border-t-transparent rounded-full" }),
15051
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("p", { className: "mt-2 text-sm text-gray-600", children: "Loading transactions..." })
15550
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "p-4 text-center", children: [
15551
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: "animate-spin inline-block w-6 h-6 border-2 border-current border-t-transparent rounded-full" }),
15552
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("p", { className: "mt-2 text-sm text-gray-600", children: "Loading transactions..." })
15052
15553
  ] });
15053
15554
  }
15054
15555
  if (error) {
15055
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "p-4 text-center", children: [
15056
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("p", { className: "text-red-600 text-sm", children: error }),
15057
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("button", { onClick: () => window.location.reload(), className: "mt-2 text-blue-600 text-sm hover:underline", children: "Retry" })
15556
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "p-4 text-center", children: [
15557
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("p", { className: "text-red-600 text-sm", children: error }),
15558
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("button", { onClick: () => window.location.reload(), className: "mt-2 text-blue-600 text-sm hover:underline", children: "Retry" })
15058
15559
  ] });
15059
15560
  }
15060
15561
  if (transactions.length === 0) {
15061
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "p-4 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("p", { className: "text-gray-600 text-sm", children: "No transactions found" }) });
15562
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: "p-4 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("p", { className: "text-gray-600 text-sm", children: "No transactions found" }) });
15062
15563
  }
15063
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "max-h-96 overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "space-y-2 p-2", children: transactions.map((tx) => /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)(
15564
+ return /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: "max-h-96 overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: "space-y-2 p-2", children: transactions.map((tx) => /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(
15064
15565
  "div",
15065
15566
  {
15066
15567
  className: "border rounded-lg p-3 hover:bg-gray-50 cursor-pointer transition-colors",
15067
15568
  onClick: () => openTransaction(tx.hash),
15068
15569
  children: [
15069
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "flex justify-between items-start mb-2", children: [
15070
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "flex-1", children: [
15071
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "flex items-center space-x-2 mb-1", children: [
15072
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-xs font-mono bg-gray-100 px-2 py-1 rounded", children: formatAddress3(tx.hash) }),
15073
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
15570
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "flex justify-between items-start mb-2", children: [
15571
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "flex-1", children: [
15572
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "flex items-center space-x-2 mb-1", children: [
15573
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-xs font-mono bg-gray-100 px-2 py-1 rounded", children: formatAddress3(tx.hash) }),
15574
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
15074
15575
  "span",
15075
15576
  {
15076
15577
  className: `text-xs px-2 py-1 rounded ${tx.status === "ok" ? "bg-green-100 text-green-800" : "bg-red-100 text-red-800"}`,
@@ -15078,40 +15579,40 @@ var TransactionsList = ({ address, itemsCount = 10 }) => {
15078
15579
  }
15079
15580
  )
15080
15581
  ] }),
15081
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "text-sm space-y-1", children: [
15082
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { children: [
15083
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-gray-600", children: "From:" }),
15084
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("span", { className: "font-mono ml-1", children: [
15582
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "text-sm space-y-1", children: [
15583
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { children: [
15584
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-gray-600", children: "From:" }),
15585
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("span", { className: "font-mono ml-1", children: [
15085
15586
  formatAddress3(tx.from.hash),
15086
- tx.from.is_contract && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-xs text-blue-600 ml-1", children: "(Contract)" })
15587
+ tx.from.is_contract && /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-xs text-blue-600 ml-1", children: "(Contract)" })
15087
15588
  ] })
15088
15589
  ] }),
15089
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { children: [
15090
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-gray-600", children: "To:" }),
15091
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("span", { className: "font-mono ml-1", children: [
15590
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { children: [
15591
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-gray-600", children: "To:" }),
15592
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("span", { className: "font-mono ml-1", children: [
15092
15593
  formatAddress3(tx.to.hash),
15093
- tx.to.is_contract && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-xs text-blue-600 ml-1", children: "(Contract)" })
15594
+ tx.to.is_contract && /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-xs text-blue-600 ml-1", children: "(Contract)" })
15094
15595
  ] })
15095
15596
  ] }),
15096
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { children: [
15097
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-gray-600", children: "Value:" }),
15098
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("span", { className: "font-semibold ml-1", children: [
15597
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { children: [
15598
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-gray-600", children: "Value:" }),
15599
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("span", { className: "font-semibold ml-1", children: [
15099
15600
  formatValue3(tx.value),
15100
15601
  " LUMIA"
15101
15602
  ] })
15102
15603
  ] })
15103
15604
  ] })
15104
15605
  ] }),
15105
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "text-right text-xs text-gray-500", children: [
15106
- /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { children: formatDate3(tx.timestamp) }),
15107
- /* @__PURE__ */ (0, import_jsx_runtime83.jsxs)("div", { className: "mt-1", children: [
15606
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "text-right text-xs text-gray-500", children: [
15607
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { children: formatDate3(tx.timestamp) }),
15608
+ /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)("div", { className: "mt-1", children: [
15108
15609
  "Gas: ",
15109
15610
  parseInt(tx.gas_used).toLocaleString()
15110
15611
  ] }),
15111
- tx.method && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "mt-1 text-blue-600", children: tx.method })
15612
+ tx.method && /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: "mt-1 text-blue-600", children: tx.method })
15112
15613
  ] })
15113
15614
  ] }),
15114
- tx.transaction_types.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "flex flex-wrap gap-1 mt-2", children: tx.transaction_types.map((type, idx) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("span", { className: "text-xs bg-blue-100 text-blue-800 px-2 py-1 rounded-full", children: type.replace("_", " ") }, idx)) })
15615
+ tx.transaction_types.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: "flex flex-wrap gap-1 mt-2", children: tx.transaction_types.map((type, idx) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "text-xs bg-blue-100 text-blue-800 px-2 py-1 rounded-full", children: type.replace("_", " ") }, idx)) })
15115
15616
  ]
15116
15617
  },
15117
15618
  tx.hash
@@ -15119,7 +15620,7 @@ var TransactionsList = ({ address, itemsCount = 10 }) => {
15119
15620
  };
15120
15621
 
15121
15622
  // src/hooks/useUserOpStatus.ts
15122
- var React14 = __toESM(require("react"), 1);
15623
+ var React13 = __toESM(require("react"), 1);
15123
15624
  init_base();
15124
15625
  function useUserOpStatus(options = {}) {
15125
15626
  const {
@@ -15131,16 +15632,16 @@ function useUserOpStatus(options = {}) {
15131
15632
  onReceipt,
15132
15633
  onTxHash
15133
15634
  } = options;
15134
- const [state, setState] = React14.useState("waiting");
15135
- const [receipt, setReceipt] = React14.useState(null);
15136
- const [mempool, setMempool] = React14.useState(null);
15137
- const [txHash, setTxHash] = React14.useState(null);
15138
- const [error, setError] = React14.useState(null);
15139
- const [isPolling, setIsPolling] = React14.useState(false);
15140
- const intervalRef = React14.useRef(null);
15141
- const startTimeRef = React14.useRef(Date.now());
15142
- const prevStateRef = React14.useRef("waiting");
15143
- const rpc = React14.useCallback(async (method, params) => {
15635
+ const [state, setState] = React13.useState("waiting");
15636
+ const [receipt, setReceipt] = React13.useState(null);
15637
+ const [mempool, setMempool] = React13.useState(null);
15638
+ const [txHash, setTxHash] = React13.useState(null);
15639
+ const [error, setError] = React13.useState(null);
15640
+ const [isPolling, setIsPolling] = React13.useState(false);
15641
+ const intervalRef = React13.useRef(null);
15642
+ const startTimeRef = React13.useRef(Date.now());
15643
+ const prevStateRef = React13.useRef("waiting");
15644
+ const rpc = React13.useCallback(async (method, params) => {
15144
15645
  const body = { jsonrpc: "2.0", id: 1, method, params };
15145
15646
  const res = await fetch(getBundlerUrl(), {
15146
15647
  method: "POST",
@@ -15151,21 +15652,21 @@ function useUserOpStatus(options = {}) {
15151
15652
  if (json.error) throw new Error(json.error.message || JSON.stringify(json.error));
15152
15653
  return json.result;
15153
15654
  }, []);
15154
- const extractMempoolInfo = React14.useCallback((m) => {
15655
+ const extractMempoolInfo = React13.useCallback((m) => {
15155
15656
  if (!m) return null;
15156
15657
  const entryPoint = m.entryPoint || m?.userOperation?.entryPoint || null;
15157
15658
  const sender = m.sender || m?.userOperation?.sender || null;
15158
15659
  if (!entryPoint && !sender) return null;
15159
15660
  return { entryPoint, sender };
15160
15661
  }, []);
15161
- const updateState = React14.useCallback((newState) => {
15662
+ const updateState = React13.useCallback((newState) => {
15162
15663
  setState(newState);
15163
15664
  if (prevStateRef.current !== newState) {
15164
15665
  prevStateRef.current = newState;
15165
15666
  onStateChange?.(newState);
15166
15667
  }
15167
15668
  }, [onStateChange]);
15168
- const tick = React14.useCallback(async () => {
15669
+ const tick = React13.useCallback(async () => {
15169
15670
  if (!userOpHash || !enabled) return;
15170
15671
  if (receipt) {
15171
15672
  console.log("[useUserOpStatus] Already have receipt, skipping tick");
@@ -15238,7 +15739,7 @@ function useUserOpStatus(options = {}) {
15238
15739
  onTxHash,
15239
15740
  onReceipt
15240
15741
  ]);
15241
- React14.useEffect(() => {
15742
+ React13.useEffect(() => {
15242
15743
  if (!userOpHash || !enabled) return;
15243
15744
  console.log("[useUserOpStatus] Initializing for UserOp hash:", userOpHash);
15244
15745
  startTimeRef.current = Date.now();
@@ -15250,7 +15751,7 @@ function useUserOpStatus(options = {}) {
15250
15751
  setError(null);
15251
15752
  setIsPolling(false);
15252
15753
  }, [userOpHash, enabled]);
15253
- React14.useEffect(() => {
15754
+ React13.useEffect(() => {
15254
15755
  if (!userOpHash || !enabled) {
15255
15756
  console.log("[useUserOpStatus] Not starting polling - no hash or disabled");
15256
15757
  return;
@@ -15286,7 +15787,7 @@ function useUserOpStatus(options = {}) {
15286
15787
  }
15287
15788
  };
15288
15789
  }, [userOpHash, enabled, pollMs]);
15289
- const refresh = React14.useCallback(async () => {
15790
+ const refresh = React13.useCallback(async () => {
15290
15791
  await tick();
15291
15792
  }, [tick]);
15292
15793
  return {
@@ -15345,13 +15846,13 @@ init_profile();
15345
15846
  init_errors();
15346
15847
 
15347
15848
  // src/modules/transactions.ts
15348
- var import_wagmi10 = require("wagmi");
15849
+ var import_wagmi9 = require("wagmi");
15349
15850
  var import_viem11 = require("viem");
15350
15851
  init_base();
15351
15852
  function useTransactions() {
15352
- const publicClient2 = (0, import_wagmi10.usePublicClient)({ chainId: lumiaBeam.id });
15353
- const { data: walletClient } = (0, import_wagmi10.useWalletClient)();
15354
- const { address } = (0, import_wagmi10.useAccount)();
15853
+ const publicClient2 = (0, import_wagmi9.usePublicClient)({ chainId: lumiaBeam.id });
15854
+ const { data: walletClient } = (0, import_wagmi9.useWalletClient)();
15855
+ const { address } = (0, import_wagmi9.useAccount)();
15355
15856
  const sendTransaction = async (params) => {
15356
15857
  if (!walletClient) {
15357
15858
  throw new Error("Wallet not connected");
@@ -15407,10 +15908,171 @@ function useTransactions() {
15407
15908
  };
15408
15909
  }
15409
15910
 
15410
- // src/modules/smartAccountTransactions.ts
15911
+ // src/modules/assets.ts
15912
+ var import_react68 = __toESM(require("react"), 1);
15913
+ var import_wagmi10 = require("wagmi");
15411
15914
  var import_viem12 = require("viem");
15412
15915
  init_base();
15413
- var USER_OP_EVENT = (0, import_viem12.parseAbiItem)(
15916
+ var COMMON_TOKENS = [
15917
+ // Add real token addresses here when available
15918
+ // {
15919
+ // address: '0x....',
15920
+ // name: 'USD Coin',
15921
+ // symbol: 'USDC',
15922
+ // decimals: 6,
15923
+ // logo: 'https://...'
15924
+ // }
15925
+ ];
15926
+ function useAssets(address) {
15927
+ const { data: nativeBalance, isLoading: nativeBalanceLoading, refetch: refetchNativeBalance } = (0, import_wagmi10.useBalance)({
15928
+ address,
15929
+ chainId: lumiaBeam.id,
15930
+ query: {
15931
+ enabled: !!address
15932
+ }
15933
+ });
15934
+ const tokenContracts = COMMON_TOKENS.map((token) => ({
15935
+ address: token.address,
15936
+ abi: import_viem12.erc20Abi,
15937
+ functionName: "balanceOf",
15938
+ args: [address],
15939
+ chainId: lumiaBeam.id
15940
+ }));
15941
+ const readContractsResult = (0, import_wagmi10.useReadContracts)({
15942
+ contracts: tokenContracts,
15943
+ query: {
15944
+ enabled: !!address && COMMON_TOKENS.length > 0
15945
+ }
15946
+ });
15947
+ const { data: tokenBalances, isLoading: tokenBalancesLoading, refetch: refetchTokenBalances } = readContractsResult;
15948
+ const getAllAssets = () => {
15949
+ const assets = [];
15950
+ if (nativeBalance) {
15951
+ assets.push({
15952
+ type: "native",
15953
+ name: "Lumia",
15954
+ symbol: "LUMIA",
15955
+ balance: nativeBalance.value.toString(),
15956
+ formattedBalance: parseFloat(nativeBalance.formatted).toFixed(4),
15957
+ decimals: 18
15958
+ });
15959
+ }
15960
+ if (tokenBalances && COMMON_TOKENS.length > 0) {
15961
+ tokenBalances.forEach((balance, index) => {
15962
+ const token = COMMON_TOKENS[index];
15963
+ if (balance.status === "success" && balance.result) {
15964
+ const balanceValue = balance.result;
15965
+ const formattedBalance = (0, import_viem12.formatUnits)(balanceValue, token.decimals);
15966
+ assets.push({
15967
+ type: "erc20",
15968
+ address: token.address,
15969
+ name: token.name,
15970
+ symbol: token.symbol,
15971
+ balance: balanceValue.toString(),
15972
+ formattedBalance: parseFloat(formattedBalance).toFixed(4),
15973
+ decimals: token.decimals,
15974
+ logo: token.logo
15975
+ });
15976
+ }
15977
+ });
15978
+ }
15979
+ return assets;
15980
+ };
15981
+ const getTokenBalance = (tokenAddress) => {
15982
+ const tokenIndex = COMMON_TOKENS.findIndex(
15983
+ (token2) => token2.address.toLowerCase() === tokenAddress.toLowerCase()
15984
+ );
15985
+ if (tokenIndex === -1 || !tokenBalances?.[tokenIndex]) {
15986
+ return null;
15987
+ }
15988
+ const balance = tokenBalances[tokenIndex];
15989
+ const token = COMMON_TOKENS[tokenIndex];
15990
+ if (balance.status === "success" && balance.result) {
15991
+ const balanceValue = balance.result;
15992
+ const formattedBalance = (0, import_viem12.formatUnits)(balanceValue, token.decimals);
15993
+ return {
15994
+ address: token.address,
15995
+ name: token.name,
15996
+ symbol: token.symbol,
15997
+ decimals: token.decimals,
15998
+ balance: balanceValue.toString(),
15999
+ formattedBalance: parseFloat(formattedBalance).toFixed(4),
16000
+ logo: token.logo
16001
+ };
16002
+ }
16003
+ return null;
16004
+ };
16005
+ const refreshBalances = async () => {
16006
+ await Promise.all([
16007
+ refetchNativeBalance(),
16008
+ refetchTokenBalances()
16009
+ ]);
16010
+ };
16011
+ return {
16012
+ nativeBalance,
16013
+ tokenBalances,
16014
+ assets: getAllAssets(),
16015
+ getTokenBalance,
16016
+ refreshBalances,
16017
+ isLoading: nativeBalanceLoading || tokenBalancesLoading,
16018
+ isConnected: !!address
16019
+ };
16020
+ }
16021
+ function useTokenInfo(tokenAddress) {
16022
+ const readContractsResult = (0, import_wagmi10.useReadContracts)({
16023
+ contracts: [
16024
+ { address: tokenAddress, abi: import_viem12.erc20Abi, functionName: "name", chainId: lumiaBeam.id },
16025
+ { address: tokenAddress, abi: import_viem12.erc20Abi, functionName: "symbol", chainId: lumiaBeam.id },
16026
+ { address: tokenAddress, abi: import_viem12.erc20Abi, functionName: "decimals", chainId: lumiaBeam.id }
16027
+ ]
16028
+ });
16029
+ const { data: tokenData, isLoading } = readContractsResult;
16030
+ if (!tokenData || isLoading) {
16031
+ return { isLoading, tokenInfo: null };
16032
+ }
16033
+ const [nameResult, symbolResult, decimalsResult] = tokenData;
16034
+ if (nameResult.status === "success" && symbolResult.status === "success" && decimalsResult.status === "success") {
16035
+ return {
16036
+ isLoading: false,
16037
+ tokenInfo: {
16038
+ name: nameResult.result,
16039
+ symbol: symbolResult.result,
16040
+ decimals: decimalsResult.result,
16041
+ address: tokenAddress
16042
+ }
16043
+ };
16044
+ }
16045
+ return { isLoading: false, tokenInfo: null };
16046
+ }
16047
+ function useTokenBalance(tokenAddress, userAddress) {
16048
+ const { data: balance, isLoading, refetch } = (0, import_wagmi10.useReadContract)({
16049
+ address: tokenAddress,
16050
+ abi: import_viem12.erc20Abi,
16051
+ functionName: "balanceOf",
16052
+ args: userAddress ? [userAddress] : void 0,
16053
+ chainId: lumiaBeam.id,
16054
+ query: {
16055
+ enabled: !!userAddress
16056
+ }
16057
+ });
16058
+ const { tokenInfo } = useTokenInfo(tokenAddress);
16059
+ const formattedBalance = import_react68.default.useMemo(() => {
16060
+ if (!balance || !tokenInfo) return "0";
16061
+ return (0, import_viem12.formatUnits)(balance, tokenInfo.decimals);
16062
+ }, [balance, tokenInfo]);
16063
+ return {
16064
+ balance,
16065
+ formattedBalance,
16066
+ tokenInfo,
16067
+ isLoading,
16068
+ refetch
16069
+ };
16070
+ }
16071
+
16072
+ // src/modules/smartAccountTransactions.ts
16073
+ var import_viem13 = require("viem");
16074
+ init_base();
16075
+ var USER_OP_EVENT = (0, import_viem13.parseAbiItem)(
15414
16076
  "event UserOperationEvent(bytes32 indexed userOpHash, address indexed sender, address indexed paymaster, uint256 nonce, bool success, uint256 actualGasCost, uint256 actualGasUsed)"
15415
16077
  );
15416
16078
  function useSmartAccountTransactions() {
@@ -15506,6 +16168,7 @@ init_iframe_manager();
15506
16168
  signTypedData,
15507
16169
  updateUserProfile,
15508
16170
  useAssets,
16171
+ useErc3643Compliance,
15509
16172
  useLogout,
15510
16173
  useLumiaPassportAccountSession,
15511
16174
  useLumiaPassportAddress,