@lukso/up-connector 0.8.3 → 0.8.5-dev.2df3eae
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/account-modal.cjs +3 -3
- package/dist/account-modal.js +2 -2
- package/dist/auto-setup.cjs +2 -3
- package/dist/auto-setup.cjs.map +1 -1
- package/dist/auto-setup.d.cts +1 -1
- package/dist/auto-setup.d.ts +1 -1
- package/dist/auto-setup.js +1 -2
- package/dist/backup-modal.cjs +3 -3
- package/dist/backup-modal.js +2 -2
- package/dist/chunk-3AIZSSEE.cjs +31 -0
- package/dist/chunk-3AIZSSEE.cjs.map +1 -0
- package/dist/{chunk-6W7FRKLF.js → chunk-43E6AVSP.js} +5 -4
- package/dist/chunk-43E6AVSP.js.map +1 -0
- package/dist/{chunk-4E7SPZWU.js → chunk-D7RI2CWB.js} +5 -4
- package/dist/chunk-D7RI2CWB.js.map +1 -0
- package/dist/{chunk-BLDF6KQ6.js → chunk-LXK6OUTM.js} +4 -7
- package/dist/chunk-LXK6OUTM.js.map +1 -0
- package/dist/{chunk-KSO3XK5R.cjs → chunk-PHRCQCEN.cjs} +5 -4
- package/dist/chunk-PHRCQCEN.cjs.map +1 -0
- package/dist/{chunk-2HIZGOPY.cjs → chunk-PPONAIJF.cjs} +5 -8
- package/dist/chunk-PPONAIJF.cjs.map +1 -0
- package/dist/{chunk-ODKUPDLA.cjs → chunk-UJDGQG6P.cjs} +5 -4
- package/dist/chunk-UJDGQG6P.cjs.map +1 -0
- package/dist/{chunk-2GXVRHI5.cjs → chunk-XCX7QWLC.cjs} +5 -4
- package/dist/chunk-XCX7QWLC.cjs.map +1 -0
- package/dist/chunk-XEZEZ62E.js +31 -0
- package/dist/chunk-XEZEZ62E.js.map +1 -0
- package/dist/{chunk-HYTGLJAK.js → chunk-XKSB6TPG.js} +5 -4
- package/dist/chunk-XKSB6TPG.js.map +1 -0
- package/dist/index.cjs +21 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +29 -19
- package/dist/index.js.map +1 -1
- package/dist/restore-modal.cjs +3 -3
- package/dist/restore-modal.js +2 -2
- package/package.json +13 -18
- package/src/account-modal.ts +3 -2
- package/src/auto-setup.ts +3 -2
- package/src/backup-modal.ts +3 -2
- package/src/connector.ts +7 -4
- package/src/index.ts +19 -19
- package/src/restore-modal.ts +3 -2
- package/dist/chunk-2GXVRHI5.cjs.map +0 -1
- package/dist/chunk-2HIZGOPY.cjs.map +0 -1
- package/dist/chunk-4E7SPZWU.js.map +0 -1
- package/dist/chunk-6W7FRKLF.js.map +0 -1
- package/dist/chunk-AE2OVY26.js +0 -1186
- package/dist/chunk-AE2OVY26.js.map +0 -1
- package/dist/chunk-BLDF6KQ6.js.map +0 -1
- package/dist/chunk-GUAUME2K.js +0 -31
- package/dist/chunk-GUAUME2K.js.map +0 -1
- package/dist/chunk-HYTGLJAK.js.map +0 -1
- package/dist/chunk-IBS6LDIM.cjs +0 -31
- package/dist/chunk-IBS6LDIM.cjs.map +0 -1
- package/dist/chunk-KSO3XK5R.cjs.map +0 -1
- package/dist/chunk-ODKUPDLA.cjs.map +0 -1
- package/dist/chunk-R4L3CREG.cjs +0 -1186
- package/dist/chunk-R4L3CREG.cjs.map +0 -1
- package/dist/connect-modal/index.cjs +0 -22
- package/dist/connect-modal/index.cjs.map +0 -1
- package/dist/connect-modal/index.d.cts +0 -3
- package/dist/connect-modal/index.d.ts +0 -3
- package/dist/connect-modal/index.js +0 -22
- package/dist/connect-modal/index.js.map +0 -1
- package/dist/index-DZolGZOk.d.cts +0 -413
- package/dist/index-DZolGZOk.d.ts +0 -413
- package/src/connect-modal/components/connection-view.ts +0 -418
- package/src/connect-modal/components/eoa-connection-view.ts +0 -418
- package/src/connect-modal/components/qr-code-view.ts +0 -86
- package/src/connect-modal/connect-modal.base.ts +0 -18
- package/src/connect-modal/connect-modal.config.ts +0 -27
- package/src/connect-modal/connect-modal.templates.ts +0 -22
- package/src/connect-modal/connect-modal.ts +0 -227
- package/src/connect-modal/connect-modal.types.ts +0 -108
- package/src/connect-modal/images/up-cube-glass.png +0 -0
- package/src/connect-modal/index.ts +0 -25
- package/src/connect-modal/services/wagmi.ts +0 -377
- package/src/connect-modal/styles/styles.css +0 -1
- package/src/connect-modal/utils/chainParams.ts +0 -32
- package/src/connect-modal/utils/walletConnectDeepLinkUrl.ts +0 -43
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/up-connector/dist/chunk-3AIZSSEE.cjs","../src/styles/index.ts","../src/styles/styles.css%3F__raw__"],"names":[],"mappings":"AAAA;ACIA,0BAA2C;ADF3C;AACA;AEHA,IAAO,eAAA,EAAQ,s3mIAAA;AFKf;AACA;ACEA,IAAM,MAAA,EAAQ,QAAA,CAAA;AAAA,EAAA,EACV,4BAAA,cAAgB,CAAC,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAA;AAcd,IAAM,eAAA,EAAN,MAAA,QAA6B,gBAAW;AAAA,EAC7C,OAAA;AAAA,IAAA,IAAA,CAAO,OAAA,EAAS,CAAC,KAAK,CAAA;AAAA,EAAA;AACxB,CAAA;ADCA;AACA;AACE;AACF,wCAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/up-connector/dist/chunk-3AIZSSEE.cjs","sourcesContent":[null,"// Export the built CSS as a string for components that need to inject styles\n// Tailwind + web-components CSS is compiled into this file by our PostCSS pipeline\n// esbuild-raw-plugin ensures importing CSS returns its raw contents as a string\n\nimport { css, LitElement, unsafeCSS } from 'lit'\n\nimport output from './styles.css?raw'\n\nconst style = css`\n ${unsafeCSS(output)}\n\n :host([is-inline]) {\n display: inline-flex;\n align-items: center;\n }\n\n :host([is-full-width]) {\n width: 100%;\n flex: 1;\n display: flex;\n }\n`\n\nexport class CoreLitElement extends LitElement {\n static styles = [style]\n}\n\nexport default style\n","export default \"/**\\n * @file Main styles\\n *\\n * This file contain general styles that should be applied to host page.\\n */\\n:root {\\n --neutral-10: #121b21;\\n --neutral-15: #1b2832;\\n --neutral-20: #243542;\\n --neutral-25: #2d4253;\\n --neutral-30: #365063;\\n --neutral-35: #3e5d74;\\n --neutral-40: #476a85;\\n --neutral-45: #507795;\\n --neutral-50: #5985a6;\\n --neutral-55: #6a91af;\\n --neutral-60: #7a9db8;\\n --neutral-65: #8ba9c1;\\n --neutral-70: #9cb6c9;\\n --neutral-75: #acc2d2;\\n --neutral-80: #bdcedb;\\n --neutral-85: #cddae4;\\n --neutral-90: #dee7ed;\\n --neutral-95: #eef3f6;\\n --neutral-97: #f5f8fa;\\n --neutral-98: #f8fafb;\\n --neutral-100: #ffffff;\\n --honey-72: #fad275;\\n --honey-75: #fbd784;\\n --honey-82: #fce2a6;\\n --honey-85: #fce7b5;\\n --honey-92: #fef2d8;\\n --coral-65: #f37c58;\\n --coral-74: #f69e83;\\n --coral-75: #f7a288;\\n --coral-84: #fac3b3;\\n --coral-85: #fac7b7;\\n --coral-94: #fde9e2;\\n --warm-77: #ffbb8a;\\n --warm-87: #ffd8bd;\\n --warm-97: #fff6f0;\\n --sea-salt-57: #7fa4a4;\\n --sea-salt-67: #9db9b9;\\n --sea-salt-88: #dbe6e6;\\n --cloud-43: #447c97;\\n --cloud-75: #a7c7d7;\\n --cloud-88: #d5e4ec;\\n --ocean-38: #3c6286;\\n --ocean-75: #a7c0d7;\\n --ocean-88: #d5e1ec;\\n --sky-64: #68a5de;\\n --sky-75: #96c1e8;\\n --sky-85: #c0daf1;\\n --lukso-50: #aa5578;\\n --lukso-60: #bb7793;\\n --lukso-70: #cc99ae;\\n --lukso-80: #ddbbc9;\\n --lukso-90: #eedde4;\\n --yellow-25: #804d00;\\n --yellow-55: #ffa31a;\\n --yellow-65: #ffb84d;\\n --yellow-75: #ffcc80;\\n --yellow-85: #ffe0b3;\\n --yellow-95: #fff5e5;\\n --green-45: #31b452;\\n --green-54: #47cd68;\\n --green-63: #6bd686;\\n --green-75: #9be4ad;\\n --green-85: #c3efce;\\n --green-95: #ebfaef;\\n --blue-40: #0452c8;\\n --blue-50: #0567fa;\\n --blue-60: #3785fb;\\n --blue-75: #82b3fc;\\n --blue-85: #b4d1fd;\\n --blue-95: #e6f0fe;\\n --red-55: #e23636;\\n --red-65: #e96363;\\n --red-75: #ef8f8f;\\n --red-85: #f5bcbc;\\n --red-95: #fce9e9;\\n --purple-15: #1d202f;\\n --purple-18: #232739;\\n --purple-31: #3c4262;\\n --purple-41: #4f5882;\\n --purple-51: #646ea0;\\n --purple-58: #7a83ae;\\n --purple-63: #8a92b7;\\n --purple-82: #c6cadc;\\n --purple-94: #ecedf3;\\n --pink-90: #f8dad3;\\n --pink-91: #f9ddd7;\\n --pink-92: #f9e1dc;\\n --pink-93: #fae5e0;\\n --pink-94: #fbe9e5;\\n --pink-95: #fcece9;\\n --pink-96: #fcf0ed;\\n --pink-97: #fdf4f2;\\n --measure-50: #e8178a;\\n --measure-70: #f174b9;\\n --measure-80: #f6a2d0;\\n --measure-97: #fef1f8;\\n --grey-10: #1a1a1a;\\n --grey-15: #262626;\\n --grey-20: #333333;\\n --grey-25: #404040;\\n --grey-30: #4d4d4d;\\n --grey-35: #595959;\\n --grey-40: #666666;\\n --grey-45: #737373;\\n --grey-50: #808080;\\n --grey-55: #8c8c8c;\\n --grey-60: #999999;\\n --grey-65: #a6a6a6;\\n --grey-70: #b3b3b3;\\n --grey-75: #bfbfbf;\\n --grey-80: #cccccc;\\n --gradient-1-start: #D39B9D;\\n --gradient-1-end: #9071D1;\\n --gradient-2-start: #F8DAD3;\\n --gradient-2-end: #CC99AE;\\n --gradient-3-start: #393e56;\\n --gradient-3-end: #646ea0;\\n}\\n/**\\n * @file Fonts\\n *\\n * This file contains all fonts used in designs.\\n */\\n@font-face {\\n font-family: Inter;\\n src: url(\\\"/assets/fonts/Inter-Regular.woff2\\\") format(\\\"woff2\\\");\\n font-weight: normal;\\n font-style: normal;\\n font-display: swap;\\n}\\n@font-face {\\n font-family: Inter;\\n src: url(\\\"/assets/fonts/Inter-ExtraBold.woff2\\\") format(\\\"woff2\\\");\\n font-weight: 800;\\n font-style: normal;\\n font-display: swap;\\n}\\n@font-face {\\n font-family: Inter;\\n src: url(\\\"/assets/fonts/Inter-Bold.woff2\\\") format(\\\"woff2\\\");\\n font-weight: bold;\\n font-style: normal;\\n font-display: swap;\\n}\\n@font-face {\\n font-family: Inter;\\n src: url(\\\"/assets/fonts/Inter-SemiBold.woff2\\\") format(\\\"woff2\\\");\\n font-weight: 600;\\n font-style: normal;\\n font-display: swap;\\n}\\n@font-face {\\n font-family: Inter;\\n src: url(\\\"/assets/fonts/Inter-Medium.woff2\\\") format(\\\"woff2\\\");\\n font-weight: 500;\\n font-style: normal;\\n font-display: swap;\\n}\\n@font-face {\\n font-family: Inter;\\n src: url(\\\"/assets/fonts/Inter-Thin.woff2\\\") format(\\\"woff2\\\");\\n font-weight: 100;\\n font-style: normal;\\n font-display: swap;\\n}\\n@font-face {\\n font-family: \\\"PT Mono\\\";\\n src: url(\\\"/assets/fonts/PT-Mono-Regular.woff2\\\") format(\\\"woff2\\\");\\n font-weight: normal;\\n font-style: normal;\\n}\\n@font-face {\\n font-family: \\\"PT Mono\\\";\\n src: url(\\\"/assets/fonts/PT-Mono-Bold.woff2\\\") format(\\\"woff2\\\");\\n font-weight: bold;\\n font-style: normal;\\n}\\n/**\\n * @file Typography\\n *\\n * This file contains all typography classes used in designs.\\n * They should be used instead of individual font attributes.\\n *\\n * You can use them same as the normal Tailwind classes, e.g.: class=\\\"heading-inter-26-semi-bold\\\"\\n */\\n/**\\n * @file Variables\\n *\\n * This file contains all CSS variables used in designs.\\n */\\n/**\\n * Tailwind v4 shadow system variables\\n * Web components use Tailwind v4 internally, which requires these CSS variables\\n * to be initialized for box-shadow to render correctly in Tailwind v3 consumers.\\n */\\n*,\\n::after,\\n::before,\\n::backdrop,\\n::file-selector-button {\\n --tw-border-style: solid;\\n --tw-shadow: 0 0 #0000;\\n --tw-shadow-colored: 0 0 #0000;\\n --tw-inset-shadow: 0 0 #0000;\\n --tw-inset-shadow-colored: 0 0 #0000;\\n --tw-ring-color: initial;\\n --tw-ring-shadow: 0 0 #0000;\\n --tw-inset-ring-color: initial;\\n --tw-inset-ring-shadow: 0 0 #0000;\\n --tw-ring-offset-width: 0px;\\n --tw-ring-offset-color: #fff;\\n --tw-ring-offset-shadow: 0 0 #0000;\\n}\\n.tippy-box[data-animation=fade][data-state=hidden] {\\n opacity: 0;\\n}\\n.tippy-arrow::before {\\n content: \\\"\\\";\\n position: absolute;\\n border-color: transparent;\\n border-style: solid;\\n}\\n.tippy-box[data-placement^=top] > .tippy-arrow::before {\\n border-top-color: initial;\\n transform-origin: center top;\\n}\\n.tippy-box[data-placement^=bottom] > .tippy-arrow::before {\\n border-bottom-color: initial;\\n transform-origin: center bottom;\\n}\\n.tippy-box[data-placement^=left] > .tippy-arrow::before {\\n border-left-color: initial;\\n transform-origin: center left;\\n}\\n.tippy-box[data-placement^=right] > .tippy-arrow::before {\\n border-right-color: initial;\\n transform-origin: center right;\\n}\\n.tippy-box[data-inertia][data-state=visible] {\\n transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11);\\n}\\n.tippy-arrow {\\n width: 16px;\\n height: 16px;\\n}\\n.tippy-size-medium {\\n border-radius: 4px;\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 10px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 12px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-size-medium[data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-size-medium[data-placement^=top] > .tippy-arrow::before {\\n bottom: -6px;\\n left: 2px;\\n border-width: 6px 6px 0;\\n}\\n.tippy-size-medium[data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-size-medium[data-placement^=bottom] > .tippy-arrow::before {\\n top: -6px;\\n left: 2px;\\n border-width: 0 6px 6px;\\n}\\n.tippy-size-medium[data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-size-medium[data-placement^=left] > .tippy-arrow::before {\\n border-width: 6px 0 6px 6px;\\n right: -6px;\\n top: 2px;\\n}\\n.tippy-size-medium[data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-size-medium[data-placement^=right] > .tippy-arrow::before {\\n left: -6px;\\n top: 2px;\\n border-width: 6px 6px 6px 0;\\n}\\n.tippy-size-large {\\n border-radius: 8px;\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-size-large[data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-size-large[data-placement^=top] > .tippy-arrow::before {\\n bottom: -8px;\\n left: 0;\\n border-width: 8px 8px 0;\\n}\\n.tippy-size-large[data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-size-large[data-placement^=bottom] > .tippy-arrow::before {\\n top: -8px;\\n left: 0;\\n border-width: 0 8px 8px;\\n}\\n.tippy-size-large[data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-size-large[data-placement^=left] > .tippy-arrow::before {\\n border-width: 8px 0 8px 8px;\\n right: -8px;\\n}\\n.tippy-size-large[data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-size-large[data-placement^=right] > .tippy-arrow::before {\\n left: -8px;\\n border-width: 8px 8px 8px 0;\\n}\\n.tippy-variant-dark {\\n --tw-bg-opacity: 1;\\n background-color: rgb(54 80 99 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-variant-dark[data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-dark[data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-dark[data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-dark[data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-dark > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(54 80 99 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-variant-dark > .tippy-svg-arrow {\\n fill: #365063;\\n}\\n.tippy-variant-light {\\n --tw-bg-opacity: 1;\\n background-color: rgb(245 248 250 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.tippy-variant-light[data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-light[data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-light[data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-light[data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-light > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(245 248 250 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-variant-light > .tippy-svg-arrow {\\n fill: #f5f8fa;\\n}\\n.tippy-variant-white {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.tippy-variant-white[data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-white[data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-white[data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-white[data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-white > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-variant-white > .tippy-svg-arrow {\\n fill: #ffffff;\\n}\\n.tippy-variant-success {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-variant-success[data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-success[data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-success[data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-success[data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-success > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-variant-success > .tippy-svg-arrow {\\n fill: #47cd68;\\n}\\n.tippy-variant-danger {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-variant-danger[data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-danger[data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-danger[data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-danger[data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-variant-danger > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-variant-danger > .tippy-svg-arrow {\\n fill: #e96363;\\n}\\n.tippy-box[data-theme~=dark-medium] {\\n border-radius: 4px;\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 10px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 12px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=top] > .tippy-arrow::before {\\n bottom: -6px;\\n left: 2px;\\n border-width: 6px 6px 0;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=bottom] > .tippy-arrow::before {\\n top: -6px;\\n left: 2px;\\n border-width: 0 6px 6px;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=left] > .tippy-arrow::before {\\n border-width: 6px 0 6px 6px;\\n right: -6px;\\n top: 2px;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=right] > .tippy-arrow::before {\\n left: -6px;\\n top: 2px;\\n border-width: 6px 6px 6px 0;\\n}\\n.tippy-box[data-theme~=dark-medium] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(54 80 99 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-medium][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-medium] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(54 80 99 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-medium] > .tippy-svg-arrow {\\n fill: #365063;\\n}\\n.tippy-box[data-theme~=dark-large] {\\n border-radius: 8px;\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=top] > .tippy-arrow::before {\\n bottom: -8px;\\n left: 0;\\n border-width: 8px 8px 0;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=bottom] > .tippy-arrow::before {\\n top: -8px;\\n left: 0;\\n border-width: 0 8px 8px;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=left] > .tippy-arrow::before {\\n border-width: 8px 0 8px 8px;\\n right: -8px;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=right] > .tippy-arrow::before {\\n left: -8px;\\n border-width: 8px 8px 8px 0;\\n}\\n.tippy-box[data-theme~=dark-large] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(54 80 99 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-large][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(54 80 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-large] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(54 80 99 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=dark-large] > .tippy-svg-arrow {\\n fill: #365063;\\n}\\n.tippy-box[data-theme~=light-medium] {\\n border-radius: 4px;\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 10px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 12px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=top] > .tippy-arrow::before {\\n bottom: -6px;\\n left: 2px;\\n border-width: 6px 6px 0;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=bottom] > .tippy-arrow::before {\\n top: -6px;\\n left: 2px;\\n border-width: 0 6px 6px;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=left] > .tippy-arrow::before {\\n border-width: 6px 0 6px 6px;\\n right: -6px;\\n top: 2px;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=right] > .tippy-arrow::before {\\n left: -6px;\\n top: 2px;\\n border-width: 6px 6px 6px 0;\\n}\\n.tippy-box[data-theme~=light-medium] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(245 248 250 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-medium][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-medium] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(245 248 250 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-medium] > .tippy-svg-arrow {\\n fill: #f5f8fa;\\n}\\n.tippy-box[data-theme~=light-large] {\\n border-radius: 8px;\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=top] > .tippy-arrow::before {\\n bottom: -8px;\\n left: 0;\\n border-width: 8px 8px 0;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=bottom] > .tippy-arrow::before {\\n top: -8px;\\n left: 0;\\n border-width: 0 8px 8px;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=left] > .tippy-arrow::before {\\n border-width: 8px 0 8px 8px;\\n right: -8px;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=right] > .tippy-arrow::before {\\n left: -8px;\\n border-width: 8px 8px 8px 0;\\n}\\n.tippy-box[data-theme~=light-large] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(245 248 250 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-large][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(245 248 250 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-large] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(245 248 250 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=light-large] > .tippy-svg-arrow {\\n fill: #f5f8fa;\\n}\\n.tippy-box[data-theme~=white-medium] {\\n border-radius: 4px;\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 10px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 12px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=top] > .tippy-arrow::before {\\n bottom: -6px;\\n left: 2px;\\n border-width: 6px 6px 0;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=bottom] > .tippy-arrow::before {\\n top: -6px;\\n left: 2px;\\n border-width: 0 6px 6px;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=left] > .tippy-arrow::before {\\n border-width: 6px 0 6px 6px;\\n right: -6px;\\n top: 2px;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=right] > .tippy-arrow::before {\\n left: -6px;\\n top: 2px;\\n border-width: 6px 6px 6px 0;\\n}\\n.tippy-box[data-theme~=white-medium] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-medium][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-medium] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-medium] > .tippy-svg-arrow {\\n fill: #ffffff;\\n}\\n.tippy-box[data-theme~=white-large] {\\n border-radius: 8px;\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=top] > .tippy-arrow::before {\\n bottom: -8px;\\n left: 0;\\n border-width: 8px 8px 0;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=bottom] > .tippy-arrow::before {\\n top: -8px;\\n left: 0;\\n border-width: 0 8px 8px;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=left] > .tippy-arrow::before {\\n border-width: 8px 0 8px 8px;\\n right: -8px;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=right] > .tippy-arrow::before {\\n left: -8px;\\n border-width: 8px 8px 8px 0;\\n}\\n.tippy-box[data-theme~=white-large] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-large][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(255 255 255 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-large] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=white-large] > .tippy-svg-arrow {\\n fill: #ffffff;\\n}\\n.tippy-box[data-theme~=success-medium] {\\n border-radius: 4px;\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 10px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 12px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=top] > .tippy-arrow::before {\\n bottom: -6px;\\n left: 2px;\\n border-width: 6px 6px 0;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=bottom] > .tippy-arrow::before {\\n top: -6px;\\n left: 2px;\\n border-width: 0 6px 6px;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=left] > .tippy-arrow::before {\\n border-width: 6px 0 6px 6px;\\n right: -6px;\\n top: 2px;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=right] > .tippy-arrow::before {\\n left: -6px;\\n top: 2px;\\n border-width: 6px 6px 6px 0;\\n}\\n.tippy-box[data-theme~=success-medium] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-medium][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-medium] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-medium] > .tippy-svg-arrow {\\n fill: #47cd68;\\n}\\n.tippy-box[data-theme~=success-large] {\\n border-radius: 8px;\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=top] > .tippy-arrow::before {\\n bottom: -8px;\\n left: 0;\\n border-width: 8px 8px 0;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=bottom] > .tippy-arrow::before {\\n top: -8px;\\n left: 0;\\n border-width: 0 8px 8px;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=left] > .tippy-arrow::before {\\n border-width: 8px 0 8px 8px;\\n right: -8px;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=right] > .tippy-arrow::before {\\n left: -8px;\\n border-width: 8px 8px 8px 0;\\n}\\n.tippy-box[data-theme~=success-large] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-large][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(71 205 104 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-large] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=success-large] > .tippy-svg-arrow {\\n fill: #47cd68;\\n}\\n.tippy-box[data-theme~=danger-medium] {\\n border-radius: 4px;\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 10px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 12px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=top] > .tippy-arrow::before {\\n bottom: -6px;\\n left: 2px;\\n border-width: 6px 6px 0;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=bottom] > .tippy-arrow::before {\\n top: -6px;\\n left: 2px;\\n border-width: 0 6px 6px;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=left] > .tippy-arrow::before {\\n border-width: 6px 0 6px 6px;\\n right: -6px;\\n top: 2px;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=right] > .tippy-arrow::before {\\n left: -6px;\\n top: 2px;\\n border-width: 6px 6px 6px 0;\\n}\\n.tippy-box[data-theme~=danger-medium] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-medium][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-medium] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-medium] > .tippy-svg-arrow {\\n fill: #e96363;\\n}\\n.tippy-box[data-theme~=danger-large] {\\n border-radius: 8px;\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n --tw-shadow: 0px 27px 12px 0px rgba(63, 93, 116, 0.00), 0px 18px 7px 0px rgba(63, 93, 116, 0.02), 0px 10px 6px 0px rgba(63, 93, 116, 0.08), 0px 4px 4px 0px rgba(63, 93, 116, 0.13), 0px 1px 2px 0px rgba(63, 93, 116, 0.15), 0px 0px 14px 0px rgba(63, 93, 116, 0.16);\\n --tw-shadow-colored: 0px 27px 12px 0px var(--tw-shadow-color), 0px 18px 7px 0px var(--tw-shadow-color), 0px 10px 6px 0px var(--tw-shadow-color), 0px 4px 4px 0px var(--tw-shadow-color), 0px 1px 2px 0px var(--tw-shadow-color), 0px 0px 14px 0px var(--tw-shadow-color);\\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=top] > .tippy-arrow {\\n bottom: 0;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=top] > .tippy-arrow::before {\\n bottom: -8px;\\n left: 0;\\n border-width: 8px 8px 0;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=bottom] > .tippy-arrow {\\n top: 0;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=bottom] > .tippy-arrow::before {\\n top: -8px;\\n left: 0;\\n border-width: 0 8px 8px;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=left] > .tippy-arrow {\\n right: 0;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=left] > .tippy-arrow::before {\\n border-width: 8px 0 8px 8px;\\n right: -8px;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=right] > .tippy-arrow {\\n left: 0;\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=right] > .tippy-arrow::before {\\n left: -8px;\\n border-width: 8px 8px 8px 0;\\n}\\n.tippy-box[data-theme~=danger-large] {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=top] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-top-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=bottom] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-bottom-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=left] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-left-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-large][data-placement^=right] .tippy-arrow::before {\\n --tw-border-opacity: 1;\\n border-right-color: rgb(233 99 99 / var(--tw-border-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-large] > .tippy-backdrop {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n}\\n.tippy-box[data-theme~=danger-large] > .tippy-svg-arrow {\\n fill: #e96363;\\n}\\n*, ::before, ::after {\\n --tw-border-spacing-x: 0;\\n --tw-border-spacing-y: 0;\\n --tw-translate-x: 0;\\n --tw-translate-y: 0;\\n --tw-rotate: 0;\\n --tw-skew-x: 0;\\n --tw-skew-y: 0;\\n --tw-scale-x: 1;\\n --tw-scale-y: 1;\\n --tw-pan-x: ;\\n --tw-pan-y: ;\\n --tw-pinch-zoom: ;\\n --tw-scroll-snap-strictness: proximity;\\n --tw-gradient-from-position: ;\\n --tw-gradient-via-position: ;\\n --tw-gradient-to-position: ;\\n --tw-ordinal: ;\\n --tw-slashed-zero: ;\\n --tw-numeric-figure: ;\\n --tw-numeric-spacing: ;\\n --tw-numeric-fraction: ;\\n --tw-ring-inset: ;\\n --tw-ring-offset-width: 0px;\\n --tw-ring-offset-color: #fff;\\n --tw-ring-color: rgb(59 130 246 / 0.5);\\n --tw-ring-offset-shadow: 0 0 #0000;\\n --tw-ring-shadow: 0 0 #0000;\\n --tw-shadow: 0 0 #0000;\\n --tw-shadow-colored: 0 0 #0000;\\n --tw-blur: ;\\n --tw-brightness: ;\\n --tw-contrast: ;\\n --tw-grayscale: ;\\n --tw-hue-rotate: ;\\n --tw-invert: ;\\n --tw-saturate: ;\\n --tw-sepia: ;\\n --tw-drop-shadow: ;\\n --tw-backdrop-blur: ;\\n --tw-backdrop-brightness: ;\\n --tw-backdrop-contrast: ;\\n --tw-backdrop-grayscale: ;\\n --tw-backdrop-hue-rotate: ;\\n --tw-backdrop-invert: ;\\n --tw-backdrop-opacity: ;\\n --tw-backdrop-saturate: ;\\n --tw-backdrop-sepia: ;\\n --tw-contain-size: ;\\n --tw-contain-layout: ;\\n --tw-contain-paint: ;\\n --tw-contain-style: ;\\n}\\n::backdrop {\\n --tw-border-spacing-x: 0;\\n --tw-border-spacing-y: 0;\\n --tw-translate-x: 0;\\n --tw-translate-y: 0;\\n --tw-rotate: 0;\\n --tw-skew-x: 0;\\n --tw-skew-y: 0;\\n --tw-scale-x: 1;\\n --tw-scale-y: 1;\\n --tw-pan-x: ;\\n --tw-pan-y: ;\\n --tw-pinch-zoom: ;\\n --tw-scroll-snap-strictness: proximity;\\n --tw-gradient-from-position: ;\\n --tw-gradient-via-position: ;\\n --tw-gradient-to-position: ;\\n --tw-ordinal: ;\\n --tw-slashed-zero: ;\\n --tw-numeric-figure: ;\\n --tw-numeric-spacing: ;\\n --tw-numeric-fraction: ;\\n --tw-ring-inset: ;\\n --tw-ring-offset-width: 0px;\\n --tw-ring-offset-color: #fff;\\n --tw-ring-color: rgb(59 130 246 / 0.5);\\n --tw-ring-offset-shadow: 0 0 #0000;\\n --tw-ring-shadow: 0 0 #0000;\\n --tw-shadow: 0 0 #0000;\\n --tw-shadow-colored: 0 0 #0000;\\n --tw-blur: ;\\n --tw-brightness: ;\\n --tw-contrast: ;\\n --tw-grayscale: ;\\n --tw-hue-rotate: ;\\n --tw-invert: ;\\n --tw-saturate: ;\\n --tw-sepia: ;\\n --tw-drop-shadow: ;\\n --tw-backdrop-blur: ;\\n --tw-backdrop-brightness: ;\\n --tw-backdrop-contrast: ;\\n --tw-backdrop-grayscale: ;\\n --tw-backdrop-hue-rotate: ;\\n --tw-backdrop-invert: ;\\n --tw-backdrop-opacity: ;\\n --tw-backdrop-saturate: ;\\n --tw-backdrop-sepia: ;\\n --tw-contain-size: ;\\n --tw-contain-layout: ;\\n --tw-contain-paint: ;\\n --tw-contain-style: ;\\n}\\n/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com\\n */\\n/*\\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\\n*/\\n*,\\n::before,\\n::after {\\n box-sizing: border-box; /* 1 */\\n border-width: 0; /* 2 */\\n border-style: solid; /* 2 */\\n border-color: #e5e7eb; /* 2 */\\n}\\n::before,\\n::after {\\n --tw-content: '';\\n}\\n/*\\n1. Use a consistent sensible line-height in all browsers.\\n2. Prevent adjustments of font size after orientation changes in iOS.\\n3. Use a more readable tab size.\\n4. Use the user's configured `sans` font-family by default.\\n5. Use the user's configured `sans` font-feature-settings by default.\\n6. Use the user's configured `sans` font-variation-settings by default.\\n7. Disable tap highlights on iOS\\n*/\\nhtml,\\n:host {\\n line-height: 1.5; /* 1 */\\n -webkit-text-size-adjust: 100%; /* 2 */\\n -moz-tab-size: 4; /* 3 */\\n -o-tab-size: 4;\\n tab-size: 4; /* 3 */\\n font-family: ui-sans-serif, system-ui, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\", \\\"Noto Color Emoji\\\"; /* 4 */\\n font-feature-settings: normal; /* 5 */\\n font-variation-settings: normal; /* 6 */\\n -webkit-tap-highlight-color: transparent; /* 7 */\\n}\\n/*\\n1. Remove the margin in all browsers.\\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\\n*/\\nbody {\\n margin: 0; /* 1 */\\n line-height: inherit; /* 2 */\\n}\\n/*\\n1. Add the correct height in Firefox.\\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\\n3. Ensure horizontal rules are visible by default.\\n*/\\nhr {\\n height: 0; /* 1 */\\n color: inherit; /* 2 */\\n border-top-width: 1px; /* 3 */\\n}\\n/*\\nAdd the correct text decoration in Chrome, Edge, and Safari.\\n*/\\nabbr:where([title]) {\\n -webkit-text-decoration: underline dotted;\\n text-decoration: underline dotted;\\n}\\n/*\\nRemove the default font size and weight for headings.\\n*/\\nh1,\\nh2,\\nh3,\\nh4,\\nh5,\\nh6 {\\n font-size: inherit;\\n font-weight: inherit;\\n}\\n/*\\nReset links to optimize for opt-in styling instead of opt-out.\\n*/\\na {\\n color: inherit;\\n text-decoration: inherit;\\n}\\n/*\\nAdd the correct font weight in Edge and Safari.\\n*/\\nb,\\nstrong {\\n font-weight: bolder;\\n}\\n/*\\n1. Use the user's configured `mono` font-family by default.\\n2. Use the user's configured `mono` font-feature-settings by default.\\n3. Use the user's configured `mono` font-variation-settings by default.\\n4. Correct the odd `em` font sizing in all browsers.\\n*/\\ncode,\\nkbd,\\nsamp,\\npre {\\n font-family: \\\"PT Mono\\\", sans-serif; /* 1 */\\n font-feature-settings: normal; /* 2 */\\n font-variation-settings: normal; /* 3 */\\n font-size: 1em; /* 4 */\\n}\\n/*\\nAdd the correct font size in all browsers.\\n*/\\nsmall {\\n font-size: 80%;\\n}\\n/*\\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\\n*/\\nsub,\\nsup {\\n font-size: 75%;\\n line-height: 0;\\n position: relative;\\n vertical-align: baseline;\\n}\\nsub {\\n bottom: -0.25em;\\n}\\nsup {\\n top: -0.5em;\\n}\\n/*\\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\\n3. Remove gaps between table borders by default.\\n*/\\ntable {\\n text-indent: 0; /* 1 */\\n border-color: inherit; /* 2 */\\n border-collapse: collapse; /* 3 */\\n}\\n/*\\n1. Change the font styles in all browsers.\\n2. Remove the margin in Firefox and Safari.\\n3. Remove default padding in all browsers.\\n*/\\nbutton,\\ninput,\\noptgroup,\\nselect,\\ntextarea {\\n font-family: inherit; /* 1 */\\n font-feature-settings: inherit; /* 1 */\\n font-variation-settings: inherit; /* 1 */\\n font-size: 100%; /* 1 */\\n font-weight: inherit; /* 1 */\\n line-height: inherit; /* 1 */\\n letter-spacing: inherit; /* 1 */\\n color: inherit; /* 1 */\\n margin: 0; /* 2 */\\n padding: 0; /* 3 */\\n}\\n/*\\nRemove the inheritance of text transform in Edge and Firefox.\\n*/\\nbutton,\\nselect {\\n text-transform: none;\\n}\\n/*\\n1. Correct the inability to style clickable types in iOS and Safari.\\n2. Remove default button styles.\\n*/\\nbutton,\\ninput:where([type='button']),\\ninput:where([type='reset']),\\ninput:where([type='submit']) {\\n -webkit-appearance: button; /* 1 */\\n background-color: transparent; /* 2 */\\n background-image: none; /* 2 */\\n}\\n/*\\nUse the modern Firefox focus style for all focusable elements.\\n*/\\n:-moz-focusring {\\n outline: auto;\\n}\\n/*\\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\\n*/\\n:-moz-ui-invalid {\\n box-shadow: none;\\n}\\n/*\\nAdd the correct vertical alignment in Chrome and Firefox.\\n*/\\nprogress {\\n vertical-align: baseline;\\n}\\n/*\\nCorrect the cursor style of increment and decrement buttons in Safari.\\n*/\\n::-webkit-inner-spin-button,\\n::-webkit-outer-spin-button {\\n height: auto;\\n}\\n/*\\n1. Correct the odd appearance in Chrome and Safari.\\n2. Correct the outline style in Safari.\\n*/\\n[type='search'] {\\n -webkit-appearance: textfield; /* 1 */\\n outline-offset: -2px; /* 2 */\\n}\\n/*\\nRemove the inner padding in Chrome and Safari on macOS.\\n*/\\n::-webkit-search-decoration {\\n -webkit-appearance: none;\\n}\\n/*\\n1. Correct the inability to style clickable types in iOS and Safari.\\n2. Change font properties to `inherit` in Safari.\\n*/\\n::-webkit-file-upload-button {\\n -webkit-appearance: button; /* 1 */\\n font: inherit; /* 2 */\\n}\\n/*\\nAdd the correct display in Chrome and Safari.\\n*/\\nsummary {\\n display: list-item;\\n}\\n/*\\nRemoves the default spacing and border for appropriate elements.\\n*/\\nblockquote,\\ndl,\\ndd,\\nh1,\\nh2,\\nh3,\\nh4,\\nh5,\\nh6,\\nhr,\\nfigure,\\np,\\npre {\\n margin: 0;\\n}\\nfieldset {\\n margin: 0;\\n padding: 0;\\n}\\nlegend {\\n padding: 0;\\n}\\nol,\\nul,\\nmenu {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n}\\n/*\\nReset default styling for dialogs.\\n*/\\ndialog {\\n padding: 0;\\n}\\n/*\\nPrevent resizing textareas horizontally by default.\\n*/\\ntextarea {\\n resize: vertical;\\n}\\n/*\\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\\n2. Set the default placeholder color to the user's configured gray 400 color.\\n*/\\ninput::-moz-placeholder, textarea::-moz-placeholder {\\n opacity: 1; /* 1 */\\n color: #9ca3af; /* 2 */\\n}\\ninput::placeholder,\\ntextarea::placeholder {\\n opacity: 1; /* 1 */\\n color: #9ca3af; /* 2 */\\n}\\n/*\\nSet the default cursor for buttons.\\n*/\\nbutton,\\n[role=\\\"button\\\"] {\\n cursor: pointer;\\n}\\n/*\\nMake sure disabled buttons don't get the pointer cursor.\\n*/\\n:disabled {\\n cursor: default;\\n}\\n/*\\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\\n This can trigger a poorly considered lint error in some tools but is included by design.\\n*/\\nimg,\\nsvg,\\nvideo,\\ncanvas,\\naudio,\\niframe,\\nembed,\\nobject {\\n display: block; /* 1 */\\n vertical-align: middle; /* 2 */\\n}\\n/*\\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\\n*/\\nimg,\\nvideo {\\n max-width: 100%;\\n height: auto;\\n}\\n/* Make elements with the HTML hidden attribute stay hidden by default */\\n[hidden]:where(:not([hidden=\\\"until-found\\\"])) {\\n display: none;\\n}\\n.heading-inter-21-semi-bold {\\n font-family: Inter, sans-serif;\\n font-size: 21px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 26px;\\n}\\n.paragraph-inter-16-regular {\\n font-family: Inter, sans-serif;\\n font-size: 16px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 24px;\\n}\\n.paragraph-inter-14-regular {\\n font-family: Inter, sans-serif;\\n font-size: 14px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 22px;\\n}\\n.paragraph-inter-14-semi-bold {\\n font-family: Inter, sans-serif;\\n font-size: 14px;\\n font-weight: 600;\\n font-style: normal;\\n line-height: 22px;\\n}\\n.paragraph-inter-13-regular {\\n font-family: Inter, sans-serif;\\n font-size: 13px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n}\\n.paragraph-inter-12-regular {\\n font-family: Inter, sans-serif;\\n font-size: 12px;\\n font-weight: 400;\\n font-style: normal;\\n line-height: 20px;\\n}\\n.container {\\n width: 100%;\\n}\\n@media (min-width: 640px) {\\n .container {\\n max-width: 640px;\\n }\\n}\\n@media (min-width: 768px) {\\n .container {\\n max-width: 768px;\\n }\\n}\\n@media (min-width: 1024px) {\\n .container {\\n max-width: 1024px;\\n }\\n}\\n@media (min-width: 1280px) {\\n .container {\\n max-width: 1280px;\\n }\\n}\\n@media (min-width: 1536px) {\\n .container {\\n max-width: 1536px;\\n }\\n}\\n.prose {\\n color: var(--tw-prose-body);\\n max-width: 65ch;\\n}\\n.prose :where(p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n margin-bottom: 1.25em;\\n}\\n.prose :where([class~=\\\"lead\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-lead);\\n font-size: 1.25em;\\n line-height: 1.6;\\n margin-top: 1.2em;\\n margin-bottom: 1.2em;\\n}\\n.prose :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-links);\\n text-decoration: underline;\\n font-weight: 500;\\n}\\n.prose :where(strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-bold);\\n font-weight: 600;\\n}\\n.prose :where(a strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(blockquote strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(thead th strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: decimal;\\n margin-top: 1.25em;\\n margin-bottom: 1.25em;\\n padding-inline-start: 1.625em;\\n}\\n.prose :where(ol[type=\\\"A\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: upper-alpha;\\n}\\n.prose :where(ol[type=\\\"a\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: lower-alpha;\\n}\\n.prose :where(ol[type=\\\"A\\\" s]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: upper-alpha;\\n}\\n.prose :where(ol[type=\\\"a\\\" s]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: lower-alpha;\\n}\\n.prose :where(ol[type=\\\"I\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: upper-roman;\\n}\\n.prose :where(ol[type=\\\"i\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: lower-roman;\\n}\\n.prose :where(ol[type=\\\"I\\\" s]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: upper-roman;\\n}\\n.prose :where(ol[type=\\\"i\\\" s]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: lower-roman;\\n}\\n.prose :where(ol[type=\\\"1\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: decimal;\\n}\\n.prose :where(ul):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n list-style-type: disc;\\n margin-top: 1.25em;\\n margin-bottom: 1.25em;\\n padding-inline-start: 1.625em;\\n}\\n.prose :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::marker {\\n font-weight: 400;\\n color: var(--tw-prose-counters);\\n}\\n.prose :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::marker {\\n color: var(--tw-prose-bullets);\\n}\\n.prose :where(dt):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-headings);\\n font-weight: 600;\\n margin-top: 1.25em;\\n}\\n.prose :where(hr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n border-color: var(--tw-prose-hr);\\n border-top-width: 1px;\\n margin-top: 3em;\\n margin-bottom: 3em;\\n}\\n.prose :where(blockquote):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-weight: 500;\\n font-style: italic;\\n color: var(--tw-prose-quotes);\\n border-inline-start-width: 0.25rem;\\n border-inline-start-color: var(--tw-prose-quote-borders);\\n quotes: \\\"\\\\201C\\\"\\\"\\\\201D\\\"\\\"\\\\2018\\\"\\\"\\\\2019\\\";\\n margin-top: 1.6em;\\n margin-bottom: 1.6em;\\n padding-inline-start: 1em;\\n}\\n.prose :where(blockquote p:first-of-type):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::before {\\n content: open-quote;\\n}\\n.prose :where(blockquote p:last-of-type):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::after {\\n content: close-quote;\\n}\\n.prose :where(h1):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-headings);\\n font-weight: 800;\\n font-size: 2.25em;\\n margin-top: 0;\\n margin-bottom: 0.8888889em;\\n line-height: 1.1111111;\\n}\\n.prose :where(h1 strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-weight: 900;\\n color: inherit;\\n}\\n.prose :where(h2):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-headings);\\n font-weight: 700;\\n font-size: 1.5em;\\n margin-top: 2em;\\n margin-bottom: 1em;\\n line-height: 1.3333333;\\n}\\n.prose :where(h2 strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-weight: 800;\\n color: inherit;\\n}\\n.prose :where(h3):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-headings);\\n font-weight: 600;\\n font-size: 1.25em;\\n margin-top: 1.6em;\\n margin-bottom: 0.6em;\\n line-height: 1.6;\\n}\\n.prose :where(h3 strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-weight: 700;\\n color: inherit;\\n}\\n.prose :where(h4):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-headings);\\n font-weight: 600;\\n margin-top: 1.5em;\\n margin-bottom: 0.5em;\\n line-height: 1.5;\\n}\\n.prose :where(h4 strong):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-weight: 700;\\n color: inherit;\\n}\\n.prose :where(img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose :where(picture):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n display: block;\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose :where(video):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose :where(kbd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-weight: 500;\\n font-family: inherit;\\n color: var(--tw-prose-kbd);\\n box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);\\n font-size: 0.875em;\\n border-radius: 0.3125rem;\\n padding-top: 0.1875em;\\n padding-inline-end: 0.375em;\\n padding-bottom: 0.1875em;\\n padding-inline-start: 0.375em;\\n}\\n.prose :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-code);\\n font-weight: 600;\\n font-size: 0.875em;\\n}\\n.prose :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::before {\\n content: \\\"`\\\";\\n}\\n.prose :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::after {\\n content: \\\"`\\\";\\n}\\n.prose :where(a code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(h1 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(h2 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n font-size: 0.875em;\\n}\\n.prose :where(h3 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n font-size: 0.9em;\\n}\\n.prose :where(h4 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(blockquote code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(thead th code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: inherit;\\n}\\n.prose :where(pre):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-pre-code);\\n background-color: var(--tw-prose-pre-bg);\\n overflow-x: auto;\\n font-weight: 400;\\n font-size: 0.875em;\\n line-height: 1.7142857;\\n margin-top: 1.7142857em;\\n margin-bottom: 1.7142857em;\\n border-radius: 0.375rem;\\n padding-top: 0.8571429em;\\n padding-inline-end: 1.1428571em;\\n padding-bottom: 0.8571429em;\\n padding-inline-start: 1.1428571em;\\n}\\n.prose :where(pre code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n background-color: transparent;\\n border-width: 0;\\n border-radius: 0;\\n padding: 0;\\n font-weight: inherit;\\n color: inherit;\\n font-size: inherit;\\n font-family: inherit;\\n line-height: inherit;\\n}\\n.prose :where(pre code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::before {\\n content: none;\\n}\\n.prose :where(pre code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *))::after {\\n content: none;\\n}\\n.prose :where(table):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n width: 100%;\\n table-layout: auto;\\n margin-top: 2em;\\n margin-bottom: 2em;\\n font-size: 0.875em;\\n line-height: 1.7142857;\\n}\\n.prose :where(thead):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n border-bottom-width: 1px;\\n border-bottom-color: var(--tw-prose-th-borders);\\n}\\n.prose :where(thead th):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-headings);\\n font-weight: 600;\\n vertical-align: bottom;\\n padding-inline-end: 0.5714286em;\\n padding-bottom: 0.5714286em;\\n padding-inline-start: 0.5714286em;\\n}\\n.prose :where(tbody tr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n border-bottom-width: 1px;\\n border-bottom-color: var(--tw-prose-td-borders);\\n}\\n.prose :where(tbody tr:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n border-bottom-width: 0;\\n}\\n.prose :where(tbody td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n vertical-align: baseline;\\n}\\n.prose :where(tfoot):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n border-top-width: 1px;\\n border-top-color: var(--tw-prose-th-borders);\\n}\\n.prose :where(tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n vertical-align: top;\\n}\\n.prose :where(th, td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n text-align: start;\\n}\\n.prose :where(figure > *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose :where(figcaption):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-captions);\\n font-size: 0.875em;\\n line-height: 1.4285714;\\n margin-top: 0.8571429em;\\n}\\n.prose {\\n --tw-prose-body: oklch(37.3% 0.034 259.733);\\n --tw-prose-headings: oklch(21% 0.034 264.665);\\n --tw-prose-lead: oklch(44.6% 0.03 256.802);\\n --tw-prose-links: oklch(21% 0.034 264.665);\\n --tw-prose-bold: oklch(21% 0.034 264.665);\\n --tw-prose-counters: oklch(55.1% 0.027 264.364);\\n --tw-prose-bullets: oklch(87.2% 0.01 258.338);\\n --tw-prose-hr: oklch(92.8% 0.006 264.531);\\n --tw-prose-quotes: oklch(21% 0.034 264.665);\\n --tw-prose-quote-borders: oklch(92.8% 0.006 264.531);\\n --tw-prose-captions: oklch(55.1% 0.027 264.364);\\n --tw-prose-kbd: oklch(21% 0.034 264.665);\\n --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.034 264.665) 10%, transparent);\\n --tw-prose-code: oklch(21% 0.034 264.665);\\n --tw-prose-pre-code: oklch(92.8% 0.006 264.531);\\n --tw-prose-pre-bg: oklch(27.8% 0.033 256.848);\\n --tw-prose-th-borders: oklch(87.2% 0.01 258.338);\\n --tw-prose-td-borders: oklch(92.8% 0.006 264.531);\\n --tw-prose-invert-body: oklch(87.2% 0.01 258.338);\\n --tw-prose-invert-headings: #fff;\\n --tw-prose-invert-lead: oklch(70.7% 0.022 261.325);\\n --tw-prose-invert-links: #fff;\\n --tw-prose-invert-bold: #fff;\\n --tw-prose-invert-counters: oklch(70.7% 0.022 261.325);\\n --tw-prose-invert-bullets: oklch(44.6% 0.03 256.802);\\n --tw-prose-invert-hr: oklch(37.3% 0.034 259.733);\\n --tw-prose-invert-quotes: oklch(96.7% 0.003 264.542);\\n --tw-prose-invert-quote-borders: oklch(37.3% 0.034 259.733);\\n --tw-prose-invert-captions: oklch(70.7% 0.022 261.325);\\n --tw-prose-invert-kbd: #fff;\\n --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);\\n --tw-prose-invert-code: #fff;\\n --tw-prose-invert-pre-code: oklch(87.2% 0.01 258.338);\\n --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);\\n --tw-prose-invert-th-borders: oklch(44.6% 0.03 256.802);\\n --tw-prose-invert-td-borders: oklch(37.3% 0.034 259.733);\\n font-size: 1rem;\\n line-height: 1.75;\\n}\\n.prose :where(picture > img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose :where(li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n}\\n.prose :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.375em;\\n}\\n.prose :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.375em;\\n}\\n.prose :where(.prose > ul > li p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.75em;\\n margin-bottom: 0.75em;\\n}\\n.prose :where(.prose > ul > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n}\\n.prose :where(.prose > ul > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.25em;\\n}\\n.prose :where(.prose > ol > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n}\\n.prose :where(.prose > ol > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.25em;\\n}\\n.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.75em;\\n margin-bottom: 0.75em;\\n}\\n.prose :where(dl):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n margin-bottom: 1.25em;\\n}\\n.prose :where(dd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n padding-inline-start: 1.625em;\\n}\\n.prose :where(hr + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose :where(h2 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose :where(h3 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose :where(h4 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose :where(thead th:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose :where(thead th:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose :where(tbody td, tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-top: 0.5714286em;\\n padding-inline-end: 0.5714286em;\\n padding-bottom: 0.5714286em;\\n padding-inline-start: 0.5714286em;\\n}\\n.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose :where(figure):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose :where(.prose > :first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose :where(.prose > :last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 0;\\n}\\n.prose-sm {\\n font-size: 0.875rem;\\n line-height: 1.6;\\n}\\n.prose-sm :where(p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n line-height: 1.5;\\n}\\n.prose-sm :where([class~=\\\"lead\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.2857143em;\\n line-height: 1.5555556;\\n margin-top: 0.8888889em;\\n margin-bottom: 0.8888889em;\\n}\\n.prose-sm :where(blockquote):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.1111111em;\\n padding-left: 1em;\\n border-left-width: 0.25rem;\\n font-style: italic;\\n color: inherit;\\n}\\n.prose-sm :where(h1):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 2.1428571em;\\n margin-top: 0.75em;\\n margin-bottom: 0.5em;\\n line-height: 1.2;\\n}\\n.prose-sm :where(h2):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.4285714em;\\n margin-top: 0.65em;\\n margin-bottom: 0.45em;\\n line-height: 1.25;\\n}\\n.prose-sm :where(h3):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.2857143em;\\n margin-top: 0.6em;\\n margin-bottom: 0.4em;\\n line-height: 1.3;\\n}\\n.prose-sm :where(h4):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.35em;\\n line-height: 1.35;\\n}\\n.prose-sm :where(img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7142857em;\\n margin-bottom: 1.7142857em;\\n}\\n.prose-sm :where(picture):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7142857em;\\n margin-bottom: 1.7142857em;\\n}\\n.prose-sm :where(picture > img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-sm :where(video):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7142857em;\\n margin-bottom: 1.7142857em;\\n}\\n.prose-sm :where(kbd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8571429em;\\n border-radius: 0.3125rem;\\n padding-top: 0.1428571em;\\n padding-inline-end: 0.3571429em;\\n padding-bottom: 0.1428571em;\\n padding-inline-start: 0.3571429em;\\n}\\n.prose-sm :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8571429em;\\n}\\n.prose-sm :where(h2 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n}\\n.prose-sm :where(h3 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n}\\n.prose-sm :where(pre):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8571429em;\\n line-height: 1.45;\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n border-radius: 0.25rem;\\n padding-top: 0.6666667em;\\n padding-inline-end: 1em;\\n padding-bottom: 0.6666667em;\\n padding-inline-start: 1em;\\n box-sizing: border-box;\\n max-width: 100%;\\n overflow-x: auto;\\n white-space: pre-wrap;\\n overflow-wrap: break-word;\\n}\\n.prose-sm :where(ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.5714286em;\\n padding-left: 1.25em;\\n}\\n.prose-sm :where(ul):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.5714286em;\\n padding-left: 1.25em;\\n}\\n.prose-sm :where(li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-sm :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4285714em;\\n}\\n.prose-sm :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4285714em;\\n}\\n.prose-sm :where(.prose-sm > ul > li p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5714286em;\\n margin-bottom: 0.5714286em;\\n}\\n.prose-sm :where(.prose-sm > ul > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.1428571em;\\n}\\n.prose-sm :where(.prose-sm > ul > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.1428571em;\\n}\\n.prose-sm :where(.prose-sm > ol > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.1428571em;\\n}\\n.prose-sm :where(.prose-sm > ol > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.1428571em;\\n}\\n.prose-sm :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-sm :where(dl):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.1428571em;\\n margin-bottom: 1.1428571em;\\n}\\n.prose-sm :where(dt):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.1428571em;\\n}\\n.prose-sm :where(dd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.2857143em;\\n padding-inline-start: 1.5714286em;\\n}\\n.prose-sm :where(hr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-sm :where(hr + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-sm :where(h2 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-sm :where(h3 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-sm :where(h4 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-sm :where(table):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8571429em;\\n line-height: 1.5;\\n}\\n.prose-sm :where(thead th):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 1em;\\n padding-bottom: 0.6666667em;\\n padding-inline-start: 1em;\\n}\\n.prose-sm :where(thead th:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-sm :where(thead th:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-sm :where(tbody td, tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-top: 0.6666667em;\\n padding-inline-end: 1em;\\n padding-bottom: 0.6666667em;\\n padding-inline-start: 1em;\\n}\\n.prose-sm :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-sm :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-sm :where(figure):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7142857em;\\n margin-bottom: 1.7142857em;\\n}\\n.prose-sm :where(figure > *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-sm :where(figcaption):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8571429em;\\n line-height: 1.3333333;\\n margin-top: 0.6666667em;\\n}\\n.prose-sm :where(.prose-sm > :first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-sm :where(.prose-sm > :last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 0;\\n}\\n.prose-sm {\\n max-width: none;\\n}\\n.prose-sm :where(h5):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.45em;\\n margin-bottom: 0.3em;\\n line-height: 1.4;\\n}\\n.prose-sm :where(h6):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.4em;\\n margin-bottom: 0.25em;\\n line-height: 1.45;\\n}\\n.prose-sm :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-links);\\n text-decoration: underline;\\n font-weight: 500;\\n}\\n.prose-sm :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)):hover {\\n color: var(--tw-prose-links-hover, var(--tw-prose-links));\\n text-decoration: none;\\n}\\n.prose-base {\\n font-size: 1rem;\\n line-height: 1.6;\\n}\\n.prose-base :where(p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n line-height: 1.5;\\n}\\n.prose-base :where([class~=\\\"lead\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.25em;\\n line-height: 1.6;\\n margin-top: 1.2em;\\n margin-bottom: 1.2em;\\n}\\n.prose-base :where(blockquote):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1em;\\n padding-left: 1em;\\n border-left-width: 0.25rem;\\n font-style: italic;\\n color: inherit;\\n}\\n.prose-base :where(h1):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 2.25em;\\n margin-top: 0.75em;\\n margin-bottom: 0.5em;\\n line-height: 1.2;\\n}\\n.prose-base :where(h2):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.5em;\\n margin-top: 0.65em;\\n margin-bottom: 0.45em;\\n line-height: 1.25;\\n}\\n.prose-base :where(h3):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.25em;\\n margin-top: 0.6em;\\n margin-bottom: 0.4em;\\n line-height: 1.3;\\n}\\n.prose-base :where(h4):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.35em;\\n line-height: 1.35;\\n}\\n.prose-base :where(img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-base :where(picture):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-base :where(picture > img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-base :where(video):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-base :where(kbd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n border-radius: 0.3125rem;\\n padding-top: 0.1875em;\\n padding-inline-end: 0.375em;\\n padding-bottom: 0.1875em;\\n padding-inline-start: 0.375em;\\n}\\n.prose-base :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n}\\n.prose-base :where(h2 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n}\\n.prose-base :where(h3 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n}\\n.prose-base :where(pre):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n line-height: 1.45;\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n border-radius: 0.375rem;\\n padding-top: 0.8571429em;\\n padding-inline-end: 1.1428571em;\\n padding-bottom: 0.8571429em;\\n padding-inline-start: 1.1428571em;\\n box-sizing: border-box;\\n max-width: 100%;\\n overflow-x: auto;\\n white-space: pre-wrap;\\n overflow-wrap: break-word;\\n}\\n.prose-base :where(ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.625em;\\n padding-left: 1.25em;\\n}\\n.prose-base :where(ul):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.625em;\\n padding-left: 1.25em;\\n}\\n.prose-base :where(li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-base :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.375em;\\n}\\n.prose-base :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.375em;\\n}\\n.prose-base :where(.prose-base > ul > li p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.75em;\\n margin-bottom: 0.75em;\\n}\\n.prose-base :where(.prose-base > ul > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n}\\n.prose-base :where(.prose-base > ul > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.25em;\\n}\\n.prose-base :where(.prose-base > ol > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n}\\n.prose-base :where(.prose-base > ol > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.25em;\\n}\\n.prose-base :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-base :where(dl):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n margin-bottom: 1.25em;\\n}\\n.prose-base :where(dt):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.25em;\\n}\\n.prose-base :where(dd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n padding-inline-start: 1.625em;\\n}\\n.prose-base :where(hr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-base :where(hr + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-base :where(h2 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-base :where(h3 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-base :where(h4 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-base :where(table):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n line-height: 1.7142857;\\n}\\n.prose-base :where(thead th):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0.5714286em;\\n padding-bottom: 0.5714286em;\\n padding-inline-start: 0.5714286em;\\n}\\n.prose-base :where(thead th:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-base :where(thead th:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-base :where(tbody td, tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-top: 0.5714286em;\\n padding-inline-end: 0.5714286em;\\n padding-bottom: 0.5714286em;\\n padding-inline-start: 0.5714286em;\\n}\\n.prose-base :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-base :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-base :where(figure):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-base :where(figure > *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-base :where(figcaption):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n line-height: 1.4285714;\\n margin-top: 0.8571429em;\\n}\\n.prose-base :where(.prose-base > :first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-base :where(.prose-base > :last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 0;\\n}\\n.prose-base {\\n max-width: none;\\n}\\n.prose-base :where(h5):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.45em;\\n margin-bottom: 0.3em;\\n line-height: 1.4;\\n}\\n.prose-base :where(h6):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.4em;\\n margin-bottom: 0.25em;\\n line-height: 1.45;\\n}\\n.prose-base :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-links);\\n text-decoration: underline;\\n font-weight: 500;\\n}\\n.prose-base :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)):hover {\\n color: var(--tw-prose-links-hover, var(--tw-prose-links));\\n text-decoration: none;\\n}\\n.prose-lg {\\n font-size: 1.125rem;\\n line-height: 1.6;\\n}\\n.prose-lg :where(p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n line-height: 1.5;\\n}\\n.prose-lg :where([class~=\\\"lead\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.2222222em;\\n line-height: 1.4545455;\\n margin-top: 1.0909091em;\\n margin-bottom: 1.0909091em;\\n}\\n.prose-lg :where(blockquote):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1em;\\n padding-left: 1em;\\n border-left-width: 0.25rem;\\n font-style: italic;\\n color: inherit;\\n}\\n.prose-lg :where(h1):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 2.6666667em;\\n margin-top: 0.75em;\\n margin-bottom: 0.5em;\\n line-height: 1.2;\\n}\\n.prose-lg :where(h2):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.6666667em;\\n margin-top: 0.65em;\\n margin-bottom: 0.45em;\\n line-height: 1.25;\\n}\\n.prose-lg :where(h3):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.3333333em;\\n margin-top: 0.6em;\\n margin-bottom: 0.4em;\\n line-height: 1.3;\\n}\\n.prose-lg :where(h4):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.35em;\\n line-height: 1.35;\\n}\\n.prose-lg :where(img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7777778em;\\n margin-bottom: 1.7777778em;\\n}\\n.prose-lg :where(picture):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7777778em;\\n margin-bottom: 1.7777778em;\\n}\\n.prose-lg :where(picture > img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-lg :where(video):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7777778em;\\n margin-bottom: 1.7777778em;\\n}\\n.prose-lg :where(kbd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n border-radius: 0.3125rem;\\n padding-top: 0.2222222em;\\n padding-inline-end: 0.4444444em;\\n padding-bottom: 0.2222222em;\\n padding-inline-start: 0.4444444em;\\n}\\n.prose-lg :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n}\\n.prose-lg :where(h2 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8666667em;\\n}\\n.prose-lg :where(h3 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n}\\n.prose-lg :where(pre):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n line-height: 1.45;\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n border-radius: 0.375rem;\\n padding-top: 1em;\\n padding-inline-end: 1.5em;\\n padding-bottom: 1em;\\n padding-inline-start: 1.5em;\\n box-sizing: border-box;\\n max-width: 100%;\\n overflow-x: auto;\\n white-space: pre-wrap;\\n overflow-wrap: break-word;\\n}\\n.prose-lg :where(ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.5555556em;\\n padding-left: 1.25em;\\n}\\n.prose-lg :where(ul):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.5555556em;\\n padding-left: 1.25em;\\n}\\n.prose-lg :where(li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-lg :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4444444em;\\n}\\n.prose-lg :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4444444em;\\n}\\n.prose-lg :where(.prose-lg > ul > li p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.8888889em;\\n margin-bottom: 0.8888889em;\\n}\\n.prose-lg :where(.prose-lg > ul > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n}\\n.prose-lg :where(.prose-lg > ul > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.3333333em;\\n}\\n.prose-lg :where(.prose-lg > ol > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n}\\n.prose-lg :where(.prose-lg > ol > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.3333333em;\\n}\\n.prose-lg :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-lg :where(dl):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n margin-bottom: 1.3333333em;\\n}\\n.prose-lg :where(dt):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n}\\n.prose-lg :where(dd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.6666667em;\\n padding-inline-start: 1.5555556em;\\n}\\n.prose-lg :where(hr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-lg :where(hr + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-lg :where(h2 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-lg :where(h3 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-lg :where(h4 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-lg :where(table):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n line-height: 1.5;\\n}\\n.prose-lg :where(thead th):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0.75em;\\n padding-bottom: 0.75em;\\n padding-inline-start: 0.75em;\\n}\\n.prose-lg :where(thead th:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-lg :where(thead th:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-lg :where(tbody td, tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-top: 0.75em;\\n padding-inline-end: 0.75em;\\n padding-bottom: 0.75em;\\n padding-inline-start: 0.75em;\\n}\\n.prose-lg :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-lg :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-lg :where(figure):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7777778em;\\n margin-bottom: 1.7777778em;\\n}\\n.prose-lg :where(figure > *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-lg :where(figcaption):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n line-height: 1.5;\\n margin-top: 1em;\\n}\\n.prose-lg :where(.prose-lg > :first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-lg :where(.prose-lg > :last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 0;\\n}\\n.prose-lg {\\n max-width: none;\\n}\\n.prose-lg :where(h5):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.45em;\\n margin-bottom: 0.3em;\\n line-height: 1.4;\\n}\\n.prose-lg :where(h6):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.4em;\\n margin-bottom: 0.25em;\\n line-height: 1.45;\\n}\\n.prose-lg :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-links);\\n text-decoration: underline;\\n font-weight: 500;\\n}\\n.prose-lg :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)):hover {\\n color: var(--tw-prose-links-hover, var(--tw-prose-links));\\n text-decoration: none;\\n}\\n.prose-xl {\\n font-size: 1.25rem;\\n line-height: 1.6;\\n}\\n.prose-xl :where(p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n line-height: 1.5;\\n}\\n.prose-xl :where([class~=\\\"lead\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.2em;\\n line-height: 1.5;\\n margin-top: 1em;\\n margin-bottom: 1em;\\n}\\n.prose-xl :where(blockquote):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.0666667em;\\n padding-left: 1em;\\n border-left-width: 0.25rem;\\n font-style: italic;\\n color: inherit;\\n}\\n.prose-xl :where(h1):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 2.8em;\\n margin-top: 0.75em;\\n margin-bottom: 0.5em;\\n line-height: 1.2;\\n}\\n.prose-xl :where(h2):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.8em;\\n margin-top: 0.65em;\\n margin-bottom: 0.45em;\\n line-height: 1.25;\\n}\\n.prose-xl :where(h3):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.5em;\\n margin-top: 0.6em;\\n margin-bottom: 0.4em;\\n line-height: 1.3;\\n}\\n.prose-xl :where(h4):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.35em;\\n line-height: 1.35;\\n}\\n.prose-xl :where(img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-xl :where(picture):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-xl :where(picture > img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-xl :where(video):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-xl :where(kbd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n border-radius: 0.3125rem;\\n padding-top: 0.25em;\\n padding-inline-end: 0.4em;\\n padding-bottom: 0.25em;\\n padding-inline-start: 0.4em;\\n}\\n.prose-xl :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n}\\n.prose-xl :where(h2 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8611111em;\\n}\\n.prose-xl :where(h3 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n}\\n.prose-xl :where(pre):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n line-height: 1.45;\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n border-radius: 0.5rem;\\n padding-top: 1.1111111em;\\n padding-inline-end: 1.3333333em;\\n padding-bottom: 1.1111111em;\\n padding-inline-start: 1.3333333em;\\n box-sizing: border-box;\\n max-width: 100%;\\n overflow-x: auto;\\n white-space: pre-wrap;\\n overflow-wrap: break-word;\\n}\\n.prose-xl :where(ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.6em;\\n padding-left: 1.25em;\\n}\\n.prose-xl :where(ul):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n padding-inline-start: 1.6em;\\n padding-left: 1.25em;\\n}\\n.prose-xl :where(li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-xl :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4em;\\n}\\n.prose-xl :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4em;\\n}\\n.prose-xl :where(.prose-xl > ul > li p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.8em;\\n margin-bottom: 0.8em;\\n}\\n.prose-xl :where(.prose-xl > ul > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.2em;\\n}\\n.prose-xl :where(.prose-xl > ul > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.2em;\\n}\\n.prose-xl :where(.prose-xl > ol > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.2em;\\n}\\n.prose-xl :where(.prose-xl > ol > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.2em;\\n}\\n.prose-xl :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.25em;\\n margin-bottom: 0.25em;\\n}\\n.prose-xl :where(dl):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.2em;\\n margin-bottom: 1.2em;\\n}\\n.prose-xl :where(dt):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.2em;\\n}\\n.prose-xl :where(dd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.6em;\\n padding-inline-start: 1.6em;\\n}\\n.prose-xl :where(hr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-xl :where(hr + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-xl :where(h2 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-xl :where(h3 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-xl :where(h4 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-xl :where(table):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n line-height: 1.5555556;\\n}\\n.prose-xl :where(thead th):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0.6666667em;\\n padding-bottom: 0.8888889em;\\n padding-inline-start: 0.6666667em;\\n}\\n.prose-xl :where(thead th:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-xl :where(thead th:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-xl :where(tbody td, tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-top: 0.8888889em;\\n padding-inline-end: 0.6666667em;\\n padding-bottom: 0.8888889em;\\n padding-inline-start: 0.6666667em;\\n}\\n.prose-xl :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-xl :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-xl :where(figure):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-xl :where(figure > *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-xl :where(figcaption):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.9em;\\n line-height: 1.5555556;\\n margin-top: 1em;\\n}\\n.prose-xl :where(.prose-xl > :first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-xl :where(.prose-xl > :last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 0;\\n}\\n.prose-xl {\\n max-width: none;\\n}\\n.prose-xl :where(h5):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.45em;\\n margin-bottom: 0.3em;\\n line-height: 1.4;\\n}\\n.prose-xl :where(h6):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.4em;\\n margin-bottom: 0.25em;\\n line-height: 1.45;\\n}\\n.prose-xl :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n color: var(--tw-prose-links);\\n text-decoration: underline;\\n font-weight: 500;\\n}\\n.prose-xl :where(a):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)):hover {\\n color: var(--tw-prose-links-hover, var(--tw-prose-links));\\n text-decoration: none;\\n}\\n.prose-2xl {\\n font-size: 1.5rem;\\n line-height: 1.6666667;\\n}\\n.prose-2xl :where(p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n margin-bottom: 1.3333333em;\\n}\\n.prose-2xl :where([class~=\\\"lead\\\"]):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.25em;\\n line-height: 1.4666667;\\n margin-top: 1.0666667em;\\n margin-bottom: 1.0666667em;\\n}\\n.prose-2xl :where(blockquote):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.7777778em;\\n margin-bottom: 1.7777778em;\\n padding-inline-start: 1.1111111em;\\n}\\n.prose-2xl :where(h1):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 2.6666667em;\\n margin-top: 0;\\n margin-bottom: 0.875em;\\n line-height: 1;\\n}\\n.prose-2xl :where(h2):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 2em;\\n margin-top: 1.5em;\\n margin-bottom: 0.8333333em;\\n line-height: 1.0833333;\\n}\\n.prose-2xl :where(h3):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 1.5em;\\n margin-top: 1.5555556em;\\n margin-bottom: 0.6666667em;\\n line-height: 1.2222222;\\n}\\n.prose-2xl :where(h4):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.6666667em;\\n margin-bottom: 0.6666667em;\\n line-height: 1.5;\\n}\\n.prose-2xl :where(img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-2xl :where(picture):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-2xl :where(picture > img):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-2xl :where(video):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-2xl :where(kbd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8333333em;\\n border-radius: 0.375rem;\\n padding-top: 0.25em;\\n padding-inline-end: 0.3333333em;\\n padding-bottom: 0.25em;\\n padding-inline-start: 0.3333333em;\\n}\\n.prose-2xl :where(code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8333333em;\\n}\\n.prose-2xl :where(h2 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.875em;\\n}\\n.prose-2xl :where(h3 code):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8888889em;\\n}\\n.prose-2xl :where(pre):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8333333em;\\n line-height: 1.8;\\n margin-top: 2em;\\n margin-bottom: 2em;\\n border-radius: 0.5rem;\\n padding-top: 1.2em;\\n padding-inline-end: 1.6em;\\n padding-bottom: 1.2em;\\n padding-inline-start: 1.6em;\\n}\\n.prose-2xl :where(ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n margin-bottom: 1.3333333em;\\n padding-inline-start: 1.5833333em;\\n}\\n.prose-2xl :where(ul):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n margin-bottom: 1.3333333em;\\n padding-inline-start: 1.5833333em;\\n}\\n.prose-2xl :where(li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n}\\n.prose-2xl :where(ol > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4166667em;\\n}\\n.prose-2xl :where(ul > li):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0.4166667em;\\n}\\n.prose-2xl :where(.prose-2xl > ul > li p):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.8333333em;\\n margin-bottom: 0.8333333em;\\n}\\n.prose-2xl :where(.prose-2xl > ul > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n}\\n.prose-2xl :where(.prose-2xl > ul > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.3333333em;\\n}\\n.prose-2xl :where(.prose-2xl > ol > li > p:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n}\\n.prose-2xl :where(.prose-2xl > ol > li > p:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 1.3333333em;\\n}\\n.prose-2xl :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.6666667em;\\n margin-bottom: 0.6666667em;\\n}\\n.prose-2xl :where(dl):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n margin-bottom: 1.3333333em;\\n}\\n.prose-2xl :where(dt):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 1.3333333em;\\n}\\n.prose-2xl :where(dd):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0.5em;\\n padding-inline-start: 1.5833333em;\\n}\\n.prose-2xl :where(hr):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 3em;\\n margin-bottom: 3em;\\n}\\n.prose-2xl :where(hr + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-2xl :where(h2 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-2xl :where(h3 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-2xl :where(h4 + *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-2xl :where(table):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8333333em;\\n line-height: 1.4;\\n}\\n.prose-2xl :where(thead th):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0.6em;\\n padding-bottom: 0.8em;\\n padding-inline-start: 0.6em;\\n}\\n.prose-2xl :where(thead th:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-2xl :where(thead th:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-2xl :where(tbody td, tfoot td):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-top: 0.8em;\\n padding-inline-end: 0.6em;\\n padding-bottom: 0.8em;\\n padding-inline-start: 0.6em;\\n}\\n.prose-2xl :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-start: 0;\\n}\\n.prose-2xl :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n padding-inline-end: 0;\\n}\\n.prose-2xl :where(figure):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 2em;\\n margin-bottom: 2em;\\n}\\n.prose-2xl :where(figure > *):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n.prose-2xl :where(figcaption):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n font-size: 0.8333333em;\\n line-height: 1.6;\\n margin-top: 1em;\\n}\\n.prose-2xl :where(.prose-2xl > :first-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-top: 0;\\n}\\n.prose-2xl :where(.prose-2xl > :last-child):not(:where([class~=\\\"not-prose\\\"],[class~=\\\"not-prose\\\"] *)) {\\n margin-bottom: 0;\\n}\\n.prose-slate {\\n --tw-prose-body: oklch(37.2% 0.044 257.287);\\n --tw-prose-headings: oklch(20.8% 0.042 265.755);\\n --tw-prose-lead: oklch(44.6% 0.043 257.281);\\n --tw-prose-links: oklch(20.8% 0.042 265.755);\\n --tw-prose-bold: oklch(20.8% 0.042 265.755);\\n --tw-prose-counters: oklch(55.4% 0.046 257.417);\\n --tw-prose-bullets: oklch(86.9% 0.022 252.894);\\n --tw-prose-hr: oklch(92.9% 0.013 255.508);\\n --tw-prose-quotes: oklch(20.8% 0.042 265.755);\\n --tw-prose-quote-borders: oklch(92.9% 0.013 255.508);\\n --tw-prose-captions: oklch(55.4% 0.046 257.417);\\n --tw-prose-kbd: oklch(20.8% 0.042 265.755);\\n --tw-prose-kbd-shadows: color-mix(in oklab, oklch(20.8% 0.042 265.755) 10%, transparent);\\n --tw-prose-code: oklch(20.8% 0.042 265.755);\\n --tw-prose-pre-code: oklch(92.9% 0.013 255.508);\\n --tw-prose-pre-bg: oklch(27.9% 0.041 260.031);\\n --tw-prose-th-borders: oklch(86.9% 0.022 252.894);\\n --tw-prose-td-borders: oklch(92.9% 0.013 255.508);\\n --tw-prose-invert-body: oklch(86.9% 0.022 252.894);\\n --tw-prose-invert-headings: #fff;\\n --tw-prose-invert-lead: oklch(70.4% 0.04 256.788);\\n --tw-prose-invert-links: #fff;\\n --tw-prose-invert-bold: #fff;\\n --tw-prose-invert-counters: oklch(70.4% 0.04 256.788);\\n --tw-prose-invert-bullets: oklch(44.6% 0.043 257.281);\\n --tw-prose-invert-hr: oklch(37.2% 0.044 257.287);\\n --tw-prose-invert-quotes: oklch(96.8% 0.007 247.896);\\n --tw-prose-invert-quote-borders: oklch(37.2% 0.044 257.287);\\n --tw-prose-invert-captions: oklch(70.4% 0.04 256.788);\\n --tw-prose-invert-kbd: #fff;\\n --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);\\n --tw-prose-invert-code: #fff;\\n --tw-prose-invert-pre-code: oklch(86.9% 0.022 252.894);\\n --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);\\n --tw-prose-invert-th-borders: oklch(44.6% 0.043 257.281);\\n --tw-prose-invert-td-borders: oklch(37.2% 0.044 257.287);\\n}\\n.prose-gray {\\n --tw-prose-body: oklch(37.3% 0.034 259.733);\\n --tw-prose-headings: oklch(21% 0.034 264.665);\\n --tw-prose-lead: oklch(44.6% 0.03 256.802);\\n --tw-prose-links: oklch(21% 0.034 264.665);\\n --tw-prose-bold: oklch(21% 0.034 264.665);\\n --tw-prose-counters: oklch(55.1% 0.027 264.364);\\n --tw-prose-bullets: oklch(87.2% 0.01 258.338);\\n --tw-prose-hr: oklch(92.8% 0.006 264.531);\\n --tw-prose-quotes: oklch(21% 0.034 264.665);\\n --tw-prose-quote-borders: oklch(92.8% 0.006 264.531);\\n --tw-prose-captions: oklch(55.1% 0.027 264.364);\\n --tw-prose-kbd: oklch(21% 0.034 264.665);\\n --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.034 264.665) 10%, transparent);\\n --tw-prose-code: oklch(21% 0.034 264.665);\\n --tw-prose-pre-code: oklch(92.8% 0.006 264.531);\\n --tw-prose-pre-bg: oklch(27.8% 0.033 256.848);\\n --tw-prose-th-borders: oklch(87.2% 0.01 258.338);\\n --tw-prose-td-borders: oklch(92.8% 0.006 264.531);\\n --tw-prose-invert-body: oklch(87.2% 0.01 258.338);\\n --tw-prose-invert-headings: #fff;\\n --tw-prose-invert-lead: oklch(70.7% 0.022 261.325);\\n --tw-prose-invert-links: #fff;\\n --tw-prose-invert-bold: #fff;\\n --tw-prose-invert-counters: oklch(70.7% 0.022 261.325);\\n --tw-prose-invert-bullets: oklch(44.6% 0.03 256.802);\\n --tw-prose-invert-hr: oklch(37.3% 0.034 259.733);\\n --tw-prose-invert-quotes: oklch(96.7% 0.003 264.542);\\n --tw-prose-invert-quote-borders: oklch(37.3% 0.034 259.733);\\n --tw-prose-invert-captions: oklch(70.7% 0.022 261.325);\\n --tw-prose-invert-kbd: #fff;\\n --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);\\n --tw-prose-invert-code: #fff;\\n --tw-prose-invert-pre-code: oklch(87.2% 0.01 258.338);\\n --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);\\n --tw-prose-invert-th-borders: oklch(44.6% 0.03 256.802);\\n --tw-prose-invert-td-borders: oklch(37.3% 0.034 259.733);\\n}\\n.prose-zinc {\\n --tw-prose-body: oklch(37% 0.013 285.805);\\n --tw-prose-headings: oklch(21% 0.006 285.885);\\n --tw-prose-lead: oklch(44.2% 0.017 285.786);\\n --tw-prose-links: oklch(21% 0.006 285.885);\\n --tw-prose-bold: oklch(21% 0.006 285.885);\\n --tw-prose-counters: oklch(55.2% 0.016 285.938);\\n --tw-prose-bullets: oklch(87.1% 0.006 286.286);\\n --tw-prose-hr: oklch(92% 0.004 286.32);\\n --tw-prose-quotes: oklch(21% 0.006 285.885);\\n --tw-prose-quote-borders: oklch(92% 0.004 286.32);\\n --tw-prose-captions: oklch(55.2% 0.016 285.938);\\n --tw-prose-kbd: oklch(21% 0.006 285.885);\\n --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.006 285.885) 10%, transparent);\\n --tw-prose-code: oklch(21% 0.006 285.885);\\n --tw-prose-pre-code: oklch(92% 0.004 286.32);\\n --tw-prose-pre-bg: oklch(27.4% 0.006 286.033);\\n --tw-prose-th-borders: oklch(87.1% 0.006 286.286);\\n --tw-prose-td-borders: oklch(92% 0.004 286.32);\\n --tw-prose-invert-body: oklch(87.1% 0.006 286.286);\\n --tw-prose-invert-headings: #fff;\\n --tw-prose-invert-lead: oklch(70.5% 0.015 286.067);\\n --tw-prose-invert-links: #fff;\\n --tw-prose-invert-bold: #fff;\\n --tw-prose-invert-counters: oklch(70.5% 0.015 286.067);\\n --tw-prose-invert-bullets: oklch(44.2% 0.017 285.786);\\n --tw-prose-invert-hr: oklch(37% 0.013 285.805);\\n --tw-prose-invert-quotes: oklch(96.7% 0.001 286.375);\\n --tw-prose-invert-quote-borders: oklch(37% 0.013 285.805);\\n --tw-prose-invert-captions: oklch(70.5% 0.015 286.067);\\n --tw-prose-invert-kbd: #fff;\\n --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);\\n --tw-prose-invert-code: #fff;\\n --tw-prose-invert-pre-code: oklch(87.1% 0.006 286.286);\\n --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);\\n --tw-prose-invert-th-borders: oklch(44.2% 0.017 285.786);\\n --tw-prose-invert-td-borders: oklch(37% 0.013 285.805);\\n}\\n.prose-neutral {\\n --tw-prose-body: oklch(37.1% 0 0);\\n --tw-prose-headings: oklch(20.5% 0 0);\\n --tw-prose-lead: oklch(43.9% 0 0);\\n --tw-prose-links: oklch(20.5% 0 0);\\n --tw-prose-bold: oklch(20.5% 0 0);\\n --tw-prose-counters: oklch(55.6% 0 0);\\n --tw-prose-bullets: oklch(87% 0 0);\\n --tw-prose-hr: oklch(92.2% 0 0);\\n --tw-prose-quotes: oklch(20.5% 0 0);\\n --tw-prose-quote-borders: oklch(92.2% 0 0);\\n --tw-prose-captions: oklch(55.6% 0 0);\\n --tw-prose-kbd: oklch(20.5% 0 0);\\n --tw-prose-kbd-shadows: color-mix(in oklab, oklch(20.5% 0 0) 10%, transparent);\\n --tw-prose-code: oklch(20.5% 0 0);\\n --tw-prose-pre-code: oklch(92.2% 0 0);\\n --tw-prose-pre-bg: oklch(26.9% 0 0);\\n --tw-prose-th-borders: oklch(87% 0 0);\\n --tw-prose-td-borders: oklch(92.2% 0 0);\\n --tw-prose-invert-body: oklch(87% 0 0);\\n --tw-prose-invert-headings: #fff;\\n --tw-prose-invert-lead: oklch(70.8% 0 0);\\n --tw-prose-invert-links: #fff;\\n --tw-prose-invert-bold: #fff;\\n --tw-prose-invert-counters: oklch(70.8% 0 0);\\n --tw-prose-invert-bullets: oklch(43.9% 0 0);\\n --tw-prose-invert-hr: oklch(37.1% 0 0);\\n --tw-prose-invert-quotes: oklch(97% 0 0);\\n --tw-prose-invert-quote-borders: oklch(37.1% 0 0);\\n --tw-prose-invert-captions: oklch(70.8% 0 0);\\n --tw-prose-invert-kbd: #fff;\\n --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);\\n --tw-prose-invert-code: #fff;\\n --tw-prose-invert-pre-code: oklch(87% 0 0);\\n --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);\\n --tw-prose-invert-th-borders: oklch(43.9% 0 0);\\n --tw-prose-invert-td-borders: oklch(37.1% 0 0);\\n}\\n.prose-stone {\\n --tw-prose-body: oklch(37.4% 0.01 67.558);\\n --tw-prose-headings: oklch(21.6% 0.006 56.043);\\n --tw-prose-lead: oklch(44.4% 0.011 73.639);\\n --tw-prose-links: oklch(21.6% 0.006 56.043);\\n --tw-prose-bold: oklch(21.6% 0.006 56.043);\\n --tw-prose-counters: oklch(55.3% 0.013 58.071);\\n --tw-prose-bullets: oklch(86.9% 0.005 56.366);\\n --tw-prose-hr: oklch(92.3% 0.003 48.717);\\n --tw-prose-quotes: oklch(21.6% 0.006 56.043);\\n --tw-prose-quote-borders: oklch(92.3% 0.003 48.717);\\n --tw-prose-captions: oklch(55.3% 0.013 58.071);\\n --tw-prose-kbd: oklch(21.6% 0.006 56.043);\\n --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21.6% 0.006 56.043) 10%, transparent);\\n --tw-prose-code: oklch(21.6% 0.006 56.043);\\n --tw-prose-pre-code: oklch(92.3% 0.003 48.717);\\n --tw-prose-pre-bg: oklch(26.8% 0.007 34.298);\\n --tw-prose-th-borders: oklch(86.9% 0.005 56.366);\\n --tw-prose-td-borders: oklch(92.3% 0.003 48.717);\\n --tw-prose-invert-body: oklch(86.9% 0.005 56.366);\\n --tw-prose-invert-headings: #fff;\\n --tw-prose-invert-lead: oklch(70.9% 0.01 56.259);\\n --tw-prose-invert-links: #fff;\\n --tw-prose-invert-bold: #fff;\\n --tw-prose-invert-counters: oklch(70.9% 0.01 56.259);\\n --tw-prose-invert-bullets: oklch(44.4% 0.011 73.639);\\n --tw-prose-invert-hr: oklch(37.4% 0.01 67.558);\\n --tw-prose-invert-quotes: oklch(97% 0.001 106.424);\\n --tw-prose-invert-quote-borders: oklch(37.4% 0.01 67.558);\\n --tw-prose-invert-captions: oklch(70.9% 0.01 56.259);\\n --tw-prose-invert-kbd: #fff;\\n --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);\\n --tw-prose-invert-code: #fff;\\n --tw-prose-invert-pre-code: oklch(86.9% 0.005 56.366);\\n --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);\\n --tw-prose-invert-th-borders: oklch(44.4% 0.011 73.639);\\n --tw-prose-invert-td-borders: oklch(37.4% 0.01 67.558);\\n}\\n.prose-red {\\n --tw-prose-links: oklch(57.7% 0.245 27.325);\\n --tw-prose-invert-links: oklch(63.7% 0.237 25.331);\\n}\\n.prose-orange {\\n --tw-prose-links: oklch(64.6% 0.222 41.116);\\n --tw-prose-invert-links: oklch(70.5% 0.213 47.604);\\n}\\n.prose-amber {\\n --tw-prose-links: oklch(66.6% 0.179 58.318);\\n --tw-prose-invert-links: oklch(76.9% 0.188 70.08);\\n}\\n.prose-yellow {\\n --tw-prose-links: oklch(68.1% 0.162 75.834);\\n --tw-prose-invert-links: oklch(79.5% 0.184 86.047);\\n}\\n.prose-lime {\\n --tw-prose-links: oklch(64.8% 0.2 131.684);\\n --tw-prose-invert-links: oklch(76.8% 0.233 130.85);\\n}\\n.prose-green {\\n --tw-prose-links: oklch(62.7% 0.194 149.214);\\n --tw-prose-invert-links: oklch(72.3% 0.219 149.579);\\n}\\n.prose-emerald {\\n --tw-prose-links: oklch(59.6% 0.145 163.225);\\n --tw-prose-invert-links: oklch(69.6% 0.17 162.48);\\n}\\n.prose-teal {\\n --tw-prose-links: oklch(60% 0.118 184.704);\\n --tw-prose-invert-links: oklch(70.4% 0.14 182.503);\\n}\\n.prose-cyan {\\n --tw-prose-links: oklch(60.9% 0.126 221.723);\\n --tw-prose-invert-links: oklch(71.5% 0.143 215.221);\\n}\\n.prose-sky {\\n --tw-prose-links: oklch(58.8% 0.158 241.966);\\n --tw-prose-invert-links: oklch(68.5% 0.169 237.323);\\n}\\n.prose-blue {\\n --tw-prose-links: oklch(54.6% 0.245 262.881);\\n --tw-prose-invert-links: oklch(62.3% 0.214 259.815);\\n}\\n.prose-indigo {\\n --tw-prose-links: oklch(51.1% 0.262 276.966);\\n --tw-prose-invert-links: oklch(58.5% 0.233 277.117);\\n}\\n.prose-violet {\\n --tw-prose-links: oklch(54.1% 0.281 293.009);\\n --tw-prose-invert-links: oklch(60.6% 0.25 292.717);\\n}\\n.prose-purple {\\n --tw-prose-links: oklch(55.8% 0.288 302.321);\\n --tw-prose-invert-links: oklch(62.7% 0.265 303.9);\\n}\\n.prose-fuchsia {\\n --tw-prose-links: oklch(59.1% 0.293 322.896);\\n --tw-prose-invert-links: oklch(66.7% 0.295 322.15);\\n}\\n.prose-pink {\\n --tw-prose-links: oklch(59.2% 0.249 0.584);\\n --tw-prose-invert-links: oklch(65.6% 0.241 354.308);\\n}\\n.prose-rose {\\n --tw-prose-links: oklch(58.6% 0.253 17.585);\\n --tw-prose-invert-links: oklch(64.5% 0.246 16.439);\\n}\\n.prose-invert {\\n --tw-prose-body: var(--tw-prose-invert-body);\\n --tw-prose-headings: var(--tw-prose-invert-headings);\\n --tw-prose-lead: var(--tw-prose-invert-lead);\\n --tw-prose-links: var(--tw-prose-invert-links);\\n --tw-prose-bold: var(--tw-prose-invert-bold);\\n --tw-prose-counters: var(--tw-prose-invert-counters);\\n --tw-prose-bullets: var(--tw-prose-invert-bullets);\\n --tw-prose-hr: var(--tw-prose-invert-hr);\\n --tw-prose-quotes: var(--tw-prose-invert-quotes);\\n --tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);\\n --tw-prose-captions: var(--tw-prose-invert-captions);\\n --tw-prose-kbd: var(--tw-prose-invert-kbd);\\n --tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);\\n --tw-prose-code: var(--tw-prose-invert-code);\\n --tw-prose-pre-code: var(--tw-prose-invert-pre-code);\\n --tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);\\n --tw-prose-th-borders: var(--tw-prose-invert-th-borders);\\n --tw-prose-td-borders: var(--tw-prose-invert-td-borders);\\n}\\n.prose-inherit {\\n --tw-prose-body: inherit;\\n --tw-prose-headings: inherit;\\n --tw-prose-lead: inherit;\\n --tw-prose-links: inherit;\\n --tw-prose-bold: inherit;\\n --tw-prose-counters: inherit;\\n --tw-prose-bullets: inherit;\\n}\\n.visible {\\n visibility: visible;\\n}\\n.static {\\n position: static;\\n}\\n.fixed {\\n position: fixed;\\n}\\n.absolute {\\n position: absolute;\\n}\\n.relative {\\n position: relative;\\n}\\n.m-0 {\\n margin: 0px;\\n}\\n.mx-auto {\\n margin-left: auto;\\n margin-right: auto;\\n}\\n.my-6 {\\n margin-top: 1.5rem;\\n margin-bottom: 1.5rem;\\n}\\n.mb-0 {\\n margin-bottom: 0px;\\n}\\n.mb-1 {\\n margin-bottom: 0.25rem;\\n}\\n.mb-1\\\\.5 {\\n margin-bottom: 0.375rem;\\n}\\n.mb-2 {\\n margin-bottom: 0.5rem;\\n}\\n.mb-3 {\\n margin-bottom: 0.75rem;\\n}\\n.mb-4 {\\n margin-bottom: 1rem;\\n}\\n.mb-5 {\\n margin-bottom: 1.25rem;\\n}\\n.mb-6 {\\n margin-bottom: 1.5rem;\\n}\\n.mt-1 {\\n margin-top: 0.25rem;\\n}\\n.mt-2 {\\n margin-top: 0.5rem;\\n}\\n.mt-3 {\\n margin-top: 0.75rem;\\n}\\n.mt-6 {\\n margin-top: 1.5rem;\\n}\\n.block {\\n display: block;\\n}\\n.inline {\\n display: inline;\\n}\\n.flex {\\n display: flex;\\n}\\n.grid {\\n display: grid;\\n}\\n.contents {\\n display: contents;\\n}\\n.hidden {\\n display: none;\\n}\\n.h-1\\\\.5 {\\n height: 0.375rem;\\n}\\n.h-16 {\\n height: 4rem;\\n}\\n.h-2 {\\n height: 0.5rem;\\n}\\n.h-full {\\n height: 100%;\\n}\\n.w-16 {\\n width: 4rem;\\n}\\n.w-2 {\\n width: 0.5rem;\\n}\\n.w-3 {\\n width: 0.75rem;\\n}\\n.w-4 {\\n width: 1rem;\\n}\\n.w-5 {\\n width: 1.25rem;\\n}\\n.w-6 {\\n width: 1.5rem;\\n}\\n.w-7 {\\n width: 1.75rem;\\n}\\n.w-9 {\\n width: 2.25rem;\\n}\\n.max-w-none {\\n max-width: none;\\n}\\n.flex-1 {\\n flex: 1 1 0%;\\n}\\n.transform {\\n 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));\\n}\\n.cursor-pointer {\\n cursor: pointer;\\n}\\n.resize {\\n resize: both;\\n}\\n.grid-cols-2 {\\n grid-template-columns: repeat(2, minmax(0, 1fr));\\n}\\n.flex-col {\\n flex-direction: column;\\n}\\n.items-start {\\n align-items: flex-start;\\n}\\n.items-center {\\n align-items: center;\\n}\\n.justify-end {\\n justify-content: flex-end;\\n}\\n.justify-center {\\n justify-content: center;\\n}\\n.justify-between {\\n justify-content: space-between;\\n}\\n.gap-2 {\\n gap: 0.5rem;\\n}\\n.gap-3 {\\n gap: 0.75rem;\\n}\\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\\n --tw-space-y-reverse: 0;\\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\\n}\\n.overflow-hidden {\\n overflow: hidden;\\n}\\n.break-all {\\n word-break: break-all;\\n}\\n.rounded {\\n border-radius: 0.25rem;\\n}\\n.rounded-full {\\n border-radius: 9999px;\\n}\\n.rounded-lg {\\n border-radius: 0.5rem;\\n}\\n.rounded-xl {\\n border-radius: 0.75rem;\\n}\\n.border {\\n border-width: 1px;\\n}\\n.border-2 {\\n border-width: 2px;\\n}\\n.border-dashed {\\n border-style: dashed;\\n}\\n.border-blue-60 {\\n --tw-border-opacity: 1;\\n border-color: rgb(55 133 251 / var(--tw-border-opacity, 1));\\n}\\n.border-neutral-80 {\\n --tw-border-opacity: 1;\\n border-color: rgb(189 206 219 / var(--tw-border-opacity, 1));\\n}\\n.border-neutral-90 {\\n --tw-border-opacity: 1;\\n border-color: rgb(222 231 237 / var(--tw-border-opacity, 1));\\n}\\n.border-red-55 {\\n --tw-border-opacity: 1;\\n border-color: rgb(226 54 54 / var(--tw-border-opacity, 1));\\n}\\n.border-yellow-55 {\\n --tw-border-opacity: 1;\\n border-color: rgb(255 163 26 / var(--tw-border-opacity, 1));\\n}\\n.bg-blue-95 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(230 240 254 / var(--tw-bg-opacity, 1));\\n}\\n.bg-green-45 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(49 180 82 / var(--tw-bg-opacity, 1));\\n}\\n.bg-green-54 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(71 205 104 / var(--tw-bg-opacity, 1));\\n}\\n.bg-green-95 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(235 250 239 / var(--tw-bg-opacity, 1));\\n}\\n.bg-neutral-90 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(222 231 237 / var(--tw-bg-opacity, 1));\\n}\\n.bg-neutral-95 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(238 243 246 / var(--tw-bg-opacity, 1));\\n}\\n.bg-neutral-98 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(248 250 251 / var(--tw-bg-opacity, 1));\\n}\\n.bg-red-55 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(226 54 54 / var(--tw-bg-opacity, 1));\\n}\\n.bg-red-65 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(233 99 99 / var(--tw-bg-opacity, 1));\\n}\\n.bg-red-95 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(252 233 233 / var(--tw-bg-opacity, 1));\\n}\\n.bg-yellow-55 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 163 26 / var(--tw-bg-opacity, 1));\\n}\\n.bg-yellow-95 {\\n --tw-bg-opacity: 1;\\n background-color: rgb(255 245 229 / var(--tw-bg-opacity, 1));\\n}\\n.p-10 {\\n padding: 2.5rem;\\n}\\n.p-3 {\\n padding: 0.75rem;\\n}\\n.p-4 {\\n padding: 1rem;\\n}\\n.p-6 {\\n padding: 1.5rem;\\n}\\n.px-2 {\\n padding-left: 0.5rem;\\n padding-right: 0.5rem;\\n}\\n.px-3 {\\n padding-left: 0.75rem;\\n padding-right: 0.75rem;\\n}\\n.py-0\\\\.5 {\\n padding-top: 0.125rem;\\n padding-bottom: 0.125rem;\\n}\\n.py-2\\\\.5 {\\n padding-top: 0.625rem;\\n padding-bottom: 0.625rem;\\n}\\n.text-center {\\n text-align: center;\\n}\\n.font-mono {\\n font-family: \\\"PT Mono\\\", sans-serif;\\n}\\n.text-2xl {\\n font-size: 1.5rem;\\n line-height: 2rem;\\n}\\n.text-lg {\\n font-size: 1.125rem;\\n line-height: 1.75rem;\\n}\\n.text-sm {\\n font-size: 0.875rem;\\n line-height: 1.25rem;\\n}\\n.text-xl {\\n font-size: 1.25rem;\\n line-height: 1.75rem;\\n}\\n.text-xs {\\n font-size: 0.75rem;\\n line-height: 1rem;\\n}\\n.font-semibold {\\n font-weight: 600;\\n}\\n.uppercase {\\n text-transform: uppercase;\\n}\\n.leading-none {\\n line-height: 1;\\n}\\n.leading-relaxed {\\n line-height: 1.625;\\n}\\n.tracking-wide {\\n letter-spacing: 0.025em;\\n}\\n.text-green-45 {\\n --tw-text-opacity: 1;\\n color: rgb(49 180 82 / var(--tw-text-opacity, 1));\\n}\\n.text-green-54 {\\n --tw-text-opacity: 1;\\n color: rgb(71 205 104 / var(--tw-text-opacity, 1));\\n}\\n.text-neutral-10 {\\n --tw-text-opacity: 1;\\n color: rgb(18 27 33 / var(--tw-text-opacity, 1));\\n}\\n.text-neutral-20 {\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.text-neutral-40 {\\n --tw-text-opacity: 1;\\n color: rgb(71 106 133 / var(--tw-text-opacity, 1));\\n}\\n.text-neutral-50 {\\n --tw-text-opacity: 1;\\n color: rgb(89 133 166 / var(--tw-text-opacity, 1));\\n}\\n.text-neutral-60 {\\n --tw-text-opacity: 1;\\n color: rgb(122 157 184 / var(--tw-text-opacity, 1));\\n}\\n.text-red-55 {\\n --tw-text-opacity: 1;\\n color: rgb(226 54 54 / var(--tw-text-opacity, 1));\\n}\\n.text-red-65 {\\n --tw-text-opacity: 1;\\n color: rgb(233 99 99 / var(--tw-text-opacity, 1));\\n}\\n.text-yellow-55 {\\n --tw-text-opacity: 1;\\n color: rgb(255 163 26 / var(--tw-text-opacity, 1));\\n}\\n.outline {\\n outline-style: solid;\\n}\\n.blur {\\n --tw-blur: blur(8px);\\n 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);\\n}\\n.backdrop-filter {\\n 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);\\n}\\n.transition {\\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\\n transition-duration: 150ms;\\n}\\n.transition-all {\\n transition-property: all;\\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\\n transition-duration: 150ms;\\n}\\n.transition-colors {\\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\\n transition-duration: 150ms;\\n}\\n.duration-300 {\\n transition-duration: 300ms;\\n}\\n.ease-in-out {\\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\\n}\\nstrong {\\n font-weight: 600;\\n}\\n.hover\\\\:border-neutral-60:hover {\\n --tw-border-opacity: 1;\\n border-color: rgb(122 157 184 / var(--tw-border-opacity, 1));\\n}\\n.hover\\\\:text-neutral-20:hover {\\n --tw-text-opacity: 1;\\n color: rgb(36 53 66 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:border-neutral-60:is(.dark *) {\\n --tw-border-opacity: 1;\\n border-color: rgb(122 157 184 / var(--tw-border-opacity, 1));\\n}\\n.dark\\\\:border-neutral-70:is(.dark *) {\\n --tw-border-opacity: 1;\\n border-color: rgb(156 182 201 / var(--tw-border-opacity, 1));\\n}\\n.dark\\\\:border-yellow-55\\\\/50:is(.dark *) {\\n border-color: rgb(255 163 26 / 0.5);\\n}\\n.dark\\\\:bg-blue-95\\\\/10:is(.dark *) {\\n background-color: rgb(230 240 254 / 0.1);\\n}\\n.dark\\\\:bg-green-95\\\\/10:is(.dark *) {\\n background-color: rgb(235 250 239 / 0.1);\\n}\\n.dark\\\\:bg-green-95\\\\/20:is(.dark *) {\\n background-color: rgb(235 250 239 / 0.2);\\n}\\n.dark\\\\:bg-neutral-70:is(.dark *) {\\n --tw-bg-opacity: 1;\\n background-color: rgb(156 182 201 / var(--tw-bg-opacity, 1));\\n}\\n.dark\\\\:bg-neutral-80:is(.dark *) {\\n --tw-bg-opacity: 1;\\n background-color: rgb(189 206 219 / var(--tw-bg-opacity, 1));\\n}\\n.dark\\\\:bg-yellow-95\\\\/10:is(.dark *) {\\n background-color: rgb(255 245 229 / 0.1);\\n}\\n.dark\\\\:text-green-45:is(.dark *) {\\n --tw-text-opacity: 1;\\n color: rgb(49 180 82 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:text-neutral-50:is(.dark *) {\\n --tw-text-opacity: 1;\\n color: rgb(89 133 166 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:text-neutral-60:is(.dark *) {\\n --tw-text-opacity: 1;\\n color: rgb(122 157 184 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:text-neutral-90:is(.dark *) {\\n --tw-text-opacity: 1;\\n color: rgb(222 231 237 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:text-white:is(.dark *) {\\n --tw-text-opacity: 1;\\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:text-yellow-55:is(.dark *) {\\n --tw-text-opacity: 1;\\n color: rgb(255 163 26 / var(--tw-text-opacity, 1));\\n}\\n.dark\\\\:hover\\\\:border-neutral-60:hover:is(.dark *) {\\n --tw-border-opacity: 1;\\n border-color: rgb(122 157 184 / var(--tw-border-opacity, 1));\\n}\\n\";"]}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CoreLitElement
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XEZEZ62E.js";
|
|
4
4
|
import {
|
|
5
5
|
__decorateClass
|
|
6
6
|
} from "./chunk-EUXUH3YW.js";
|
|
7
7
|
|
|
8
8
|
// src/backup-modal.ts
|
|
9
9
|
import { downloadBackup } from "@lukso/passkey-auth";
|
|
10
|
+
import { safeCustomElement } from "@lukso/transaction-view-core/shared";
|
|
10
11
|
import { html, nothing } from "lit";
|
|
11
|
-
import {
|
|
12
|
+
import { property, state } from "lit/decorators.js";
|
|
12
13
|
import zxcvbn from "zxcvbn";
|
|
13
14
|
import "@lukso/web-components/dist/components/lukso-modal";
|
|
14
15
|
import "@lukso/web-components/dist/components/lukso-button";
|
|
@@ -382,10 +383,10 @@ __decorateClass([
|
|
|
382
383
|
state()
|
|
383
384
|
], BackupModal.prototype, "generatedBackup", 2);
|
|
384
385
|
BackupModal = __decorateClass([
|
|
385
|
-
|
|
386
|
+
safeCustomElement("backup-modal")
|
|
386
387
|
], BackupModal);
|
|
387
388
|
|
|
388
389
|
export {
|
|
389
390
|
BackupModal
|
|
390
391
|
};
|
|
391
|
-
//# sourceMappingURL=chunk-
|
|
392
|
+
//# sourceMappingURL=chunk-43E6AVSP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/backup-modal.ts"],"sourcesContent":["/**\n * Backup Modal - Lit Component\n *\n * Framework-agnostic backup modal for wallet data export.\n * Uses lukso-modal from @lukso/web-components for consistent UI.\n */\n\nimport type { BackupFile } from '@lukso/passkey-auth'\nimport { downloadBackup } from '@lukso/passkey-auth'\nimport { safeCustomElement } from '@lukso/transaction-view-core/shared'\nimport { html, nothing } from 'lit'\nimport { property, state } from 'lit/decorators.js'\nimport zxcvbn from 'zxcvbn'\nimport { CoreLitElement } from './styles'\n\n// Import lukso web components\nimport '@lukso/web-components/dist/components/lukso-modal'\nimport '@lukso/web-components/dist/components/lukso-button'\nimport '@lukso/web-components/dist/components/lukso-input'\n\nenum Step {\n CHOICE = 1,\n PASSWORD = 2,\n DOWNLOAD = 3,\n}\n\ninterface PasswordStrength {\n level: string\n label: string\n color: string\n bgColor: string\n width: number\n feedback: string\n crackTime: string | number\n}\n\n@safeCustomElement('backup-modal')\nexport class BackupModal extends CoreLitElement {\n // Public properties\n @property({ type: Boolean, reflect: true }) open = false\n @property({ type: String }) theme: 'light' | 'dark' | 'auto' = 'auto'\n\n // Private state - wizard flow\n @state() private currentStep: Step = Step.CHOICE\n @state() private useEncryption = true\n @state() private password = ''\n @state() private passwordConfirm = ''\n @state() private passwordErrors: string[] = []\n @state() private isCreatingBackup = false\n @state() private generatedBackup: BackupFile | null = null\n\n /**\n * Public method for parent to set backup result\n * Called after parent handles the 'create' event\n */\n public setBackupResult(\n backupFile: BackupFile | null,\n options?: {\n error?: string\n }\n ) {\n this.isCreatingBackup = false\n\n if (options?.error) {\n this.passwordErrors = [options.error]\n this.generatedBackup = null\n } else if (backupFile) {\n this.generatedBackup = backupFile\n this.currentStep = Step.DOWNLOAD\n }\n }\n\n render() {\n return html`\n <lukso-modal\n ?is-open=${this.open}\n size=\"medium\"\n @on-backdrop-click=${this.close}\n >\n <div class=\"p-6\">\n <!-- Header -->\n <h2 class=\"m-0 mb-6 text-neutral-20 dark:text-white heading-inter-21-semi-bold\">\n ${this.getStepTitle()}\n </h2>\n\n <!-- Step content -->\n ${this.renderStep()}\n </div>\n </lukso-modal>\n `\n }\n\n private renderStep() {\n switch (this.currentStep) {\n case Step.CHOICE:\n return this.renderChoiceStep()\n case Step.PASSWORD:\n return this.renderPasswordStep()\n case Step.DOWNLOAD:\n return this.renderDownloadStep()\n default:\n return nothing\n }\n }\n\n private renderChoiceStep() {\n return html`\n <div class=\"flex flex-col gap-3 mb-6\">\n <!-- Encrypted option (recommended) -->\n <div\n class=\"border-2 border-neutral-90 dark:border-neutral-70 rounded-lg p-4 cursor-pointer transition-all hover:border-neutral-60 dark:hover:border-neutral-60\"\n @click=${() => this.selectBackupType(true)}\n >\n <div class=\"flex items-center gap-3 mb-2\">\n <span class=\"text-neutral-10 dark:text-white heading-inter-16-semi-bold flex-1\">\n Encrypt backup file\n </span>\n <span class=\"text-xs text-neutral-50 dark:text-neutral-60 uppercase tracking-wide\">\n Recommended\n </span>\n </div>\n <p class=\"m-0 text-neutral-40 dark:text-neutral-50 paragraph-inter-14-regular\">\n Uses password-based encryption to protect the secrets in this file.\n </p>\n </div>\n\n <!-- Unencrypted option -->\n <div\n class=\"border-2 border-neutral-90 dark:border-neutral-70 rounded-lg p-4 cursor-pointer transition-all hover:border-neutral-60 dark:hover:border-neutral-60\"\n @click=${() => this.selectBackupType(false)}\n >\n <div class=\"flex items-center gap-3 mb-2\">\n <span class=\"text-neutral-10 dark:text-white heading-inter-16-semi-bold flex-1\">\n Plain text backup\n </span>\n <span class=\"text-xs text-neutral-50 dark:text-neutral-60 uppercase tracking-wide\">\n For development only\n </span>\n </div>\n <p class=\"m-0 text-neutral-40 dark:text-neutral-50 paragraph-inter-14-regular\">\n Secrets will be stored in plain text.\n </p>\n </div>\n </div>\n\n <div class=\"flex justify-between gap-3\">\n <lukso-button variant=\"text\" @click=${this.close}>\n Cancel\n </lukso-button>\n </div>\n `\n }\n\n private renderPasswordStep() {\n const passwordStrength = this.password\n ? this.calculatePasswordStrength()\n : null\n const passwordsMatch =\n this.password &&\n this.passwordConfirm &&\n this.password === this.passwordConfirm\n const canProceed = this.password && this.passwordConfirm && passwordsMatch\n\n return html`\n <p class=\"mb-6 text-neutral-40 dark:text-neutral-50 paragraph-inter-16-regular\">\n Choose a strong password to encrypt your backup. You'll need this password to restore your wallet.\n </p>\n\n <div class=\"space-y-4\">\n <lukso-input\n type=\"password\"\n label=\"Password\"\n placeholder=\"Enter a strong password\"\n .value=${this.password}\n @on-input=${(e: CustomEvent) => {\n this.password = e.detail.value\n }}\n is-full-width\n autofocus\n ></lukso-input>\n\n ${this.passwordErrors.map(\n (error) => html`\n <div class=\"mt-1 text-red-55 paragraph-inter-13-regular\">${error}</div>\n `\n )}\n\n ${\n passwordStrength\n ? html`\n <div class=\"mt-3\">\n <div class=\"flex items-center justify-between mb-1\">\n <span class=\"paragraph-inter-13-regular text-neutral-40\">Password strength:</span>\n <span class=\"paragraph-inter-13-semi-bold ${passwordStrength.color}\">${passwordStrength.label}</span>\n </div>\n <div class=\"h-1.5 bg-neutral-90 dark:bg-neutral-70 rounded-full overflow-hidden\">\n <div\n class=\"h-full ${passwordStrength.bgColor} transition-all duration-300\"\n style=\"width: ${passwordStrength.width}%\"\n ></div>\n </div>\n <p class=\"mt-1 mb-0 text-neutral-40 paragraph-inter-12-regular\">\n Time to crack: ${passwordStrength.crackTime}\n </p>\n ${\n passwordStrength.feedback\n ? html`\n <p class=\"mt-2 mb-0 text-neutral-40 paragraph-inter-12-regular\">${passwordStrength.feedback}</p>\n `\n : nothing\n }\n </div>\n `\n : nothing\n }\n\n <lukso-input\n type=\"password\"\n label=\"Confirm Password\"\n placeholder=\"Re-enter your password\"\n .value=${this.passwordConfirm}\n @on-input=${(e: CustomEvent) => {\n this.passwordConfirm = e.detail.value\n }}\n is-full-width\n ></lukso-input>\n\n ${\n this.passwordConfirm\n ? html`\n <div class=\"flex items-center justify-between mt-2\">\n <span class=\"paragraph-inter-13-regular text-neutral-40\">Passwords match:</span>\n <span class=\"paragraph-inter-13-semi-bold ${passwordsMatch ? 'text-green-54' : 'text-red-55'}\">\n ${passwordsMatch ? 'Yes' : 'No'}\n </span>\n </div>\n `\n : nothing\n }\n </div>\n\n <div class=\"flex justify-between gap-3 mt-6\">\n <div class=\"flex gap-3\">\n <lukso-button variant=\"text\" @click=${this.close}>\n Cancel\n </lukso-button>\n <lukso-button variant=\"secondary\" @click=${this.goBack}>\n Back\n </lukso-button>\n </div>\n <lukso-button\n variant=\"primary\"\n ?disabled=${!canProceed || this.isCreatingBackup}\n ?is-loading=${this.isCreatingBackup}\n @click=${this.createBackup}\n >\n Create Backup\n </lukso-button>\n </div>\n `\n }\n\n private renderDownloadStep() {\n return html`\n <p class=\"mb-6 text-neutral-40 dark:text-neutral-50 paragraph-inter-16-regular\">\n Your backup has been created${this.useEncryption ? ' and encrypted' : ''}. Download it and keep it in a safe place.\n </p>\n\n ${\n !this.useEncryption\n ? html`\n <p class=\"mb-6 text-neutral-40 dark:text-neutral-50 paragraph-inter-14-regular\">\n This unencrypted backup is intended for development purposes. Use it when creating dapps that need access to the profile for testing.\n </p>\n `\n : nothing\n }\n\n <div class=\"flex justify-end gap-3\">\n <lukso-button variant=\"primary\" @click=${this.handleDownload}>\n Download Backup\n </lukso-button>\n </div>\n `\n }\n\n private getStepTitle(): string {\n switch (this.currentStep) {\n case Step.CHOICE:\n return 'Backup Wallet'\n case Step.PASSWORD:\n return 'Set Password'\n case Step.DOWNLOAD:\n return 'Download Backup'\n default:\n return 'Backup Wallet'\n }\n }\n\n private selectBackupType(encrypted: boolean) {\n this.useEncryption = encrypted\n if (encrypted) {\n this.currentStep = Step.PASSWORD\n } else {\n // Unencrypted backup - create immediately\n this.createBackup()\n }\n }\n\n private async createBackup() {\n this.isCreatingBackup = true\n this.passwordErrors = []\n\n // Emit create event with password (if encrypted)\n // Parent should handle backup creation\n const createEvent = new CustomEvent('create', {\n detail: {\n password: this.useEncryption ? this.password : undefined,\n encrypted: this.useEncryption,\n },\n bubbles: true,\n composed: true,\n cancelable: true,\n })\n\n this.dispatchEvent(createEvent)\n\n // If parent didn't prevent default, show error\n if (!createEvent.defaultPrevented) {\n this.passwordErrors = [\n 'No backup handler configured. Please handle the \"create\" event.',\n ]\n this.isCreatingBackup = false\n }\n // Otherwise, parent will call setBackupResult()\n }\n\n private handleDownload() {\n if (this.generatedBackup) {\n downloadBackup(this.generatedBackup)\n\n // Dispatch download event\n this.dispatchEvent(\n new CustomEvent('download', {\n detail: this.generatedBackup,\n bubbles: true,\n composed: true,\n })\n )\n\n // Close modal after download\n setTimeout(() => {\n this.close()\n }, 100)\n }\n }\n\n private goBack() {\n if (this.currentStep === Step.PASSWORD) {\n this.currentStep = Step.CHOICE\n this.password = ''\n this.passwordConfirm = ''\n this.passwordErrors = []\n }\n }\n\n private close() {\n this.open = false\n this.dispatchEvent(\n new CustomEvent('close', { bubbles: true, composed: true })\n )\n\n // Reset state after animation\n setTimeout(() => {\n this.currentStep = Step.CHOICE\n this.useEncryption = true\n this.password = ''\n this.passwordConfirm = ''\n this.passwordErrors = []\n this.isCreatingBackup = false\n this.generatedBackup = null\n }, 300)\n }\n\n private calculatePasswordStrength(): PasswordStrength {\n const result = zxcvbn(this.password)\n\n const strengthMap = [\n {\n level: 'very-weak',\n label: 'Very Weak',\n color: 'text-red-55',\n bgColor: 'bg-red-55',\n width: 20,\n },\n {\n level: 'weak',\n label: 'Weak',\n color: 'text-red-65',\n bgColor: 'bg-red-65',\n width: 40,\n },\n {\n level: 'fair',\n label: 'Fair',\n color: 'text-yellow-55',\n bgColor: 'bg-yellow-55',\n width: 60,\n },\n {\n level: 'good',\n label: 'Good',\n color: 'text-green-54',\n bgColor: 'bg-green-54',\n width: 80,\n },\n {\n level: 'strong',\n label: 'Strong',\n color: 'text-green-45',\n bgColor: 'bg-green-45',\n width: 100,\n },\n ]\n\n const strength = strengthMap[result.score]\n const feedback =\n result.feedback.suggestions.join(' ') || result.feedback.warning || ''\n const crackTime =\n result.crack_times_display.offline_slow_hashing_1e4_per_second\n\n return {\n ...strength,\n feedback,\n crackTime,\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'backup-modal': BackupModal\n }\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CoreLitElement
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-XEZEZ62E.js";
|
|
4
4
|
import {
|
|
5
5
|
__decorateClass
|
|
6
6
|
} from "./chunk-EUXUH3YW.js";
|
|
7
7
|
|
|
8
8
|
// src/account-modal.ts
|
|
9
|
+
import { safeCustomElement } from "@lukso/transaction-view-core/shared";
|
|
9
10
|
import { html } from "lit";
|
|
10
|
-
import {
|
|
11
|
+
import { property } from "lit/decorators.js";
|
|
11
12
|
import "@lukso/web-components/dist/components/lukso-modal";
|
|
12
13
|
import "@lukso/web-components/dist/components/lukso-button";
|
|
13
14
|
var AccountModal = class extends CoreLitElement {
|
|
@@ -149,10 +150,10 @@ __decorateClass([
|
|
|
149
150
|
property({ type: String })
|
|
150
151
|
], AccountModal.prototype, "connectorName", 2);
|
|
151
152
|
AccountModal = __decorateClass([
|
|
152
|
-
|
|
153
|
+
safeCustomElement("account-modal")
|
|
153
154
|
], AccountModal);
|
|
154
155
|
|
|
155
156
|
export {
|
|
156
157
|
AccountModal
|
|
157
158
|
};
|
|
158
|
-
//# sourceMappingURL=chunk-
|
|
159
|
+
//# sourceMappingURL=chunk-D7RI2CWB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/account-modal.ts"],"sourcesContent":["/**\n * Account Modal - Lit Component\n *\n * Framework-agnostic account management modal showing connected wallet details.\n * Uses lukso-modal from @lukso/web-components for consistent UI.\n */\n\nimport { safeCustomElement } from '@lukso/transaction-view-core/shared'\nimport { html } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { CoreLitElement } from './styles'\n\n// Import lukso web components\nimport '@lukso/web-components/dist/components/lukso-modal'\nimport '@lukso/web-components/dist/components/lukso-button'\n\n@safeCustomElement('account-modal')\nexport class AccountModal extends CoreLitElement {\n // Public properties\n @property({ type: Boolean, reflect: true }) open = false\n @property({ type: String }) theme: 'light' | 'dark' | 'auto' = 'auto'\n @property({ type: String }) address = ''\n @property({ type: Number }) chainId?: number\n @property({ type: String }) connectorName = ''\n\n private close() {\n this.open = false\n this.dispatchEvent(new CustomEvent('close'))\n }\n\n private handleDisconnect() {\n this.dispatchEvent(new CustomEvent('disconnect'))\n this.close()\n }\n\n private getChainName(): string {\n switch (this.chainId) {\n case 42:\n return 'LUKSO Mainnet'\n case 4201:\n return 'LUKSO Testnet'\n default:\n return this.chainId ? `Chain ${this.chainId}` : 'Unknown Network'\n }\n }\n\n render() {\n return html`\n <lukso-modal\n ?is-open=${this.open}\n size=\"small\"\n @on-backdrop-click=${this.close}\n >\n <div class=\"p-6\">\n <!-- Header with close button -->\n <div class=\"flex justify-between items-center mb-6\">\n <h2 class=\"text-xl font-semibold\">Connected Account</h2>\n <button\n @click=${this.close}\n class=\"text-neutral-50 hover:text-neutral-20 transition-colors\"\n aria-label=\"Close\"\n >\n <svg\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n >\n <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"></line>\n <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"></line>\n </svg>\n </button>\n </div>\n\n <!-- Connection Status -->\n <div class=\"flex items-center gap-2 mb-5\">\n <div\n class=\"w-2 h-2 rounded-full\"\n style=\"background: #10b981;\"\n ></div>\n <span class=\"text-sm font-semibold\" style=\"color: #10b981;\">\n Connected\n </span>\n </div>\n\n <!-- Address -->\n <div\n class=\"mb-4 p-3 rounded-lg bg-neutral-98 border border-neutral-90\"\n >\n <div\n class=\"text-xs font-semibold text-neutral-50 mb-1.5 uppercase\"\n >\n Address\n </div>\n <div\n class=\"text-xs font-mono text-neutral-20 break-all leading-relaxed\"\n >\n ${this.address}\n </div>\n </div>\n\n <!-- Network & Connector Info -->\n <div class=\"grid grid-cols-2 gap-3 mb-5\">\n <div class=\"p-3 rounded-lg bg-neutral-98 border border-neutral-90\">\n <div\n class=\"text-xs font-semibold text-neutral-50 mb-1.5 uppercase\"\n >\n Network\n </div>\n <div class=\"text-sm font-semibold text-neutral-20\">\n ${this.getChainName()}\n </div>\n </div>\n\n <div class=\"p-3 rounded-lg bg-neutral-98 border border-neutral-90\">\n <div\n class=\"text-xs font-semibold text-neutral-50 mb-1.5 uppercase\"\n >\n Connector\n </div>\n <div class=\"text-sm font-semibold text-neutral-20\">\n ${this.connectorName || 'Unknown'}\n </div>\n </div>\n </div>\n\n <!-- Disconnect Button -->\n <lukso-button\n variant=\"danger\"\n is-full-width\n @click=${this.handleDisconnect}\n >\n Disconnect\n </lukso-button>\n </div>\n </lukso-modal>\n `\n }\n}\n"],"mappings":";;;;;;;;AAOA,SAAS,yBAAyB;AAClC,SAAS,YAAY;AACrB,SAAS,gBAAgB;AAIzB,OAAO;AACP,OAAO;AAGA,IAAM,eAAN,cAA2B,eAAe;AAAA,EAA1C;AAAA;AAEuC,gBAAO;AACvB,iBAAmC;AACnC,mBAAU;AAEV,yBAAgB;AAAA;AAAA,EAEpC,QAAQ;AACd,SAAK,OAAO;AACZ,SAAK,cAAc,IAAI,YAAY,OAAO,CAAC;AAAA,EAC7C;AAAA,EAEQ,mBAAmB;AACzB,SAAK,cAAc,IAAI,YAAY,YAAY,CAAC;AAChD,SAAK,MAAM;AAAA,EACb;AAAA,EAEQ,eAAuB;AAC7B,YAAQ,KAAK,SAAS;AAAA,MACpB,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO,KAAK,UAAU,SAAS,KAAK,OAAO,KAAK;AAAA,IACpD;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WAAO;AAAA;AAAA,mBAEQ,KAAK,IAAI;AAAA;AAAA,6BAEC,KAAK,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAOhB,KAAK,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBA2CjB,KAAK,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAaV,KAAK,aAAa,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAWnB,KAAK,iBAAiB,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAS5B,KAAK,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOxC;AACF;AA3H8C;AAAA,EAA3C,SAAS,EAAE,MAAM,SAAS,SAAS,KAAK,CAAC;AAAA,GAF/B,aAEiC;AAChB;AAAA,EAA3B,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GAHf,aAGiB;AACA;AAAA,EAA3B,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GAJf,aAIiB;AACA;AAAA,EAA3B,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GALf,aAKiB;AACA;AAAA,EAA3B,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GANf,aAMiB;AANjB,eAAN;AAAA,EADN,kBAAkB,eAAe;AAAA,GACrB;","names":[]}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
setupWagmi
|
|
3
|
-
} from "./chunk-AE2OVY26.js";
|
|
4
|
-
|
|
5
1
|
// src/auto-setup.ts
|
|
2
|
+
import { setupConnectModal } from "@lukso/up-modal/connect-modal";
|
|
6
3
|
var EMBEDDED_WALLET_ID = "dev.lukso.auth";
|
|
7
4
|
var EMBEDDED_WALLET_URL_DEV = "http://localhost:9100";
|
|
8
|
-
var EMBEDDED_WALLET_URL_PROD = "https://
|
|
5
|
+
var EMBEDDED_WALLET_URL_PROD = "https://feed.api.universalprofile.cloud";
|
|
9
6
|
var UP_EXTENSION_ID = "cloud.universalprofile";
|
|
10
7
|
function getDefaultWalletUrl() {
|
|
11
8
|
if (typeof process !== "undefined" && process.env?.WALLET_URL) {
|
|
@@ -64,7 +61,7 @@ async function setupLuksoConnector(config = {}) {
|
|
|
64
61
|
await createUPProvider(cfg.embeddedWallet);
|
|
65
62
|
}
|
|
66
63
|
const wagmiConfig = cfg.wagmiConfig || await createWagmiConfig(cfg);
|
|
67
|
-
|
|
64
|
+
setupConnectModal({
|
|
68
65
|
wagmiConfig,
|
|
69
66
|
chainId: cfg.chains.defaultChainId,
|
|
70
67
|
embeddedWalletId: cfg.embeddedWallet.enabled ? EMBEDDED_WALLET_ID : void 0
|
|
@@ -178,4 +175,4 @@ export {
|
|
|
178
175
|
UP_EXTENSION_ID,
|
|
179
176
|
setupLuksoConnector
|
|
180
177
|
};
|
|
181
|
-
//# sourceMappingURL=chunk-
|
|
178
|
+
//# sourceMappingURL=chunk-LXK6OUTM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/auto-setup.ts"],"sourcesContent":["/**\n * Auto-setup utilities for LUKSO products\n *\n * Provides zero-config setup for:\n * - Embedded Wallet (passkey-based)\n * - UP Extension (browser extension)\n * - UP Mobile (WalletConnect)\n */\n\nimport { setupConnectModal } from '@lukso/up-modal/connect-modal'\nimport type { Config } from '@wagmi/core'\n\n/**\n * Embedded wallet constants\n */\nexport const EMBEDDED_WALLET_ID = 'dev.lukso.auth'\nexport const EMBEDDED_WALLET_URL_DEV = 'http://localhost:9100'\nexport const EMBEDDED_WALLET_URL_PROD =\n 'https://feed.api.universalprofile.cloud'\n\n/**\n * UP Extension ID\n */\nexport const UP_EXTENSION_ID = 'cloud.universalprofile'\n\n/**\n * Get default wallet URL based on environment\n */\nfunction getDefaultWalletUrl(): string {\n // Check for environment variable (CI builds)\n if (typeof process !== 'undefined' && process.env?.WALLET_URL) {\n return process.env.WALLET_URL\n }\n\n // Check if we're in production (browser)\n if (typeof window !== 'undefined') {\n const isLocalhost =\n window.location.hostname === 'localhost' ||\n window.location.hostname === '127.0.0.1'\n return isLocalhost ? EMBEDDED_WALLET_URL_DEV : EMBEDDED_WALLET_URL_PROD\n }\n\n // Default to dev\n return EMBEDDED_WALLET_URL_DEV\n}\n\nexport interface LuksoConnectorConfig {\n /**\n * Embedded wallet configuration\n */\n embeddedWallet?: {\n /**\n * Enable embedded wallet option (default: true)\n */\n enabled?: boolean\n\n /**\n * URL to the wallet service\n * @default 'http://localhost:9100'\n */\n url?: string\n\n /**\n * Storage key for UP Provider state\n * @default 'up-provider'\n */\n storageKey?: string\n\n /**\n * Display name for the wallet\n * @default 'Create Passkey Wallet'\n */\n name?: string\n }\n\n /**\n * WalletConnect configuration for mobile app\n */\n walletConnect?: {\n /**\n * Enable WalletConnect (default: true)\n */\n enabled?: boolean\n\n /**\n * WalletConnect Project ID\n * @default LUKSO's default project ID\n */\n projectId?: string\n\n /**\n * Show QR code modal on mobile devices (default: false)\n */\n showQrModal?: boolean\n }\n\n /**\n * Chain configuration\n */\n chains?: {\n /**\n * Default chain ID\n * @default 42 (LUKSO mainnet)\n */\n defaultChainId?: number\n\n /**\n * Enable testnet (default: true)\n */\n enableTestnet?: boolean\n }\n\n /**\n * Storage configuration\n */\n storage?: {\n /**\n * Storage key prefix for wagmi state\n * @default 'up-wagmi'\n */\n key?: string\n }\n\n /**\n * Pass an existing wagmi config instead of auto-creating one\n */\n wagmiConfig?: any\n}\n\nconst DEFAULT_CONFIG: Required<LuksoConnectorConfig> = {\n embeddedWallet: {\n enabled: true,\n url: getDefaultWalletUrl(),\n storageKey: 'up-provider',\n name: 'UE Embedded Wallet',\n },\n walletConnect: {\n enabled: true,\n projectId: '7d1af65dc2722192d9914b5d6eaeb421', // LUKSO's default\n showQrModal: false,\n },\n chains: {\n defaultChainId: 42, // LUKSO mainnet\n enableTestnet: true,\n },\n storage: {\n key: 'up-wagmi',\n },\n wagmiConfig: undefined,\n}\n\n/**\n * Auto-setup LUKSO connector with sensible defaults\n *\n * This function creates a wagmi config and sets up the connect modal\n * with support for:\n * - Embedded Wallet (passkey-based)\n * - UP Extension (auto-detected via EIP-6963)\n * - UP Mobile (WalletConnect)\n *\n * @example\n * ```typescript\n * // Zero config - uses all defaults\n * setupLuksoConnector()\n *\n * // Custom configuration\n * setupLuksoConnector({\n * embeddedWallet: {\n * url: 'https://wallet.example.com'\n * },\n * chains: {\n * defaultChainId: 4201 // LUKSO Testnet\n * }\n * })\n * ```\n */\nexport async function setupLuksoConnector(\n config: LuksoConnectorConfig = {}\n): Promise<{ wagmiConfig: Config }> {\n const cfg = {\n embeddedWallet: {\n ...DEFAULT_CONFIG.embeddedWallet,\n ...config.embeddedWallet,\n } as Required<typeof DEFAULT_CONFIG.embeddedWallet>,\n walletConnect: {\n ...DEFAULT_CONFIG.walletConnect,\n ...config.walletConnect,\n } as Required<typeof DEFAULT_CONFIG.walletConnect>,\n chains: {\n ...DEFAULT_CONFIG.chains,\n ...config.chains,\n } as Required<typeof DEFAULT_CONFIG.chains>,\n storage: {\n ...DEFAULT_CONFIG.storage,\n ...config.storage,\n } as Required<typeof DEFAULT_CONFIG.storage>,\n wagmiConfig: config.wagmiConfig,\n }\n\n // IMPORTANT: Create UP Provider BEFORE wagmi config\n // The UP Provider registers via EIP-6963, and wagmi's injected() will detect it\n // This matches the order in demo-app: UP Provider first, then wagmi config\n\n // Step 1: Create UP Provider (if enabled)\n if (cfg.embeddedWallet?.enabled) {\n await createUPProvider(cfg.embeddedWallet)\n }\n\n // Step 2: Create or use provided wagmi config\n const wagmiConfig = cfg.wagmiConfig || (await createWagmiConfig(cfg))\n\n // Note: Wagmi will auto-reconnect in the background\n // The connector's watchWagmiAccount will detect the connection when it completes\n\n // Step 3: Setup connect modal\n // The UP Provider is already registered via EIP-6963 and will appear in wagmi connectors\n // Use the embedded wallet ID to identify it in the connector list\n setupConnectModal({\n wagmiConfig,\n chainId: cfg.chains.defaultChainId,\n embeddedWalletId: cfg.embeddedWallet.enabled\n ? EMBEDDED_WALLET_ID\n : undefined,\n })\n\n return { wagmiConfig }\n}\n\n/**\n * Create wagmi config with LUKSO chains and connectors\n */\nasync function createWagmiConfig(cfg: any): Promise<any> {\n try {\n // Dynamic imports to keep dependencies optional\n const [\n { createConfig, createStorage, injected },\n { walletConnect },\n { createClient, http },\n { lukso, luksoTestnet },\n ] = await Promise.all([\n import('@wagmi/core'),\n import('@wagmi/connectors'),\n import('viem'),\n import('viem/chains'),\n ])\n\n // Create storage adapter\n const storage = createStorage({\n key: cfg.storage.key,\n storage: getDefaultStorage(),\n })\n\n // Build chains array\n const chains = cfg.chains.enableTestnet\n ? ([luksoTestnet, lukso] as const)\n : ([lukso] as const)\n\n // Build connectors array\n const connectors = []\n\n // Add WalletConnect if enabled\n if (cfg.walletConnect.enabled) {\n connectors.push(\n walletConnect({\n projectId: cfg.walletConnect.projectId,\n showQrModal: cfg.walletConnect.showQrModal,\n })\n )\n }\n\n // Add injected (for UP Extension and other EIP-6963 wallets)\n connectors.push(injected())\n\n // Create wagmi config\n return createConfig({\n storage,\n multiInjectedProviderDiscovery: true, // Enable EIP-6963\n connectors,\n chains,\n client({ chain }: any) {\n return createClient({ chain, transport: http() })\n },\n })\n } catch (error) {\n console.error('Failed to create wagmi config:', error)\n throw new Error(\n 'Failed to create wagmi config. Make sure @wagmi/core, @wagmi/connectors, and viem are installed.'\n )\n }\n}\n\n/**\n * Create UP Provider (registers via EIP-6963)\n */\nasync function createUPProvider(config: {\n url: string\n storageKey: string\n name: string\n}): Promise<void> {\n // Validate URL - throw error if explicitly set to empty string\n if (config.url != null && config.url.trim() === '') {\n throw new Error(\n 'UP Provider URL is defined but empty. Please set WALLET_URL environment variable to a valid URL or leave it undefined.'\n )\n }\n\n try {\n const { createClientUPProvider } = await import('@lukso/up-provider')\n\n // Create UP Provider - it automatically registers via EIP-6963\n createClientUPProvider({\n url: config.url,\n mode: 'iframe',\n get: async () => {\n const stored = localStorage.getItem(config.storageKey)\n return stored ? JSON.parse(stored) : {}\n },\n set: async (value: Record<string, unknown>) => {\n localStorage.setItem(config.storageKey, JSON.stringify(value))\n },\n name: config.name,\n })\n\n // Wait for EIP-6963 registration\n await new Promise((resolve) => setTimeout(resolve, 100))\n } catch (error) {\n console.warn('⚠️ Failed to create UP Provider:', error)\n throw error\n }\n}\n\n/**\n * Default storage adapter (localStorage with error handling)\n */\nfunction getDefaultStorage() {\n const storage = (() => {\n if (typeof window !== 'undefined' && window.localStorage) {\n return window.localStorage\n }\n return {\n getItem: () => null,\n setItem: () => {},\n removeItem: () => {},\n }\n })()\n\n return {\n getItem(key: string) {\n return storage.getItem(key)\n },\n removeItem(key: string) {\n storage.removeItem(key)\n },\n setItem(key: string, value: string) {\n try {\n storage.setItem(key, value)\n } catch {\n // Silence QuotaExceededError, SecurityError, etc.\n }\n },\n }\n}\n"],"mappings":";AASA,SAAS,yBAAyB;AAM3B,IAAM,qBAAqB;AAC3B,IAAM,0BAA0B;AAChC,IAAM,2BACX;AAKK,IAAM,kBAAkB;AAK/B,SAAS,sBAA8B;AAErC,MAAI,OAAO,YAAY,eAAe,QAAQ,KAAK,YAAY;AAC7D,WAAO,QAAQ,IAAI;AAAA,EACrB;AAGA,MAAI,OAAO,WAAW,aAAa;AACjC,UAAM,cACJ,OAAO,SAAS,aAAa,eAC7B,OAAO,SAAS,aAAa;AAC/B,WAAO,cAAc,0BAA0B;AAAA,EACjD;AAGA,SAAO;AACT;AAqFA,IAAM,iBAAiD;AAAA,EACrD,gBAAgB;AAAA,IACd,SAAS;AAAA,IACT,KAAK,oBAAoB;AAAA,IACzB,YAAY;AAAA,IACZ,MAAM;AAAA,EACR;AAAA,EACA,eAAe;AAAA,IACb,SAAS;AAAA,IACT,WAAW;AAAA;AAAA,IACX,aAAa;AAAA,EACf;AAAA,EACA,QAAQ;AAAA,IACN,gBAAgB;AAAA;AAAA,IAChB,eAAe;AAAA,EACjB;AAAA,EACA,SAAS;AAAA,IACP,KAAK;AAAA,EACP;AAAA,EACA,aAAa;AACf;AA2BA,eAAsB,oBACpB,SAA+B,CAAC,GACE;AAClC,QAAM,MAAM;AAAA,IACV,gBAAgB;AAAA,MACd,GAAG,eAAe;AAAA,MAClB,GAAG,OAAO;AAAA,IACZ;AAAA,IACA,eAAe;AAAA,MACb,GAAG,eAAe;AAAA,MAClB,GAAG,OAAO;AAAA,IACZ;AAAA,IACA,QAAQ;AAAA,MACN,GAAG,eAAe;AAAA,MAClB,GAAG,OAAO;AAAA,IACZ;AAAA,IACA,SAAS;AAAA,MACP,GAAG,eAAe;AAAA,MAClB,GAAG,OAAO;AAAA,IACZ;AAAA,IACA,aAAa,OAAO;AAAA,EACtB;AAOA,MAAI,IAAI,gBAAgB,SAAS;AAC/B,UAAM,iBAAiB,IAAI,cAAc;AAAA,EAC3C;AAGA,QAAM,cAAc,IAAI,eAAgB,MAAM,kBAAkB,GAAG;AAQnE,oBAAkB;AAAA,IAChB;AAAA,IACA,SAAS,IAAI,OAAO;AAAA,IACpB,kBAAkB,IAAI,eAAe,UACjC,qBACA;AAAA,EACN,CAAC;AAED,SAAO,EAAE,YAAY;AACvB;AAKA,eAAe,kBAAkB,KAAwB;AACvD,MAAI;AAEF,UAAM;AAAA,MACJ,EAAE,cAAc,eAAe,SAAS;AAAA,MACxC,EAAE,cAAc;AAAA,MAChB,EAAE,cAAc,KAAK;AAAA,MACrB,EAAE,OAAO,aAAa;AAAA,IACxB,IAAI,MAAM,QAAQ,IAAI;AAAA,MACpB,OAAO,aAAa;AAAA,MACpB,OAAO,mBAAmB;AAAA,MAC1B,OAAO,MAAM;AAAA,MACb,OAAO,aAAa;AAAA,IACtB,CAAC;AAGD,UAAM,UAAU,cAAc;AAAA,MAC5B,KAAK,IAAI,QAAQ;AAAA,MACjB,SAAS,kBAAkB;AAAA,IAC7B,CAAC;AAGD,UAAM,SAAS,IAAI,OAAO,gBACrB,CAAC,cAAc,KAAK,IACpB,CAAC,KAAK;AAGX,UAAM,aAAa,CAAC;AAGpB,QAAI,IAAI,cAAc,SAAS;AAC7B,iBAAW;AAAA,QACT,cAAc;AAAA,UACZ,WAAW,IAAI,cAAc;AAAA,UAC7B,aAAa,IAAI,cAAc;AAAA,QACjC,CAAC;AAAA,MACH;AAAA,IACF;AAGA,eAAW,KAAK,SAAS,CAAC;AAG1B,WAAO,aAAa;AAAA,MAClB;AAAA,MACA,gCAAgC;AAAA;AAAA,MAChC;AAAA,MACA;AAAA,MACA,OAAO,EAAE,MAAM,GAAQ;AACrB,eAAO,aAAa,EAAE,OAAO,WAAW,KAAK,EAAE,CAAC;AAAA,MAClD;AAAA,IACF,CAAC;AAAA,EACH,SAAS,OAAO;AACd,YAAQ,MAAM,kCAAkC,KAAK;AACrD,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACF;AAKA,eAAe,iBAAiB,QAId;AAEhB,MAAI,OAAO,OAAO,QAAQ,OAAO,IAAI,KAAK,MAAM,IAAI;AAClD,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEA,MAAI;AACF,UAAM,EAAE,uBAAuB,IAAI,MAAM,OAAO,oBAAoB;AAGpE,2BAAuB;AAAA,MACrB,KAAK,OAAO;AAAA,MACZ,MAAM;AAAA,MACN,KAAK,YAAY;AACf,cAAM,SAAS,aAAa,QAAQ,OAAO,UAAU;AACrD,eAAO,SAAS,KAAK,MAAM,MAAM,IAAI,CAAC;AAAA,MACxC;AAAA,MACA,KAAK,OAAO,UAAmC;AAC7C,qBAAa,QAAQ,OAAO,YAAY,KAAK,UAAU,KAAK,CAAC;AAAA,MAC/D;AAAA,MACA,MAAM,OAAO;AAAA,IACf,CAAC;AAGD,UAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,GAAG,CAAC;AAAA,EACzD,SAAS,OAAO;AACd,YAAQ,KAAK,8CAAoC,KAAK;AACtD,UAAM;AAAA,EACR;AACF;AAKA,SAAS,oBAAoB;AAC3B,QAAM,WAAW,MAAM;AACrB,QAAI,OAAO,WAAW,eAAe,OAAO,cAAc;AACxD,aAAO,OAAO;AAAA,IAChB;AACA,WAAO;AAAA,MACL,SAAS,MAAM;AAAA,MACf,SAAS,MAAM;AAAA,MAAC;AAAA,MAChB,YAAY,MAAM;AAAA,MAAC;AAAA,IACrB;AAAA,EACF,GAAG;AAEH,SAAO;AAAA,IACL,QAAQ,KAAa;AACnB,aAAO,QAAQ,QAAQ,GAAG;AAAA,IAC5B;AAAA,IACA,WAAW,KAAa;AACtB,cAAQ,WAAW,GAAG;AAAA,IACxB;AAAA,IACA,QAAQ,KAAa,OAAe;AAClC,UAAI;AACF,gBAAQ,QAAQ,KAAK,KAAK;AAAA,MAC5B,QAAQ;AAAA,MAER;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunk3AIZSSEEcjs = require('./chunk-3AIZSSEE.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
var _chunkZBDE64SDcjs = require('./chunk-ZBDE64SD.cjs');
|
|
7
7
|
|
|
8
8
|
// src/restore-modal.ts
|
|
9
9
|
var _passkeyauth = require('@lukso/passkey-auth');
|
|
10
|
+
var _shared = require('@lukso/transaction-view-core/shared');
|
|
10
11
|
var _lit = require('lit');
|
|
11
12
|
var _decoratorsjs = require('lit/decorators.js');
|
|
12
13
|
require('@lukso/web-components/dist/components/lukso-modal');
|
|
13
14
|
require('@lukso/web-components/dist/components/lukso-button');
|
|
14
15
|
require('@lukso/web-components/dist/components/lukso-input');
|
|
15
|
-
var RestoreModal = class extends
|
|
16
|
+
var RestoreModal = class extends _chunk3AIZSSEEcjs.CoreLitElement {
|
|
16
17
|
constructor() {
|
|
17
18
|
super(...arguments);
|
|
18
19
|
this.isOpen = false;
|
|
@@ -582,10 +583,10 @@ _chunkZBDE64SDcjs.__decorateClass.call(void 0, [
|
|
|
582
583
|
_decoratorsjs.state.call(void 0, )
|
|
583
584
|
], RestoreModal.prototype, "restoredAddresses", 2);
|
|
584
585
|
RestoreModal = exports.RestoreModal = _chunkZBDE64SDcjs.__decorateClass.call(void 0, [
|
|
585
|
-
|
|
586
|
+
_shared.safeCustomElement.call(void 0, "restore-modal")
|
|
586
587
|
], RestoreModal);
|
|
587
588
|
|
|
588
589
|
|
|
589
590
|
|
|
590
591
|
exports.RestoreModal = RestoreModal;
|
|
591
|
-
//# sourceMappingURL=chunk-
|
|
592
|
+
//# sourceMappingURL=chunk-PHRCQCEN.cjs.map
|